From 7c0c13e8dd3e25f0904ffb9a56af82f0b938f228 Mon Sep 17 00:00:00 2001 From: mashuai Date: Sat, 23 Aug 2025 19:22:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/constant/MaterialConstants.java | 5 + .../BmAssetAttributesController.java | 2 +- .../material/basic/mapper/BmQrBoxMapper.java | 9 ++ .../service/impl/BmQrBoxServiceImpl.java | 45 +++++-- .../lease/mapper/LeaseApplyDetailsMapper.java | 14 +++ .../lease/mapper/LeaseApplyInfoMapper.java | 7 ++ .../impl/LeaseApplyInfoServiceImpl.java | 116 ++++++++---------- .../service/impl/LeaseTaskServiceImpl.java | 4 +- .../service/impl/ProAuthorizeServiceImpl.java | 2 + .../repair/domain/RepairAuditDetails.java | 11 ++ .../impl/RepairAuditDetailsServiceImpl.java | 3 +- .../service/impl/RepairServiceImpl.java | 2 + .../mapper/material/basic/BmQrBoxMapper.xml | 10 ++ .../lease/LeaseApplyDetailsMapper.xml | 25 ++++ .../material/lease/LeaseApplyInfoMapper.xml | 41 ++++--- 15 files changed, 205 insertions(+), 91 deletions(-) diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java index 6f8063d8..9d51cfa7 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java @@ -112,4 +112,9 @@ public class MaterialConstants { */ public static final String OUTER_PROTOCAL = "2"; + /** + * 标准箱前缀 + */ + public static final String QR_BOX_PREFIX = "BOX"; + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmAssetAttributesController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmAssetAttributesController.java index b5d808a3..bf88f034 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmAssetAttributesController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmAssetAttributesController.java @@ -42,7 +42,7 @@ public class BmAssetAttributesController extends BaseController { * @return 查询结果 */ @ApiOperation(value = "查询资产属性管理列表") - @RequiresPermissions("basic:asset:list") + //@RequiresPermissions("basic:asset:list") @GetMapping("/list") public AjaxResult queryByPage(BmAssetAttributes bmAssetAttributes) { //判断是否分页,用于下拉选 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java index 667f2b05..1cf20e76 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java @@ -3,6 +3,7 @@ package com.bonus.material.basic.mapper; import com.bonus.common.biz.domain.lease.LeaseOutDetails; import com.bonus.material.basic.domain.BmQrBoxInfo; import com.bonus.material.basic.domain.dto.BoxBindWarehouseDto; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -173,4 +174,12 @@ public interface BmQrBoxMapper { * @return */ List getBoxBindWsList(BmQrBoxInfo bean); + + /** + * 查询当月标准箱数 + * @param year + * @param month + * @return + */ + int getMonthMaxOrderByDate(@Param("year") String year, @Param("month") String month); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java index 6496f960..308de2da 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java @@ -5,11 +5,9 @@ import com.alibaba.nacos.common.utils.CollectionUtils; import com.bonus.common.biz.config.BackstageApplication; import com.bonus.common.biz.config.DateTimeHelper; import com.bonus.common.biz.config.QrCodeUtils; +import com.bonus.common.biz.constant.MaterialConstants; import com.bonus.common.biz.domain.purchase.PurchaseDto; -import com.bonus.common.biz.enums.HttpCodeEnum; -import com.bonus.common.biz.enums.MaMachineStatusEnum; -import com.bonus.common.biz.enums.PurchaseTaskStatusEnum; -import com.bonus.common.biz.enums.QrBoxStatusEnum; +import com.bonus.common.biz.enums.*; import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.web.domain.AjaxResult; @@ -40,9 +38,12 @@ import java.io.InputStream; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; import java.nio.file.Files; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; +import static com.bonus.common.biz.constant.MaterialConstants.QR_BOX_PREFIX; + /** * @author ma_sh * @create 2024/12/10 17:26 @@ -85,8 +86,25 @@ public class BmQrBoxServiceImpl implements BmQrBoxService { */ @Override public AjaxResult insertBmQrcodeInfo(BmQrBoxInfo bmQrBoxInfo) { - //生成二维码 - final String code = "BOX-" + DateTimeHelper.getNowTimeFomart(); + // 查询当月标准箱数 + int thisMonthMaxOrder = bmQrBoxMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth()); + String code = null; + List boxInfos; + int retryCount = 0; + int maxRetry = 10; // 设置最大重试次数,防止无限循环 + do { + // 生成编码,每次重试递增序号 + code = genderTaskCode(thisMonthMaxOrder + retryCount); + bmQrBoxInfo.setBoxCode(code); + // 检查编码是否已存在 + boxInfos = bmQrBoxMapper.findBoxInfoByKey(bmQrBoxInfo); + retryCount++; + + // 如果达到最大重试次数仍存在重复,抛出异常 + if (retryCount > maxRetry) { + throw new RuntimeException("超过最大重试次数,无法生成唯一的二维码箱号"); + } + } while (CollectionUtils.isNotEmpty(boxInfos)); bmQrBoxInfo.setBoxCode(code); bmQrBoxInfo.setCreateBy(SecurityUtils.getLoginUser().getSysUser().getNickName()); bmQrBoxInfo.setCreateTime(DateUtils.getNowDate()); @@ -94,6 +112,19 @@ public class BmQrBoxServiceImpl implements BmQrBoxService { return 0 < result ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg()) : AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg()); } + /** + * 生成标准箱编码 + * @param thisMonthMaxOrder + * @return + */ + private String genderTaskCode(int thisMonthMaxOrder) { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + Date nowDate = DateUtils.getNowDate(); + String format = dateFormat.format(nowDate); + String result = format.replace("-", ""); + return QR_BOX_PREFIX + result + String.format("-%03d", thisMonthMaxOrder + 1); + } + /** * BoxCode查询标准箱信息 * @@ -492,7 +523,7 @@ public class BmQrBoxServiceImpl implements BmQrBoxService { public AjaxResult deleteById(BmQrBoxInfo bmQrBoxInfo) { //根据id查看标准箱是否绑定,绑定不能删除 if (0 < bmQrBoxMapper.countBmQrcodeInfoByBoxId(bmQrBoxInfo.getBoxId())) { - return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), "该标准箱还绑定设备,无法删除"); + return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), "该标准箱已绑定设备,无法删除"); } final int result = bmQrBoxMapper.deleteById(bmQrBoxInfo); return 0 < result ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg()) : AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg()); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyDetailsMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyDetailsMapper.java index 827ae5ac..92ccc181 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyDetailsMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/mapper/LeaseApplyDetailsMapper.java @@ -183,4 +183,18 @@ public interface LeaseApplyDetailsMapper { * @return */ LeaseApplyDetails getLeasePublishApplyDetails(@Param("record") LeaseOutDetails record); + + /** + * 查询数量设备待出库详情 + * @param leaseOutDetails + * @return + */ + LeaseApplyDetails getPendingLeaseApplyDetails(LeaseOutDetails leaseOutDetails); + + /** + * 查询编码设备待出库详情 + * @param leaseOutDetails + * @return + */ + LeaseApplyDetails getPendingCodeLeaseApplyDetails(LeaseOutDetails leaseOutDetails); } 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 cc35df4f..c803df7b 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 @@ -209,4 +209,11 @@ public interface LeaseApplyInfoMapper { * @return */ LeaseApplyInfo getOutNum(LeaseApplyInfo leaseApplyInfo); + + /** + * 根据id去查询确认总出库数量 + * @param applyInfo + * @return + */ + LeaseApplyInfo getInfoList(LeaseApplyInfo applyInfo); } 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 59b4c057..679dc44d 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 @@ -1,12 +1,14 @@ package com.bonus.material.lease.service.impl; import java.io.OutputStream; +import java.math.BigDecimal; import java.net.URLEncoder; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; import com.bonus.common.biz.constant.GlobalConstants; +import com.bonus.common.biz.enums.*; import lombok.extern.slf4j.Slf4j; import cn.hutool.core.collection.CollectionUtil; @@ -19,10 +21,6 @@ import com.bonus.common.biz.constant.BmConfigItems; import com.bonus.common.biz.constant.MaterialConstants; import com.bonus.common.biz.domain.BmFileInfo; import com.bonus.common.biz.domain.lease.*; -import com.bonus.common.biz.enums.HttpCodeEnum; -import com.bonus.common.biz.enums.LeaseTaskStatusEnum; -import com.bonus.common.biz.enums.MaMachineStatusEnum; -import com.bonus.common.biz.enums.TmTaskTypeEnum; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.utils.StringUtils; @@ -540,14 +538,14 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { List leaseApplyOutList = leaseApplyInfoMapper.selectPublishList(leaseApplyInfo); if (!CollectionUtils.isEmpty(leaseApplyOutList)) { list.addAll(leaseApplyOutList); - for (LeaseApplyInfo applyInfo : list) { - if (applyInfo.getPreCountNum().compareTo(applyInfo.getAlNum()) == 0) { - applyInfo.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_FINISHED.getStatus()); - applyInfo.setTaskStatusName(LeaseTaskStatusEnum.LEASE_TASK_FINISHED.getStatusName()); - } else { - applyInfo.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_IN_PROGRESS.getStatus()); - applyInfo.setTaskStatusName(LeaseTaskStatusEnum.LEASE_TASK_IN_PROGRESS.getStatusName()); - } + } + for (LeaseApplyInfo applyInfo : list) { + if (applyInfo.getPreCountNum().compareTo(applyInfo.getAlNum()) == 0) { + applyInfo.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_FINISHED.getStatus()); + applyInfo.setTaskStatusName(LeaseTaskStatusEnum.LEASE_TASK_FINISHED.getStatusName()); + } else { + applyInfo.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_IN_PROGRESS.getStatus()); + applyInfo.setTaskStatusName(LeaseTaskStatusEnum.LEASE_TASK_IN_PROGRESS.getStatusName()); } } } @@ -609,26 +607,16 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { List leaseApplyOutList = leaseApplyInfoMapper.selectPublish(leaseApplyInfo); if (!CollectionUtils.isEmpty(leaseApplyOutList)) { list.addAll(leaseApplyOutList); + } + if (!CollectionUtils.isEmpty(list)) { for (LeaseApplyInfo applyInfo : list) { - // 根据id去查询出库数量 - LeaseApplyInfo outList = leaseApplyInfoMapper.getOutList(applyInfo); - if (outList != null) { - if (applyInfo.getPreCountNum().compareTo(outList.getAlNum()) == 0) { - applyInfo.setIsConfirm(2); - } else { - applyInfo.setIsConfirm(1); - } - } else { - applyInfo.setIsConfirm(1); - } - } - } else { - if (!CollectionUtils.isEmpty(list)) { - for (LeaseApplyInfo applyInfo : list) { - // 根据id去查询出库数量 - LeaseApplyInfo outList = leaseApplyInfoMapper.getOutList(applyInfo); - if (outList != null) { - if (applyInfo.getPreCountNum().compareTo(outList.getAlNum()) == 0) { + // 根据id去查询总出库数量 + LeaseApplyInfo totalInfo = leaseApplyInfoMapper.getOutList(applyInfo); + // 根据id去查询确认总出库数量 + LeaseApplyInfo info = leaseApplyInfoMapper.getInfoList(applyInfo); + if (totalInfo != null) { + if (info != null) { + if (info.getAlNum().compareTo(totalInfo.getAlNum()) == 0) { applyInfo.setIsConfirm(2); } else { applyInfo.setIsConfirm(1); @@ -636,6 +624,8 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { } else { applyInfo.setIsConfirm(1); } + } else { + applyInfo.setIsConfirm(1); } } } @@ -678,35 +668,7 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { .filter(item -> containsKeyword(item, keyWord)) .collect(Collectors.toList()); } -// // 判断状态 -// if (!CollectionUtils.isEmpty(leaseApplyInfo.getStatusList())) { -// // 将集合sortedList中状态taskStatus包含在leaseApplyInfo.getStatusList()中的元素 -// sortedList = sortedList.stream() -// .filter(item -> leaseApplyInfo.getStatusList().contains(item.getTaskStatus())) -// .collect(Collectors.toList()); -// } } - sortedList.removeIf(Objects::isNull); - if (leaseApplyInfo.getIsConfirm() != null) { - if (leaseApplyInfo.getIsConfirm() == 1) { - for (LeaseApplyInfo item : sortedList) { - if(item.getPreCountNum().compareTo(item.getAlNum()) != 0){ - item.setIsConfirm(1); - }else{ - //查找签名的数量之和是否为 - - } - } -// sortedList.removeIf(item -> item.getIsConfirm() != null && item.getIsConfirm() == 2); - } else if (leaseApplyInfo.getIsConfirm() == 2) { - sortedList.removeIf(item -> item.getIsConfirm() == null || item.getIsConfirm() != 2); - } - } - // 再次移除可能的null值 - sortedList.removeIf(Objects::isNull); - // 只有出库完成的任务才需要进行确认,这里过滤掉任务状态不等于4(出库已完成)的 -// sortedList.removeIf(item -> item.getTaskStatus() != 4); - return sortedList; } @@ -728,11 +690,17 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { } if (!CollectionUtils.isEmpty(list)) { for (LeaseApplyInfo applyInfo : list) { - // 根据id去查询出库数量 - LeaseApplyInfo outList = leaseApplyInfoMapper.getOutList(applyInfo); - if (outList != null) { - if (applyInfo.getPreCountNum().compareTo(outList.getAlNum()) == 0) { - applyInfo.setIsConfirm(2); + // 根据id去查询总出库数量 + LeaseApplyInfo totalInfo = leaseApplyInfoMapper.getOutList(applyInfo); + // 根据id去查询确认总出库数量 + LeaseApplyInfo info = leaseApplyInfoMapper.getInfoList(applyInfo); + if (totalInfo != null) { + if (info != null) { + if (info.getAlNum().compareTo(totalInfo.getAlNum()) == 0) { + applyInfo.setIsConfirm(2); + } else { + applyInfo.setIsConfirm(1); + } } else { applyInfo.setIsConfirm(1); } @@ -793,7 +761,9 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { private boolean containsKeyword(LeaseApplyInfo item, String keyWord) { return (item.getMaTypeNames() != null && item.getMaTypeNames().contains(keyWord)) || (item.getLeaseUnit() != null && item.getLeaseUnit().contains(keyWord)) || + (item.getUnitName() != null && item.getUnitName().contains(keyWord)) || (item.getLeaseProject() != null && item.getLeaseProject().contains(keyWord)) || + (item.getProjectName() != null && item.getProjectName().contains(keyWord)) || (item.getCode() != null && item.getCode().contains(keyWord)) || (item.getCreateBy() != null && item.getCreateBy().contains(keyWord)) || (item.getLeasePerson() != null && item.getLeasePerson().contains(keyWord)) || @@ -1274,6 +1244,24 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { */ @Override public AjaxResult leaseOut(LeaseOutRequestVo leaseOutRequestVo) { + // 判断库存是否充足 + if (!CollectionUtils.isEmpty(leaseOutRequestVo.getLeaseOutDetailsList())) { + LeaseOutDetails leaseOutDetails = leaseOutRequestVo.getLeaseOutDetailsList().get(0); + if (leaseOutDetails != null) { + if (leaseOutDetails.getManageType().equals(MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId())) { + LeaseApplyDetails details = leaseApplyDetailsMapper.getPendingLeaseApplyDetails(leaseOutDetails); + if (leaseOutDetails.getInputNum().compareTo(details.getOutNum()) > 0) { + return AjaxResult.error("出库数量大于领料数量,请重新输入选择"); + } + } + if (leaseOutDetails.getManageType().equals(MaTypeManageTypeEnum.CODE_DEVICE.getTypeId())) { + LeaseApplyDetails details = leaseApplyDetailsMapper.getPendingCodeLeaseApplyDetails(leaseOutDetails); + if (BigDecimal.valueOf(leaseOutRequestVo.getLeaseOutDetailsList().size()).compareTo(details.getOutNum()) > 0) { + return AjaxResult.error("出库数量大于领料数量,请重新输入选择"); + } + } + } + } for (LeaseOutDetails bean : leaseOutRequestVo.getLeaseOutDetailsList()) { if (Objects.isNull(bean)) { continue; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseTaskServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseTaskServiceImpl.java index 32c3b0f8..9125a5fe 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseTaskServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseTaskServiceImpl.java @@ -901,8 +901,8 @@ public class LeaseTaskServiceImpl implements ILeaseTaskService { */ private boolean containsKeyWord(LeasePublishInfo item, String keyWord) { return (item.getMaTypeNames() != null && item.getMaTypeNames().contains(keyWord)) || - (item.getUnitName() != null && item.getUnitName().contains(keyWord)) || - (item.getProjectName() != null && item.getProjectName().contains(keyWord)) || + (item.getLeaseUnit() != null && item.getLeaseUnit().contains(keyWord)) || + (item.getLeaseProject() != null && item.getLeaseProject().contains(keyWord)) || (item.getCode() != null && item.getCode().contains(keyWord)) || (item.getCreateBy() != null && item.getCreateBy().contains(keyWord)) || (item.getLeasePerson() != null && item.getLeasePerson().contains(keyWord)) || diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/materialStation/service/impl/ProAuthorizeServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/materialStation/service/impl/ProAuthorizeServiceImpl.java index d7880cac..a4756d17 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/materialStation/service/impl/ProAuthorizeServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/materialStation/service/impl/ProAuthorizeServiceImpl.java @@ -292,7 +292,9 @@ public class ProAuthorizeServiceImpl implements ProAuthorizeService { private boolean containsKeyWord(LeasePublishInfo item, String keyWord) { return (item.getMaTypeNames() != null && item.getMaTypeNames().contains(keyWord)) || (item.getUnitName() != null && item.getUnitName().contains(keyWord)) || + (item.getLeaseUnit() != null && item.getLeaseUnit().contains(keyWord)) || (item.getProjectName() != null && item.getProjectName().contains(keyWord)) || + (item.getLeaseProject() != null && item.getLeaseProject().contains(keyWord)) || (item.getCode() != null && item.getCode().contains(keyWord)) || (item.getCreateBy() != null && item.getCreateBy().contains(keyWord)) || (item.getLeasePerson() != null && item.getLeasePerson().contains(keyWord)) || diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairAuditDetails.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairAuditDetails.java index 8ff74d37..71087a1b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairAuditDetails.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairAuditDetails.java @@ -149,4 +149,15 @@ public class RepairAuditDetails extends BaseEntity { @ApiModelProperty(value = "单位") private String unitName; + + @ApiModelProperty(value = "关键字") + private String keyWord; + + public String getKeyWord() { + return keyWord; + } + + public void setKeyWord(String keyWord) { + this.keyWord = keyWord; + } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java index 10102a97..4502caa8 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java @@ -196,7 +196,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService } } if (CollectionUtil.isNotEmpty(repairQuestList)) { - String keyWord = repairAuditDetails.getKeyword(); + String keyWord = repairAuditDetails.getKeyWord(); // 如果关键字不为空,进行过滤 if (!StringUtils.isBlank(keyWord)) { repairQuestList = repairQuestList.stream() @@ -221,6 +221,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService private boolean containsKeyword(ScrapApplyDetailsVO item, String keyWord) { return (item.getItemType() != null && item.getItemType().contains(keyWord)) || (item.getRepairTaskCode() != null && item.getRepairTaskCode().contains(keyWord)) || + (item.getScrapNum() != null && item.getScrapNum().contains(keyWord)) || (item.getRepairNum() != null && item.getRepairNum().contains(keyWord)) || (item.getUnitName() != null && item.getUnitName().contains(keyWord)) || (item.getProjectName() != null && item.getProjectName().contains(keyWord)) || diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java index 27cf21a9..e8010770 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java @@ -1069,6 +1069,7 @@ public class RepairServiceImpl implements RepairService { .setCreateBy(loginUser.getUsername()); repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); + repairApplyRecord.setScrapId(partList.get(0).getScrapId()); // 不选维修配件时, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } @@ -1082,6 +1083,7 @@ public class RepairServiceImpl implements RepairService { .setCreateBy(loginUser.getUsername()); repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); + repairApplyRecord.setScrapId(partList.get(0).getScrapId()); // 不选维修配件时, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml index 294641fc..d2e89eb4 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml @@ -427,6 +427,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + UPDATE tm_task SET task_status = 22 WHERE task_id = #{taskId} diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml index 7c993098..7051b9ab 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml @@ -673,5 +673,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" parent_id = #{record.parentId} AND new_type = #{record.typeId} + + + diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyInfoMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyInfoMapper.xml index 6fd696d1..eb2516f0 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyInfoMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyInfoMapper.xml @@ -135,12 +135,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and lai.direct_audit_time = #{directAuditTime} and lai.direct_audit_remark = #{directAuditRemark} and lai.company_id = #{companyId} - + and COALESCE(lai.release_time, lai.create_time) BETWEEN CONCAT(#{startTime}, ' 00:00:00') AND CONCAT(#{endTime}, ' 23:59:59') @@ -721,17 +721,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" su.sign_url AS leaseSignUrl, su.sign_type AS leaseSignType, tt.task_type AS taskType, - lai.material_man AS materialMan, - lod.confirm_time AS confirmTime, - lod.confirm_remark AS confirmRemark, mt3.type_id AS firstId, lpd.create_time AS releaseTime, - bp.external_id as externalId, - lai.create_time as createTime + bp.external_id as externalId FROM - lease_apply_info lai + lease_publish_details lpd + LEFT JOIN lease_apply_info lai ON lai.id = lpd.parent_id LEFT JOIN tm_task tt ON lai.task_id = tt.task_id - LEFT JOIN lease_publish_details lpd ON lpd.parent_id = lai.id LEFT JOIN (SELECT IFNULL( sum(out_num ), 0) AS num, parent_id, publish_task, is_confirm, confirm_remark, confirm_time, lease_sign_id from lease_out_details GROUP BY parent_id) lod ON lpd.parent_id = lod.parent_id LEFT JOIN bm_unit bu ON bu.unit_id = lpd.unit_id @@ -758,20 +754,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND lpd.publish_task = #{publishTask} GROUP BY - lai.id - ORDER BY - lpd.create_time DESC + lpd.publish_task + ORDER BY lpd.create_time DESC @@ -869,4 +865,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and create_time BETWEEN CONCAT(#{startTime}, ' 00:00:00') AND CONCAT(#{endTime}, ' 23:59:59') + +