guoxing 2 years ago
parent
commit
52e8894d78
  1. 6
      yxt-supervise-cyf/docs/databases/create_table.sql
  2. 4
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppMapper.java
  3. 33
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppService.java
  4. 2
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java
  5. 4
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java
  6. 22
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java
  7. 17
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsMapper.java
  8. 4
      yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java

6
yxt-supervise-cyf/docs/databases/create_table.sql

@ -48,6 +48,8 @@ CREATE TABLE `crude_oil_type_information` (
`number` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '原油编号',
`code` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '原油code',
`price` double(100, 2) NULL DEFAULT NULL COMMENT '原油价格',
`unit` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
`proSpec` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品规格',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '原油类型' ROW_FORMAT = Dynamic;
@ -172,6 +174,8 @@ CREATE TABLE `material_inventory`(
`initialInventory` double(100, 2) NULL DEFAULT NULL COMMENT '原料初始库存',
`typeSid` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '原料类型sid',
`price` double(100, 2) NULL DEFAULT NULL COMMENT '原料价格',
`unit` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
`proSpec` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品规格',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '原料库存' ROW_FORMAT = Dynamic;
@ -499,6 +503,8 @@ CREATE TABLE `packaging_inventory` (
`inventory` double(100, 0) NULL DEFAULT NULL COMMENT '包装物库存',
`initialInventory` double(100, 0) NULL DEFAULT NULL COMMENT '包装物初始库存',
`typeSid` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '包装物类型sid',
`unit` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
`proSpec` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品规格',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '包装物库存' ROW_FORMAT = Dynamic;

4
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppMapper.java

@ -41,9 +41,9 @@ public interface CrudeOilStorageAppMapper extends BaseMapper<CrudeOilStorage> {
"\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" +
"\twhere c.procSid =#{procSid} and t.crudeSid =#{crudeSid}\n" +
"\tGROUP BY p.typeSid")
List<CrudeOilStorageVo> getCrudeByProcSid(@Param("procSid")String procSid);
List<CrudeOilStorageVo> getCrudeByProcSid(@Param("procSid")String procSid,@Param("crudeSid")String crudeSid);
@Select("SELECT\n" +
"\tc.sid as typeSid\n" +
"FROM\n" +

33
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppService.java

@ -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("新增成功");

2
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java

@ -20,7 +20,7 @@ import java.util.List;
@Mapper
public interface ProcurementDetailsAppMapper extends BaseMapper<ProcurementDetails> {
IPage<ProcurementDetailsVo> selectPageVo(IPage<ProcurementDetails> page, @Param(Constants.WRAPPER) Wrapper<ProcurementDetails> qw,@Param("type") String type);
@Select("select * from procurement_details where state =#{state}")
@Select("select * from procurement_details where state =#{state} group by sid")
List<ProcurementDetailsVo> listByState(String state);
@Select(" SELECT" +
" *,t.name as typeName,i.inventory as inventory" +

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

@ -44,9 +44,9 @@ public interface CrudeOilStorageMapper extends BaseMapper<CrudeOilStorage> {
"\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" +
"\twhere c.procSid =#{procSid} and t.crudeSid =#{crudeSid}\n" +
"\tGROUP BY p.typeSid")
List<CrudeOilStorageVo> getCrudeByProcSid(@Param("procSid")String procSid);
List<CrudeOilStorageVo> getCrudeByProcSid(@Param("procSid")String procSid,@Param("crudeSid")String crudeSid);
@Select("SELECT\n" +
"\tc.sid as typeSid\n" +
"FROM\n" +

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

@ -70,18 +70,27 @@ public class CrudeOilStorageService extends MybatisBaseService<CrudeOilStorageMa
//没有订单编号也能录入
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("输入的价值大于采购订单的价值,请验证是否正确");
}
}
}
}
@ -89,9 +98,8 @@ public class CrudeOilStorageService extends MybatisBaseService<CrudeOilStorageMa
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();
}

17
yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsMapper.java

@ -22,6 +22,23 @@ import java.util.Map;
@Mapper
public interface ProcurementDetailsMapper extends BaseMapper<ProcurementDetails> {
IPage<ProcurementDetailsVo> selectPageVo(IPage<ProcurementDetails> page, @Param(Constants.WRAPPER) Wrapper<ProcurementDetails> qw,@Param("type") String type);
@Select("\t SELECT\n" +
"\n" +
" d.*,\n" +
" case d.state\n" +
" when 1 then '待提交'\n" +
" when 2 then '经理审批'\n" +
" when 3 then '监管审批'\n" +
" when 4 then '银行审批'\n" +
" when 5 then '财务审批'\n" +
" when 6 then '在途'\n" +
" when 7 then '已入库'\n" +
" end as stateValue\n" +
" FROM\n" +
" procurement_details d\n" +
" where d.sid=#{sid}\n" +
"\t\t\t\torder by d.state asc LIMIT 1")
ProcurementDetailsVo getProcurementByState(@Param("sid") String sid);
@Select("select * from procurement_details where state =#{state} group by sid")
List<ProcurementDetailsVo> listByState(String state);
@Select(" SELECT" +

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

@ -67,6 +67,10 @@ public class ProcurementDetailsService extends MybatisBaseService<ProcurementDet
String type =query.getType();
IPage<ProcurementDetails> page = PagerUtil.queryToPage(pq);
IPage<ProcurementDetailsVo> pagging = baseMapper.selectPageVo(page, qw,type);
for(ProcurementDetailsVo v:pagging.getRecords()){
ProcurementDetailsVo c=baseMapper.getProcurementByState(v.getSid());
v.setStateValue(c.getStateValue());
}
PagerVo<ProcurementDetailsVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}

Loading…
Cancel
Save