维修、维修审核、报废修改

This commit is contained in:
syruan 2024-12-26 17:10:21 +08:00
parent f9cce25f3e
commit 660c43592b
7 changed files with 39 additions and 25 deletions

View File

@ -20,6 +20,9 @@ public class RepairTask {
@ApiModelProperty(value = "任务id") @ApiModelProperty(value = "任务id")
private Long taskId; private Long taskId;
@ApiModelProperty(value = "前置任务id")
private Long preTaskId;
@ApiModelProperty(value = "任务状态") @ApiModelProperty(value = "任务状态")
private Integer taskStatus; private Integer taskStatus;

View File

@ -24,6 +24,9 @@ public class ScrapApplyDetailsVO {
@Excel(name = "报废审核单号",sort = 1) @Excel(name = "报废审核单号",sort = 1)
private String scrapNum; private String scrapNum;
@ApiModelProperty(value = "维修任务单号")
private String repairTaskCode;
/** /**
* 单位名称 * 单位名称
*/ */

View File

@ -485,18 +485,21 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
String status = repairAuditDetails.get(0).getStatus(); // 1通过 2驳回 String status = repairAuditDetails.get(0).getStatus(); // 1通过 2驳回
if ("1".equals(status)) { if ("1".equals(status)) {
for (RepairAuditDetails repairAuditDetail : repairAuditDetails) { for (RepairAuditDetails repairAuditDetail : repairAuditDetails) {
// 删除repair_input_details 维修入库明细
repairInputDetailsMapper.deleteRepairInputDetailsByTaskId(repairAuditDetail.getTaskId()); repairInputDetailsMapper.deleteRepairInputDetailsByTaskId(repairAuditDetail.getTaskId());
// 查询协议ID
Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(repairAuditDetail.getTaskId()); Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(repairAuditDetail.getTaskId());
List<Long> taskIdList = new ArrayList<>(); // 查询维修审核明细
taskIdList.add(repairAuditDetail.getTaskId()); List<RepairAuditDetails> repairAuditDetailList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(Collections.singletonList(repairAuditDetail.getTaskId()));
List<RepairAuditDetails> repairAuditDetailList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(taskIdList);
batchInsertRepairInputDetails(repairAuditDetailList, agreementId); batchInsertRepairInputDetails(repairAuditDetailList, agreementId);
taskMapper.updateTaskStatus(String.valueOf(repairAuditDetail.getTaskId()), RepairTaskStatusEnum.TASK_STATUS_REVIEW.getStatus());
} }
} else if ("2".equals(status)) { } else if ("2".equals(status)) {
for (RepairAuditDetails auditDetails : repairAuditDetails) { for (RepairAuditDetails auditDetails : repairAuditDetails) {
repairApplyDetailsMapper.updateRepairApplyDetailsAfterReject( repairApplyDetailsMapper.updateRepairApplyDetailsAfterReject(
ObjectUtils.defaultIfNull(auditDetails.getRepairedNum(),0).longValue(), ObjectUtils.defaultIfNull(auditDetails.getRepairedNum(),0).longValue(),
ObjectUtils.defaultIfNull(auditDetails.getScrapNum(),0).longValue(), auditDetails.getRepairId()); ObjectUtils.defaultIfNull(auditDetails.getScrapNum(),0).longValue(), auditDetails.getRepairId());
taskMapper.updateTaskStatus(String.valueOf(auditDetails.getTaskId()), RepairTaskStatusEnum.TASK_STATUS_NO_REVIEW.getStatus());
} }
} }
@ -574,6 +577,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
inputVo.setCreateBy(SecurityUtils.getUserId().toString()); inputVo.setCreateBy(SecurityUtils.getUserId().toString());
inputList.add(inputVo); inputList.add(inputVo);
} }
// 插入维修入库明细
repairInputDetailsMapper.batchInsertRepairInputDetails(inputList); repairInputDetailsMapper.batchInsertRepairInputDetails(inputList);
} }

View File

