|
@@ -1,6 +1,7 @@
|
|
|
package com.steerinfo.dil.service.impl;
|
|
|
|
|
|
import com.steerinfo.dil.mapper.WmshGridMaterialMapper;
|
|
|
+import com.steerinfo.dil.mapper.WmshInboundResultMapper;
|
|
|
import com.steerinfo.dil.mapper.WmshOutboundResultMapper;
|
|
|
import com.steerinfo.dil.model.WmshGridMaterial;
|
|
|
import com.steerinfo.dil.model.WmshOutboundResult;
|
|
@@ -35,7 +36,8 @@ public class WmshGridMaterialServiceImpl implements IWmshGridMaterialService {
|
|
|
private WmshGridMaterialMapper wmshGridMaterialMapper;
|
|
|
@Autowired
|
|
|
private WmshOutboundResultMapper wmshOutboundResultMapper;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ private WmshInboundResultMapper wmshInboundResultMapper;
|
|
|
/**
|
|
|
* 展示下游港口实时库存
|
|
|
* @param mapVal
|
|
@@ -147,4 +149,37 @@ public class WmshGridMaterialServiceImpl implements IWmshGridMaterialService {
|
|
|
return wmshGridMaterialMapper.getUnLockPortStock(mapVal);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public int updateWmshGridMaterial(Map<String, Object> map) {
|
|
|
+ BigDecimal batchId = DataChange.dataToBigDecimal(map.get("batchId"));
|
|
|
+ BigDecimal userId = DataChange.dataToBigDecimal(map.get("userId"));
|
|
|
+ BigDecimal gmId = DataChange.dataToBigDecimal(map.get("gmId"));
|
|
|
+ //查找是否有港存库实时库存
|
|
|
+ List<Map<String,Object>> wmshGridMaterials = wmshGridMaterialMapper.getGridId(map);
|
|
|
+ WmshGridMaterial wmshGridMaterial=new WmshGridMaterial();
|
|
|
+ if(wmshGridMaterials!=null && wmshGridMaterials.size()>0){
|
|
|
+ //已经存在则加库存,不改港存库批次或者删除
|
|
|
+ Map<String,Object> now = wmshGridMaterials.get(0);
|
|
|
+ BigDecimal nowGmsTonnage = DataChange.dataToBigDecimal(now.get("gmTonnage"));
|
|
|
+ //查询旧的批次
|
|
|
+ Map<String,Object> old = new HashMap<>();
|
|
|
+ old.put("portId",map.get("portId"));
|
|
|
+ old.put("batchId",map.get("batchIdOld"));
|
|
|
+ old=wmshGridMaterialMapper.getGridId(old).get(0);
|
|
|
+ BigDecimal oldGmsTonnage = DataChange.dataToBigDecimal(old.get("gmTonnage"));
|
|
|
+ //增加库存
|
|
|
+ wmshGridMaterial.setGmId(DataChange.dataToBigDecimal(now.get("gmId")));
|
|
|
+ wmshGridMaterial.setGmTonnage(nowGmsTonnage.add(oldGmsTonnage));
|
|
|
+ wmshGridMaterial.setUpdateUsername(userId.toString());
|
|
|
+ }else{
|
|
|
+ //不存在修改批次
|
|
|
+ wmshGridMaterial.setGmId(gmId);
|
|
|
+ wmshGridMaterial.setBatchId(batchId);
|
|
|
+ wmshGridMaterial.setUpdateUsername(userId.toString());
|
|
|
+ }
|
|
|
+ //修改入库和出库实绩绑定的批次
|
|
|
+ wmshInboundResultMapper.updateForBind(map);
|
|
|
+ wmshOutboundResultMapper.updateForBind(map);
|
|
|
+ return wmshGridMaterialMapper.updateByPrimaryKeySelective(wmshGridMaterial);
|
|
|
+ }
|
|
|
}
|