From 942ec674790a19435b990fb23a35e4f483602f90 Mon Sep 17 00:00:00 2001 From: dingjie Date: Tue, 19 Dec 2023 09:01:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RepairAuditDetailsController.java | 3 +- .../ScrapApplyDetailsController.java | 3 +- .../material/domain/RepairAuditDetails.java | 77 ++++++++ .../material/domain/RepairInputDetails.java | 169 ++++++++++++++++++ .../material/domain/ScrapApplyDetails.java | 45 +++++ .../mapper/RepairTestInputMapper.java | 7 +- .../service/IRepairAuditDetailsService.java | 2 +- .../service/IScrapApplyDetailsService.java | 2 +- .../impl/RepairAuditDetailsServiceImpl.java | 149 ++++++++------- .../impl/ScrapApplyDetailsServiceImpl.java | 14 +- .../sgzb/material/vo/ScrapApplyDetailsVO.java | 3 + .../bonus/sgzb/material/vo/ScrapAudit.java | 3 + .../material/PurchaseMacodeInfoMapper.xml | 3 +- .../material/RepairAuditDetailsMapper.xml | 20 ++- .../mapper/material/RepairTestInputMapper.xml | 38 ++++ .../material/ScrapApplyDetailsMapper.xml | 19 +- 16 files changed, 479 insertions(+), 78 deletions(-) create mode 100644 sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairInputDetails.java diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairAuditDetailsController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairAuditDetailsController.java index 980f4184..bb3e798b 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairAuditDetailsController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairAuditDetailsController.java @@ -70,8 +70,7 @@ public class RepairAuditDetailsController extends BaseController @ApiOperation("修饰任务审核") @Log(title = "修饰任务审核", businessType = BusinessType.UPDATE) @PostMapping("/audit") - public AjaxResult audit(@RequestBody ScrapAudit scrapAudit) - { + public AjaxResult audit(@RequestBody ScrapAudit scrapAudit) throws Exception { return toAjax(repairAuditDetailsService.auditRepair(scrapAudit)); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/ScrapApplyDetailsController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/ScrapApplyDetailsController.java index 764253fb..814db021 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/ScrapApplyDetailsController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/ScrapApplyDetailsController.java @@ -70,8 +70,7 @@ public class ScrapApplyDetailsController extends BaseController @ApiOperation("报废任务审核") @Log(title = "报废任务审核", businessType = BusinessType.UPDATE) @PostMapping("/audit") - public AjaxResult audit(@RequestBody ScrapAudit scrapAudit) - { + public AjaxResult audit(@RequestBody ScrapAudit scrapAudit) throws Exception { return toAjax(scrapApplyDetailsService.auditScrap(scrapAudit)); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairAuditDetails.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairAuditDetails.java index a2ee6c9e..481f47f3 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairAuditDetails.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairAuditDetails.java @@ -6,6 +6,7 @@ import java.util.Date; import com.bonus.sgzb.common.core.web.domain.BaseEntity; import com.fasterxml.jackson.annotation.JsonFormat; import com.bonus.sgzb.common.core.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -71,6 +72,26 @@ public class RepairAuditDetails extends BaseEntity @Excel(name = "数据所属组织") private Integer companyId; + @ApiModelProperty(value = "规格型号") + private String specificationType; + + @ApiModelProperty(value = "机具类型名称") + private String machineTypeName; + + @ApiModelProperty(value = "机具编号") + private String maCode; + + + // 传入参数 + @ApiModelProperty(value = "单位id") + private Integer backUnit; + @ApiModelProperty(value = "工程id") + private Integer backPro; + @ApiModelProperty(value = "工机具类型id") + private Integer type; + @ApiModelProperty(value = "维修单号") + private Integer backCode; + public void setId(Long id) { this.id = id; @@ -189,6 +210,62 @@ public class RepairAuditDetails extends BaseEntity return companyId; } + public String getSpecificationType() { + return specificationType; + } + + public void setSpecificationType(String specificationType) { + this.specificationType = specificationType; + } + + public String getMachineTypeName() { + return machineTypeName; + } + + public void setMachineTypeName(String machineTypeName) { + this.machineTypeName = machineTypeName; + } + + public String getMaCode() { + return maCode; + } + + public void setMaCode(String maCode) { + this.maCode = maCode; + } + + public Integer getBackUnit() { + return backUnit; + } + + public void setBackUnit(Integer backUnit) { + this.backUnit = backUnit; + } + + public Integer getBackPro() { + return backPro; + } + + public void setBackPro(Integer backPro) { + this.backPro = backPro; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public Integer getBackCode() { + return backCode; + } + + public void setBackCode(Integer backCode) { + this.backCode = backCode; + } + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairInputDetails.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairInputDetails.java new file mode 100644 index 00000000..a56e18c3 --- /dev/null +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairInputDetails.java @@ -0,0 +1,169 @@ +package com.bonus.sgzb.material.domain; + +import java.math.BigDecimal; +import com.bonus.sgzb.common.core.annotation.Excel; +import com.bonus.sgzb.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 修试后入库对象 + * + * @author bonus + * @date 2023-12-18 + */ +public class RepairInputDetails extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 任务ID */ + @Excel(name = "任务ID") + private Long taskId; + + /** 维修审核ID */ + @Excel(name = "维修审核ID") + private Long auditId; + + /** 维修ID */ + @Excel(name = "维修ID") + private Long repairId; + + /** 机具ID */ + @Excel(name = "机具ID") + private Long maId; + + /** 规格ID */ + @Excel(name = "规格ID") + private Long typeId; + + /** 维修合格数量 */ + @Excel(name = "维修合格数量") + private BigDecimal repairNum; + + /** 入库数量 */ + @Excel(name = "入库数量") + private BigDecimal inputNum; + + /** 0未审核,1已入库,2驳回 */ + @Excel(name = "0未审核,1已入库,2驳回") + private String status; + + /** 数据所属组织 */ + @Excel(name = "数据所属组织") + private Long companyId; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTaskId(Long taskId) + { + this.taskId = taskId; + } + + public Long getTaskId() + { + return taskId; + } + public void setAuditId(Long auditId) + { + this.auditId = auditId; + } + + public Long getAuditId() + { + return auditId; + } + public void setRepairId(Long repairId) + { + this.repairId = repairId; + } + + public Long getRepairId() + { + return repairId; + } + public void setMaId(Long maId) + { + this.maId = maId; + } + + public Long getMaId() + { + return maId; + } + public void setTypeId(Long typeId) + { + this.typeId = typeId; + } + + public Long getTypeId() + { + return typeId; + } + public void setRepairNum(BigDecimal repairNum) + { + this.repairNum = repairNum; + } + + public BigDecimal getRepairNum() + { + return repairNum; + } + public void setInputNum(BigDecimal inputNum) + { + this.inputNum = inputNum; + } + + public BigDecimal getInputNum() + { + return inputNum; + } + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + public void setCompanyId(Long companyId) + { + this.companyId = companyId; + } + + public Long getCompanyId() + { + return companyId; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("taskId", getTaskId()) + .append("auditId", getAuditId()) + .append("repairId", getRepairId()) + .append("maId", getMaId()) + .append("typeId", getTypeId()) + .append("repairNum", getRepairNum()) + .append("inputNum", getInputNum()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("status", getStatus()) + .append("remark", getRemark()) + .append("companyId", getCompanyId()) + .toString(); + } +} diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/ScrapApplyDetails.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/ScrapApplyDetails.java index 0e2dabe7..84f8a1d0 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/ScrapApplyDetails.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/ScrapApplyDetails.java @@ -90,6 +90,19 @@ public class ScrapApplyDetails extends BaseEntity @ApiModelProperty(value = "机具编号") private String maCode; + + // 传入参数 + @ApiModelProperty(value = "单位id") + private Integer backUnit; + @ApiModelProperty(value = "工程id") + private Integer backPro; + @ApiModelProperty(value = "工机具类型id") + private Integer type; + @ApiModelProperty(value = "维修单号") + private Integer backCode; + + + public void setId(Long id) { this.id = id; @@ -250,6 +263,38 @@ public class ScrapApplyDetails extends BaseEntity this.maCode = maCode; } + public Integer getBackUnit() { + return backUnit; + } + + public void setBackUnit(Integer backUnit) { + this.backUnit = backUnit; + } + + public Integer getBackPro() { + return backPro; + } + + public void setBackPro(Integer backPro) { + this.backPro = backPro; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public Integer getBackCode() { + return backCode; + } + + public void setBackCode(Integer backCode) { + this.backCode = backCode; + } + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java index 499d45f4..852c5ddd 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java @@ -1,9 +1,6 @@ package com.bonus.sgzb.material.mapper; -import com.bonus.sgzb.material.domain.RepairTestInputDetailVo; -import com.bonus.sgzb.material.domain.RepairTestInputDto; -import com.bonus.sgzb.material.domain.RepairTestInputVo; -import com.bonus.sgzb.material.domain.RepairTestWarehousingDto; +import com.bonus.sgzb.material.domain.*; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -105,4 +102,6 @@ public interface RepairTestInputMapper { * @date 2023/12/16 21:19 */ void updateTmTaskStatus(@Param("params") RepairTestWarehousingDto dto, @Param("dictId") int dicId); + + int insertRepairInputDetails(RepairInputDetails repairTestWarehousingDto); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IRepairAuditDetailsService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IRepairAuditDetailsService.java index 8c563f96..f7eabe73 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IRepairAuditDetailsService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IRepairAuditDetailsService.java @@ -66,5 +66,5 @@ public interface IRepairAuditDetailsService List getRepairAuditList(RepairAuditDetails repairAuditDetails); - int auditRepair(ScrapAudit scrapAudit); + int auditRepair(ScrapAudit scrapAudit) throws Exception; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IScrapApplyDetailsService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IScrapApplyDetailsService.java index b5aa8e2d..d9efc54a 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IScrapApplyDetailsService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/IScrapApplyDetailsService.java @@ -64,6 +64,6 @@ public interface IScrapApplyDetailsService List getScrapAuditList(ScrapApplyDetails scrapApplyDetails); - int auditScrap(ScrapAudit scrapAudit); + int auditScrap(ScrapAudit scrapAudit) throws Exception; } 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 3fc8c1da..aace9c20 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 @@ -8,15 +8,15 @@ import java.util.List; import com.bonus.sgzb.base.api.domain.TmTask; import com.bonus.sgzb.common.core.utils.DateUtils; import com.bonus.sgzb.common.security.utils.SecurityUtils; -import com.bonus.sgzb.material.domain.RepairAuditDetails; -import com.bonus.sgzb.material.domain.ScrapApplyDetails; -import com.bonus.sgzb.material.domain.TmTaskAgreement; +import com.bonus.sgzb.material.domain.*; import com.bonus.sgzb.material.mapper.*; import com.bonus.sgzb.material.service.IRepairAuditDetailsService; import com.bonus.sgzb.material.vo.ScrapApplyDetailsVO; import com.bonus.sgzb.material.vo.ScrapAudit; +import javafx.concurrent.Task; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; @@ -41,6 +41,9 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService @Resource private ScrapApplyDetailsMapper scrapApplyDetailsMapper; + @Resource + private RepairTestInputMapper repairTestInputMapper; + /** * 查询修试审核详细repair_apply_details @@ -149,73 +152,97 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService * @return 结果 */ @Override - public int auditRepair(ScrapAudit scrapAudit) { + @Transactional + public int auditRepair(ScrapAudit scrapAudit) throws Exception { String checkResult = scrapAudit.getCheckResult(); List taskIdList = scrapAudit.getTaskIdList(); for (Long taskId : taskIdList) { - // 查询协议表 - 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.getRepairNum(); - 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()); - taskAgreement.setAgreementId(tmTaskAgreement.getAgreementId()); - agreementMapper.insertTmTaskAgreement(taskAgreement); + TmTask task1 = taskMapper.selectTmTaskByTaskId(taskId); + if (task1.getTaskStatus() == 47) { + throw new Exception("任务已审核已通过"); + } + if ("通过".equals(checkResult)) { + // 查询协议表 + 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.getRepairNum(); + 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()); + taskAgreement.setAgreementId(tmTaskAgreement.getAgreementId()); + agreementMapper.insertTmTaskAgreement(taskAgreement); - // 添加修试后入库任务 + // 添加修试后入库任务 + RepairInputDetails repairInputDetails = new RepairInputDetails(); + repairInputDetails.setTaskId(task.getTaskId()); + repairInputDetails.setAuditId(repairAuditDetails.getId()); + repairInputDetails.setInputNum(repairAuditDetails.getRepairNum()); + repairInputDetails.setTypeId(repairAuditDetails.getTypeId()); + repairInputDetails.setMaId(repairAuditDetails.getMaId()); + repairInputDetails.setStatus("0"); + 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()); + 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("1"); + scrapApplyDetails.setStatus("0"); + scrapApplyDetails.setParentId(taskId); + scrapApplyDetailsMapper.insertScrapApplyDetails(scrapApplyDetails); + + } } - - // 创建报废任务 - 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()); - 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("1"); - scrapApplyDetails.setStatus("0"); - scrapApplyDetails.setParentId(taskId); - scrapApplyDetailsMapper.insertScrapApplyDetails(scrapApplyDetails); - - } - + } else { + // 修饰审核任务不通过时 + TmTask tmTask = new TmTask(); + tmTask.setTaskId(taskId); + tmTask.setRemark(scrapAudit.getRemark()); + tmTask.setTaskStatus(47); + tmTask.setUpdateTime(new Date()); + tmTask.setUpdateBy(SecurityUtils.getUsername()); + taskMapper.updateTmTask(tmTask); } } - - return 0; + return 1; } // 采购单号编码生成规则 diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/ScrapApplyDetailsServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/ScrapApplyDetailsServiceImpl.java index 8c676d05..9504bdfb 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/ScrapApplyDetailsServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/ScrapApplyDetailsServiceImpl.java @@ -1,9 +1,11 @@ package com.bonus.sgzb.material.service.impl; +import java.util.Date; import java.util.List; import com.bonus.sgzb.base.api.domain.TmTask; import com.bonus.sgzb.common.core.utils.DateUtils; +import com.bonus.sgzb.common.security.utils.SecurityUtils; import com.bonus.sgzb.material.domain.ScrapApplyDetails; import com.bonus.sgzb.material.mapper.PurchaseCheckInfoMapper; import com.bonus.sgzb.material.mapper.ScrapApplyDetailsMapper; @@ -13,6 +15,7 @@ import com.bonus.sgzb.material.vo.ScrapApplyDetailsVO; import com.bonus.sgzb.material.vo.ScrapAudit; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; @@ -130,10 +133,16 @@ public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService * @return 结果 */ @Override - public int auditScrap(ScrapAudit scrapAudit) { + @Transactional + public int auditScrap(ScrapAudit scrapAudit) throws Exception { String checkResult = scrapAudit.getCheckResult(); List taskIdList = scrapAudit.getTaskIdList(); for (Long taskId : taskIdList) { + // 查询协议表 + TmTask task1 = taskMapper.selectTmTaskByTaskId(taskId); + if (task1.getTaskStatus() == 47) { + throw new Exception("报废审核已通过"); + } TmTask task = new TmTask(); task.setTaskId(taskId); if ("通过".equals(checkResult)) { @@ -147,7 +156,10 @@ public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService task.setTaskStatus(59); }else { task.setTaskStatus(61); + task.setRemark(scrapAudit.getRemark()); } + task.setUpdateTime(new Date()); + task.setUpdateBy(SecurityUtils.getUsername()); taskMapper.updateTmTask(task); } return 1; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapApplyDetailsVO.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapApplyDetailsVO.java index b4f10daa..2081e250 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapApplyDetailsVO.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapApplyDetailsVO.java @@ -37,6 +37,9 @@ public class ScrapApplyDetailsVO { // 审核状态 private Integer taskStatus; + // 审核状态 + private String taskStatusName; + // 不通过原因 private String remark; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapAudit.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapAudit.java index 255ff382..3c7fd1ef 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapAudit.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/vo/ScrapAudit.java @@ -14,4 +14,7 @@ public class ScrapAudit { @ApiModelProperty(value = "审核任务id") private List taskIdList; + @ApiModelProperty(value = "不通过原因") + private String remark; + } diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/PurchaseMacodeInfoMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/PurchaseMacodeInfoMapper.xml index b6474fc8..5373ab8d 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/PurchaseMacodeInfoMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/PurchaseMacodeInfoMapper.xml @@ -30,8 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mt1.type_name typeName, mma.ma_id maId from purchase_macode_info pmi left join ma_type mt on pmi.type_id = mt.type_id - left join (select type_id,type_name,parent_id from ma_type - where type_id in (select parent_id from ma_type where type_id = #{typeId})) mt1 on mt.parent_id = mt1.type_id + left join ma_type mt1 on mt.parent_id = mt1.type_id left join ma_machine mma on pmi.ma_code = mma.ma_code where pmi.task_id = #{taskId} and pmi.type_id = #{typeId} 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 f6f0463a..2685b574 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 @@ -30,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select tk.code scrapNum,tk.task_status taskStatus, bui.unit_name unitName,bpl.lot_name projectName, + select tk.code scrapNum,tk.task_status taskStatus, dic.name taskStatusName, bui.unit_name unitName,bpl.lot_name projectName, tk.create_by createBy, tk.create_time createTime, tk.remark ,tk.code repairNum,tk.task_id taskId from tm_task tk 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_project_lot bpl on bai.project_id = bpl.lot_id left join bm_unit_info bui on bai.unit_id = bui.unit_id + left join (select id,p_id,name from sys_dic where p_id in (select id from sys_dic where value = 'ws_shenhe')) dic on tk.task_status = dic.id + left join repair_audit_details rad on tk.task_id = rad.task_id + left join ma_type mt on rad.type_id = mt.type_id + left join ma_type mt1 on mt.parent_id = mt1.type_id where tk.task_type = 45 + + and bui.unit_id = #{backUnit} + + + and bpl.lot_id = #{backPro} + + + and mt1.type_id = #{type} + + + and tk.code = #{backCode} + + + + insert into repair_input_details + + id, + task_id, + audit_id, + repair_id, + ma_id, + type_id, + repair_num, + input_num, + create_by, + create_time, + update_by, + update_time, + status, + remark, + company_id, + + + #{id}, + #{taskId}, + #{auditId}, + #{repairId}, + #{maId}, + #{typeId}, + #{repairNum}, + #{inputNum}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{status}, + #{remark}, + #{companyId}, + + \ No newline at end of file diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/ScrapApplyDetailsMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/ScrapApplyDetailsMapper.xml index d4d80c48..95c0b3a1 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/ScrapApplyDetailsMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/ScrapApplyDetailsMapper.xml @@ -32,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select sad.* ,mt.type_name, mt1.type_name , mma.ma_code + select sad.* ,mt.type_name specificationType, mt1.type_name machineTypeName, mma.ma_code maCode from scrap_apply_details sad left join ma_type mt on pcd.type_id = mt.type_id left join ma_type mt1 on mt.parent_id = mt1.type_id