仓库管理修改

liweidong
wusiyu 7 days ago
parent cd93d640e4
commit 0145430e41
  1. 43
      blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/entity/StBuyOrder.java
  2. 26
      blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StBuyOrderController.java
  3. 4
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StBuyOrderMapper.xml
  4. 37
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StBuyOrderServiceImpl.java

@ -100,9 +100,9 @@ public class StBuyOrder extends TenantEntity {
@Schema(description = "计划区域") @Schema(description = "计划区域")
private String planArea; private String planArea;
/** /**
* 审批状态 * 二级审批状态
*/ */
@Schema(description = "审批状态") @Schema(description = "一、二级审批状态")
private Short approvalStatus; private Short approvalStatus;
/** /**
* 已批数量 * 已批数量
@ -154,6 +154,16 @@ public class StBuyOrder extends TenantEntity {
*/ */
@Schema(description = "等级/生产标识") @Schema(description = "等级/生产标识")
private String grade; private String grade;
/**
* 二级审批人
*/
@Schema(description = "二级审批人")
private Long approvalMan2;
/**
* 二级审批时间
*/
@Schema(description = "二级审批时间")
private Date approvalTime2;
@TableField(exist = false) @TableField(exist = false)
private String declareManName; 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_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;
} }

@ -97,13 +97,13 @@ public class StBuyOrderController extends BladeController {
stBuyOrder.setBoStatus(StBuyOrder.BOSTATUS_NEW); stBuyOrder.setBoStatus(StBuyOrder.BOSTATUS_NEW);
// 3. 权限控制:按角色过滤审批状态 // 3. 权限控制:按角色过滤审批状态
BladeUser user = AuthUtil.getUser(); // BladeUser user = AuthUtil.getUser();
String userRoleName = user.getRoleName(); // String userRoleName = user.getRoleName();
stBuyOrder.setUserRoleName(userRoleName); // stBuyOrder.setUserRoleName(userRoleName);
if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { // if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) {
// 保管员:可查询审批状态为「审批中」的数据 // // 保管员:可查询审批状态为「审批中」的数据
stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); // stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING);
} // }
IPage<StBuyOrderVO> pages = stBuyOrderService.selectStBuyOrderPage(Condition.getPage(query), stBuyOrder); IPage<StBuyOrderVO> pages = stBuyOrderService.selectStBuyOrderPage(Condition.getPage(query), stBuyOrder);
return R.data(pages); return R.data(pages);
@ -138,12 +138,12 @@ public class StBuyOrderController extends BladeController {
query.setAscs("bo_code"); query.setAscs("bo_code");
} }
BladeUser user = AuthUtil.getUser(); // BladeUser user = AuthUtil.getUser();
String userRoleName = user.getRoleName(); // String userRoleName = user.getRoleName();
if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) { // if (StrUtil.isNotBlank(userRoleName) && userRoleName.contains("保管员")) {
// 保管员:可查询审批状态为「审批中」的数据 // // 保管员:可查询审批状态为「审批中」的数据
stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING); // stBuyOrder.setApprovalStatus(StBuyOrder.APPROVAL_STATUS_CHECKING);
} // }
IPage<StBuyOrderVO> pages = stBuyOrderService.selectStoreRequestPage(Condition.getPage(query), stBuyOrder); IPage<StBuyOrderVO> pages = stBuyOrderService.selectStoreRequestPage(Condition.getPage(query), stBuyOrder);
return R.data(pages); return R.data(pages);
} }

@ -72,10 +72,6 @@
AND bo.bo_code LIKE '%' || #{stBuyOrder.boCode} || '%' AND bo.bo_code LIKE '%' || #{stBuyOrder.boCode} || '%'
</if> </if>
<if test="stBuyOrder.userRoleName != null and stBuyOrder.userRoleName.contains('保管员')">
AND bo.approval_status = 0
</if>
<!-- 2. 物料编号(goods_code)模糊查询 --> <!-- 2. 物料编号(goods_code)模糊查询 -->
<if test="stBuyOrder.goodsCode != null and stBuyOrder.goodsCode != ''"> <if test="stBuyOrder.goodsCode != null and stBuyOrder.goodsCode != ''">
AND g.goods_code LIKE '%' || #{stBuyOrder.goodsCode} || '%' AND g.goods_code LIKE '%' || #{stBuyOrder.goodsCode} || '%'

