个人作业Android学习系统开发日志三

后台springboot:三个表的方法实现
WeekGoals:
entity:

package com.demo.entity;

public class WeekGoals {

    private int id;

    private int weekNumber;

    private String title;

    private String content;

    private int userId;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getWeekNumber() {
        return weekNumber;
    }

    public void setWeekNumber(int weekNumber) {
        this.weekNumber = weekNumber;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    @Override
    public String toString() {
        return "WeekGoals{" +
                "id=" + id +
                ", weekNumber=" + weekNumber +
                ", title='" + title + '\'' +
                ", content='" + content + '\'' +
                ", userId=" + userId +
                '}';
    }
};

controller:

package com.demo.controller;


import com.demo.common.Result;
import com.demo.entity.WeekGoals;
import com.demo.service.WeekGoalsService;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/weekGoals")
public class WeekGoalsController {

    @Resource
    private WeekGoalsService weekGoalsService;

    @PostMapping("/add")
    //    @RequestBody 把前端传来的json字符串映射成java对象或者数组
    public Result add(@RequestBody WeekGoals weekGoals){
        weekGoalsService.add(weekGoals);
        return Result.success();
    }

    @PutMapping("/update")
    public Result update(@RequestBody WeekGoals weekGoals) {
        weekGoalsService.updateById(weekGoals);
        return Result.success();
    }

    @DeleteMapping("/deleteById/{id}")
    public Result deleteById(@PathVariable int id) {
        weekGoalsService.deleteById(id);
        return Result.success();
    }

    @GetMapping("/selectAll")
    public Result selectAll() {
        List<WeekGoals> list = weekGoalsService.selectAll();
        return Result.success(list);
    }

    @GetMapping("/selectAll/{userId}")
    public Result selectAll(@PathVariable int userId) {
        List<WeekGoals> list = weekGoalsService.selectByUserId(userId);
        return Result.success(list);
    }
}

service:

package com.demo.service;


import com.demo.entity.WeekGoals;
import com.demo.mapper.WeekGoalsMapper;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class WeekGoalsService {

    @Resource
    private WeekGoalsMapper weekGoalsMapper;

    public void add(WeekGoals weekGoals) {
        weekGoalsMapper.add(weekGoals);
    }

    public void updateById(WeekGoals weekGoals) {
        weekGoalsMapper.updateById(weekGoals);
    }

    public void deleteById(int id) {
        weekGoalsMapper.deleteById(id);
    }

    public List<WeekGoals> selectAll() {
        return weekGoalsMapper.selectAll();
    }

    public List<WeekGoals> selectByUserId(int userId) {
        return weekGoalsMapper.selectByUserId(userId);
    }
}

mapper:

package com.demo.mapper;

import com.demo.entity.WeekGoals;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface WeekGoalsMapper {

    void add(WeekGoals weekGoals);

    void updateById(WeekGoals weekGoals);

    @Delete("delete from `week_goals` where id = #{id}")
    void deleteById(int id);


    List<WeekGoals> selectAll();


    @Select("select * from week_goals where user_id = #{userId}")
    List<WeekGoals> selectByUserId(int userId);
}

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.demo.mapper.WeekGoalsMapper">


    <insert id="add" parameterType="com.demo.entity.WeekGoals" useGeneratedKeys="true" keyProperty="id">
        INSERT INTO week_goals (
            week_number,
            title,
            content,
            user_id
        ) VALUES (
                     #{weekNumber},
                     #{title},
                     #{content},
                     #{userId}
                 )
    </insert>

    <update id="updateById" parameterType="com.demo.entity.WeekGoals">
        UPDATE week_goals
        <set>
            <if test="weekNumber != null">week_number = #{weekNumber},</if>
            <if test="title != null">title = #{title},</if>
            <if test="content != null">content = #{content},</if>
            <if test="userId != null">user_id = #{userId},</if>
            updated_time = NOW()
        </set>
        WHERE id = #{id}
    </update>

    <select id="selectAll" resultType="com.demo.entity.WeekGoals">
        select * from week_goals
    </select>


</mapper>

DailySummary:
entity:

package com.demo.entity;

public class DailySummary {

    private int id;
    private int userId;
    private String url;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    @Override
    public String toString() {
        return "DailySummaries{" +
                "id=" + id +
                ", userId=" + userId +
                ", url='" + url + '\'' +
                '}';
    }
}


controller:


package com.demo.controller;


import com.demo.common.Result;
import com.demo.entity.DailySummary;
import com.demo.service.DailySummariesService;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/daily")
public class DailySummariesController {

    @Resource
    private DailySummariesService dailySummariesService;


    @PostMapping("/add")
    //    @RequestBody 把前端传来的json字符串映射成java对象或者数组
    public Result add(@RequestBody DailySummary dailySummary){
        dailySummariesService.add(dailySummary);
        return Result.success();
    }

    @GetMapping("/selectAll/{userId}")
    public Result selectAll(@PathVariable int userId) {
        List<DailySummary> list = dailySummariesService.selectByUserId(userId);
        return Result.success(list);
    }
}

service:

package com.demo.service;


import com.demo.entity.DailySummary;
import com.demo.mapper.DailySummariesMapper;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class DailySummariesService {

    @Resource
    private DailySummariesMapper dailySummariesMapper;


    public void add(DailySummary dailySummary) {
        dailySummariesMapper.add(dailySummary);
    }

    public List<DailySummary> selectByUserId(int userId) {
        return dailySummariesMapper.selectByUserId(userId);
    }
}

mapper:

package com.demo.mapper;

import com.demo.entity.DailySummary;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface DailySummariesMapper {


    void add(DailySummary dailySummary);

    @Select("select * from daily_summaries where user_id = #{userId}")
    List<DailySummary> selectByUserId(int userId);
}


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.demo.mapper.DailySummariesMapper">


