Browse Source

任务相关接口

tall3
ma 4 years ago
parent
commit
d91a17e97e
  1. 41
      common/src/main/java/com/ccsens/common/api/ProjectController.java
  2. 64
      common/src/main/java/com/ccsens/common/api/TaskController.java
  3. 19
      common/src/main/java/com/ccsens/common/bean/dto/ProjectDto.java
  4. 61
      common/src/main/java/com/ccsens/common/bean/dto/TaskDto.java
  5. 22
      common/src/main/java/com/ccsens/common/bean/po/ProTaskPanelInfo.java
  6. 120
      common/src/main/java/com/ccsens/common/bean/po/ProTaskPanelInfoExample.java
  7. 22
      common/src/main/java/com/ccsens/common/bean/po/ProTaskPlugin.java
  8. 120
      common/src/main/java/com/ccsens/common/bean/po/ProTaskPluginExample.java
  9. 40
      common/src/main/java/com/ccsens/common/bean/vo/ProjectVo.java
  10. 80
      common/src/main/java/com/ccsens/common/bean/vo/TaskVo.java
  11. 20
      common/src/main/java/com/ccsens/common/persist/dao/ProMemberDao.java
  12. 19
      common/src/main/java/com/ccsens/common/persist/dao/ProProjectDao.java
  13. 11
      common/src/main/java/com/ccsens/common/persist/dao/ProRoleDao.java
  14. 21
      common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java
  15. 21
      common/src/main/java/com/ccsens/common/persist/dao/ProRoleRepulsionDao.java
  16. 29
      common/src/main/java/com/ccsens/common/persist/dao/ProTaskDetailDao.java
  17. 21
      common/src/main/java/com/ccsens/common/persist/dao/ProTaskPluginDao.java
  18. 19
      common/src/main/java/com/ccsens/common/service/CommonService.java
  19. 17
      common/src/main/java/com/ccsens/common/service/IProjectService.java
  20. 27
      common/src/main/java/com/ccsens/common/service/ITaskService.java
  21. 36
      common/src/main/java/com/ccsens/common/service/ProjectService.java
  22. 138
      common/src/main/java/com/ccsens/common/service/TaskService.java
  23. 16
      common/src/main/resources/mapper_dao/ProMemberDao.xml
  24. 28
      common/src/main/resources/mapper_dao/ProProjectDao.xml
  25. 10
      common/src/main/resources/mapper_dao/ProRoleDao.xml
  26. 14
      common/src/main/resources/mapper_dao/ProRoleMemberDao.xml
  27. 15
      common/src/main/resources/mapper_dao/ProRoleRepulsionDao.xml
  28. 133
      common/src/main/resources/mapper_dao/ProTaskDetailDao.xml
  29. 20
      common/src/main/resources/mapper_dao/ProTaskPluginDao.xml
  30. 42
      common/src/main/resources/mapper_raw/ProTaskPanelInfoMapper.xml
  31. 44
      common/src/main/resources/mapper_raw/ProTaskPluginMapper.xml

41
common/src/main/java/com/ccsens/common/api/ProjectController.java

