|
|
@ -1,5 +1,6 @@ |
|
|
|
package com.yxt.supervise.cyf.biz.crudeoilstorage; |
|
|
|
|
|
|
|
import cn.dev33.satoken.stp.StpUtil; |
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.date.DateUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
@ -15,11 +16,15 @@ import com.yxt.supervise.cyf.api.crudeoilstorage.CrudeOilStorage; |
|
|
|
import com.yxt.supervise.cyf.api.crudeoilstorage.CrudeOilStorageDto; |
|
|
|
import com.yxt.supervise.cyf.api.crudeoilstorage.CrudeOilStorageQuery; |
|
|
|
import com.yxt.supervise.cyf.api.crudeoilstorage.CrudeOilStorageVo; |
|
|
|
import com.yxt.supervise.cyf.api.crudeoiltypeinformation.CrudeOilTypeInformationVo; |
|
|
|
import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetails; |
|
|
|
import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsVo; |
|
|
|
import com.yxt.supervise.cyf.api.sysuser.SysUser; |
|
|
|
import com.yxt.supervise.cyf.api.tankinformation.TankInformation; |
|
|
|
import com.yxt.supervise.cyf.biz.approvalrecord.ApprovalRecordService; |
|
|
|
import com.yxt.supervise.cyf.biz.crudeoiltypeinformation.CrudeOilTypeInformationMapper; |
|
|
|
import com.yxt.supervise.cyf.biz.procurementdetails.ProcurementDetailsMapper; |
|
|
|
import com.yxt.supervise.cyf.biz.sysuser.CyfSysUserMapper; |
|
|
|
import com.yxt.supervise.cyf.biz.tankinformation.TankInformationMapper; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
@ -41,6 +46,8 @@ public class CrudeOilStorageService extends MybatisBaseService<CrudeOilStorageMa |
|
|
|
|
|
|
|
@Autowired |
|
|
|
ApprovalRecordService approvalRecordService; |
|
|
|
@Autowired |
|
|
|
CyfSysUserMapper sysUserMapper; |
|
|
|
public PagerVo<CrudeOilStorageVo> listPageVo(PagerQuery<CrudeOilStorageQuery> pq) { |
|
|
|
CrudeOilStorageQuery query = pq.getParams(); |
|
|
|
QueryWrapper<CrudeOilStorage> qw = new QueryWrapper<>(); |
|
|
@ -58,13 +65,40 @@ public class CrudeOilStorageService extends MybatisBaseService<CrudeOilStorageMa |
|
|
|
@Transactional |
|
|
|
public ResultBean save(CrudeOilStorageDto dto){ |
|
|
|
ResultBean rb=new ResultBean(); |
|
|
|
ProcurementDetailsVo procurementDetailsVo= procurementDetailsMapper.getProBySid(dto.getProcSid()); |
|
|
|
CrudeOilStorageVo vo=baseMapper.getCreateByProcSid(dto.getProcSid()); |
|
|
|
Date curDate = new Date(); |
|
|
|
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); |
|
|
|
if(dto.getWeight()* procurementDetailsVo.getPrice() >procurementDetailsVo.getTotalValue()){ |
|
|
|
return rb.setMsg("输入的价值大于采购订单的价值,请验证是否正确"); |
|
|
|
SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper<SysUser>().eq("id", StpUtil.getLoginIdAsString())); |
|
|
|
//入库记录
|
|
|
|
List<CrudeOilStorageVo> list=baseMapper.getCrudeByProcSid(dto.getProcSid()); |
|
|
|
//要入的的原油类型
|
|
|
|
CrudeOilStorageVo v=baseMapper.getTypeByTankSid(dto.getTankSid()); |
|
|
|
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("输入的价值大于采购订单的价值,请验证是否正确"); |
|
|
|
}else if((vo.getWeight()+dto.getWeight())==vo.getPWeight()){ |
|
|
|
//入库价值和采购价值相比 相同修改订单状态
|
|
|
|
List<ProcurementDetails> procurementDetailsList=procurementDetailsMapper.selectList(new QueryWrapper<ProcurementDetails>().eq("sid",dto.getProcSid())); |
|
|
|
for(ProcurementDetails pro:procurementDetailsList){ |
|
|
|
pro.setState(7); |
|
|
|
procurementDetailsMapper.updateById(pro); |
|
|
|
} |
|
|
|
//审批记录
|
|
|
|
ApprovalRecordDto recordDto=new ApprovalRecordDto(); |
|
|
|
recordDto.setProSid(dto.getProcSid()); |
|
|
|
recordDto.setApprover(sysUser.getSid()); |
|
|
|
recordDto.setApprovalOpinions("完成订单"); |
|
|
|
recordDto.setOperate("5"); |
|
|
|
recordDto.setApprovalDate(dfmt); |
|
|
|
approvalRecordService.save(recordDto); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
CrudeOilStorageVo vo=baseMapper.getCreateByProcSid(dto.getProcSid()); |
|
|
|
CrudeOilStorage entity=new CrudeOilStorage(); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
String [] file=dto.getCrudeOilStorageFile(); |
|
|
@ -86,23 +120,6 @@ public class CrudeOilStorageService extends MybatisBaseService<CrudeOilStorageMa |
|
|
|
TankInformation tank=tankInformationMapper.getTankBySid(dto.getTankSid()); |
|
|
|
tank.setInventory(tank.getInventory()+dto.getWeight()); |
|
|
|
tankInformationMapper.updateById(tank); |
|
|
|
//判断此订单入库价值是否足够
|
|
|
|
if(vo.getTotal()*procurementDetailsVo.getPrice()==procurementDetailsVo.getTotalValue()){ |
|
|
|
//入库价值和采购价值相比 相同修改订单状态
|
|
|
|
List<ProcurementDetails> list=procurementDetailsMapper.selectList(new QueryWrapper<ProcurementDetails>().eq("sid",dto.getProcSid())); |
|
|
|
for(ProcurementDetails pro:list){ |
|
|
|
pro.setState(7); |
|
|
|
procurementDetailsMapper.updateById(pro); |
|
|
|
} |
|
|
|
//审批记录
|
|
|
|
ApprovalRecordDto recordDto=new ApprovalRecordDto(); |
|
|
|
recordDto.setProSid(dto.getProcSid()); |
|
|
|
recordDto.setApprover(""); |
|
|
|
recordDto.setApprovalOpinions("完成订单"); |
|
|
|
recordDto.setOperate("5"); |
|
|
|
recordDto.setApprovalDate(dfmt); |
|
|
|
approvalRecordService.save(recordDto); |
|
|
|
} |
|
|
|
return rb.success().setMsg("新增成功"); |
|
|
|
} |
|
|
|
public ResultBean update (CrudeOilStorageDto dto){ |
|
|
|