From 0145430e4143f84a2cc148db535e72f674df2e97 Mon Sep 17 00:00:00 2001 From: wusiyu <2015098864@qq.com> Date: Sat, 23 May 2026 14:24:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=93=E5=BA=93=E7=AE=A1=E7=90=86=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/pojo/entity/StBuyOrder.java | 43 +++++++----------- .../wms/controller/StBuyOrderController.java | 26 +++++------ .../wms/mapper/StBuyOrderMapper.xml | 4 -- .../service/impl/StBuyOrderServiceImpl.java | 45 ++++++++++++++----- 4 files changed, 63 insertions(+), 55 deletions(-) diff --git a/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StBuyOrder.java b/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StBuyOrder.java index 0e9b56d6d..5ab6edd5b 100644 --- a/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StBuyOrder.java +++ b/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StBuyOrder.java @@ -100,9 +100,9 @@ public class StBuyOrder extends TenantEntity { @Schema(description = "计划区域") private String planArea; /** - * 审批状态 + * 一、二级审批状态 */ - @Schema(description = "审批状态") + @Schema(description = "一、二级审批状态") private Short approvalStatus; /** * 已批数量 @@ -154,6 +154,16 @@ public class StBuyOrder extends TenantEntity { */ @Schema(description = "等级/生产标识") private String grade; + /** + * 二级审批人 + */ + @Schema(description = "二级审批人") + private Long approvalMan2; + /** + * 二级审批时间 + */ + @Schema(description = "二级审批时间") + private Date approvalTime2; @TableField(exist = false) private String declareManName; @@ -212,39 +222,20 @@ public class StBuyOrder extends TenantEntity { */ public static final short APPROVAL_STATUS_CHECKED = 1; - /** - * 变更待审中 - */ - public static final short APPROVAL_STATUS_CHANGE_WAITING_FOR_CHECKUP = 2; - - /** - * 变更中 - */ - public static final short APPROVAL_STATUS_CHANGING = 3; - - /** - * 打回 - */ - public static final short APPROVAL_STATUS_RETURN = 4; - /** * 审批未通过 */ - public static final short APPROVAL_STATUS_UNPASS = 10; + public static final short APPROVAL_STATUS_UNPASS = 2; /** - * 已完成 + * 二级审批通过 */ - public static final short APPROVAL_STATUS_COMPLETE = 20; + public static final short APPROVAL_STATUS_SECOND_CHECKED = 3; /** - * 已作废 + * 二级审批未通过 */ - public static final short APPROVAL_STATUS_CANCEL = 21; + public static final short APPROVAL_STATUS_SECOND_UNPASS = 4; - /** - * 已变更 - */ - public static final short APPROVAL_STATUS_CHANGE_OK = 22; } diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StBuyOrderController.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StBuyOrderController.java index abcd7b3c0..3d461d90a 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StBuyOrderController.java +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StBuyOrderController.java @@ -97,13 +97,13 @@ public class StBuyOrderController extends BladeController { stBuyOrder.setBoStatus(StBuyOrder.BOSTATUS_NEW); // 3. 权限控制:按角色过滤审批状态 - BladeUser user = AuthUtil.getUser(); - String userRoleName = user.getRoleName(); - stBuyOrder.setUserRoleName(userRoleName); - if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { - // 保管员:可查询审批状态为「审批中」的数据 - stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); - } +// BladeUser user = AuthUtil.getUser(); +// String userRoleName = user.getRoleName(); +// stBuyOrder.setUserRoleName(userRoleName); +// if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { +// // 保管员:可查询审批状态为「审批中」的数据 +// stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); +// } IPage pages = stBuyOrderService.selectStBuyOrderPage(Condition.getPage(query), stBuyOrder); return R.data(pages); @@ -138,12 +138,12 @@ public class StBuyOrderController extends BladeController { query.setAscs("bo_code"); } - BladeUser user = AuthUtil.getUser(); - String userRoleName = user.getRoleName(); - if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { - // 保管员:可查询审批状态为「审批中」的数据 - stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); - } +// BladeUser user = AuthUtil.getUser(); +// String userRoleName = user.getRoleName(); +// if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { +// // 保管员:可查询审批状态为「审批中」的数据 +// stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); +// } IPage pages = stBuyOrderService.selectStoreRequestPage(Condition.getPage(query), stBuyOrder); return R.data(pages); } diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StBuyOrderMapper.xml b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StBuyOrderMapper.xml index 92007e3fb..1a9eaa92b 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StBuyOrderMapper.xml +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StBuyOrderMapper.xml @@ -72,10 +72,6 @@ AND bo.bo_code LIKE '%' || #{stBuyOrder.boCode} || '%' - - AND bo.approval_status = 0 - - AND g.goods_code LIKE '%' || #{stBuyOrder.goodsCode} || '%' diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StBuyOrderServiceImpl.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StBuyOrderServiceImpl.java index 5b2d0e6bc..cd5b573ae 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StBuyOrderServiceImpl.java +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StBuyOrderServiceImpl.java @@ -186,7 +186,7 @@ public class StBuyOrderServiceImpl extends BaseServiceImpl roleName = sysClient.getRoleName(approvalRecord.getCurrentRoleId()); String roleNameData = roleName.getData(); approvalRecord.setCurrentRoleName(roleNameData); - approvalRecord.setNextRoleName("保管员"); + approvalRecord.setNextRoleName("热表-核算员"); //租户ID 000000 R roleIdResp = sysClient.getRoleIds("000000", approvalRecord.getNextRoleName()); String roleId = roleIdResp.getData(); @@ -213,14 +213,15 @@ public class StBuyOrderServiceImpl extends BaseServiceImpl roleIdResp = sysClient.getRoleIds("000000", "保管员"); + R roleIdResp = sysClient.getRoleIds("000000", "厂长,副厂长"); String roleId = roleIdResp.getData(); MesApprovalRecordEntity updateRecord = new MesApprovalRecordEntity(); updateRecord.setBizId(orderId); updateRecord.setBizType("额外提请审批"); updateRecord.setOpinion(""); - updateRecord.setNextRoleId(Long.valueOf(roleId)); +// updateRecord.setNextRoleId(Long.valueOf(roleId)); + updateRecord.setNextUserName("厂长,副厂长"); updateRecord.setStatus(Integer.valueOf(approvalResult)); mesApprovalRecordClient.update(updateRecord); - } else { - throw new RuntimeException("仅保管员可执行审批操作!"); +// } else { +// throw new RuntimeException("仅保管员可执行审批操作!"); +// } + }else if(buyOrder.getApprovalStatus() == 1){ + + if (StBuyOrder.APPROVAL_STATUS_SECOND_CHECKED == buyOrder.getApprovalStatus()) { + throw new RuntimeException("该采购单二级审批已通过,无需重复审批!"); + } + buyOrder.setApprovalStatus(approvalResult); + buyOrder.setApprovalMan2(approver.getUserId()); + buyOrder.setApprovalTime2(new Date()); + baseMapper.updateById(buyOrder); + + MesApprovalRecordEntity updateRecord = new MesApprovalRecordEntity(); + updateRecord.setBizId(orderId); + updateRecord.setBizType("额外提请审批"); + updateRecord.setOpinion(""); +// updateRecord.setNextRoleId(Long.valueOf(roleId)); + updateRecord.setNextUserName("厂长,副厂长"); + updateRecord.setStatus(Integer.valueOf(approvalResult)); + mesApprovalRecordClient.update(updateRecord); } }