5-26 fix
parent
3bb41be81a
commit
33bfe31895
|
|
@ -48,6 +48,12 @@ public class TaskDetailController {
|
|||
return taskListService.addTaskDetailBatch(cmds);
|
||||
}
|
||||
|
||||
@ApiOperation("编辑任务")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse<TaskDetailCO> edit(@Validated @RequestBody TaskDetailEditCmd cmd) {
|
||||
return taskListService.editTaskDetail(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("获取任务详情")
|
||||
@GetMapping("/{detailId}")
|
||||
public SingleResponse<TaskDetailInfoCO> getByDetailId(@PathVariable String detailId) {
|
||||
|
|
|
|||
|
|
@ -43,6 +43,8 @@ public class TaskListServiceImpl implements TaskListServiceI {
|
|||
private final TaskDetailSaveExe taskDetailSaveExe;
|
||||
/** 任务详情批量保存执行器 */
|
||||
private final TaskDetailSaveBatchExe taskDetailSaveBatchExe;
|
||||
/** 任务详情编辑执行器 */
|
||||
private final TaskDetailEditExe taskDetailEditExe;
|
||||
/** 任务详情关闭执行器 */
|
||||
private final TaskDetailCloseExe taskDetailCloseExe;
|
||||
/** 任务评分更新执行器 */
|
||||
|
|
@ -128,6 +130,12 @@ public class TaskListServiceImpl implements TaskListServiceI {
|
|||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse<TaskDetailCO> editTaskDetail(TaskDetailEditCmd cmd) {
|
||||
TaskDetailCO co = taskDetailEditExe.execute(cmd);
|
||||
return SingleResponse.of(co);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse<TaskDetailInfoCO> getByTaskDetailId(String detailId) {
|
||||
return taskDetailQueryExe.getByDetailId(detailId);
|
||||
|
|
|
|||
|
|
@ -107,6 +107,14 @@ public interface TaskListServiceI {
|
|||
*/
|
||||
SingleResponse<TaskDetailCO> addTaskDetailBatch(List<TaskDetailSaveCmd> cmds);
|
||||
|
||||
/**
|
||||
* 编辑任务详情(校验清单总分不超过100)
|
||||
*
|
||||
* @param cmd 任务编辑命令
|
||||
* @return 编辑后的任务详情
|
||||
*/
|
||||
SingleResponse<TaskDetailCO> editTaskDetail(TaskDetailEditCmd cmd);
|
||||
|
||||
/**
|
||||
* 根据任务详情ID获取任务详情(含所属清单信息)
|
||||
*
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
package com.zcloud.safetyDutyList.dto.tasklist;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class TaskDetailEditCmd implements Serializable {
|
||||
@ApiModelProperty(value = "任务详情UUID", required = true)
|
||||
@NotEmpty(message = "任务详情ID不能为空")
|
||||
private String taskDetailId;
|
||||
|
||||
@ApiModelProperty(value = "清单表主键ID", required = true)
|
||||
@NotEmpty(message = "清单ID不能为空")
|
||||
private String taskListId;
|
||||
|
||||
@ApiModelProperty(value = "执行内容")
|
||||
private String executeContent;
|
||||
|
||||
@ApiModelProperty(value = "反馈周期类型:1-每月 2-季度 3-半年 4-年", required = true)
|
||||
@NotNull(message = "反馈周期不能为空")
|
||||
private Integer feedbackCycleType;
|
||||
|
||||
@ApiModelProperty(value = "任务分值")
|
||||
private BigDecimal taskScore;
|
||||
}
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
fb_agg.feedback_count AS feedbackCount,
|
||||
fb_agg.current_period_feedback AS currentPeriodFeedback
|
||||
FROM safety_accountability_task_detail td
|
||||
LEFT JOIN safety_accountability_task_list tl ON td.task_list_id = tl.task_list_id
|
||||
LEFT JOIN safety_accountability_task_list tl ON td.task_list_id = tl.task_list_id AND tl.delete_enum = 'FALSE'
|
||||
LEFT JOIN department rating_dept ON td.rating_department_id = rating_dept.id
|
||||
LEFT JOIN user rating_user ON td.rating_user_id = rating_user.id
|
||||
LEFT JOIN (
|
||||
|
|
@ -22,9 +22,11 @@
|
|||
COUNT(*) AS feedback_count,
|
||||
MAX(CASE WHEN feedback_period_flag = DATE_FORMAT(NOW(), '%Y-%m') THEN 1 ELSE 0 END) AS current_period_feedback
|
||||
FROM safety_accountability_feedback
|
||||
WHERE delete_enum = 'FALSE'
|
||||
GROUP BY task_detail_id
|
||||
) fb_agg ON td.task_detail_id = fb_agg.task_detail_id
|
||||
<where>
|
||||
td.delete_enum = 'FALSE'
|
||||
<if test="params.taskListId != null and params.taskListId != ''">
|
||||
AND td.task_list_id = #{params.taskListId}
|
||||
</if>
|
||||
|
|
@ -34,7 +36,7 @@
|
|||
|
||||
<select id="listByTaskListId" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskDetailDO">
|
||||
SELECT * FROM safety_accountability_task_detail
|
||||
WHERE task_list_id = #{taskListId}
|
||||
WHERE task_list_id = #{taskListId} AND delete_enum = 'FALSE'
|
||||
ORDER BY id ASC
|
||||
</select>
|
||||
|
||||
|
|
@ -46,10 +48,10 @@
|
|||
rating_dept.name AS ratingDepartmentName,
|
||||
rating_user.name AS ratingUserName
|
||||
FROM safety_accountability_task_detail td
|
||||
LEFT JOIN safety_accountability_task_list tl ON td.task_list_id = tl.task_list_id
|
||||
LEFT JOIN safety_accountability_task_list tl ON td.task_list_id = tl.task_list_id AND tl.delete_enum = 'FALSE'
|
||||
LEFT JOIN department rating_dept ON td.rating_department_id = rating_dept.id
|
||||
LEFT JOIN user rating_user ON td.rating_user_id = rating_user.id
|
||||
WHERE td.task_detail_id = #{taskDetailId}
|
||||
WHERE td.task_detail_id = #{taskDetailId} AND td.delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<delete id="deleteByTaskListId">
|
||||
|
|
@ -58,7 +60,7 @@
|
|||
|
||||
<select id="listInProgress" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskDetailDO">
|
||||
SELECT * FROM safety_accountability_task_detail
|
||||
WHERE task_status = 1
|
||||
WHERE task_status = 1 AND delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -22,9 +22,11 @@
|
|||
COUNT(*) AS task_count,
|
||||
SUM(CASE WHEN feedback_status = 2 THEN 1 ELSE 0 END) AS has_abnormal
|
||||
FROM safety_accountability_task_detail
|
||||
WHERE delete_enum = 'FALSE'
|
||||
GROUP BY task_list_id
|
||||
) td_agg ON tl.task_list_id = td_agg.task_list_id
|
||||
<where>
|
||||
tl.delete_enum = 'FALSE'
|
||||
<if test="params.createCorpId != null">
|
||||
AND tl.create_corp_id = #{params.createCorpId}
|
||||
</if>
|
||||
|
|
@ -65,9 +67,10 @@
|
|||
COUNT(*) AS task_count,
|
||||
SUM(CASE WHEN feedback_status = 2 THEN 1 ELSE 0 END) AS has_abnormal
|
||||
FROM safety_accountability_task_detail
|
||||
WHERE delete_enum = 'FALSE'
|
||||
GROUP BY task_list_id
|
||||
) td_agg ON tl.task_list_id = td_agg.task_list_id
|
||||
WHERE tl.id = #{id}
|
||||
WHERE tl.id = #{id} and tl.delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<select id="getByTaskListId" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskListDO">
|
||||
|
|
@ -88,15 +91,16 @@
|
|||
COUNT(*) AS task_count,
|
||||
SUM(CASE WHEN feedback_status = 2 THEN 1 ELSE 0 END) AS has_abnormal
|
||||
FROM safety_accountability_task_detail
|
||||
WHERE delete_enum = 'FALSE'
|
||||
GROUP BY task_list_id
|
||||
) td_agg ON tl.task_list_id = td_agg.task_list_id
|
||||
WHERE tl.task_list_id = #{taskListId}
|
||||
WHERE tl.task_list_id = #{taskListId} and tl.delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<select id="getInfoByTaskListId" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskListDO">
|
||||
SELECT *
|
||||
FROM safety_accountability_task_list
|
||||
WHERE task_list_id = #{taskListId}
|
||||
WHERE task_list_id = #{taskListId} and delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<select id="list" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskListDO">
|
||||
|
|
@ -117,9 +121,11 @@
|
|||
COUNT(*) AS task_count,
|
||||
SUM(CASE WHEN feedback_status = 2 THEN 1 ELSE 0 END) AS has_abnormal
|
||||
FROM safety_accountability_task_detail
|
||||
WHERE delete_enum = 'FALSE'
|
||||
GROUP BY task_list_id
|
||||
) td_agg ON tl.task_list_id = td_agg.task_list_id
|
||||
<where>
|
||||
tl.delete_enum = 'FALSE'
|
||||
<if test="params.createCorpId != null">
|
||||
AND tl.create_corp_id = #{params.createCorpId}
|
||||
</if>
|
||||
|
|
@ -138,24 +144,25 @@
|
|||
|
||||
<select id="listExpiredInProgress" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskListDO">
|
||||
SELECT * FROM safety_accountability_task_list
|
||||
WHERE status = 1 AND issue_status = 1 AND (period_end_time IS NOT NULL AND period_end_time < NOW())
|
||||
WHERE status = 1 AND issue_status = 1 AND (period_end_time IS NOT NULL AND period_end_time < NOW()) AND delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<select id="listIssuedWithPeriod" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.TaskListDO">
|
||||
SELECT * FROM safety_accountability_task_list
|
||||
WHERE issue_status = 1 AND period_start_time IS NOT NULL AND period_end_time IS NOT NULL
|
||||
AND period_end_time > DATE_SUB(NOW(), INTERVAL 1 MONTH)
|
||||
AND period_end_time > DATE_SUB(NOW(), INTERVAL 1 MONTH) AND delete_enum = 'FALSE'
|
||||
</select>
|
||||
|
||||
<select id="corpStatistics" resultType="com.zcloud.safetyDutyList.persistence.dataobject.tasklist.CorpStatisticsDO">
|
||||
SELECT tl.execute_corp_id AS corpId,
|
||||
ci.corp_name AS corpName,
|
||||
COUNT(*) AS totalTaskCount,
|
||||
SUM(CASE WHEN tl.status = 2 THEN 1 ELSE 0 END) AS completedTaskCount,
|
||||
SUM(CASE WHEN tl.status = 3 THEN 1 ELSE 0 END) AS closedTaskCount
|
||||
COUNT(DISTINCT td.task_detail_id) AS totalTaskCount,
|
||||
SUM(CASE WHEN td.task_status = 2 THEN 1 ELSE 0 END) AS completedTaskCount,
|
||||
SUM(CASE WHEN td.task_status = 3 THEN 1 ELSE 0 END) AS closedTaskCount
|
||||
FROM safety_accountability_task_list tl
|
||||
LEFT JOIN safety_accountability_task_detail td ON tl.task_list_id = td.task_list_id AND td.delete_enum = 'FALSE'
|
||||
LEFT JOIN corp_info ci ON tl.execute_corp_id = ci.id
|
||||
WHERE tl.issue_status = 1
|
||||
WHERE tl.issue_status = 1 AND tl.delete_enum = 'FALSE'
|
||||
<if test="params.corpName != null and params.corpName != ''">
|
||||
AND ci.corp_name LIKE CONCAT('%', #{params.corpName}, '%')
|
||||
</if>
|
||||
|
|
@ -169,7 +176,7 @@
|
|||
COUNT(*) AS listCount
|
||||
FROM safety_accountability_task_list tl
|
||||
LEFT JOIN corp_info ci ON tl.execute_corp_id = ci.id
|
||||
WHERE tl.issue_status = 1
|
||||
WHERE tl.issue_status = 1 AND tl.delete_enum = 'FALSE'
|
||||
<if test="params.corpName != null and params.corpName != ''">
|
||||
AND ci.corp_name LIKE CONCAT('%', #{params.corpName}, '%')
|
||||
</if>
|
||||
|
|
@ -189,7 +196,7 @@
|
|||
COUNT(*) AS issueCount
|
||||
FROM safety_accountability_task_list tl
|
||||
LEFT JOIN corp_info ci ON tl.execute_corp_id = ci.id
|
||||
WHERE tl.issue_status = 1
|
||||
WHERE tl.issue_status = 1 AND tl.delete_enum = 'FALSE'
|
||||
<if test="params.corpName != null and params.corpName != ''">
|
||||
AND ci.corp_name LIKE CONCAT('%', #{params.corpName}, '%')
|
||||
</if>
|
||||
|
|
|
|||
Loading…
Reference in New Issue