流程思路
api.js前端调用接口
// 查询日期安排列表
export function getDateList() {
return request({
url: 'pro/detail/dateList',
method: 'get',
})
}
domain.java
package com.ruoyi.pro.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.xxx.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import com.xxx.common.core.domain.BaseEntity;
/**
* 项目详情对象 sys_pro_detail
*实体类准备
*/
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sys_pro_detail")
public class SysProDetail implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 详情id
*/
@TableId(value = "id", type = IdType.ASSIGN_UUID)
private String id;
/**
* 项目id
*/
@Excel(name = "项目id")
private String proId;
/**
* 用户id
*/
@Excel(name = "用户id")
private Long userId;
/**
* 出勤日期
*/
@Excel(name = "出勤日期", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date start;
/**
* 项目名称
*/
@Excel(name = "项目名称")
private String title;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getProId() {
return proId;
}
public void setProId(String proId) {
this.proId = proId;
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public Date getStart() {
return start;
}
public void setStart(Date start) {
this.start = start;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
Controller.java
@RestController
@RequestMapping("/pro/detail") //接口路径
public class SysProDetailController extends BaseController {
@Autowired
private ISysProDetailService iSysProDetailService;
/**
* 查询日期
*/
@GetMapping("/dateList")
public AjaxResult getDateList() {
return AjaxResult.success(iSysProDetailService.selectDateList()); //调用service层方法
}
}
Service.java
public interface ISysProDetailService extends IService<SysProDetail> {
List<SysProDetail> selectDateList(); //注意方法名和Cotroller调用的一致,包括参数等
}
ServiceImpl.java
@Service
public class SysProDetailServiceImpl extends ServiceImpl<SysProDetailMapper, SysProDetail> implements ISysProDetailService {
@Autowired
public SysProDetailMapper sysProDetailMapper;
@Override
public List<SysProDetail> selectDateList() {
// 获取当前的用户信息
LoginUser currentUser = SecurityUtils.getLoginUser();
// 获取当前的用户名称
SysUser user = currentUser.getUser();
return sysProDetailMapper.selectDateList(user.getUserId());
}
}
Mapper.java
public interface SysProDetailMapper extends BaseMapper<SysProDetail> {
List<SysProDetail> selectDateList(Long id); //名字与mapper.xml对应的id一致
}
Mapper.xml
<?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.xxx.pro.mapper.SysProDetailMapper">
<!--对应实体类 -->
<resultMap type="SysProDetail" id="SysProDetailResult">
<result property="id" column="id"/>
<result property="proId" column="pro_id"/>
<result property="userId" column="user_id"/>
<result property="start" column="start"/>
<result property="title" column="title"/>
</resultMap>
<select id="selectDateList" parameterType="Long" resultMap="SysProDetailResult">
select spd.id,spd.pro_id,spd.start,spd.title from sys_pro_detail spd where spd.user_id = #{userId}
</select>
</mapper>
小结
这里可以根据开篇的流程图进行对照,需要先准备对应数据库,才能写domin,接下来就可以一步一步按照流程图的格式跑了。这里写的只是示例格式,还有很多运行文件,单纯的CV是跑不通的- -。