diff --git a/sgzb-modules/sgzb-material/pom.xml b/sgzb-modules/sgzb-material/pom.xml
index 5e87c9f4..f430af58 100644
--- a/sgzb-modules/sgzb-material/pom.xml
+++ b/sgzb-modules/sgzb-material/pom.xml
@@ -107,6 +107,12 @@
5.8.16
compile
+
+ com.bonus.sgzb
+ sgzb-modules-base
+ 3.6.3
+ compile
+
@@ -114,4 +120,21 @@
8
+
+ ${project.artifactId}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
+
+
+
+
\ No newline at end of file
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 10f23146..2736e0f8 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
@@ -14,15 +14,11 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.bonus.sgzb.common.log.annotation.Log;
import com.bonus.sgzb.common.log.enums.BusinessType;
-import com.bonus.sgzb.common.security.annotation.RequiresPermissions;
import com.bonus.sgzb.common.core.web.controller.BaseController;
import com.bonus.sgzb.common.core.web.domain.AjaxResult;
import com.bonus.sgzb.common.core.utils.poi.ExcelUtil;
@@ -105,4 +101,5 @@ public class RepairAuditDetailsController extends BaseController
return toAjax(repairAuditDetailsService.auditRepair(scrapAudit));
}
+
}
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 d33b9628..2279aaed 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
@@ -92,7 +92,6 @@ public class ScrapApplyDetails extends BaseEntity
@ApiModelProperty(value = "机具编号")
private String maCode;
-
// 传入参数
@ApiModelProperty(value = "单位id")
private Integer backUnit;
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 247c2875..0ecbb735 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
@@ -1,5 +1,6 @@
package com.bonus.sgzb.material.mapper;
+import com.bonus.sgzb.base.domain.RepairTaskDetails;
import com.bonus.sgzb.material.domain.RepairAuditDetails;
import com.bonus.sgzb.material.vo.RepairAuditDetailsVO;
import com.bonus.sgzb.material.vo.ScrapApplyDetailsVO;
@@ -75,4 +76,8 @@ public interface RepairAuditDetailsMapper
List selectRepairInputByTaskId(Long taskId);
List selectScrapNumByTaskId(Long taskId);
+
+ int updateStatus(RepairAuditDetails bean);
+
+ int insertRepairDetails(RepairTaskDetails repairTaskDetails);
}
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 fe67d338..8284b16c 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
@@ -113,4 +113,5 @@ public interface RepairTestInputMapper {
* @date 2024/1/9 15:14
*/
List exportList(RepairTestInputDto bean);
+
}
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 cddf54a1..45fc2283 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
@@ -2,9 +2,11 @@ package com.bonus.sgzb.material.service.impl;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
+import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import com.bonus.sgzb.base.domain.RepairTaskDetails;
import com.bonus.sgzb.common.core.exception.ServiceException;
import com.bonus.sgzb.common.core.utils.DateUtils;
import com.bonus.sgzb.common.security.utils.SecurityUtils;
@@ -160,22 +162,41 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
@Transactional(rollbackFor=Exception.class)
public int auditRepair(ScrapAudit scrapAudit) throws Exception {
String checkResult = scrapAudit.getCheckResult();
+ List auditDetailList = scrapAudit.getAuditDetailList();
List taskIdList = scrapAudit.getTaskIdList();
+ BigDecimal b = new BigDecimal(0);
for (Long taskId : taskIdList) {
+ String status = "0";
TmTask task1 = taskMapper.selectTmTaskByTaskId(taskId);
if (task1.getTaskStatus() == 47) {
throw new Exception("任务已审核已通过");
}
- if ("通过".equals(checkResult)) {
- String taskCode ="";
- int taskStatus= 0;
- int taskType = 0;
- int companyId = 0;
- // 查询协议表
- TmTaskAgreement tmTaskAgreement = agreementMapper.selectTmTaskAgreementByTaskId(taskId);
- List repairInputList = repairAuditDetailsMapper.selectRepairInputByTaskId(taskId);
- List scrapNumList = repairAuditDetailsMapper.selectScrapNumByTaskId(taskId);
+ List auditAllList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskId(taskId);
+ // 查询协议表
+ TmTaskAgreement tmTaskAgreement = agreementMapper.selectTmTaskAgreementByTaskId(taskId);
+ String taskCode ="";
+ int taskStatus= 0;
+ int taskType = 0;
+ int companyId = 0;
+ if ("通过".equals(checkResult)) {
+ status = "1";
+ List repairInputList = new ArrayList<>();
+ List scrapNumList = new ArrayList<>();
+ if (auditDetailList != null && auditDetailList.size()>0){
+ for (RepairAuditDetails bean : auditDetailList){
+ if (bean.getRepairedNum().compareTo(b)>0){
+ repairInputList.add(bean);
+ }
+ if (bean.getScrapNum().compareTo(b)>0){
+ scrapNumList.add(bean);
+ }
+ }
+ }else {
+ repairInputList = repairAuditDetailsMapper.selectRepairInputByTaskId(taskId);
+ scrapNumList = repairAuditDetailsMapper.selectScrapNumByTaskId(taskId);
+ }
+
if(repairInputList != null && repairInputList.size() > 0){
companyId = repairInputList.get(0).getCompanyId();
taskCode = purchaseCodeRule("R",50);
@@ -186,7 +207,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
Long typeId = inputDetails.getTypeId();
Long maId = inputDetails.getMaId();
BigDecimal repairNum = inputDetails.getRepairedNum();
- BigDecimal b = new BigDecimal(0);
+
// 创建修饰后入库任务
if (repairNum.compareTo(b) > 0) {
// 添加修试后入库任务
@@ -213,7 +234,6 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
for (RepairAuditDetails scrapDetails : scrapNumList) {
Long typeId = scrapDetails.getTypeId();
Long maId = scrapDetails.getMaId();
- BigDecimal b = new BigDecimal(0);
// 创建报废任务
BigDecimal scrapNum = scrapDetails.getScrapNum();
if (scrapNum.compareTo(b) > 0) {
@@ -234,20 +254,68 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
}
// 修饰审核通过时改修任务为已通过审核
- task1.setTaskStatus(47);
+ int i = 0;
+ int j = 0;
+ if (repairInputList != null){
+ i = repairInputList.size();
+ }
+ if (scrapNumList != null){
+ j = scrapNumList.size();
+ }
+ if (auditAllList.size() == (i + j)){
+ task1.setTaskStatus(47);
+ }
task1.setUpdateTime(new Date());
task1.setUpdateBy(SecurityUtils.getUsername());
taskMapper.updateTmTask(task1);
} else {
+ status = "2";
+ List repairDetailList = new ArrayList<>();
+ if (auditDetailList != null && auditDetailList.size()>0){
+ repairDetailList.addAll(auditDetailList);
+ }else {
+ repairDetailList.addAll(auditAllList);
+ }
+ if(repairDetailList != null && repairDetailList.size() > 0){
+ companyId = repairDetailList.get(0).getCompanyId();
+ taskCode = purchaseCodeRule("WX",41);
+ taskStatus = 42;
+ taskType = 41;
+ long inputTaskId = genTask(taskCode,taskType,taskStatus,tmTaskAgreement,companyId);
+ for (RepairAuditDetails inputDetails : repairDetailList) {
+ // 添加驳回后维修详细表数据
+ RepairTaskDetails repairTaskDetails = new RepairTaskDetails();
+ repairTaskDetails.setTaskId(String.valueOf(inputTaskId));
+ repairTaskDetails.setMaId(String.valueOf(inputDetails.getMaId()));
+ repairTaskDetails.setTypeId(String.valueOf(inputDetails.getTypeId()));
+ BigDecimal repairNum = inputDetails.getRepairNum();
+ int i = repairNum.intValue(); // 直接转换
+ repairTaskDetails.setRepairNum(i);
+ repairTaskDetails.setStatus("0");
+ repairTaskDetails.setCreateBy(SecurityUtils.getUserId());
+ repairTaskDetails.setCompanyId((long) companyId);
+ repairAuditDetailsMapper.insertRepairDetails(repairTaskDetails);
+ }
+ }
// 修饰审核任务不通过时
TmTask tmTask = new TmTask();
tmTask.setTaskId(taskId);
tmTask.setRemark(scrapAudit.getRemark());
- tmTask.setTaskStatus(48);
+ int i = repairDetailList.size();
+ if (auditAllList.size() == i){
+ tmTask.setTaskStatus(48);
+ }
tmTask.setUpdateTime(new Date());
tmTask.setUpdateBy(SecurityUtils.getUsername());
taskMapper.updateTmTask(tmTask);
}
+ if (scrapAudit.getAuditDetailList() != null && scrapAudit.getAuditDetailList().size() > 0){
+ for (RepairAuditDetails bean : auditDetailList){
+ bean.setAuditBy(SecurityUtils.getUserId());
+ bean.setStatus(status);
+ repairAuditDetailsMapper.updateStatus(bean);
+ }
+ }
}
return 1;
}
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 3c7fd1ef..e95f2f19 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
@@ -1,5 +1,6 @@
package com.bonus.sgzb.material.vo;
+import com.bonus.sgzb.material.domain.RepairAuditDetails;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -17,4 +18,7 @@ public class ScrapAudit {
@ApiModelProperty(value = "不通过原因")
private String remark;
+ @ApiModelProperty(value = "审核任务明细id")
+ private List auditDetailList;
+
}
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 b72bf1fa..58e9f2f7 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
@@ -119,6 +119,77 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{companyId},
+
+ insert into repair_apply_details
+ (
+
+ task_id,
+
+
+ ma_id,
+
+
+ type_id,
+
+
+ repair_num,
+
+
+ status,
+
+
+ create_by,
+
+
+ update_by,
+
+ update_time,
+
+ remark,
+
+
+ company_id,
+
+
+ back_id,
+
+ create_time
+ )
+ values (
+
+ #{taskId},
+
+
+ #{maId},
+
+
+ #{typeId},
+
+
+ #{backNum},
+
+
+ #{status},
+
+
+ #{createBy},
+
+
+ #{createBy},
+
+ NOW(),
+
+ #{remark},
+
+
+ #{companyId},
+
+
+ #{id},
+
+ NOW()
+ )
+
update repair_audit_details
@@ -143,6 +214,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where id = #{id}
+
+ update repair_audit_details
+ set audit_by = #{auditBy},
+ audit_time = now(),
+ status = #{status}
+ where id = #{id}
+
delete from repair_audit_details where id = #{id}
diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml
index 2eda6138..1d7702c1 100644
--- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml
+++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml
@@ -248,4 +248,5 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{companyId},
+
\ No newline at end of file