    <insert id="add" parameterType="com.demo.entity.DailySummary" useGeneratedKeys="true" keyProperty="id">
        INSERT INTO daily_summaries (
            user_id,
            url
        ) VALUES (
                     #{userId},
                     #{url}
                 )
    </insert>


</mapper>

DailyLog:
entity:


package com.demo.entity;

import java.math.BigDecimal;
import java.util.Date;

public class DailyLog {
    
    private int id;
    private Date date;
    private BigDecimal estimate;
    private String analysis;
    private String codingStandard;
    private String designDetails;
    private String code;
    private String workloadMeasurement;
    private String postmortemAnalysis;
    private String improvementPlan;
    private BigDecimal totalHours;
    private int userId; // 添加用户ID字段用于关联

    // getter 和 setter 方法
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public BigDecimal getEstimate() {
        return estimate;
    }

    public void setEstimate(BigDecimal estimate) {
        this.estimate = estimate;
    }

    public String getAnalysis() {
        return analysis;
    }

    public void setAnalysis(String analysis) {
        this.analysis = analysis;
    }

    public String getCodingStandard() {
        return codingStandard;
    }

    public void setCodingStandard(String codingStandard) {
        this.codingStandard = codingStandard;
    }

    public String getDesignDetails() {
        return designDetails;
    }

    public void setDesignDetails(String designDetails) {
        this.designDetails = designDetails;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getWorkloadMeasurement() {
        return workloadMeasurement;
    }

    public void setWorkloadMeasurement(String workloadMeasurement) {
        this.workloadMeasurement = workloadMeasurement;
    }

    public String getPostmortemAnalysis() {
        return postmortemAnalysis;
    }

    public void setPostmortemAnalysis(String postmortemAnalysis) {
        this.postmortemAnalysis = postmortemAnalysis;
    }

    public String getImprovementPlan() {
        return improvementPlan;
    }

    public void setImprovementPlan(String improvementPlan) {
        this.improvementPlan = improvementPlan;
    }

    public BigDecimal getTotalHours() {
        return totalHours;
    }

    public void setTotalHours(BigDecimal totalHours) {
        this.totalHours = totalHours;
    }

    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    @Override
    public String toString() {
        return "DailyLog{" +
                "id='" + id + '\'' +
                ", date=" + date +
                ", estimate=" + estimate +
                ", analysis='" + analysis + '\'' +
                ", codingStandard='" + codingStandard + '\'' +
                ", designDetails='" + designDetails + '\'' +
                ", code='" + code + '\'' +
                ", workloadMeasurement='" + workloadMeasurement + '\'' +
                ", postmortemAnalysis='" + postmortemAnalysis + '\'' +
                ", improvementPlan='" + improvementPlan + '\'' +
                ", totalHours=" + totalHours +
                ", userId=" + userId +
                '}';
    }
}

controller:

package com.demo.controller;

import com.demo.common.Result;
import com.demo.entity.DailyLog;
import com.demo.service.DailyLogService;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/dailyLog")
public class DailyLogController {

    @Resource
    private DailyLogService dailyLogService;

    @PostMapping("/add")
    public Result add(@RequestBody DailyLog dailyLog) {
        dailyLogService.add(dailyLog);
        return Result.success();
    }

    @GetMapping("/selectAll/{userId}")
    public Result selectAll(@PathVariable int userId) {
        List<DailyLog> list = dailyLogService.selectByUserId(userId);
        return Result.success(list);
    }

}

service:

package com.demo.service;

import com.demo.entity.DailyLog;
import com.demo.mapper.DailyLogMapper;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.UUID;

@Service
public class DailyLogService {

    @Resource
    private DailyLogMapper dailyLogMapper;

    // 添加日志,自动生成ID
    public void add(DailyLog dailyLog) {
        dailyLogMapper.add(dailyLog);
    }

    // 根据用户ID查询所有日志
    public List<DailyLog> selectByUserId(int userId) {
        return dailyLogMapper.selectByUserId(userId);
    }

}

mapper:


package com.demo.mapper;

import com.demo.entity.DailyLog;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface DailyLogMapper {
    
    // 添加日志记录
    void add(DailyLog dailyLog);
    
    // 根据用户ID查询所有日志
    @Select("select * from daily_log where user_id = #{userId}")
    List<DailyLog> selectByUserId(int userId);

}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.demo.mapper.DailyLogMapper">

    <insert id="add" parameterType="com.demo.entity.DailyLog">
        INSERT INTO daily_log (
            date,
            estimate,
            analysis,
            coding_standard,
            design_details,
            code,
            workload_measurement,
            postmortem_analysis,
            improvement_plan,
            total_hours,
            user_id
        ) VALUES (
            #{date},
            #{estimate},
            #{analysis},
            #{codingStandard},
            #{designDetails},
            #{code},
            #{workloadMeasurement},
            #{postmortemAnalysis},
            #{improvementPlan},
            #{totalHours},
            #{userId}
        )
    </insert>

</mapper>

posted @ 2025-03-27 23:31  vivi_vimi  阅读(9)  评论(0)    收藏  举报