From b60d3db87a1164feb3b20d44df992f5aece8027e Mon Sep 17 00:00:00 2001 From: wangpengfei <1928057482@qq.com> Date: Tue, 13 Jun 2023 10:50:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docs/databases/create_table.sql | 6 ++++ .../CrudeOilStorageAppMapper.java | 4 +-- .../CrudeOilStorageAppService.java | 33 ++++++++++--------- .../ProcurementDetailsAppMapper.java | 2 +- .../CrudeOilStorageMapper.java | 4 +-- .../CrudeOilStorageService.java | 22 +++++++++---- .../ProcurementDetailsMapper.java | 17 ++++++++++ .../ProcurementDetailsService.java | 4 +++ 8 files changed, 64 insertions(+), 28 deletions(-) diff --git a/yxt-supervise-cyf/docs/databases/create_table.sql b/yxt-supervise-cyf/docs/databases/create_table.sql index 00096a0f..863338ae 100644 --- a/yxt-supervise-cyf/docs/databases/create_table.sql +++ b/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; diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppMapper.java index 1e59f254..bff52b28 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppMapper.java +++ b/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 { "\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 getCrudeByProcSid(@Param("procSid")String procSid); + List getCrudeByProcSid(@Param("procSid")String procSid,@Param("crudeSid")String crudeSid); @Select("SELECT\n" + "\tc.sid as typeSid\n" + "FROM\n" + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppService.java index 93033201..f0138043 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/crudeoilstorage/CrudeOilStorageAppService.java +++ b/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().eq("id", StpUtil.getLoginIdAsString())); - //入库记录 - List list=baseMapper.getCrudeByProcSid(dto.getProcSid()); //要入的的原油类型 CrudeOilStorageVo v=baseMapper.getTypeByTankSid(dto.getTankSid()); + //入库记录 + List list=baseMapper.getCrudeByProcSid(dto.getProcSid(),v.getTypeSid()); ProcurementDetails procurementDetails=procurementDetailsMapper.selectOne(new QueryWrapper().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 selectList=procurementDetailsMapper.selectList(new QueryWrapper().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 { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper 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 listByState(String state); @Select(" SELECT" + " *,t.name as typeName,i.inventory as inventory" + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java index 5318b71a..474eb17f 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java +++ b/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 { "\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 getCrudeByProcSid(@Param("procSid")String procSid); + List getCrudeByProcSid(@Param("procSid")String procSid,@Param("crudeSid")String crudeSid); @Select("SELECT\n" + "\tc.sid as typeSid\n" + "FROM\n" + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java index 8856dd46..1ac01178 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java +++ b/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().eq("id", StpUtil.getLoginIdAsString())); - //入库记录 - List list=baseMapper.getCrudeByProcSid(dto.getProcSid()); //要入的的原油类型 CrudeOilStorageVo v=baseMapper.getTypeByTankSid(dto.getTankSid()); + //入库记录 + List list=baseMapper.getCrudeByProcSid(dto.getProcSid(),v.getTypeSid()); ProcurementDetails procurementDetails=procurementDetailsMapper.selectOne(new QueryWrapper().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 selectList=procurementDetailsMapper.selectList(new QueryWrapper().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(); } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsMapper.java index ba8b84c9..87b0d594 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsMapper.java +++ b/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 { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper 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 listByState(String state); @Select(" SELECT" + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java index d756a5cd..0ae15c85 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/procurementdetails/ProcurementDetailsService.java +++ b/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 page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.selectPageVo(page, qw,type); + for(ProcurementDetailsVo v:pagging.getRecords()){ + ProcurementDetailsVo c=baseMapper.getProcurementByState(v.getSid()); + v.setStateValue(c.getStateValue()); + } PagerVo p = PagerUtil.pageToVo(pagging, null); return p; }