@ -0,0 +1,41 @@
package com.ccsens.common.api;
import com.ccsens.common.bean.dto.ProjectDto;
import com.ccsens.common.bean.vo.ProjectVo;
import com.ccsens.common.service.IProjectService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* @author ma
*/
@Api(tags = "项目相关接口", description = "ProjectController | 项目相关接口")
@RestController
@Slf4j
@RequestMapping("/project")
public class ProjectController {
@Resource
private IProjectService projectService;
@ApiOperation(value = "根据id查询项目信息", notes = "根据id查询项目信息")
@RequestMapping(value = "/findProjectById", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<ProjectVo.ProjectInfo> findProjectById(@ApiParam @Validated @RequestBody QueryDto<ProjectDto.ProjectById> params) throws Exception{
log.info("根据id查询项目信息:{}",params);
ProjectVo.ProjectInfo projectInfo = projectService.findProjectById(params.getParam(),params.getUserId());
log.info("根据id查询项目信息");
return JsonResponse.newInstance().ok(projectInfo);
}
}

64
common/src/main/java/com/ccsens/common/api/TaskController.java

@ -0,0 +1,64 @@
package com.ccsens.common.api;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.common.bean.dto.TaskDto;
import com.ccsens.common.bean.vo.TaskVo;
import com.ccsens.common.service.ITaskService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
* @author
*/
@Api(tags = "DEBUG" , description = "DebugController | ")
@RestController
@RequestMapping("/task")
@Slf4j
public class TaskController {
@Resource
private ITaskService taskService;
@MustLogin
@ApiOperation(value = "查找永久日常任务", notes = "")
@RequestMapping(value = "/permanent", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<TaskVo.QueryTask>> queryPermanentGlobalTask(@ApiParam @Validated @RequestBody QueryDto<TaskDto.QueryPermanentGlobalTask> params) {
log.info("查找永久日常任务开始{}",params);
List<TaskVo.QueryTask> permanentGlobalTaskList = taskService.queryPermanentGlobalTask(params.getParam(),params.getUserId());
log.info("查找永久日常任务结束{}",permanentGlobalTaskList);
return JsonResponse.newInstance().ok(permanentGlobalTaskList);
}
@MustLogin
@ApiOperation(value = "查找带时间的日常任务", notes = "")
@RequestMapping(value = "/global", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<TaskVo.QueryTask>> queryGlobalTask(@ApiParam @Validated @RequestBody QueryDto<TaskDto.QueryGlobalTask> params) {
log.info("查找带时间的日常任务开始{}",params);
List<TaskVo.QueryTask> globalTask = taskService.queryGlobalTask(params.getParam(),params.getUserId());
log.info("查找带时间的日常任务结束{}",globalTask);
return JsonResponse.newInstance().ok(globalTask);
}
@MustLogin
@ApiOperation(value = "查找带时间的定期任务", notes = "")
@RequestMapping(value = "/regular", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<TaskVo.QueryTask>> queryRegularTask(@ApiParam @Validated @RequestBody QueryDto<TaskDto.QueryRegularTask> params) {
log.info("查找带时间的定期任务开始{}",params);
log.info("查找带时间的定期任务结束{}");
return JsonResponse.newInstance().ok();
}
}

19
common/src/main/java/com/ccsens/common/bean/dto/ProjectDto.java

@ -0,0 +1,19 @@
package com.ccsens.common.bean.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
@Data
public class ProjectDto {
@Data
@ApiModel("根据id查找项目信息")
public static class ProjectById {
@NotNull(message = "请选择项目")
@ApiModelProperty("项目id")
private Long projectId;
}
}

61
common/src/main/java/com/ccsens/common/bean/dto/TaskDto.java

@ -0,0 +1,61 @@
package com.ccsens.common.bean.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @author
*/
@Data
public class TaskDto {
@Data
@ApiModel("查看永久日常任务")
public static class QueryPermanentGlobalTask{
@NotNull(message = "角色id不能为空")
@ApiModelProperty("角色id")
private Long roleId;
}
@Data
@ApiModel("查看带时间的日常任务")
public static class QueryGlobalTask{
@NotNull(message = "角色id不能为空")
@ApiModelProperty("角色id")
private Long roleId;
@ApiModelProperty("时间基准点 默认当前")
private Long timeNode = System.currentTimeMillis();
@ApiModelProperty("时间基准点 默认天")
private int timeUnit = 4;
}
@Data
@ApiModel("查看定期任务")
public static class QueryRegularTask{
@NotNull(message = "角色id不能为空")
@ApiModelProperty("角色id")
private Long roleId;
@ApiModelProperty("时间基准点 默认当前")
private Long timeNode = System.currentTimeMillis();
@ApiModelProperty("时间基准点 默认天")
private int timeUnit;
@ApiModelProperty("0向上查找 1向下查找(默认) 下查包含自己,上查不包含")
private int queryType = 1;
@ApiModelProperty("查找颗粒度数量 默认3个")
private int queryNum = 3;
}
@Data
@ApiModel("修改任务状态")
public static class UpdateTaskType{
@NotNull(message = "任务id不能为空")
@ApiModelProperty("任务分解id")
private Long id;
@ApiModelProperty("0开始 1暂停 2继续 3完成 默认0")
private int type;
}
}

22
common/src/main/java/com/ccsens/common/bean/po/ProTaskPanelInfo.java

@ -26,6 +26,10 @@ public class ProTaskPanelInfo implements Serializable {
private Byte recStatus;
private Integer row;
private Integer col;
private static final long serialVersionUID = 1L;
public Long getId() {
@ -116,6 +120,22 @@ public class ProTaskPanelInfo implements Serializable {
this.recStatus = recStatus;
}
public Integer getRow() {
return row;
}
public void setRow(Integer row) {
this.row = row;
}
public Integer getCol() {
return col;
}
public void setCol(Integer col) {
this.col = col;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
@ -133,6 +153,8 @@ public class ProTaskPanelInfo implements Serializable {
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append(", row=").append(row);
sb.append(", col=").append(col);
sb.append("]");
return sb.toString();
}

120
common/src/main/java/com/ccsens/common/bean/po/ProTaskPanelInfoExample.java

@ -824,6 +824,126 @@ public class ProTaskPanelInfoExample {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andRowIsNull() {
addCriterion("row is null");
return (Criteria) this;
}
public Criteria andRowIsNotNull() {
addCriterion("row is not null");
return (Criteria) this;
}
public Criteria andRowEqualTo(Integer value) {
addCriterion("row =", value, "row");
return (Criteria) this;
}
public Criteria andRowNotEqualTo(Integer value) {
addCriterion("row <>", value, "row");
return (Criteria) this;
}
public Criteria andRowGreaterThan(Integer value) {
addCriterion("row >", value, "row");
return (Criteria) this;
}
public Criteria andRowGreaterThanOrEqualTo(Integer value) {
addCriterion("row >=", value, "row");
return (Criteria) this;
}
public Criteria andRowLessThan(Integer value) {
addCriterion("row <", value, "row");
return (Criteria) this;
}
public Criteria andRowLessThanOrEqualTo(Integer value) {
addCriterion("row <=", value, "row");
return (Criteria) this;
}
public Criteria andRowIn(List<Integer> values) {
addCriterion("row in", values, "row");
return (Criteria) this;
}
public Criteria andRowNotIn(List<Integer> values) {
addCriterion("row not in", values, "row");
return (Criteria) this;
}
public Criteria andRowBetween(Integer value1, Integer value2) {
addCriterion("row between", value1, value2, "row");
return (Criteria) this;
}
public Criteria andRowNotBetween(Integer value1, Integer value2) {
addCriterion("row not between", value1, value2, "row");
return (Criteria) this;
}
public Criteria andColIsNull() {
addCriterion("col is null");
return (Criteria) this;
}
public Criteria andColIsNotNull() {
addCriterion("col is not null");
return (Criteria) this;
}
public Criteria andColEqualTo(Integer value) {
addCriterion("col =", value, "col");
return (Criteria) this;
}
public Criteria andColNotEqualTo(Integer value) {
addCriterion("col <>", value, "col");
return (Criteria) this;
}
public Criteria andColGreaterThan(Integer value) {
addCriterion("col >", value, "col");
return (Criteria) this;
}
public Criteria andColGreaterThanOrEqualTo(Integer value) {
addCriterion("col >=", value, "col");
return (Criteria) this;
}
public Criteria andColLessThan(Integer value) {
addCriterion("col <", value, "col");
return (Criteria) this;
}
public Criteria andColLessThanOrEqualTo(Integer value) {
addCriterion("col <=", value, "col");
return (Criteria) this;
}
public Criteria andColIn(List<Integer> values) {
addCriterion("col in", values, "col");
return (Criteria) this;
}
public Criteria andColNotIn(List<Integer> values) {
addCriterion("col not in", values, "col");
return (Criteria) this;
}
public Criteria andColBetween(Integer value1, Integer value2) {
addCriterion("col between", value1, value2, "col");
return (Criteria) this;
}
public Criteria andColNotBetween(Integer value1, Integer value2) {
addCriterion("col not between", value1, value2, "col");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {

22
common/src/main/java/com/ccsens/common/bean/po/ProTaskPlugin.java

@ -22,6 +22,10 @@ public class ProTaskPlugin implements Serializable {
private Byte recStatus;
private Integer colspan;
private Integer rowspan;
private static final long serialVersionUID = 1L;
public Long getId() {
@ -96,6 +100,22 @@ public class ProTaskPlugin implements Serializable {
this.recStatus = recStatus;
}
public Integer getColspan() {
return colspan;
}
public void setColspan(Integer colspan) {
this.colspan = colspan;
}
public Integer getRowspan() {
return rowspan;
}
public void setRowspan(Integer rowspan) {
this.rowspan = rowspan;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
@ -111,6 +131,8 @@ public class ProTaskPlugin implements Serializable {
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append(", colspan=").append(colspan);
sb.append(", rowspan=").append(rowspan);
sb.append("]");
return sb.toString();
}

120
common/src/main/java/com/ccsens/common/bean/po/ProTaskPluginExample.java

@ -654,6 +654,126 @@ public class ProTaskPluginExample {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andColspanIsNull() {
addCriterion("colspan is null");
return (Criteria) this;
}
public Criteria andColspanIsNotNull() {
addCriterion("colspan is not null");
return (Criteria) this;
}
public Criteria andColspanEqualTo(Integer value) {
addCriterion("colspan =", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanNotEqualTo(Integer value) {
addCriterion("colspan <>", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanGreaterThan(Integer value) {
addCriterion("colspan >", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanGreaterThanOrEqualTo(Integer value) {
addCriterion("colspan >=", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanLessThan(Integer value) {
addCriterion("colspan <", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanLessThanOrEqualTo(Integer value) {
addCriterion("colspan <=", value, "colspan");
return (Criteria) this;
}
public Criteria andColspanIn(List<Integer> values) {
addCriterion("colspan in", values, "colspan");
return (Criteria) this;
}
public Criteria andColspanNotIn(List<Integer> values) {
addCriterion("colspan not in", values, "colspan");
return (Criteria) this;
}
public Criteria andColspanBetween(Integer value1, Integer value2) {
addCriterion("colspan between", value1, value2, "colspan");
return (Criteria) this;
}
public Criteria andColspanNotBetween(Integer value1, Integer value2) {
addCriterion("colspan not between", value1, value2, "colspan");
return (Criteria) this;
}
public Criteria andRowspanIsNull() {
addCriterion("rowspan is null");
return (Criteria) this;
}
public Criteria andRowspanIsNotNull() {
addCriterion("rowspan is not null");
return (Criteria) this;
}
public Criteria andRowspanEqualTo(Integer value) {
addCriterion("rowspan =", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanNotEqualTo(Integer value) {
addCriterion("rowspan <>", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanGreaterThan(Integer value) {
addCriterion("rowspan >", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanGreaterThanOrEqualTo(Integer value) {
addCriterion("rowspan >=", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanLessThan(Integer value) {
addCriterion("rowspan <", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanLessThanOrEqualTo(Integer value) {
addCriterion("rowspan <=", value, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanIn(List<Integer> values) {
addCriterion("rowspan in", values, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanNotIn(List<Integer> values) {
addCriterion("rowspan not in", values, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanBetween(Integer value1, Integer value2) {
addCriterion("rowspan between", value1, value2, "rowspan");
return (Criteria) this;
}
public Criteria andRowspanNotBetween(Integer value1, Integer value2) {
addCriterion("rowspan not between", value1, value2, "rowspan");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {

40
common/src/main/java/com/ccsens/common/bean/vo/ProjectVo.java

@ -0,0 +1,40 @@
package com.ccsens.common.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @author AUSU
*/
@Data
public class ProjectVo {
@Data
@ApiModel("项目信息")
public static class ProjectInfo{
@ApiModelProperty("项目id(任务详情id)")
private Long id;
@ApiModelProperty("项目名称")
private String name;
@ApiModelProperty("项目描述")
private String description;
@ApiModelProperty("重复频率")
private String cycle;
@ApiModelProperty("重复频率")
private String planStartTime;
@ApiModelProperty("重复频率")
private String planDuration;
@ApiModelProperty("重复频率")
private String planEndTime;
@ApiModelProperty("重复频率")
private String realStartTime;
@ApiModelProperty("重复频率")
private String realDuration;
@ApiModelProperty("重复频率")
private String realEndTime;
}
}

80
common/src/main/java/com/ccsens/common/bean/vo/TaskVo.java

@ -0,0 +1,80 @@
package com.ccsens.common.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class TaskVo {
@Data
@ApiModel("查看定期任务返回值")
public static class QueryTask{
@ApiModelProperty("任务id(任务分解id)")
private Long id;
@ApiModelProperty("详情id")
private Long detailId;
@ApiModelProperty("任务名")
private String name;
@ApiModelProperty("任务详情")
private String description;
@ApiModelProperty("计划开始时间")
private Long planStart;
@ApiModelProperty("计划时长")
private Long planDuration;
@ApiModelProperty("实际开始时间")
private Long realStart;
@ApiModelProperty("实际时长")
private Long realDuration;
@ApiModelProperty("任务状态 0未开始 1进行中 2暂停中 3已完成")
private int process;
@ApiModelProperty("任务流转策略 -1不跳转 0直接跳转 如果是其他正整数 就是多少毫秒后跳转 ")
private Long skip;
@ApiModelProperty("跳转的任务id")
private Long skipTaskId;
@ApiModelProperty("任务面板")
private PanelInfo panel;
@ApiModelProperty("插件")
private List<List<TaskPluginInfo>> plugins;
}
@Data
@ApiModel("任务面板信息")
public static class PanelInfo{
@ApiModelProperty("背景色")
private String backgroundColor;
@ApiModelProperty("圆角")
private String borderRadius;
@ApiModelProperty("边框")
private String border;
@ApiModelProperty("阴影")
private String shadow;
@ApiModelProperty("宽")
private String width;
@ApiModelProperty("高")
private String height;
@ApiModelProperty("行")
private int row;
@ApiModelProperty("列")
private int col;
}
@Data
@ApiModel("任务下的插件信息")
public static class TaskPluginInfo{
@ApiModelProperty("插件id")
private Long pluginId;
@ApiModelProperty("参数")
private String param;
@ApiModelProperty("行")
private int row;
@ApiModelProperty("列")
private int col;
@ApiModelProperty("跨行")
private int rowspan;
@ApiModelProperty("跨列")
private int colspan;
}
}

20
common/src/main/java/com/ccsens/common/persist/dao/ProMemberDao.java

@ -0,0 +1,20 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.persist.mapper.ProMemberMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* @author AUSU
*/
@Repository
public interface ProMemberDao extends ProMemberMapper {
/**
* 查找用户的成员id
* @param projectId 项目id
* @param userId 用户id
* @return 用户的成员id
*/
Long findUserOfMemberId(@Param("projectId") Long projectId,@Param("userId") Long userId);
}

19
common/src/main/java/com/ccsens/common/persist/dao/ProProjectDao.java

@ -0,0 +1,19 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.bean.vo.ProjectVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* @author AUSU
*/
@Repository
public interface ProProjectDao {
/**
* 根据id查找项目信息
* @param projectId 项目id(任务详情id)
* @return 项目详情
*/
ProjectVo.ProjectInfo findProjectById(@Param("projectId") Long projectId);
}

11
common/src/main/java/com/ccsens/common/persist/dao/ProRoleDao.java

@ -1,9 +1,20 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.persist.mapper.ProRoleMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* @author AUSU
*/
@Repository
public interface ProRoleDao extends ProRoleMapper {
/**
* 根据角色id查找项目id
* @param roleId 角色id
* @return 项目id
*/
Long findRoleOfProjectId(@Param("roleId") Long roleId);
}

21
common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java

@ -0,0 +1,21 @@
package com.ccsens.common.persist.dao;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author AUSU
*/
@Repository
public interface ProRoleMemberDao {
/**
* 查找成员所属的所有角色
* @param memberId 成员id
* @return 所有所属角色id
*/
List<Long> findMemberOfRoleIds(@Param("memberId") Long memberId);
}

21
common/src/main/java/com/ccsens/common/persist/dao/ProRoleRepulsionDao.java

@ -0,0 +1,21 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.persist.mapper.ProRoleRepulsionMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author AUSU
*/
@Repository
public interface ProRoleRepulsionDao extends ProRoleRepulsionMapper {
/**
* 查看该角色排斥的所有角色
* @param roleId 角色id
* @return 排斥的角色id
*/
List<Long> findRepulsionByRoleId(@Param("roleId") Long roleId);
}

29
common/src/main/java/com/ccsens/common/persist/dao/ProTaskDetailDao.java

@ -0,0 +1,29 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.bean.vo.TaskVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author AUSU
*/
@Repository
public interface ProTaskDetailDao {
/**
* 根据角色查找永久日常任务
* @param roleId 角色id
* @return 永久日常任务列表
*/
List<TaskVo.QueryTask> queryPermanentGlobalTask(@Param("roleId") Long roleId);
/**
* 根据角色和时间节点查找日常任务
* @param roleId 角色id
* @param timeNode 时间节点
* @param timeUnit 时间颗粒度
* @return 日常任务列表
*/
List<TaskVo.QueryTask> queryGlobalTask(@Param("roleId") Long roleId,@Param("timeNode") Long timeNode,@Param("timeUnit") int timeUnit);
}

21
common/src/main/java/com/ccsens/common/persist/dao/ProTaskPluginDao.java

@ -0,0 +1,21 @@
package com.ccsens.common.persist.dao;
import com.ccsens.common.bean.vo.TaskVo;
import com.ccsens.common.persist.mapper.ProTaskPluginMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author AUSU
*/
@Repository
public interface ProTaskPluginDao extends ProTaskPluginMapper {
/**
* 根据任务id查询已配置的插件
* @param detailTaskId 任务详情id
* @return 插件列表
*/
List<TaskVo.TaskPluginInfo> queryTaskOfPlugin(@Param("detailTaskId") Long detailTaskId);
}

19
common/src/main/java/com/ccsens/common/service/CommonService.java

@ -0,0 +1,19 @@
package com.ccsens.common.service;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
/**
* 可复用方法
* @author AUSU
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public class CommonService {
}

17
common/src/main/java/com/ccsens/common/service/IProjectService.java

@ -0,0 +1,17 @@
package com.ccsens.common.service;
import com.ccsens.common.bean.dto.ProjectDto;
import com.ccsens.common.bean.vo.ProjectVo;
/**
* @author ma
*/
public interface IProjectService {
/**
* 根据id查询项目信息
* @param param 项目id
* @param userId 当前用户id
* @return 返回项目信息
*/
ProjectVo.ProjectInfo findProjectById(ProjectDto.ProjectById param, Long userId);
}

27
common/src/main/java/com/ccsens/common/service/ITaskService.java

@ -0,0 +1,27 @@
package com.ccsens.common.service;
import com.ccsens.common.bean.dto.TaskDto;
import com.ccsens.common.bean.vo.TaskVo;
import java.util.List;
/**
* @author ma
*/
public interface ITaskService {
/**
* 根据角色查找永久的日常任务
* @param param 角色id
* @param userId 用户id
* @return 永久日常任务列表
*/
List<TaskVo.QueryTask> queryPermanentGlobalTask(TaskDto.QueryPermanentGlobalTask param, Long userId);
/**
* 根据时间和角色查找日常任务
* @param param 角色id,时间基准点,时间颗粒度
* @param userId 用户id
* @return 日常任务列表
*/
List<TaskVo.QueryTask> queryGlobalTask(TaskDto.QueryGlobalTask param, Long userId);
}

36
common/src/main/java/com/ccsens/common/service/ProjectService.java

@ -0,0 +1,36 @@
package com.ccsens.common.service;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.common.bean.dto.ProjectDto;
import com.ccsens.common.bean.po.ProTaskDetail;
import com.ccsens.common.bean.vo.ProjectVo;
import com.ccsens.common.persist.dao.ProProjectDao;
import com.ccsens.common.persist.mapper.ProTaskDetailMapper;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
/**
* @author ma
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public class ProjectService implements IProjectService{
@Resource
private ProProjectDao projectDao;
@Override
public ProjectVo.ProjectInfo findProjectById(ProjectDto.ProjectById param, Long userId) {
ProjectVo.ProjectInfo projectById = projectDao.findProjectById(param.getProjectId());
if (ObjectUtil.isNull(projectById)){
throw new BaseException("项目不存在,请检查后再试");
}
return projectById;
}
}

138
common/src/main/java/com/ccsens/common/service/TaskService.java

@ -0,0 +1,138 @@
package com.ccsens.common.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.BooleanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.common.bean.dto.TaskDto;
import com.ccsens.common.bean.vo.TaskVo;
import com.ccsens.common.persist.dao.*;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* @author ma
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public class TaskService implements ITaskService{
@Resource
private ProRoleRepulsionDao roleRepulsionDao;
@Resource
private ProRoleDao roleDao;
@Resource
private ProRoleMemberDao roleMemberDao;
@Resource
private ProMemberDao memberDao;
@Resource
private ProTaskDetailDao taskDetailDao;
@Resource
private ProTaskPluginDao taskPluginDao;
/**
* 判断当前用户的角色是否被设置不可见(是否有权限查看任务)
* @param roleId 查看的角色id
* @param userId 用户id
* @return 是否可见(true可见,false不可见)
*/
public Boolean queryRoleIsLook(Long roleId,Long userId){
byte visitor = 0;
Long projectId = roleDao.findRoleOfProjectId(roleId);
if (ObjectUtil.isNull(projectId)){
throw new BaseException("角色信息错误!");
}
Long memberId = memberDao.findUserOfMemberId(projectId,userId);
//不是项目成员则为游客
if (ObjectUtil.isNull(memberId)){
visitor = 1;
}
//查看角色互斥表是否有对所属角色不可见
List<Long> repulsionRoleIds = roleRepulsionDao.findRepulsionByRoleId(roleId);
//如果为游客
if (1 == visitor) {
return !CollectionUtil.isNotEmpty(repulsionRoleIds);
}
//查找成员所属的所有角色
List<Long> roleIds = roleMemberDao.findMemberOfRoleIds(memberId);
if (CollectionUtil.isEmpty(roleIds)){
if (CollectionUtil.isNotEmpty(repulsionRoleIds)){
return false;
}
}
//排斥角色包含所有所属角色则不可见
if (CollectionUtil.isNotEmpty(repulsionRoleIds) && CollectionUtil.isNotEmpty(roleIds)){
boolean isLook = repulsionRoleIds.containsAll(roleIds);
return !isLook;
}
return true;
}
/**
* 查询任务的插件相关信息
* @param taskList 任务列表
*/
public void queryPluginForTask(List<TaskVo.QueryTask> taskList){
if (CollectionUtil.isNotEmpty(taskList)){
List<List<TaskVo.TaskPluginInfo>> plugins = new ArrayList<>();
for (TaskVo.QueryTask queryTask : taskList) {
if (ObjectUtil.isNotNull(queryTask.getPanel())){
int panelRow = queryTask.getPanel().getRow();
int panelCol = queryTask.getPanel().getCol();
for (int i = 0; i < panelRow; i++) {
List<TaskVo.TaskPluginInfo> pluginInfoList = new ArrayList<>();
for (int j = 0; j < panelCol; j++) {
pluginInfoList.add(null);
}
plugins.add(pluginInfoList);
}
List<TaskVo.TaskPluginInfo> taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(queryTask.getDetailId());
for (TaskVo.TaskPluginInfo taskPlugin : taskPluginInfoList) {
int pluginCol = taskPlugin.getCol();
int pluginRow = taskPlugin.getRow();
plugins.get(pluginRow - 1).set(pluginCol-1,taskPlugin);
}
}else {
List<TaskVo.TaskPluginInfo> taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(queryTask.getDetailId());
plugins.add(taskPluginInfoList);
}
queryTask.setPlugins(plugins);
}
}
}
@Override
public List<TaskVo.QueryTask> queryPermanentGlobalTask(TaskDto.QueryPermanentGlobalTask param, Long userId) {
//查找角色权限
Boolean isLook = queryRoleIsLook(param.getRoleId(),userId);
if (BooleanUtil.isFalse(isLook)){
throw new BaseException("没有查看权限!");
}
List<TaskVo.QueryTask> permanentGlobalTask = taskDetailDao.queryPermanentGlobalTask(param.getRoleId());
//查找项目面板和插件信息
queryPluginForTask(permanentGlobalTask);
return permanentGlobalTask;
}
@Override
public List<TaskVo.QueryTask> queryGlobalTask(TaskDto.QueryGlobalTask param, Long userId) {
//查找角色权限
Boolean isLook = queryRoleIsLook(param.getRoleId(),userId);
if (BooleanUtil.isFalse(isLook)){
throw new BaseException("没有查看权限!");
}
List<TaskVo.QueryTask> globalTask = taskDetailDao.queryGlobalTask(param.getRoleId(),param.getTimeNode(),param.getTimeUnit());
queryPluginForTask(globalTask);
return globalTask;
}
}

16
common/src/main/resources/mapper_dao/ProMemberDao.xml

@ -0,0 +1,16 @@
<?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.ccsens.common.persist.dao.ProMemberDao">
<select id="findUserOfMemberId" resultType="java.lang.Long">
SELECT
id
FROM
t_pro_member
WHERE
rec_status = 0
AND project_id = #{projectId}
AND user_id = #{userId}
</select>
</mapper>

28
common/src/main/resources/mapper_dao/ProProjectDao.xml

@ -0,0 +1,28 @@
<?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.ccsens.common.persist.dao.ProProjectDao">
<select id="findProjectById" resultType="com.ccsens.common.bean.vo.ProjectVo$ProjectInfo">
SELECT
d.id,
d.`name`,
d.description,
d.cycle,
s.plan_start_time,
s.plan_duration,
s.plan_end_time,
s.real_start_time,
s.real_duration,
s.real_end_time
FROM
t_pro_task_detail AS d
LEFT JOIN t_pro_task_sub AS s ON d.id = s.task_detail_id
WHERE
d.rec_status = 0
AND s.rec_status = 0
AND d.id = #{projectId}
ORDER BY
s.plan_start_time DESC
LIMIT 1
</select>
</mapper>

10
common/src/main/resources/mapper_dao/ProRoleDao.xml

@ -13,4 +13,14 @@
<select id="findRoleOfProjectId" resultType="java.lang.Long">
SELECT
project_id
FROM
t_pro_role
WHERE
rec_status = 0
AND id = #{roleId}
</select>
</mapper>

14
common/src/main/resources/mapper_dao/ProRoleMemberDao.xml

@ -0,0 +1,14 @@
<?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.ccsens.common.persist.dao.ProRoleMemberDao">
<select id="findMemberOfRoleIds" resultType="java.lang.Long">
SELECT
role_id
FROM
t_pro_role_member
WHERE
rec_status = 0
AND member_id = #{memberId}
</select>
</mapper>

15
common/src/main/resources/mapper_dao/ProRoleRepulsionDao.xml

@ -0,0 +1,15 @@
<?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.ccsens.common.persist.dao.ProRoleRepulsionDao">
<select id="findRepulsionByRoleId" resultType="java.lang.Long">
SELECT
repulsion_role_id
FROM
t_pro_role_repulsion
WHERE
rec_status = 0
AND role_id = #{roleId}
</select>
</mapper>

133
common/src/main/resources/mapper_dao/ProTaskDetailDao.xml

@ -0,0 +1,133 @@
<?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.ccsens.common.persist.dao.ProTaskDetailDao">
<resultMap id="queryTask" type="com.ccsens.common.bean.vo.TaskVo$QueryTask">
<id column="id" property="id"/>
<result column="detailId" property="detailId"/>
<result column="name" property="name"/>
<result column="description" property="description"/>
<result column="planStart" property="planStart"/>
<result column="plan_duration" property="planDuration"/>
<result column="real_start_time" property="realStart"/>
<result column="real_duration" property="realDuration"/>
<result column="process" property="process"/>
<result column="skip" property="skip"/>
<result column="skipTaskId" property="skipTaskId"/>
<collection property="panel" ofType="com.ccsens.common.bean.vo.TaskVo$PanelInfo">
<result column="backgroundColor" property="backgroundColor"/>
<result column="borderRadius" property="borderRadius"/>
<result column="border" property="border"/>
<result column="shadow" property="shadow"/>
<result column="width" property="width"/>
<result column="height" property="height"/>
<result column="row" property="row"/>
<result column="col" property="col"/>
</collection>
</resultMap>
<select id="queryPermanentGlobalTask" resultMap="queryTask">
SELECT
ts.id,
td.id AS detailId,
td.`name`,
td.description,
ts.plan_start_time AS planStart,
ts.plan_duration,
ts.real_start_time AS realStart,
ts.real_duration,
ts.task_status AS process,
tf.flow_type AS skip,
tf.jump_task_detail_id AS skipTaskId,
tpi.back_color AS backgroundColor,
tpi.round_corner AS borderRadius,
tpi.border AS border,
tpi.shadow AS shadow,
tpi.width AS width,
tpi.height AS height,
tpi.`row` AS `row`,
tpi.col AS col
FROM
t_pro_task_detail AS td
LEFT JOIN t_pro_task_sub AS ts ON ts.task_detail_id = td.id
LEFT JOIN t_pro_task_flow AS tf ON tf.task_detail_id = td.id AND tf.rec_status = 0
LEFT JOIN t_pro_role_task AS rt ON rt.task_id = td.id
LEFT JOIN t_pro_task_panel_info AS tpi ON tpi.task_detail_id = td.id AND tpi.rec_status = 0
LEFT JOIN t_label_business AS lb ON td.id = lb.business_id
LEFT JOIN t_label AS l ON l.id = lb.label_id
LEFT JOIN t_label_type AS lt ON lt.id = l.label_type_id
WHERE
td.rec_status = 0 AND ts.rec_status = 0 AND lb.rec_status = 0 AND l.rec_status = 0 AND lt.rec_status = 0 AND rt.rec_status = 0
AND lb.business_type = 0
AND l.`level` = 2
AND lt.label_type = 1
AND ts.plan_start_time = 0
AND ts.plan_duration = 0
AND rt.role_id = #{roleId}
</select>
<select id="queryGlobalTask" resultType="com.ccsens.common.bean.vo.TaskVo$QueryTask">
SELECT
alltask.*
FROM
(
SELECT
ts.id,
td.id AS detailId,
td.`name`,
td.description,
ts.plan_start_time AS planStart,
ts.plan_duration,
ts.real_start_time AS realStart,
ts.real_duration,
ts.task_status AS process,
tf.flow_type AS skip,
tf.jump_task_detail_id AS skipTaskId,
tpi.back_color AS backgroundColor,
tpi.round_corner AS borderRadius,
tpi.border AS border,
tpi.shadow AS shadow,
tpi.width AS width,
tpi.height AS height,
tpi.`row` AS `row`,
tpi.col AS col
FROM
t_pro_task_detail AS td
LEFT JOIN t_pro_task_sub AS ts ON ts.task_detail_id = td.id
LEFT JOIN t_pro_task_flow AS tf ON tf.task_detail_id = td.id
AND tf.rec_status = 0
LEFT JOIN t_pro_role_task AS rt ON rt.task_id = td.id
LEFT JOIN t_pro_task_panel_info AS tpi ON tpi.task_detail_id = td.id
AND tpi.rec_status = 0
LEFT JOIN t_label_business AS lb ON td.id = lb.business_id
LEFT JOIN t_label AS l ON l.id = lb.label_id
LEFT JOIN t_label_type AS lt ON lt.id = l.label_type_id
WHERE
td.rec_status = 0
AND ts.rec_status = 0
AND lb.rec_status = 0
AND l.rec_status = 0
AND lt.rec_status = 0
AND rt.rec_status = 0
AND lb.business_type = 0
AND l.`level` = 2
AND lt.label_type = 1
AND ts.plan_start_time != 0
AND ts.plan_duration != 0
AND rt.role_id = #{roleId}
AND ts.plan_start_time &lt;= #{timeNode}
AND ts.plan_end_time &gt;= #{timeNode}
) AS alltask
LEFT JOIN t_label_business AS llbb ON alltask.detailId = llbb.business_id
LEFT JOIN t_label AS ll ON llbb.label_id = ll.id
LEFT JOIN t_label_type AS lltt ON ll.label_type_id = lltt.id
WHERE
llbb.rec_status = 0
AND ll.rec_status = 0
AND lltt.rec_status = 0
AND lltt.label_type = 0
AND llbb.business_type = 0
AND ll.`level` >= #{timeUnit}
</select>
</mapper>

20
common/src/main/resources/mapper_dao/ProTaskPluginDao.xml

@ -0,0 +1,20 @@
<?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.ccsens.common.persist.dao.ProTaskPluginDao">
<select id="queryTaskOfPlugin" resultType="com.ccsens.common.bean.vo.TaskVo$TaskPluginInfo">
SELECT
tp.plugin_id AS pluginId,
tp.param As param,
tp.plgin_row AS `row`,
tp.plgin_col AS col,
tp.colspan AS colspan,
tp.rowspan AS rowspan
FROM
t_pro_task_plugin AS tp
LEFT JOIN t_pro_task_detail AS td ON td.id = tp.task_detail_id
WHERE td.rec_status = 0 AND tp.rec_status = 0
AND tp.task_detail_id = #{detailTaskId}
</select>
</mapper>

42
common/src/main/resources/mapper_raw/ProTaskPanelInfoMapper.xml

@ -13,6 +13,8 @@
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="row" jdbcType="INTEGER" property="row" />
<result column="col" jdbcType="INTEGER" property="col" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -74,7 +76,7 @@
</sql>
<sql id="Base_Column_List">
id, task_detail_id, back_color, round_corner, border, shadow, width, height, created_at,
updated_at, rec_status
updated_at, rec_status, row, col
</sql>
<select id="selectByExample" parameterType="com.ccsens.common.bean.po.ProTaskPanelInfoExample" resultMap="BaseResultMap">
select
@ -110,11 +112,13 @@
insert into t_pro_task_panel_info (id, task_detail_id, back_color,
round_corner, border, shadow,
width, height, created_at,
updated_at, rec_status)
updated_at, rec_status, row,
col)
values (#{id,jdbcType=BIGINT}, #{taskDetailId,jdbcType=BIGINT}, #{backColor,jdbcType=VARCHAR},
#{roundCorner,jdbcType=VARCHAR}, #{border,jdbcType=VARCHAR}, #{shadow,jdbcType=VARCHAR},
#{width,jdbcType=VARCHAR}, #{height,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}, #{row,jdbcType=INTEGER},
#{col,jdbcType=INTEGER})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.common.bean.po.ProTaskPanelInfo">
insert into t_pro_task_panel_info
@ -152,6 +156,12 @@
<if test="recStatus != null">
rec_status,
</if>
<if test="row != null">
row,
</if>
<if test="col != null">
col,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
@ -187,6 +197,12 @@
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
<if test="row != null">
#{row,jdbcType=INTEGER},
</if>
<if test="col != null">
#{col,jdbcType=INTEGER},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.common.bean.po.ProTaskPanelInfoExample" resultType="java.lang.Long">
@ -231,6 +247,12 @@
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
<if test="record.row != null">
row = #{record.row,jdbcType=INTEGER},
</if>
<if test="record.col != null">
col = #{record.col,jdbcType=INTEGER},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
@ -248,7 +270,9 @@
height = #{record.height,jdbcType=VARCHAR},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
rec_status = #{record.recStatus,jdbcType=TINYINT},
row = #{record.row,jdbcType=INTEGER},
col = #{record.col,jdbcType=INTEGER}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
@ -286,6 +310,12 @@
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
<if test="row != null">
row = #{row,jdbcType=INTEGER},
</if>
<if test="col != null">
col = #{col,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
@ -300,7 +330,9 @@
height = #{height,jdbcType=VARCHAR},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
rec_status = #{recStatus,jdbcType=TINYINT},
row = #{row,jdbcType=INTEGER},
col = #{col,jdbcType=INTEGER}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

44
common/src/main/resources/mapper_raw/ProTaskPluginMapper.xml

@ -11,6 +11,8 @@
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="colspan" jdbcType="INTEGER" property="colspan" />
<result column="rowspan" jdbcType="INTEGER" property="rowspan" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -72,7 +74,7 @@
</sql>
<sql id="Base_Column_List">
id, param, plgin_row, plgin_col, task_detail_id, plugin_id, created_at, updated_at,
rec_status
rec_status, colspan, rowspan
</sql>
<select id="selectByExample" parameterType="com.ccsens.common.bean.po.ProTaskPluginExample" resultMap="BaseResultMap">
select
@ -107,12 +109,12 @@
<insert id="insert" parameterType="com.ccsens.common.bean.po.ProTaskPlugin">
insert into t_pro_task_plugin (id, param, plgin_row,
plgin_col, task_detail_id, plugin_id,
created_at, updated_at, rec_status
)
created_at, updated_at, rec_status,
colspan, rowspan)
values (#{id,jdbcType=BIGINT}, #{param,jdbcType=VARCHAR}, #{plginRow,jdbcType=INTEGER},
#{plginCol,jdbcType=INTEGER}, #{taskDetailId,jdbcType=BIGINT}, #{pluginId,jdbcType=BIGINT},
#{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}
)
#{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT},
#{colspan,jdbcType=INTEGER}, #{rowspan,jdbcType=INTEGER})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.common.bean.po.ProTaskPlugin">
insert into t_pro_task_plugin
@ -144,6 +146,12 @@
<if test="recStatus != null">
rec_status,
</if>
<if test="colspan != null">
colspan,
</if>
<if test="rowspan != null">
rowspan,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
@ -173,6 +181,12 @@
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
<if test="colspan != null">
#{colspan,jdbcType=INTEGER},
</if>
<if test="rowspan != null">
#{rowspan,jdbcType=INTEGER},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.common.bean.po.ProTaskPluginExample" resultType="java.lang.Long">
@ -211,6 +225,12 @@
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
<if test="record.colspan != null">
colspan = #{record.colspan,jdbcType=INTEGER},
</if>
<if test="record.rowspan != null">
rowspan = #{record.rowspan,jdbcType=INTEGER},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
@ -226,7 +246,9 @@
plugin_id = #{record.pluginId,jdbcType=BIGINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
rec_status = #{record.recStatus,jdbcType=TINYINT},
colspan = #{record.colspan,jdbcType=INTEGER},
rowspan = #{record.rowspan,jdbcType=INTEGER}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
@ -258,6 +280,12 @@
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
<if test="colspan != null">
colspan = #{colspan,jdbcType=INTEGER},
</if>
<if test="rowspan != null">
rowspan = #{rowspan,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
@ -270,7 +298,9 @@
plugin_id = #{pluginId,jdbcType=BIGINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
rec_status = #{recStatus,jdbcType=TINYINT},
colspan = #{colspan,jdbcType=INTEGER},
rowspan = #{rowspan,jdbcType=INTEGER}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
Loading…
Cancel
Save