|
@@ -1,5 +1,6 @@
|
|
|
package com.fjhx.service.water.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.fjhx.constants.StatusConstant;
|
|
|
import com.fjhx.entity.water.Water;
|
|
@@ -10,6 +11,7 @@ import com.fjhx.enums.OutTypeEnum;
|
|
|
import com.fjhx.mapper.water.WaterMapper;
|
|
|
import com.fjhx.params.water.WaterVo;
|
|
|
import com.fjhx.service.contract.ContractDetailsService;
|
|
|
+import com.fjhx.service.flow.ReturnOrScrapIssueFlowService;
|
|
|
import com.fjhx.service.quality.QualityTestingService;
|
|
|
import com.fjhx.service.stock.StockService;
|
|
|
import com.fjhx.service.water.WaterDetailService;
|
|
@@ -49,6 +51,9 @@ public class WaterServiceImpl extends ServiceImpl<WaterMapper, Water> implements
|
|
|
@Autowired
|
|
|
private QualityTestingService qualityTestingService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ReturnOrScrapIssueFlowService returnOrScrapIssueFlowService;
|
|
|
+
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void add(WaterVo waterVo) {
|
|
@@ -59,6 +64,16 @@ public class WaterServiceImpl extends ServiceImpl<WaterMapper, Water> implements
|
|
|
// 出库或入库类型枚举
|
|
|
Enum<?> typeEnum = getInOutType(waterVo.getType());
|
|
|
|
|
|
+ // 如果是退货或者报废,审批通过后再出库
|
|
|
+ if (typeEnum instanceof OutTypeEnum
|
|
|
+ && (typeEnum.equals(OutTypeEnum.RETURN_ISSUE) || typeEnum.equals(OutTypeEnum.SCRAP_ISSUE))
|
|
|
+ && waterVo.getFlowFlag() == null) {
|
|
|
+ waterVo.setId(IdWorker.getId());
|
|
|
+ waterVo.setFlowFlag(StatusConstant.YES);
|
|
|
+ returnOrScrapIssueFlowService.create(waterVo);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
// 获取变更标签
|
|
|
List<WaterTag> waterTagList = getWaterTagList(waterVo.getWaterTagIdList());
|
|
|
|
|
@@ -94,7 +109,7 @@ public class WaterServiceImpl extends ServiceImpl<WaterMapper, Water> implements
|
|
|
* 必填字段校验
|
|
|
*/
|
|
|
private void requiredFieldVerification(WaterVo waterVo) {
|
|
|
- Assert.notEmpty(waterVo.getStockHouseId(), "仓库id不能为空");
|
|
|
+ // Assert.notEmpty(waterVo.getStockHouseId(), "仓库id不能为空");
|
|
|
Assert.notEmpty(waterVo.getOperUserId(), "操作人id不能为空");
|
|
|
Assert.notEmpty(waterVo.getType(), "库存变更类型不能为空");
|
|
|
Assert.notEmpty(waterVo.getDevice(), "出入库设备类型不能为空");
|