维修提交单号重新生成

This commit is contained in:
syruan 2024-12-17 15:57:17 +08:00
parent 054f0bdeb6
commit 89ed25dc38
2 changed files with 27 additions and 11 deletions

View File

@ -1,10 +1,8 @@
package com.bonus.material.repair.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.bonus.common.biz.enums.MaTypeManageTypeEnum;
import com.bonus.common.biz.enums.RepairTaskStatusEnum;
import com.bonus.common.biz.enums.RepairTypeEnum;
import com.bonus.common.biz.enums.TmTaskTypeEnum;
import com.bonus.common.biz.constant.MaterialConstants;
import com.bonus.common.biz.enums.*;
import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.core.utils.DateUtils;
import com.bonus.common.core.web.domain.AjaxResult;
@ -20,6 +18,7 @@ import com.bonus.material.repair.mapper.RepairApplyDetailsMapper;
import com.bonus.material.repair.mapper.RepairAuditDetailsMapper;
import com.bonus.material.repair.mapper.RepairMapper;
import com.bonus.material.repair.service.RepairService;
import com.bonus.material.task.domain.TmTask;
import com.bonus.material.task.mapper.TmTaskMapper;
import com.bonus.system.api.domain.SysUser;
import com.bonus.system.api.model.LoginUser;
@ -32,6 +31,7 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
@ -823,8 +823,12 @@ public class RepairServiceImpl implements RepairService {
// 新增tm_task表数据修饰审核任务状态是待审核
task.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR_AUDIT.getTaskTypeId());
task.setTaskStatus(RepairTaskStatusEnum.TASK_STATUS_TO_EXAM.getStatus());
task.setRepairCode(detailsList.get(0).getTaskCode());
repairMapper.addTask(task); // 注意此处将会生成新的 taskId 审核入库用的
int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId());
// 生成维修单号
String code = genderWxTaskCode(thisMonthMaxOrder);
task.setRepairCode(code);
// 注意此处将会生成新的 taskId 审核入库用的
repairMapper.addTask(task);
// 新增协议任务表tm_task_agreement--关联修饰任务与协议
task.setAgreementId(agreementId);
repairMapper.createAgreementTask(task);
@ -850,6 +854,18 @@ public class RepairServiceImpl implements RepairService {
return AjaxResult.success();
}
/**
* 生成维修单号
* @param thisMonthMaxOrder 当前月最大单号
*/
private String genderWxTaskCode(int thisMonthMaxOrder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date nowDate = DateUtils.getNowDate();
String format = dateFormat.format(nowDate);
String result = format.replace("-", "");
return MaterialConstants.REPAIR_TASK_TYPE_LABEL + result + String.format("-%03d", thisMonthMaxOrder + 1);
}
@Override
public AjaxResult rejectRepair(@NotNull List<Long> taskList) {
try {

View File

@ -1,5 +1,5 @@
<?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" >
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bonus.material.repair.mapper.RepairMapper">
<insert id="addRecord">
insert into repair_apply_record (task_id,ma_id,type_id,repair_num,scrap_num,repair_type,create_by,create_time,repair_content,company_id,scrap_reason,scrap_type,supplier_id,part_num,part_price,part_type,part_name,repairer,file_ids,remark,part_id)
@ -50,11 +50,11 @@
</update>
<update id="updateThisRepairedAndScrapNum">
update repair_apply_details
set this_repaired_num = this_repaired_num + #{thisRepairedNum},
this_scrap_num = this_scrap_num + #{thisScrapNum},
update repair_apply_details
set this_repaired_num = ifnull(this_repaired_num,0) + #{thisRepairedNum},
this_scrap_num = ifnull(this_scrap_num,0) + #{thisScrapNum},
update_time = now()
where id = #{id}
where id = #{id}
</update>
<update id="updateRepairedNumAndStatus">