From af5ef3088702ed6e14a5201fb46dcaac1feab081 Mon Sep 17 00:00:00 2001 From: "liang.chao" <1360241448@qq.com> Date: Thu, 23 Jan 2025 13:48:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=BA=93=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=AE=8C=E5=96=84=E3=80=81=E6=8A=A5=E5=BA=9F=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SecondaryWarehouseController.java | 3 +- .../domain/SecondCcrapApplyDetails.java | 7 +++ .../sgzb/material/domain/SecondLotConfig.java | 2 + .../material/domain/SecondaryWarehouse.java | 1 + .../bonus/sgzb/material/domain/TeamGroup.java | 2 + .../sgzb/material/domain/TeamLeaseInfo.java | 2 +- .../mapper/SecondaryWarehouseMapper.java | 2 + .../service/SecondaryWarehouseService.java | 2 +- .../impl/SecondaryWarehouseServiceImpl.java | 54 ++++++++++++++++--- .../material/SecondaryWarehouseMapper.xml | 35 ++++++++++-- 10 files changed, 97 insertions(+), 13 deletions(-) diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java index e03886a..c6daa95 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java @@ -150,8 +150,7 @@ public class SecondaryWarehouseController extends BaseController { @ApiOperation(value = "二级库报废申请") @PostMapping("/seconfScrap") public AjaxResult seconfScrap(@RequestBody SecondCcrapApplyDetails bean) { - Integer i = service.seconfScrap(bean); - return toAjax(i); + return service.seconfScrap(bean); } @ApiOperation(value = "二级库报废审核(通过/驳回)") diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondCcrapApplyDetails.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondCcrapApplyDetails.java index a5cc8a8..c178612 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondCcrapApplyDetails.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondCcrapApplyDetails.java @@ -1,6 +1,8 @@ package com.bonus.sgzb.material.domain; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; import java.util.List; @@ -31,6 +33,8 @@ public class SecondCcrapApplyDetails { // 创建者 private String createBy; // 创建时间 + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; // 更新者 private String updateBy; @@ -45,4 +49,7 @@ public class SecondCcrapApplyDetails { private String unitName; private String modelName; private String typeName; + private String maCode; + private Long deptId; + private Integer parentId; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondLotConfig.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondLotConfig.java index e917851..ade5f98 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondLotConfig.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondLotConfig.java @@ -23,4 +23,6 @@ public class SecondLotConfig { private String updater; //修改时间 private String updateTime; + // 部门id + private Long deptId; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java index d228744..6f5f115 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java @@ -39,6 +39,7 @@ public class SecondaryWarehouse { *机具id */ private String maId; + private Long deptId; /** *机具id */ diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamGroup.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamGroup.java index 40fd2ed..f1f355c 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamGroup.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamGroup.java @@ -23,4 +23,6 @@ public class TeamGroup { private String updater; //修改时间 private String updateTime; + + private Long deptId; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java index 55a0560..aa5a74a 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java @@ -128,7 +128,7 @@ public class TeamLeaseInfo { */ private String queryType; - private int outNum; + private Integer outNum; private Integer teamGroupId; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java index 77e5718..a65bbc4 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java @@ -93,4 +93,6 @@ public interface SecondaryWarehouseMapper { Integer updateDevNum(SecondCcrapApplyDetails secondCcrapApplyDetails); List getSecondScrapListDetails(SecondCcrapApplyDetails bean); + + List getSecondScrapByMaId(@Param("maId") String maId, @Param("typeId") String typeId); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java index 918bf78..78ab788 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java @@ -45,7 +45,7 @@ public interface SecondaryWarehouseService { List getSecondScrapList(SecondCcrapApplyDetails bean); - Integer seconfScrap(SecondCcrapApplyDetails bean); + AjaxResult seconfScrap(SecondCcrapApplyDetails bean); Integer auditSeconfScrap(SecondCcrapApplyDetails bean); diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java index f8d132f..321a0ee 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java @@ -94,11 +94,17 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService @Override public List listConfig(SecondLotConfig bean) { + if (!SecurityUtils.getLoginUser().getRoles().contains("admin")) { + bean.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId()); + } return mapper.listConfig(bean); } @Override public List listTeamGroup(TeamGroup bean) { + if (!SecurityUtils.getLoginUser().getRoles().contains("admin")) { + bean.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId()); + } return mapper.listTeamGroup(bean); } @@ -150,25 +156,35 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService @Override public List getDevStockCount(SecondaryWarehouse bean) { + if (!SecurityUtils.getLoginUser().getRoles().contains("admin")) { + bean.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId()); + } return mapper.getDevStockCount(bean); } @Override public List getSecondScrapList(SecondCcrapApplyDetails bean) { + if (!SecurityUtils.getLoginUser().getRoles().contains("admin")) { + bean.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId()); + } return mapper.getSecondScrapList(bean); } @Override - public Integer seconfScrap(SecondCcrapApplyDetails teamLeaseInfo) { + public AjaxResult seconfScrap(SecondCcrapApplyDetails teamLeaseInfo) { teamLeaseInfo.setCreateBy(String.valueOf(SecurityUtils.getLoginUser().getUserid())); - Integer num = 0; String code = "BF" + System.currentTimeMillis(); if (teamLeaseInfo.getTeamLeaseInfos().size() > 0) { - num = 0; + Integer num = 0; for (TeamLeaseInfo bean : teamLeaseInfo.getTeamLeaseInfos()) { // 编码设备 if (StringUtils.isNotBlank(bean.getMaIds())) { for (String maId : bean.getMaIds().split(",")) { + // 先查询是否已经申请了报废 + List list = mapper.getSecondScrapByMaId(maId, bean.getTypeId()); + if (list.size() > 0) { + return AjaxResult.error(list.get(0).getMaCode() + "已申请报废,请勿重复申请"); + } // 出库 teamLeaseInfo.setMaId(maId); teamLeaseInfo.setTypeId(bean.getTypeId()); @@ -176,7 +192,8 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService teamLeaseInfo.setCode(code); teamLeaseInfo.setStatus(0); teamLeaseInfo.setAuditRemark(bean.getAuditRemark()); - num = mapper.secondScrapApplyDetails(teamLeaseInfo); + teamLeaseInfo.setId(bean.getId().intValue()); + num += mapper.secondScrapApplyDetails(teamLeaseInfo); } } else { // 数量设备 @@ -186,17 +203,25 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService teamLeaseInfo.setCode(code); teamLeaseInfo.setStatus(0); teamLeaseInfo.setAuditRemark(bean.getAuditRemark()); - num = mapper.secondScrapApplyDetails(teamLeaseInfo); + teamLeaseInfo.setId(bean.getId().intValue()); + num += mapper.secondScrapApplyDetails(teamLeaseInfo); } } + if (num > 0) { + return AjaxResult.success("申请成功"); + } else { + return AjaxResult.error("申请失败"); + } + } else { + return AjaxResult.error("参数为空"); } - return num; } @Override public Integer auditSeconfScrap(SecondCcrapApplyDetails bean) { // 目前先做成统一审核,后续如果需要对不同机具单独审核在做修改 int num = 0; + bean.setAuditBy(SecurityUtils.getLoginUser().getUserid().intValue()); if (bean.getStatus() == 1) { //同意 num = mapper.auditSeconfScrap(bean); @@ -205,9 +230,22 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService List list = mapper.getSeconfScrapByCode(bean); for (SecondCcrapApplyDetails secondCcrapApplyDetails : list) { if (StringUtils.isNotBlank(secondCcrapApplyDetails.getMaId())) { + // 修改机具状态为报废 mapper.updateMaMachineStatus(secondCcrapApplyDetails.getMaId()); + // 更新设备出库数量库存 + TeamLeaseInfo teamLeaseInfo = new TeamLeaseInfo(); + teamLeaseInfo.setId(secondCcrapApplyDetails.getParentId().longValue()); + teamLeaseInfo.setMaId(secondCcrapApplyDetails.getMaId()); + mapper.deleteOutNum(teamLeaseInfo); } else { + // 更新设备库存 mapper.updateDevNum(secondCcrapApplyDetails); + // 更新设备出库数量库存 + TeamLeaseInfo teamLeaseInfo = new TeamLeaseInfo(); + teamLeaseInfo.setParentId(secondCcrapApplyDetails.getParentId()); + teamLeaseInfo.setOutNum(secondCcrapApplyDetails.getScrapNum()); + teamLeaseInfo.setTypeId(secondCcrapApplyDetails.getTypeId()); + mapper.updateOutNum(teamLeaseInfo); } } } @@ -226,6 +264,9 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService @Override public List getList(SecondaryWarehouse bean) { bean.setLeaseType(1); + if (!SecurityUtils.getLoginUser().getRoles().contains("admin")) { + bean.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId()); + } List list = mapper.getList(bean); for (SecondaryWarehouse secondaryWarehouse : list) { Integer warehouse = mapper.selectStockNum(secondaryWarehouse); @@ -302,6 +343,7 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService teamLeaseInfo.setOutNum(bean.getOutNum()); teamLeaseInfo.setTypeId(bean.getTypeId()); teamLeaseInfo.setId(bean.getId()); + teamLeaseInfo.setParentId(bean.getId().intValue()); teamLeaseInfo.setMaId(null); num = mapper.addNewOperate(teamLeaseInfo); if (teamLeaseInfo.getType() == 3) { diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml index 407e57e..fc331be 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml @@ -31,7 +31,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" parent_id = #{parentId} and type_id = #{typeId} - UPDATE second_ccrap_apply_details + UPDATE second_scrap_apply_details SET audit_by = #{auditBy}, audit_time = now(), @@ -97,6 +97,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and lai.lease_type = #{leaseType} + + and bui.dept_id = #{deptId} + and (bui.unit_name like concat('%', #{keyword}, '%') or mt1.type_name like concat('%', #{keyword}, '%') or @@ -105,6 +108,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY bui.unit_id, + lod.parent_id, lod.type_id + insert into second_lot_config (name,unit_id,creater,create_time) @@ -664,7 +693,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update ma_type set num = num + #{outNum} where type_id = #{typeId} - insert into second_scrap_apply_details (code,ma_id,type_id,scrap_num,create_by,create_time,unit_id,status,audit_remark) - values (#{code},#{maId},#{typeId},#{scrapNum},#{createBy},now(),#{unitId},#{status},#{auditRemark}); + insert into second_scrap_apply_details (code,ma_id,type_id,scrap_num,create_by,create_time,unit_id,status,audit_remark,parent_id) + values (#{code},#{maId},#{typeId},#{scrapNum},#{createBy},now(),#{unitId},#{status},#{auditRemark},#{id});