Browse Source

06-08

master
wangpengfei 2 years ago
parent
commit
f312ce1931
  1. 5
      yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/crudeoilstorage/CrudeOilStorageVo.java
  2. 4
      yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/materialprocurementdetails/MaterialProcurementDetailsDto.java
  3. 22
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java
  4. 59
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java
  5. 28
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/materialprocurementdetails/MaterialProcurementDetailsService.java
  6. 1
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java

5
yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/crudeoilstorage/CrudeOilStorageVo.java

@ -41,4 +41,9 @@ public class CrudeOilStorageVo implements Vo {
private double inventory=0;
private double total;
//
private double price;
private String typeSid;
//采购订单数量
private double pWeight;
}

4
yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/materialprocurementdetails/MaterialProcurementDetailsDto.java

@ -51,4 +51,8 @@ public class MaterialProcurementDetailsDto implements Dto {
//到货日期
private String arrivalDate;
private List<MaterialInventoryDto> commodityList;
//操作 1:新增申请 2:发起申请 3:通过申请 4:不通过申请
private String operate;
//审批意见
private String approvalOpinions;
}

22
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java

@ -32,4 +32,26 @@ public interface CrudeOilStorageMapper extends BaseMapper<CrudeOilStorage> {
@Select("select *,sum(weight) as total from crude_oil_storage where procSid=#{procSid}")
CrudeOilStorageVo getCreateByProcSid(@Param("procSid")String procSid);
@Select("SELECT\n" +
"\tsum(c.weight) as weight,\n" +
"\to.sid as typeSid,\n" +
"\tp.weight as pWeight,\n" +
"\tp.price as price\n" +
"\tp.typeSid as typeSid\n" +
"FROM\n" +
"\tcrude_oil_storage c\n" +
"\tLEFT JOIN procurement_details p ON p.sid = c.procSid\n" +
"\tLEFT JOIN tank_information t ON t.sid = c.tankSid\n" +
"\tLEFT JOIN crude_oil_type_information o ON o.sid = t.crudeSid\n" +
"\twhere c.procSid =#{procSid}\n" +
"\tGROUP BY c.tankSid")
List<CrudeOilStorageVo> getCrudeByProcSid(@Param("procSid")String procSid);
@Select("SELECT\n" +
"\tc.sid as typeSid\n" +
"FROM\n" +
"\ttank_information t\n" +
"\tLEFT JOIN crude_oil_type_information c ON c.sid = t.crudeSid\n" +
"\twhere t.sid =#{tankSid}")
CrudeOilStorageVo getTypeByTankSid(@Param("tankSid")String tankSid);
}

59
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java

@ -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){

28
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/materialprocurementdetails/MaterialProcurementDetailsService.java

@ -1,6 +1,8 @@
package com.yxt.supervise.cyf.biz.materialprocurementdetails;
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;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
@ -8,16 +10,22 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordDto;
import com.yxt.supervise.cyf.api.materialinventory.MaterialInventoryDto;
import com.yxt.supervise.cyf.api.materialinventory.MaterialInventoryVo;
import com.yxt.supervise.cyf.api.materialprocurementdetails.MaterialProcurementDetails;
import com.yxt.supervise.cyf.api.materialprocurementdetails.MaterialProcurementDetailsDto;
import com.yxt.supervise.cyf.api.materialprocurementdetails.MaterialProcurementDetailsQuery;
import com.yxt.supervise.cyf.api.materialprocurementdetails.MaterialProcurementDetailsVo;
import com.yxt.supervise.cyf.api.sysuser.SysUser;
import com.yxt.supervise.cyf.biz.approvalrecord.ApprovalRecordService;
import com.yxt.supervise.cyf.biz.sysuser.CyfSysUserMapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@ -26,7 +34,10 @@ import java.util.List;
*/
@Service
public class MaterialProcurementDetailsService extends MybatisBaseService<MaterialProcurementDetailsMapper, MaterialProcurementDetails> {
@Autowired
ApprovalRecordService approvalRecordService;
@Autowired
CyfSysUserMapper sysUserMapper;
public PagerVo<MaterialProcurementDetailsVo> listPageVo(PagerQuery<MaterialProcurementDetailsQuery> pq) {
MaterialProcurementDetailsQuery query = pq.getParams();
QueryWrapper<MaterialProcurementDetails> qw = new QueryWrapper<>();
@ -44,8 +55,23 @@ public class MaterialProcurementDetailsService extends MybatisBaseService<Materi
public ResultBean save(MaterialProcurementDetailsDto dto){
ResultBean rb = ResultBean.fireFail();
Date curDate = new Date();
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd");
MaterialProcurementDetails entity = new MaterialProcurementDetails();
BeanUtil.copyProperties(dto, entity, "sid");
SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper<SysUser>().eq("id", StpUtil.getLoginIdAsString()));
if(null==dto.getSid() || ""==dto.getSid()){
BeanUtil.copyProperties(dto, entity, "id","sid");
ApprovalRecordDto recordDto=new ApprovalRecordDto();
recordDto.setProSid(entity.getSid());
recordDto.setApprover(sysUser.getSid());
recordDto.setApprovalOpinions(dto.getApprovalOpinions()==null?"订单创建":dto.getApprovalOpinions());
recordDto.setOperate("1");
recordDto.setApprovalDate(dfmt);
approvalRecordService.save(recordDto);
}else{
BeanUtil.copyProperties(dto, entity, "id");
}
if (dto.getCommodityList().size() > 1){
for(MaterialInventoryDto pro : dto.getCommodityList()){
entity.setTypeSid(pro.getSid());

1
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java

@ -85,7 +85,6 @@ public class ProcurementDetailsService extends MybatisBaseService<ProcurementDet
Date curDate = new Date();
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd");
ProcurementDetails entity=new ProcurementDetails();
System.out.println(StpUtil.getLoginIdAsString());
SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper<SysUser>().eq("id",StpUtil.getLoginIdAsString()));
if(null==dto.getSid() || ""==dto.getSid()){
BeanUtil.copyProperties(dto, entity, "id","sid");

Loading…
Cancel
Save