@ -186,7 +186,7 @@ public class StBuyOrderServiceImpl extends BaseServiceImpl<StBuyOrderMapper, StB
R<String> roleName = sysClient.getRoleName(approvalRecord.getCurrentRoleId()); R<String> roleName = sysClient.getRoleName(approvalRecord.getCurrentRoleId());
String roleNameData = roleName.getData(); String roleNameData = roleName.getData();
approvalRecord.setCurrentRoleName(roleNameData); approvalRecord.setCurrentRoleName(roleNameData);
approvalRecord.setNextRoleName("保管员"); approvalRecord.setNextRoleName("热表-核算员");
//租户ID 000000 //租户ID 000000
R<String> roleIdResp = sysClient.getRoleIds("000000", approvalRecord.getNextRoleName()); R<String> roleIdResp = sysClient.getRoleIds("000000", approvalRecord.getNextRoleName());
String roleId = roleIdResp.getData(); String roleId = roleIdResp.getData();
@ -213,14 +213,15 @@ public class StBuyOrderServiceImpl extends BaseServiceImpl<StBuyOrderMapper, StB
// 1. 校验审批人权限(仅保管员可审批) // 1. 校验审批人权限(仅保管员可审批)
// String app = approver.getRoleName(); // String app = approver.getRoleName();
// log.info(app); // log.info(app);
if (Objects.equals(approver.getRoleName(), "保管员")) { // if (Objects.equals(approver.getRoleName(), "热表-核算员")) {
// 2. 查询订单并校验状态
StBuyOrder buyOrder = baseMapper.selectById(orderId); StBuyOrder buyOrder = baseMapper.selectById(orderId);
if (buyOrder == null) { if (buyOrder == null) {
throw new RuntimeException("采购单不存在!"); throw new RuntimeException("采购单不存在!");
} }
if (buyOrder.getApprovalStatus() == 0) {
if (StBuyOrder.APPROVAL_STATUS_CHECKED == buyOrder.getApprovalStatus()) { if (StBuyOrder.APPROVAL_STATUS_CHECKED == buyOrder.getApprovalStatus()) {
throw new RuntimeException("该采购单已审批通过,无需重复审批!"); throw new RuntimeException("该采购单一级审批已通过,无需重复审批!");
} }
// 3. 更新审批状态 // 3. 更新审批状态
@ -229,19 +230,39 @@ public class StBuyOrderServiceImpl extends BaseServiceImpl<StBuyOrderMapper, StB
buyOrder.setCheckDate(new Date()); buyOrder.setCheckDate(new Date());
baseMapper.updateById(buyOrder); baseMapper.updateById(buyOrder);
R<String> roleIdResp = sysClient.getRoleIds("000000", "保管员"); R<String> roleIdResp = sysClient.getRoleIds("000000", "厂长,副厂长");
String roleId = roleIdResp.getData(); String roleId = roleIdResp.getData();
MesApprovalRecordEntity updateRecord = new MesApprovalRecordEntity(); MesApprovalRecordEntity updateRecord = new MesApprovalRecordEntity();
updateRecord.setBizId(orderId); updateRecord.setBizId(orderId);
updateRecord.setBizType("额外提请审批"); updateRecord.setBizType("额外提请审批");
updateRecord.setOpinion(""); updateRecord.setOpinion("");
updateRecord.setNextRoleId(Long.valueOf(roleId)); // updateRecord.setNextRoleId(Long.valueOf(roleId));
updateRecord.setNextUserName("厂长,副厂长");
updateRecord.setStatus(Integer.valueOf(approvalResult)); updateRecord.setStatus(Integer.valueOf(approvalResult));
mesApprovalRecordClient.update(updateRecord); mesApprovalRecordClient.update(updateRecord);
} else { // } else {
throw new RuntimeException("仅保管员可执行审批操作!"); // 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);
} }
} }

Loading…
Cancel
Save