diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java index 16f2506c..803a6b40 100644 --- a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java @@ -55,7 +55,7 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService { if (StringUtils.isNull(record)) { return AjaxResult.error("领料出库失败,请检查参数是否填写完整!"); } - if (!(Integer.valueOf(0)== record.getMaId())){ + if (!(Integer.valueOf(0) == record.getMaId())){ String status = leaseOutDetailsMapper.getMachineStatus(record); if (!maStatus.equals(status)){ return AjaxResult.error("领料出库失败,该设备不是在库状态!"); diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairAuditDetailsMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairAuditDetailsMapper.java index 37e7921d..247c2875 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairAuditDetailsMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairAuditDetailsMapper.java @@ -72,4 +72,7 @@ public interface RepairAuditDetailsMapper List exportRepairQuestList(RepairAuditDetails bean); + List selectRepairInputByTaskId(Long taskId); + + List selectScrapNumByTaskId(Long taskId); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairAuditDetailsServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairAuditDetailsServiceImpl.java index 59213ff5..33ed78bd 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairAuditDetailsServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairAuditDetailsServiceImpl.java @@ -167,85 +167,81 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService throw new Exception("任务已审核已通过"); } if ("通过".equals(checkResult)) { + + String taskCode =""; + int taskStatus= 0; + int taskType = 0; + int companyId = 0; // 查询协议表 TmTaskAgreement tmTaskAgreement = agreementMapper.selectTmTaskAgreementByTaskId(taskId); - List repairAuditDetailsList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskId(taskId); - for (RepairAuditDetails repairAuditDetails : repairAuditDetailsList) { - Long typeId = repairAuditDetails.getTypeId(); - Long maId = repairAuditDetails.getMaId(); - BigDecimal repairNum = repairAuditDetails.getRepairedNum(); + List repairInputList = repairAuditDetailsMapper.selectRepairInputByTaskId(taskId); + List scrapNumList = repairAuditDetailsMapper.selectScrapNumByTaskId(taskId); + if(repairInputList != null && repairInputList.size() > 0){ + companyId = repairInputList.get(0).getCompanyId(); + taskCode = purchaseCodeRule("R",50); + taskStatus = 53; + taskType = 50; + long inputTaskId = genTask(taskCode,taskType,taskStatus,tmTaskAgreement,companyId); + + + for (RepairAuditDetails inputDetails : repairInputList) { + Long typeId = inputDetails.getTypeId(); + Long maId = inputDetails.getMaId(); + BigDecimal repairNum = inputDetails.getRepairedNum(); BigDecimal b = new BigDecimal(0); // 创建修饰后入库任务 - if (repairNum.compareTo(b) > 0) { - TmTask task = new TmTask(); - task.setCode(purchaseCodeRule("R",50)); - task.setTaskStatus(53); - task.setTaskType(50); - task.setCompanyId(repairAuditDetails.getCompanyId()); - task.setCreateTime(new Date()); - task.setCreateBy(SecurityUtils.getUsername()); - taskMapper.insertTmTask(task); - // 添加协议信息表 - TmTaskAgreement taskAgreement = new TmTaskAgreement(); - taskAgreement.setTaskId(task.getTaskId()); - if (tmTaskAgreement.getAgreementId() == null){ - throw new ServiceException("缺少协议数据"); - }else { - taskAgreement.setAgreementId(tmTaskAgreement.getAgreementId()); + if (repairNum.compareTo(b) > 0) { + // 添加修试后入库任务 + RepairInputDetails repairInputDetails = new RepairInputDetails(); + repairInputDetails.setTaskId(inputTaskId); + repairInputDetails.setAuditId(inputDetails.getId()); + repairInputDetails.setRepairId(inputDetails.getRepairId()); + repairInputDetails.setRepairNum(inputDetails.getRepairedNum()); + repairInputDetails.setTypeId(inputDetails.getTypeId()); + repairInputDetails.setMaId(inputDetails.getMaId()); + repairInputDetails.setStatus("0"); + repairInputDetails.setCreateById(SecurityUtils.getUserId()); + repairInputDetails.setCreateTime(new Date()); + repairTestInputMapper.insertRepairInputDetails(repairInputDetails); } - taskAgreement.setCreateBy(SecurityUtils.getUsername()); - agreementMapper.insertTmTaskAgreement(taskAgreement); - - // 添加修试后入库任务 - RepairInputDetails repairInputDetails = new RepairInputDetails(); - repairInputDetails.setTaskId(task.getTaskId()); - repairInputDetails.setAuditId(repairAuditDetails.getId()); - repairInputDetails.setRepairId(repairAuditDetails.getRepairId()); - repairInputDetails.setRepairNum(repairAuditDetails.getRepairedNum()); - repairInputDetails.setTypeId(repairAuditDetails.getTypeId()); - repairInputDetails.setMaId(repairAuditDetails.getMaId()); - repairInputDetails.setStatus("0"); - repairInputDetails.setCreateById(SecurityUtils.getUserId()); - repairInputDetails.setCreateTime(new Date()); - repairTestInputMapper.insertRepairInputDetails(repairInputDetails); - } - - // 创建报废任务 - BigDecimal scrapNum = repairAuditDetails.getScrapNum(); - if (scrapNum.compareTo(b) > 0) { - TmTask task = new TmTask(); - task.setCode(purchaseCodeRule("BF",57)); - task.setTaskStatus(58); - task.setTaskType(57); - task.setCompanyId(repairAuditDetails.getCompanyId()); - task.setCreateTime(new Date()); - task.setCreateBy(SecurityUtils.getUsername()); - taskMapper.insertTmTask(task); - // 添加协议信息表 - TmTaskAgreement taskAgreement = new TmTaskAgreement(); - taskAgreement.setTaskId(task.getTaskId()); - if (tmTaskAgreement.getAgreementId() == null){ - throw new ServiceException("缺少协议数据"); - }else { - taskAgreement.setAgreementId(tmTaskAgreement.getAgreementId()); - } - agreementMapper.insertTmTaskAgreement(taskAgreement); - - // 添加退料任务 - ScrapApplyDetails scrapApplyDetails = new ScrapApplyDetails(); - scrapApplyDetails.setTaskId(task.getTaskId()); - scrapApplyDetails.setTypeId(typeId); - scrapApplyDetails.setMaId(maId); - scrapApplyDetails.setScrapNum(scrapNum); - scrapApplyDetails.setScrapSource("2"); - scrapApplyDetails.setStatus("0"); - scrapApplyDetails.setParentId(repairAuditDetails.getId()); - scrapApplyDetails.setCreateById(SecurityUtils.getUserId()); - scrapApplyDetails.setCreateTime(new Date()); - scrapApplyDetailsMapper.insertScrapApplyDetails(scrapApplyDetails); - } } + if(scrapNumList != null && scrapNumList.size() > 0){ + + companyId = scrapNumList.get(0).getCompanyId(); + taskCode = purchaseCodeRule("BF",57); + taskStatus = 58; + taskType = 57; + long scrapTaskId = genTask(taskCode,taskType,taskStatus,tmTaskAgreement,companyId); + for (RepairAuditDetails scrapDetails : scrapNumList) { + Long typeId = scrapDetails.getTypeId(); + Long maId = scrapDetails.getMaId(); + BigDecimal repairNum = scrapDetails.getRepairedNum(); + BigDecimal b = new BigDecimal(0); + + + // 创建报废任务 + BigDecimal scrapNum = scrapDetails.getScrapNum(); + if (scrapNum.compareTo(b) > 0) { + + // 添加退料任务 + ScrapApplyDetails scrapApplyDetails = new ScrapApplyDetails(); + scrapApplyDetails.setTaskId(scrapTaskId); + scrapApplyDetails.setTypeId(typeId); + scrapApplyDetails.setMaId(maId); + scrapApplyDetails.setScrapNum(scrapNum); + scrapApplyDetails.setScrapSource("2"); + scrapApplyDetails.setStatus("0"); + scrapApplyDetails.setParentId(scrapDetails.getId()); + scrapApplyDetails.setCreateById(SecurityUtils.getUserId()); + scrapApplyDetails.setCreateTime(new Date()); + scrapApplyDetailsMapper.insertScrapApplyDetails(scrapApplyDetails); + + } + } + + } + // 修饰审核通过时改修任务为已通过审核 task1.setTaskStatus(47); task1.setUpdateTime(new Date()); @@ -265,6 +261,29 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService return 1; } + private long genTask(String taskCode,int taskType,int taskStatus,TmTaskAgreement tmTaskAgreement,int companyId){ + TmTask task = new TmTask(); + task.setCode(taskCode); + task.setTaskStatus(taskStatus); + task.setTaskType(taskType); + task.setCompanyId(companyId); + task.setCreateTime(new Date()); + task.setCreateBy(SecurityUtils.getUsername()); + taskMapper.insertTmTask(task); + // 添加协议信息表 + TmTaskAgreement taskAgreement = new TmTaskAgreement(); + long taskId = task.getTaskId(); + taskAgreement.setTaskId(taskId); + if (tmTaskAgreement.getAgreementId() == null){ + throw new ServiceException("缺少协议数据"); + }else { + taskAgreement.setAgreementId(tmTaskAgreement.getAgreementId()); + } + taskAgreement.setCreateBy(SecurityUtils.getUsername()); + agreementMapper.insertTmTaskAgreement(taskAgreement); + return taskId; + } + // 采购单号编码生成规则 diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairAuditDetailsMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairAuditDetailsMapper.xml index 6234ee97..79c59266 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairAuditDetailsMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairAuditDetailsMapper.xml @@ -276,5 +276,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) t GROUP BY task_id + + \ No newline at end of file