diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Machine.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Machine.java index cf76e071..dd325aa7 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Machine.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Machine.java @@ -43,6 +43,7 @@ public class Machine extends BaseEntity /** 机具状态(数据字典) */ @Excel(name = "机具状态") + @ApiModelProperty(value = "机具状态") private String maStatus; /** 二维码 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java index 41122223..3b001b5c 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java @@ -9,9 +9,9 @@ import com.bonus.common.log.enums.OperaType; import com.bonus.material.common.annotation.PreventRepeatSubmit; import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; -import com.bonus.material.purchase.domain.dto.PurchaseDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; +import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; @@ -99,8 +99,8 @@ public class PurchaseCheckInfoController extends BaseController { //@RequiresPermissions("purchase:info:edit") @SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->外层批量验收API") @PutMapping("/outerVerify") - public AjaxResult outerVerify(@RequestBody PurchaseDto purchaseDto) { - return purchaseCheckInfoService.outVerify(purchaseDto); + public AjaxResult outerVerify(@RequestBody PurchaseVerifyVo purchaseVerifyVo) { + return purchaseCheckInfoService.outVerify(purchaseVerifyVo); } /** @@ -111,8 +111,8 @@ public class PurchaseCheckInfoController extends BaseController { //@RequiresPermissions("purchase:info:edit") @SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->内层批量验收API") @PutMapping("/innerVerify") - public AjaxResult innerVerify(@RequestBody List purchaseCheckDetailsList) { - return purchaseCheckInfoService.innerVerify(purchaseCheckDetailsList); + public AjaxResult innerVerify(@RequestBody PurchaseVerifyVo purchaseVerifyVo) { + return purchaseCheckInfoService.innerVerify(purchaseVerifyVo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/vo/PurchaseVerifyVo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/vo/PurchaseVerifyVo.java new file mode 100644 index 00000000..9802a1c2 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/vo/PurchaseVerifyVo.java @@ -0,0 +1,25 @@ +package com.bonus.material.purchase.domain.vo; + +import com.bonus.material.purchase.domain.PurchaseCheckDetails; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.util.List; + +@Data +public class PurchaseVerifyVo { + + @ApiModelProperty(value = "id列表") + private List taskIds; + + @ApiModelProperty(value = "验收是否通过") + private Boolean verifyPass; + + /** 验收结论 */ + //@Excel(name = "验收结论") + @ApiModelProperty(value = "验收结论") + private String checkResult; + + @ApiModelProperty(value = "新购物资列表") + List purchaseCheckDetailsList; + +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java index 598f6a77..0a13514d 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java @@ -6,9 +6,9 @@ import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckInfo; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; -import com.bonus.material.purchase.domain.dto.PurchaseDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; +import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo; /** * 新购验收任务Service接口 @@ -48,9 +48,9 @@ public interface IPurchaseCheckInfoService { // */ // AjaxResult acceptance(List taskId); - AjaxResult outVerify(PurchaseDto purchaseDto); + AjaxResult outVerify(PurchaseVerifyVo purchaseVerifyVo); - AjaxResult innerVerify(List purchaseCheckDetailsList); + AjaxResult innerVerify(PurchaseVerifyVo purchaseVerifyVo); /** * 根据任务id查询验收单 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java index bba3d141..8556b2c7 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java @@ -19,12 +19,13 @@ import com.bonus.material.basic.mapper.BmFileInfoMapper; import com.bonus.material.basic.service.IBmConfigService; import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; -import com.bonus.material.purchase.domain.dto.PurchaseDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; +import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo; import com.bonus.material.purchase.mapper.PurchaseCheckDetailsMapper; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; import com.bonus.material.task.domain.TmTask; import com.bonus.material.task.mapper.TmTaskMapper; +import org.apache.commons.lang3.BooleanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.DataAccessException; import org.springframework.stereotype.Service; @@ -235,12 +236,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { @Override @Transactional - public AjaxResult outVerify(PurchaseDto purchaseDto) { + public AjaxResult outVerify(PurchaseVerifyVo purchaseVerifyVo) { try { - AjaxResult result = new AjaxResult(); - purchaseDto.getTaskIds().removeIf(Objects::isNull); + purchaseVerifyVo.getTaskIds().removeIf(Objects::isNull); int updateCount = 0; - for (Long taskId : purchaseDto.getTaskIds()) { + for (Long taskId : purchaseVerifyVo.getTaskIds()) { PurchaseQueryDto purchaseQueryDto = new PurchaseQueryDto(); purchaseQueryDto.setTaskId(taskId); List purchaseCheckDetails = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListByQueryDto(purchaseQueryDto); @@ -258,14 +258,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { updateCount += purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details); } } -// // 维护tm_task的状态,但因为新购任务中的物资可以部分流转,所以汇总的状态失去意义,不再维护 -// if (!CollectionUtils.isEmpty(codeList) && codeList.size() > 0) { -// int taskCount = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus()); -// result = taskCount > 0 ? AjaxResult.success("task绑定状态更改成功") : AjaxResult.error("task绑定状态更改失败"); -// } if (!CollectionUtils.isEmpty(numList) && numList.size() > 0) { -// int taskCount = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_STORE.getStatus()); -// result = taskCount > 0 ? AjaxResult.success("task待入库状态更改成功") : AjaxResult.error("task待入库状态更改失败"); -// } + // 注意: 维护tm_task的状态,但因为新购任务中的物资可以部分流转,所以汇总的状态失去意义,不再维护 } return updateCount > 0 ? AjaxResult.success("验证成功") : AjaxResult.error("无验证信息"); } catch (Exception e) { @@ -275,30 +268,28 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { @Override @Transactional - public AjaxResult innerVerify(List purchaseCheckDetailsList) { + public AjaxResult innerVerify(PurchaseVerifyVo purchaseVerifyVo) { try { AjaxResult result = new AjaxResult(); - if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) { - Long taskId = purchaseCheckDetailsList.get(0).getTaskId(); + if (!CollectionUtils.isEmpty(purchaseVerifyVo.getPurchaseCheckDetailsList())) { + //Long taskId = purchaseVerifyVo.getPurchaseCheckDetailsList().get(0).getTaskId(); //Integer status = purchaseCheckDetailsList.get(0).getStatus(); - for (PurchaseCheckDetails details : purchaseCheckDetailsList) { - if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(details.getManageType())) { - details.setStatus(PurchaseTaskStatusEnum.TO_BIND.getStatus()); - } else if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(details.getManageType())) { - details.setStatus(PurchaseTaskStatusEnum.TO_STORE.getStatus()); + if (BooleanUtils.isTrue(purchaseVerifyVo.getVerifyPass())) { + for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) { + if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(details.getManageType())) { + details.setStatus(PurchaseTaskStatusEnum.TO_BIND.getStatus()); + } else if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(details.getManageType())) { + details.setStatus(PurchaseTaskStatusEnum.TO_STORE.getStatus()); + } + result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证成功") : AjaxResult.error("details无验证信息"); + } + } else { + for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) { + details.setStatus(PurchaseTaskStatusEnum.TO_NOTICE.getStatus()); + result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证驳回成功") : AjaxResult.error("details无验证信息"); } - result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证成功") : AjaxResult.error("details无验证信息"); } -// // 维护tm_task的状态,但因为新购任务中的物资可以部分流转,所以汇总的状态失去意义,不再维护 -// int count = purchaseCheckDetailsMapper.getCountOfNoneThisStatus(taskId, PurchaseTaskStatusEnum.TO_CHECK.getStatus()); -// if (count == 0) { -// int toCheckCount = purchaseCheckDetailsMapper.getCountOfNoneThisStatus(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus()); -// if (toCheckCount == 0) { -// result = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_STORE.getStatus()) > 0 ? AjaxResult.success("task待入库状态更改成功") : AjaxResult.error("task待入库状态更改失败"); -// } else { -// result = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus()) > 0 ? AjaxResult.success("task绑定状态更改成功") : AjaxResult.error("task绑定状态更改失败"); -// } -// } + // 注意: 维护tm_task的状态,但因为新购任务中的物资可以部分流转,所以汇总的状态失去意义,不再维护 } return result; } catch (Exception e) { diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/common/SelectMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/common/SelectMapper.xml index 23b59a78..c7610c70 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/common/SelectMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/common/SelectMapper.xml @@ -193,7 +193,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" LEFT JOIN slt_agreement_info sai ON mt.type_id = sai.type_id WHERE EXISTS ( SELECT 1 FROM slt_agreement_info sai2 WHERE sai2.type_id = mt.type_id AND sai2.agreement_id = #{agreementId} - AND sai2.STATUS = '0' and sai.lease_type = 0 and sai2.num > 0) + AND sai2.STATUS = '0' and IFNULL(sai.lease_type,0) = 0 and sai2.num > 0) GROUP BY mt.type_id diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/MachineMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/MachineMapper.xml index 2a1afb2d..4cd13226 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/MachineMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/MachineMapper.xml @@ -95,6 +95,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and ma.type_id = #{typeId} + + and ma.ma_status = #{maStatus} + and mt3.type_name like concat('%', #{materialType}, '%')