|
|
@ -60,24 +60,33 @@ public class CrudeOilStorageAppService extends MybatisBaseService<CrudeOilStorag |
|
|
|
} |
|
|
|
@Transactional |
|
|
|
public ResultBean save(CrudeOilStorageDto dto){ |
|
|
|
|
|
|
|
ResultBean rb=new ResultBean(); |
|
|
|
Date curDate = new Date(); |
|
|
|
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); |
|
|
|
if((null!=dto.getProcSid()&& ""!=dto.getProcSid())){ |
|
|
|
//没有订单编号也能录入
|
|
|
|
if(null!=dto.getProcSid()&& ""!=dto.getProcSid()){ |
|
|
|
SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper<SysUser>().eq("id", StpUtil.getLoginIdAsString())); |
|
|
|
//入库记录
|
|
|
|
List<CrudeOilStorageVo> list=baseMapper.getCrudeByProcSid(dto.getProcSid()); |
|
|
|
//要入的的原油类型
|
|
|
|
CrudeOilStorageVo v=baseMapper.getTypeByTankSid(dto.getTankSid()); |
|
|
|
//入库记录
|
|
|
|
List<CrudeOilStorageVo> list=baseMapper.getCrudeByProcSid(dto.getProcSid(),v.getTypeSid()); |
|
|
|
ProcurementDetails procurementDetails=procurementDetailsMapper.selectOne(new QueryWrapper<ProcurementDetails>().eq("sid",dto.getProcSid()).eq("typeSid",v.getTypeSid())); |
|
|
|
if(null==procurementDetails){ |
|
|
|
return rb.setMsg("订单中没有,所选的原油类型"); |
|
|
|
} |
|
|
|
for(CrudeOilStorageVo vo:list){ |
|
|
|
if(v.getTypeSid().equals(vo.getTypeSid())){ |
|
|
|
if( (vo.getWeight()+dto.getWeight())>vo.getPWeight()){ |
|
|
|
return rb.setMsg("输入的价值大于采购订单的价值,请验证是否正确"); |
|
|
|
double q=0; |
|
|
|
if(null==vo){ |
|
|
|
if(v.getTypeSid().equals(vo.getTypeSid())){ |
|
|
|
if( (q+dto.getWeight())>vo.getPWeight()){ |
|
|
|
return rb.setMsg("输入的价值大于采购订单的价值,请验证是否正确"); |
|
|
|
} |
|
|
|
} |
|
|
|
}else{ |
|
|
|
if(v.getTypeSid().equals(vo.getTypeSid())){ |
|
|
|
if( (vo.getTotal()+dto.getWeight())>vo.getPWeight()){ |
|
|
|
return rb.setMsg("输入的价值大于采购订单的价值,请验证是否正确"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -85,9 +94,8 @@ public class CrudeOilStorageAppService extends MybatisBaseService<CrudeOilStorag |
|
|
|
List<ProcurementDetails> selectList=procurementDetailsMapper.selectList(new QueryWrapper<ProcurementDetails>().eq("sid",dto.getProcSid())); |
|
|
|
int i=0; |
|
|
|
for(ProcurementDetails p:selectList){ |
|
|
|
CrudeOilStorageVo crude= baseMapper.getCrudeByCrudeSid(p.getTypeSid(),p.getSid()); |
|
|
|
CrudeOilStorageVo crude= baseMapper.getCrudeByCrudeSid(v.getTypeSid(), p.getSid()); |
|
|
|
double total=0; |
|
|
|
// if(p.getTypeSid()!=)
|
|
|
|
if(null!=crude){ |
|
|
|
total=crude.getTotal(); |
|
|
|
} |
|
|
@ -135,13 +143,6 @@ public class CrudeOilStorageAppService extends MybatisBaseService<CrudeOilStorag |
|
|
|
baseMapper.insert(entity); |
|
|
|
//油罐库存增加
|
|
|
|
TankInformation tank=tankInformationMapper.getTankBySid(dto.getTankSid()); |
|
|
|
//第一次入库/出库的时候用初始库存减去要出入的数量 给总库存
|
|
|
|
// if(tank.getLockVersion().equals(0)){
|
|
|
|
// tank.setInventory(tank.getInitialInventory()+dto.getWeight());
|
|
|
|
// tank.setLockVersion(tank.getLockVersion()+1);
|
|
|
|
// }else{
|
|
|
|
// tank.setInventory(tank.getInventory()+dto.getWeight());
|
|
|
|
// }
|
|
|
|
tank.setInventory(tank.getInventory()+dto.getWeight()); |
|
|
|
tankInformationMapper.updateById(tank); |
|
|
|
return rb.success().setMsg("新增成功"); |
|
|
|