diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeCheckDto.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeCheckDto.java index 7b7344cd..a807c5f9 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeCheckDto.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeCheckDto.java @@ -1,14 +1,11 @@ package com.bonus.material.part.domain; -import com.bonus.material.part.domain.PartTypeCheckDetails; -import com.bonus.material.part.domain.PartTypeCheckInfo; -import com.bonus.material.purchase.domain.PurchaseCheckDetails; -import com.bonus.material.purchase.domain.PurchaseCheckInfo; +import com.bonus.material.purchase.domain.PurchaseSignRecord; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; +import java.util.ArrayList; import java.util.List; @@ -28,4 +25,16 @@ public class PartTypeCheckDto { @ApiModelProperty(value = "采购验收任务详情集合") private List partTypeCheckDetailsList; + @ApiModelProperty(value = "签名地址") + private String signUrl; + + @ApiModelProperty(value = "签名类型 手写0 和 图片上传1") + private String signType; + + private List gySignUrl = new ArrayList<>(); + + private List scSignUrl = new ArrayList<>(); + + private List kgSignUrl = new ArrayList<>(); + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeQueryDto.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeQueryDto.java index b07b11f2..4a5d0858 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeQueryDto.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/domain/PartTypeQueryDto.java @@ -37,11 +37,11 @@ public class PartTypeQueryDto { @ApiModelProperty(value = "开始时间") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Date startTime; + private String startTime; @ApiModelProperty(value = "结束时间") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Date endTime; + private String endTime; @ApiModelProperty(value = "外层任务状态") private Integer taskStatus; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/service/impl/PartArrivedServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/service/impl/PartArrivedServiceImpl.java index a2b77d49..d455230b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/service/impl/PartArrivedServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/part/service/impl/PartArrivedServiceImpl.java @@ -11,12 +11,12 @@ import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.security.utils.SecurityUtils; import com.bonus.common.biz.domain.BmFileInfo; import com.bonus.material.basic.mapper.BmFileInfoMapper; +import com.bonus.material.countersign.mapper.SignProcessMapper; import com.bonus.material.part.domain.*; import com.bonus.material.part.mapper.PartArrivedMapper; import com.bonus.material.part.service.IPartArrivedService; -import com.bonus.material.purchase.domain.PurchaseCheckInfo; +import com.bonus.material.purchase.domain.PurchaseSignRecord; import com.bonus.material.task.domain.TmTask; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.DataAccessException; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -45,6 +45,9 @@ public class PartArrivedServiceImpl implements IPartArrivedService @Resource BmFileInfoMapper bmFileInfoMapper; + @Resource + private SignProcessMapper signProcessMapper; + // 引入新购任务阶段常量 private static final int PURCHASE_TASK_STAGE_MANAGE = 1; private static final int PURCHASE_TASK_STAGE_CHECK = 2; @@ -244,7 +247,12 @@ public class PartArrivedServiceImpl implements IPartArrivedService .filter(item -> containsKeyword(item, keyWord)) .collect(Collectors.toList()); } - if (StringUtils.isNotBlank(partTypeQueryDto.getTaskStatusName())) { + if (partTypeQueryDto.getTaskStatus() != null) { + if (partTypeQueryDto.getTaskStatus() == 0) { + partTypeQueryDto.setTaskStatusName("未完成"); + } else if (partTypeQueryDto.getTaskStatus() == 1) { + partTypeQueryDto.setTaskStatusName("已完成"); + } purchaseCheckInfoResult = purchaseCheckInfoResult.stream() .filter(item -> item.getTaskStatusName().equals(partTypeQueryDto.getTaskStatusName())) .collect(Collectors.toList()); @@ -275,15 +283,15 @@ public class PartArrivedServiceImpl implements IPartArrivedService @Override public PartTypeCheckDto selectPartTypeCheckInfoById(PartTypeQueryDto partTypeQueryDto) { PartTypeCheckInfo partTypeCheckInfo = partArrivedMapper.selectPartTypeCheckInfoById(partTypeQueryDto.getId()); - PartTypeCheckDto PartTypeCheckDto = new PartTypeCheckDto(); - PartTypeCheckDto.setPartTypeCheckInfo(partTypeCheckInfo); + PartTypeCheckDto partTypeCheckDto = new PartTypeCheckDto(); + partTypeCheckDto.setPartTypeCheckInfo(partTypeCheckInfo); if(null != partTypeCheckInfo){ List partTypeCheckDetailsList = partArrivedMapper.selectPartTypeCheckDetailsListByQueryDto(partTypeQueryDto); - PartTypeCheckDto.setPartTypeCheckDetailsList(partTypeCheckDetailsList); + partTypeCheckDto.setPartTypeCheckDetailsList(partTypeCheckDetailsList); //查询是否存在附件,给前端用于文件颜色判断 extractedExitFile(partTypeCheckDetailsList); } - return PartTypeCheckDto; + return partTypeCheckDto; } /** @@ -385,12 +393,39 @@ public class PartArrivedServiceImpl implements IPartArrivedService @Override public PartTypeCheckDto getInBoundForm(PartTypeQueryDto partTypeQueryDto) { PartTypeCheckInfo partTypeCheckInfo = partArrivedMapper.getCheckInfoForm(partTypeQueryDto); - PartTypeCheckDto PartTypeCheckDto = new PartTypeCheckDto(); - PartTypeCheckDto.setPartTypeCheckInfo(partTypeCheckInfo); + PartTypeCheckDto partTypeCheckDto = new PartTypeCheckDto(); + partTypeCheckDto.setPartTypeCheckInfo(partTypeCheckInfo); if(null != partTypeCheckInfo){ List partTypeCheckDetailsList = partArrivedMapper.selectPartTypeCheckDetailsListByQueryDto(partTypeQueryDto); - PartTypeCheckDto.setPartTypeCheckDetailsList(partTypeCheckDetailsList); + partTypeCheckDto.setPartTypeCheckDetailsList(partTypeCheckDetailsList); + if (!CollectionUtils.isEmpty(partTypeCheckDetailsList)) { + List purchaseSignRecordUserSignList = new ArrayList<>(); + HashMap purchaseSignRecordMap = new HashMap<>(); + for (PartTypeCheckDetails purchaseCheckDetails : partTypeCheckDetailsList) { + // 查询已签名的记录 + if (purchaseSignRecordUserSignList.isEmpty()) { + purchaseSignRecordUserSignList = signProcessMapper.getPurchaseSignUrlListByTaskId(purchaseCheckDetails.getTaskId()); + for (PurchaseSignRecord purchaseSignRecord : purchaseSignRecordUserSignList) { + purchaseSignRecordMap.put(purchaseSignRecord.getSignUrl(), purchaseSignRecord); + } + } + } + // 分流存入集合,利用Map去重 + purchaseSignRecordMap.forEach((k, v) -> { + if (null != v.getUserId()) { + if (311 == v.getOrgId()) { + partTypeCheckDto.getGySignUrl().add(v); + } + if (313 == v.getOrgId()) { + partTypeCheckDto.getScSignUrl().add(v); + } + if (312 == v.getOrgId()) { + partTypeCheckDto.getKgSignUrl().add(v); + } + } + }); + } } - return PartTypeCheckDto; + return partTypeCheckDto; } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseNoticePersonServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseNoticePersonServiceImpl.java index 5ee1b364..8c0bad4b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseNoticePersonServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseNoticePersonServiceImpl.java @@ -96,14 +96,15 @@ public class PurchaseNoticePersonServiceImpl implements IPurchaseNoticePersonSer ); // 修改配件采购明细的任务状态 partCheckMapper.batchUpdateDetailsTaskStatus(purchaseNoticePersonDto.getTaskId(), PurchaseTaskStatusEnum.TO_CHECK.getStatus(), ""); + } else { + tmTaskMapper.updateTmTask(new TmTask() + .setTaskId(purchaseNoticePersonDto.getTaskId()) + .setTaskType(TmTaskTypeEnum.TM_TASK_PURCHASE.getTaskTypeId()) + .setTaskStatus(PurchaseTaskStatusEnum.TASK_IN_PROGRESS.getStatus()) + ); + // 修改采购明细的任务状态 + purchaseCheckDetailsService.batchUpdateDetailsTaskStatus(purchaseNoticePersonDto.getTaskId(), PurchaseTaskStatusEnum.TO_CHECK.getStatus(), ""); } - tmTaskMapper.updateTmTask(new TmTask() - .setTaskId(purchaseNoticePersonDto.getTaskId()) - .setTaskType(TmTaskTypeEnum.TM_TASK_PURCHASE.getTaskTypeId()) - .setTaskStatus(PurchaseTaskStatusEnum.TASK_IN_PROGRESS.getStatus()) - ); - // 修改采购明细的任务状态 - purchaseCheckDetailsService.batchUpdateDetailsTaskStatus(purchaseNoticePersonDto.getTaskId(), PurchaseTaskStatusEnum.TO_CHECK.getStatus(), ""); return AjaxResult.success("短信发送成功:" + sendResult); } else { return AjaxResult.error("短信发送失败,发送结果为空"); diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/part/PartArrivedMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/part/PartArrivedMapper.xml index caed440c..b87e4543 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/part/PartArrivedMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/part/PartArrivedMapper.xml @@ -111,7 +111,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"