@ -817,9 +817,9 @@ public class RepairServiceImpl implements RepairService {
// 查询维修任务的详情表 // 查询维修任务的详情表
Long oldWxTaskId = task.getTaskId(); Long oldWxTaskId = task.getTaskId();
List<RepairTaskDetails> detailsList = repairApplyDetailsMapper.getRepairDetailsWhichNotSent(oldWxTaskId); List<RepairTaskDetails> detailsList = repairApplyDetailsMapper.getRepairDetailsWhichNotSent(oldWxTaskId);
BigDecimal thisRepairedNum = detailsList.stream().map(RepairTaskDetails::getThisRepairedNum).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal thisRepairedNum = detailsList.stream().map(RepairTaskDetails::getRepairedNum).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal thisScrapNum = detailsList.stream().map(RepairTaskDetails::getThisScrapNum).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal thisScrapNum = detailsList.stream().map(RepairTaskDetails::getScrapNum).reduce(BigDecimal.ZERO, BigDecimal::add);
if (!CollectionUtils.isEmpty(detailsList) && (thisRepairedNum.add(thisScrapNum)).compareTo(BigDecimal.valueOf(0)) > 0) { if (!CollectionUtils.isEmpty(detailsList) && (thisRepairedNum.add(thisScrapNum)).compareTo(BigDecimal.ZERO) > 0) {
task.setCreateBy(loginUser.getUserid()); task.setCreateBy(loginUser.getUserid());
Long agreementId = repairMapper.getAgreementId(task); Long agreementId = repairMapper.getAgreementId(task);
// 新增tm_task表数据修饰审核任务状态是待审核 // 新增tm_task表数据修饰审核任务状态是待审核
@ -829,6 +829,8 @@ public class RepairServiceImpl implements RepairService {
// 生成维修单号 // 生成维修单号
String code = genderWxTaskCode(thisMonthMaxOrder); String code = genderWxTaskCode(thisMonthMaxOrder);
task.setRepairCode(code); task.setRepairCode(code);
// 插入之前的维修任务id标记前置任务
task.setPreTaskId(task.getTaskId());
// 注意此处将会生成新的 taskId 审核入库用的 // 注意此处将会生成新的 taskId 审核入库用的
repairMapper.addTask(task); repairMapper.addTask(task);
// 新增协议任务表tm_task_agreement--关联修饰任务与协议 // 新增协议任务表tm_task_agreement--关联修饰任务与协议
@ -837,23 +839,28 @@ public class RepairServiceImpl implements RepairService {
// 新增审计记录 // 新增审计记录
for (RepairTaskDetails details : detailsList) { for (RepairTaskDetails details : detailsList) {
RepairApplyDetails repairApplyDetails = createRepairDetailsCope(details);
repairApplyDetailsMapper.updateRepairApplyDetails(repairApplyDetails);
details.setCreateBy(String.valueOf(loginUser.getUserid()));
details.setTaskId(task.getTaskId());
details.setRepairNum(details.getRepairNum());
details.setRepairedNum(details.getRepairedNum());
details.setScrapNum(details.getScrapNum());
repairMapper.addAuditDetails(details);
}
}
}
return AjaxResult.success("执行完毕");
}
private static RepairApplyDetails createRepairDetailsCope(RepairTaskDetails details) {
RepairApplyDetails repairApplyDetails = new RepairApplyDetails(); RepairApplyDetails repairApplyDetails = new RepairApplyDetails();
repairApplyDetails.setId(details.getId()); repairApplyDetails.setId(details.getId());
repairApplyDetails.setRepairedNum( (details.getRepairedNum().add(details.getThisRepairedNum()) )); repairApplyDetails.setRepairedNum( (details.getRepairedNum().add(details.getThisRepairedNum()) ));
repairApplyDetails.setThisRepairedNum(BigDecimal.valueOf(0)); repairApplyDetails.setThisRepairedNum(BigDecimal.valueOf(0));
repairApplyDetails.setScrapNum( (details.getScrapNum().add( details.getThisScrapNum()))); repairApplyDetails.setScrapNum( (details.getScrapNum().add( details.getThisScrapNum())));
repairApplyDetails.setThisScrapNum(BigDecimal.valueOf(0)); repairApplyDetails.setThisScrapNum(BigDecimal.valueOf(0));
repairApplyDetailsMapper.updateRepairApplyDetails(repairApplyDetails); return repairApplyDetails;
details.setCreateBy(String.valueOf(loginUser.getUserid()));
details.setTaskId(task.getTaskId());
details.setRepairNum(details.getThisRepairedNum().add(details.getThisScrapNum()) );
details.setRepairedNum(details.getThisRepairedNum());
details.setScrapNum(details.getThisScrapNum());
repairMapper.addAuditDetails(details);
}
}
}
return AjaxResult.success();
} }
/** /**

View File

@ -296,7 +296,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectRepairQuestList" resultType="com.bonus.material.repair.domain.vo.ScrapApplyDetailsVO"> <select id="selectRepairQuestList" resultType="com.bonus.material.repair.domain.vo.ScrapApplyDetailsVO">
SELECT DISTINCT SELECT DISTINCT
tk.task_id taskId, tk.task_id taskId,
tk.CODE scrapNum, tk.CODE scrapNum,tt.code as repairTaskCode,
tk.task_status taskStatus, tk.task_status taskStatus,
bui.unit_name unitName, bui.unit_name unitName,
bpl.pro_name projectName, bpl.pro_name projectName,
@ -304,9 +304,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
tk.create_time createTime, tk.create_time createTime,
tk.remark, tk.remark,
tk.CODE repairNum tk.CODE repairNum
-- su1.user_name as teamName
FROM FROM
tm_task tk tm_task tk
LEFT JOIN tm_task tt on tk.pre_task_id = tt.task_id
LEFT JOIN tm_task_agreement tta ON tk.task_id = tta.task_id LEFT JOIN tm_task_agreement tta ON tk.task_id = tta.task_id
LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id
LEFT JOIN bm_project bpl ON bai.project_id = bpl.pro_id LEFT JOIN bm_project bpl ON bai.project_id = bpl.pro_id
@ -316,7 +316,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id
LEFT JOIN sys_user su ON su.user_id = tk.create_by LEFT JOIN sys_user su ON su.user_id = tk.create_by
LEFT JOIN ma_type_repair mtr ON mtr.type_id = rad.type_id LEFT JOIN ma_type_repair mtr ON mtr.type_id = rad.type_id
-- LEFT JOIN sys_user su1 ON su1.user_id = mtr.user_id
WHERE WHERE
tk.task_type = #{taskType} tk.task_type = #{taskType}
<if test="keyword != null and keyword != ''"> <if test="keyword != null and keyword != ''">
@ -510,7 +509,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</update> </update>
<update id="updateMachine"> <update id="updateMachine">
UPDATE ma_machine SET ma_status = '5' WHERE ma_id = #{maId} UPDATE ma_machine SET ma_status = 5 WHERE ma_id = #{maId}
</update> </update>
<select id="getPartDetailsByTaskId" resultType="com.bonus.material.repair.domain.RepairPart"> <select id="getPartDetailsByTaskId" resultType="com.bonus.material.repair.domain.RepairPart">

View File

@ -12,8 +12,8 @@
</insert> </insert>
<insert id="addTask" useGeneratedKeys="true" keyProperty="taskId"> <insert id="addTask" useGeneratedKeys="true" keyProperty="taskId">
insert into tm_task (task_status,task_type,code,create_by,create_time,company_id) insert into tm_task (pre_task_id,task_status,task_type,code,create_by,create_time,company_id)
values (#{taskStatus},#{taskType},#{repairCode},#{createBy},now(),#{companyId}); values (#{preTaskId},#{taskStatus},#{taskType},#{repairCode},#{createBy},now(),#{companyId});
</insert> </insert>
<insert id="createAgreementTask"> <insert id="createAgreementTask">

View File

@ -102,8 +102,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select> </select>
<select id="selectAgreementIdByTaskId" resultType="java.lang.Long"> <select id="selectAgreementIdByTaskId" resultType="java.lang.Long">
select agreement_id select agreement_id from tm_task_agreement where task_id = #{taskId}
from tm_task_agreement
where task_id = #{taskId}
</select> </select>
</mapper> </mapper>