diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/MaterialLeaseInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/MaterialLeaseInfoController.java index 88947af9..60b8f92e 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/MaterialLeaseInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/MaterialLeaseInfoController.java @@ -96,15 +96,24 @@ public class MaterialLeaseInfoController extends BaseController { * 获取领料任务详细信息 * @param id * @param keyWord - * @param publishTask * @return */ @ApiOperation(value = "获取领料任务详细信息") @GetMapping(value = "/{id}") public AjaxResult getInfo(@NotNull(message = "领料任务ID不能为空") @PathVariable("id") Long id, - @RequestParam(value = "keyWord", required = false) String keyWord, - @RequestParam(value = "publishTask", required = false) String publishTask) { - return materialLeaseInfoService.selectLeaseApplyInfoById(id, keyWord, publishTask); + @RequestParam(value = "keyWord", required = false) String keyWord) { + return materialLeaseInfoService.selectLeaseApplyInfoById(id, keyWord); + } + + /** + * 获取领料单信息 + * @param leaseApplyInfo + * @return + */ + @ApiOperation(value = "获取领料单信息") + @GetMapping(value = "/getPickList") + public AjaxResult getPickList(MaterialLeaseApplyInfo leaseApplyInfo) { + return materialLeaseInfoService.getPickList(leaseApplyInfo); } @ApiOperation(value = "获取领料任务详细信息") diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/MaterialLeaseInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/MaterialLeaseInfoService.java index 5d9290c5..3a9a31c0 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/MaterialLeaseInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/MaterialLeaseInfoService.java @@ -43,10 +43,9 @@ public interface MaterialLeaseInfoService { * 获取领料任务详细信息 * @param id * @param keyWord - * @param publishTask * @return */ - AjaxResult selectLeaseApplyInfoById(Long id, String keyWord, String publishTask); + AjaxResult selectLeaseApplyInfoById(Long id, String keyWord); /** * 获取领料任务详细信息 @@ -145,4 +144,12 @@ public interface MaterialLeaseInfoService { * @return */ AjaxResult getMachineById(MaterialLeaseApplyInfo dto); + + /** + * 获取领料单信息 + * @param leaseApplyInfo + * @return + */ + AjaxResult getPickList(MaterialLeaseApplyInfo leaseApplyInfo); + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java index 91728a21..7a5dcad3 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java @@ -308,11 +308,10 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { * * @param id * @param keyWord - * @param publishTask * @return */ @Override - public AjaxResult selectLeaseApplyInfoById(Long id, String keyWord, String publishTask) { + public AjaxResult selectLeaseApplyInfoById(Long id, String keyWord) { try { List newCodeList = new ArrayList<>(); MaterialLeaseApplyInfo leaseApplyInfo = new MaterialLeaseApplyInfo(); @@ -320,18 +319,6 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { Optional optionalInfo = Optional.ofNullable(materialLeaseInfoMapper.selectLeaseApplyInfoById(leaseApplyInfo)); MaterialLeaseApplyRequestVo leaseApplyRequestVo = new MaterialLeaseApplyRequestVo(); optionalInfo.ifPresent(info -> { - BmFileInfo bmFileInfo = new BmFileInfo(); - bmFileInfo.setModelId(id); - bmFileInfo.setTaskType(2); - bmFileInfo.setFileType(5L); - List bmFileInfoList = bmFileInfoMapper.selectBmFileInfoList(bmFileInfo); - if (!CollectionUtils.isEmpty(bmFileInfoList)) { - info.setBmFileInfos(bmFileInfoList); - } - // 电子签名进行base64拼接 - if (StringUtils.isNotBlank(info.getLeaseSignUrl())) { - info.setLeaseSignUrl("data:image/png;base64," + info.getLeaseSignUrl()); - } leaseApplyRequestVo.setLeaseApplyInfo(info); // 获取领料单详情 List details = materialLeaseInfoMapper.selectLeaseApplyDetailsList(new MaterialLeaseApplyDetails(info.getId(), keyWord, null)); @@ -449,12 +436,9 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { detail.setMaCodeVoList(maCodeVoList); if (info.getTaskStatus() == 1) { if (!CollectionUtils.isEmpty(maCodeVoList)) { - // 根据id查询协议id - Long agreementId = materialLeaseInfoMapper.getAgreementId(id); for (MaterialLeaseMaCodeDto maCodeVo : maCodeVoList) { if (maCodeVo.getMaId() != null) { // 根据协议id,typeId,maId查询设备是否已被领料 - maCodeVo.setAgreementId(agreementId); MaterialLeaseApplyInfo applyInfo = materialLeaseInfoMapper.selectInfoById(maCodeVo); if (applyInfo != null) { // 将maCodeList中已领料的收集到新集合中 @@ -1411,6 +1395,44 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { return AjaxResult.success(unusedMachines); } + /** + * 获取领料单信息 + * @param leaseApplyInfo + * @return + */ + @Override + public AjaxResult getPickList(MaterialLeaseApplyInfo leaseApplyInfo) { + try { + MaterialLeaseApplyInfo info = materialLeaseInfoMapper.selectLeaseApplyInfoById(leaseApplyInfo); + // 电子签名进行base64拼接 + if (StringUtils.isNotBlank(info.getLeaseSignUrl())) { + info.setLeaseSignUrl("data:image/png;base64," + info.getLeaseSignUrl()); + } + MaterialLeaseApplyRequestVo leaseApplyRequestVo = new MaterialLeaseApplyRequestVo(); + leaseApplyRequestVo.setLeaseApplyInfo(info); + // 获取领料单详情 + List details = materialLeaseInfoMapper.selectLeaseApplyDetailsList(new MaterialLeaseApplyDetails(info.getId(), null, null)); + //根据id查询领料单详情 + if (!CollectionUtils.isEmpty(details)) { + for (MaterialLeaseApplyDetails detail : details) { + leaseApplyRequestVo.setLeaseApplyDetailsList(details); + // 获取编码详情 + List maCodeVoList = materialLeaseInfoMapper.getCodeList(leaseApplyInfo.getId(), detail.getTypeId()); + if (!CollectionUtils.isEmpty(maCodeVoList)) { + // 将maCodeVoList中的materialModel值赋值给typeName + maCodeVoList.forEach(maCodeVo -> maCodeVo.setTypeName(maCodeVo.getMaterialModel())); + detail.setMaCodeVoList(maCodeVoList); + } + } + } + AjaxResult ajaxResult = AjaxResult.success(); + ajaxResult.put("data", leaseApplyRequestVo); + return ajaxResult; + } catch (Exception e) { + throw new RuntimeException("查询失败", e); + } + } + /** * 插入领料任务 * @param createBy diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java index 455435cd..336bfe71 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java @@ -21,14 +21,12 @@ import com.bonus.material.lease.service.ILeaseApplyInfoService; import com.bonus.system.api.RemoteFileService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.xmlbeans.impl.xb.xsdschema.Public; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.NotNull; -import java.util.HashMap; import java.util.List; import java.util.Map; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyInfoMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyInfoMapper.java index 69c40cbf..762b4481 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyInfoMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyInfoMapper.java @@ -155,4 +155,18 @@ public interface LeaseApplyInfoMapper { * @return */ LeaseApplyInfo selectLeaseApplyInfoPublishList(LeaseApplyInfo leaseApplyInfo); + + /** + * 领用数据查询 + * @param leaseApplyInfo + * @return + */ + List selectLeaseOutList(LeaseApplyInfo leaseApplyInfo); + + /** + * 领用数据查询 + * @param leaseApplyInfo + * @return + */ + List selectPublish(LeaseApplyInfo leaseApplyInfo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java index c656f91b..bbfc42f8 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java @@ -248,6 +248,13 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { Long userId = SecurityUtils.getLoginUser().getUserid(); leaseApplyInfo.setUserId(userId); LeaseApplyInfo info = leaseApplyInfoMapper.getLeaseInfoById(leaseApplyInfo); + if (StringUtils.isNotBlank(bean.getPublishTask())) { + leaseApplyInfo.setPublishTask(bean.getPublishTask()); + List leaseApplyOutList = leaseApplyInfoMapper.selectPublishList(leaseApplyInfo); + if (!CollectionUtils.isEmpty(leaseApplyOutList)) { + info = leaseApplyOutList.get(0); + } + } LeaseApplyRequestVo leaseApplyRequestVo = new LeaseApplyRequestVo(); // 查询领用出库数据 /** 设置审批人签名url 防止代码冲突 **/ @@ -351,9 +358,14 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { extracted(leaseApplyInfo, list); } } - if (!CollectionUtils.isEmpty(list)) { - if (leaseApplyInfo.getHasSign() != null && leaseApplyInfo.getHasSign() == 0) { - list = leaseApplyInfoMapper.selectNoSignList(leaseApplyInfo); + // 电子签名列表查询 + if (leaseApplyInfo.getHasSign() != null && leaseApplyInfo.getHasSign() == 0) { + // 领料数据查询 + list = leaseApplyInfoMapper.selectNoSignList(leaseApplyInfo); + // 领用数据查询 + List leaseOutList = leaseApplyInfoMapper.selectLeaseOutList(leaseApplyInfo); + if (!CollectionUtils.isEmpty(leaseOutList)) { + list.addAll(leaseOutList); } } // 使用 Stream API 进行降序排序 @@ -477,8 +489,13 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { @Override public List getCompleteOutTaskList(LeaseApplyInfo leaseApplyInfo) { leaseApplyInfo.setUserId(SecurityUtils.getLoginUser().getUserid()); - + // 领料数据 List list = leaseApplyInfoMapper.selectCompleteOutList(leaseApplyInfo); + // 领用数据 + List leaseApplyOutList = leaseApplyInfoMapper.selectPublish(leaseApplyInfo); + if (!CollectionUtils.isEmpty(leaseApplyOutList)) { + list.addAll(leaseApplyOutList); + } //材料站权限过滤 String username = SecurityUtils.getLoginUser().getUsername(); if(!CollectionUtils.isEmpty(list)){ diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/clz/MaterialLeaseInfoMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/clz/MaterialLeaseInfoMapper.xml index cae81f0a..6665a87f 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/clz/MaterialLeaseInfoMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/clz/MaterialLeaseInfoMapper.xml @@ -901,11 +901,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" clz_slt_agreement_info WHERE status = '0' - AND agreement_id = #{agreementId} AND type_id = #{typeId} - - AND ma_id = #{maId} - + AND ma_id = #{maId} + + + + update lease_out_details