镀层物料审批

liweidong
liweidong-hj 17 hours ago
parent f300137ebb
commit b53678158b
  1. 1
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/common/enums/MesApprovalRecordBizTypeEnum.java
  2. 51
      blade-service/blade-desk/src/main/java/org/springblade/desk/common/service/impl/MesPlateGoodsRecordServiceImpl.java
  3. 21
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordServiceImpl.java

@ -21,6 +21,7 @@ public enum MesApprovalRecordBizTypeEnum {
PRO_RE_TEMPLATE("过程记录模板审核"),
BATCH_PLANNING_CATEGORY("槽液计划类/审核"),
BATCH_PLANNING_TASK("槽液任务/审核"),
PLATE_GOODS_RECORD("镀层物料需求申报/审核"),
;
private final String desc;

@ -0,0 +1,51 @@
package org.springblade.desk.common.service.impl;
import jakarta.annotation.Resource;
import org.springblade.desk.common.enums.MesApprovalRecordBizTypeEnum;
import org.springblade.desk.common.service.ApprovalRecordDetailStrategy;
import org.springblade.desk.dashboard.pojo.entity.BsWorkCenterEntity;
import org.springblade.desk.dashboard.pojo.entity.DsBatchPreservePlanEntity;
import org.springblade.desk.dashboard.pojo.vo.DsBatchPreservePlanVO;
import org.springblade.desk.dashboard.service.IBsWorkCenterService;
import org.springblade.desk.dashboard.service.IDsBatchPreservePlanService;
import org.springblade.desk.order.pojo.entity.PlateGoodsRecord;
import org.springblade.desk.order.pojo.entity.YieldOrder;
import org.springblade.desk.order.pojo.vo.PlateGoodsRecordVo;
import org.springblade.desk.order.service.IPlateGoodsRecordService;
import org.springblade.desk.order.wrapper.PlateGoodsRecordWrapper;
import org.springblade.desk.order.wrapper.YieldOrderWrapper;
import org.springblade.system.feign.IUserClient;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 物料需求申报审核待办策略实现类
*/
@Service
public class MesPlateGoodsRecordServiceImpl implements ApprovalRecordDetailStrategy<PlateGoodsRecordVo> {
@Autowired
IPlateGoodsRecordService goodsRecordService;
@Override
public String getBizType() {
return MesApprovalRecordBizTypeEnum.PLATE_GOODS_RECORD.getDesc();
}
@Override
public PlateGoodsRecordVo getDetail(Long bizId) {
PlateGoodsRecord detail = goodsRecordService.getById(bizId);
PlateGoodsRecordVo vo = PlateGoodsRecordWrapper.build().entityVO(detail);
// 查询关联订单列表
List<YieldOrder> yieldOrderList = goodsRecordService.listDetailYieldOrder(detail.getId());
vo.setYieldOrderList(YieldOrderWrapper.build().listVO(yieldOrderList));
return vo;
}
}

@ -21,6 +21,8 @@ import org.springblade.desk.basic.service.ICoatingThicknessService;
import org.springblade.desk.basic.service.ICraftAbilityService;
import org.springblade.desk.basic.service.IMaterialQuotaService;
import org.springblade.desk.basic.service.IQualityGradeService;
import org.springblade.desk.common.enums.MesApprovalRecordBizTypeEnum;
import org.springblade.desk.common.service.IMesApprovalRecordService;
import org.springblade.desk.dashboard.pojo.entity.BsPlatingEntity;
import org.springblade.desk.dashboard.pojo.entity.DsCraftEntity;
import org.springblade.desk.dashboard.pojo.entity.DsPartEntity;
@ -46,6 +48,7 @@ import org.springblade.scheduling.pojo.entity.CraftAbilityEntity;
import org.springblade.scheduling.pojo.entity.QualityGradeEntity;
import org.springblade.system.cache.DictCache;
import org.springblade.wms.feign.WmsTaskClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
@ -53,6 +56,7 @@ import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@ -78,6 +82,9 @@ public class PlateGoodsRecordServiceImpl extends BaseServiceImpl<PlateGoodsRecor
private final ICraftAbilityService craftAbilityService;
private final IQualityGradeService qualityGradeService;
private final WmsTaskClient wmsTaskClient;
@Autowired
IMesApprovalRecordService mesApprovalRecordService;
@Override
public IPage<PlateGoodsRecord> selectPage(IPage<PlateGoodsRecord> page, PlateGoodsRecord entity) {
List<PlateGoodsRecord> dataList = baseMapper.selectPage(page, entity);
@ -179,8 +186,10 @@ public class PlateGoodsRecordServiceImpl extends BaseServiceImpl<PlateGoodsRecor
entity.setGoodsName(PlateGoodsConst.GOODS_NAME_MAP.get(entity.getGoodsCode()));
}
if (!this.save(entity)) {
return false;
if (this.save(entity)) {
//创建代办
mesApprovalRecordService.createApproval
(entity.getId(), MesApprovalRecordBizTypeEnum.PLATE_GOODS_RECORD.getDesc(),AuthUtil.getUser().getUserId(),new Date());
}
if (detailList == null || detailList.isEmpty()) {
@ -219,6 +228,14 @@ public class PlateGoodsRecordServiceImpl extends BaseServiceImpl<PlateGoodsRecor
plateGoodsRecord.setStatus(approvalStatus);
plateGoodsRecord.setApprovalMemo(approvalMemo);
plateGoodsRecordList.add(plateGoodsRecord);
if(approvalStatus.equals(PlateGoodsEnum.STATUS_PASS.getCode())){
//审批通过
mesApprovalRecordService.passApproval(id, MesApprovalRecordBizTypeEnum.PLATE_GOODS_RECORD.getDesc(), AuthUtil.getUserId(), new Date());
}
if(approvalStatus.equals(PlateGoodsEnum.STATUS_NOT_PASS.getCode())){
//审批驳回
mesApprovalRecordService.rejectApproval(id, MesApprovalRecordBizTypeEnum.PLATE_GOODS_RECORD.getDesc(), AuthUtil.getUserId(), new Date());
}
});
return this.updateBatchById(plateGoodsRecordList);

Loading…
Cancel
Save