diff --git a/src/main/java/com/glxp/api/entity/inv/InvPreProductDetailEntity.java b/src/main/java/com/glxp/api/entity/inv/InvPreProductDetailEntity.java index f38b60654..307fb465e 100644 --- a/src/main/java/com/glxp/api/entity/inv/InvPreProductDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/inv/InvPreProductDetailEntity.java @@ -87,21 +87,21 @@ public class InvPreProductDetailEntity { * 扫码数量 */ @TableField(value = "`count`") - private int count; + private Integer count; /** * 实际数量 */ @TableField(value = "reCount") - private int reCount; + private Integer reCount; @TableField(value = "inCount") - private int inCount; + private Integer inCount; @TableField(value = "outCount") - private int outCount; + private Integer outCount; /** diff --git a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java index 9d855a5ea..91a8a965f 100644 --- a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java @@ -72,21 +72,21 @@ public class InvProductDetailEntity { * 扫码数量 */ @TableField(value = "`count`") - private int count; + private Integer count; /** * 实际数量 */ @TableField(value = "reCount") - private int reCount; + private Integer reCount; @TableField(value = "inCount") - private int inCount; + private Integer inCount; @TableField(value = "outCount") - private int outCount; + private Integer outCount; /** * 部门编码 diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPlaceServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPlaceServiceImpl.java index 364c7f176..6b42abb4b 100644 --- a/src/main/java/com/glxp/api/service/inv/impl/InvPlaceServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inv/impl/InvPlaceServiceImpl.java @@ -154,13 +154,21 @@ public class InvPlaceServiceImpl implements InvPlaceService { for (Integer i = 0; i < invPlaceOrderDetailEntity.getCount(); i++) { //拆解库存表 + InvPreProductDetailEntity invPreInProductDetailEntity=new InvPreProductDetailEntity(); QueryWrapper ew=new QueryWrapper<>(); - ew.eq("code",invPlaceOrderDetailEntity.getCode()); - ew.and(o-> o.isNull("invSpaceCode").or().eq("invSpaceCode","")); + if(bindInvSpaceRequest.getType()==3){ + ew.eq("code",invPlaceOrderDetailEntity.getCode()); + ew.eq("invSpaceCode",bindInvSpaceRequest.getInvSpaceCode()); + ew.last("limit 1"); + invPreInProductDetailEntity=invPreProductDetailDao.selectOne(ew); + }else{ + ew.eq("code",invPlaceOrderDetailEntity.getCode()); + ew.and(o-> o.isNull("invSpaceCode").or().eq("invSpaceCode","")); + ew.gt("inCount",0); + ew.last("limit 1"); + invPreInProductDetailEntity=invPreProductDetailDao.selectOne(ew); + } - ew.gt("inCount",0); - ew.last("limit 1"); - InvPreProductDetailEntity invPreInProductDetailEntity=invPreProductDetailDao.selectOne(ew); if(invPreInProductDetailEntity.getInCount()>0){ String nameCode=invPreInProductDetailEntity.getNameCode(); int reCount=getActCount(nameCode); @@ -172,7 +180,11 @@ public class InvPlaceServiceImpl implements InvPlaceService { ew.clear(); ew.eq("code",invPlaceOrderDetailEntity.getCode()); - ew.eq("invSpaceCode",invPlaceOrderDetailEntity.getInvSpaceCode()); + if(bindInvSpaceRequest.getType()==3){ + ew.eq("invSpaceCode",bindInvSpaceRequest.getChangeSpaceCode()); + }else{ + ew.eq("invSpaceCode",invPlaceOrderDetailEntity.getInvSpaceCode()); + } InvPreProductDetailEntity invPreInProductDetailEntity1=invPreProductDetailDao.selectOne(ew); if(invPreInProductDetailEntity1!=null){ @@ -185,8 +197,12 @@ public class InvPlaceServiceImpl implements InvPlaceService { invPreInProductDetailEntity.setInCount(1); invPreInProductDetailEntity.setCount(1); invPreInProductDetailEntity.setOutCount(0); - invPreInProductDetailEntity.setInvSpaceCode(invPlaceOrderDetailEntity.getInvSpaceCode()); invPreInProductDetailEntity.setReCount(reCount); + if (bindInvSpaceRequest.getType()==3){ + invPreInProductDetailEntity.setInvSpaceCode(bindInvSpaceRequest.getChangeSpaceCode()); + }else{ + invPreInProductDetailEntity.setInvSpaceCode(invPlaceOrderDetailEntity.getInvSpaceCode()); + } invPreProductDetailDao.insert(invPreInProductDetailEntity); } } @@ -199,13 +215,20 @@ public class InvPlaceServiceImpl implements InvPlaceService { for (Integer i = 0; i < invPlaceOrderDetailEntity.getCount(); i++) { //拆解库存表 + InvProductDetailEntity invPreInProductDetailEntity=new InvProductDetailEntity(); QueryWrapper ew=new QueryWrapper<>(); - ew.eq("code",invPlaceOrderDetailEntity.getCode()); - ew.and(o-> o.isNull("invSpaceCode").or().eq("invSpaceCode","")); - - ew.gt("inCount",0); - ew.last("limit 1"); - InvProductDetailEntity invPreInProductDetailEntity=invProductDetailDao.selectOne(ew); + if(bindInvSpaceRequest.getType()==3){ + ew.eq("code",invPlaceOrderDetailEntity.getCode()); + ew.eq("invSpaceCode",bindInvSpaceRequest.getInvSpaceCode()); + ew.last("limit 1"); + invPreInProductDetailEntity=invProductDetailDao.selectOne(ew); + }else{ + ew.eq("code",invPlaceOrderDetailEntity.getCode()); + ew.and(o-> o.isNull("invSpaceCode").or().eq("invSpaceCode","")); + ew.gt("inCount",0); + ew.last("limit 1"); + invPreInProductDetailEntity=invProductDetailDao.selectOne(ew); + } if(invPreInProductDetailEntity.getInCount()>0){ String nameCode=invPreInProductDetailEntity.getNameCode(); int reCount=getActCount(nameCode); @@ -217,7 +240,11 @@ public class InvPlaceServiceImpl implements InvPlaceService { ew.clear(); ew.eq("code",invPlaceOrderDetailEntity.getCode()); - ew.eq("invSpaceCode",invPlaceOrderDetailEntity.getInvSpaceCode()); + if(bindInvSpaceRequest.getType()==3){ + ew.eq("invSpaceCode",bindInvSpaceRequest.getChangeSpaceCode()); + }else{ + ew.eq("invSpaceCode",invPlaceOrderDetailEntity.getInvSpaceCode()); + } InvProductDetailEntity invPreInProductDetailEntity1=invProductDetailDao.selectOne(ew); if(invPreInProductDetailEntity1!=null){ @@ -231,7 +258,11 @@ public class InvPlaceServiceImpl implements InvPlaceService { invPreInProductDetailEntity.setCount(1); invPreInProductDetailEntity.setOutCount(0); invPreInProductDetailEntity.setReCount(reCount); - invPreInProductDetailEntity.setInvSpaceCode(invPlaceOrderDetailEntity.getInvSpaceCode()); + if (bindInvSpaceRequest.getType()==3){ + invPreInProductDetailEntity.setInvSpaceCode(bindInvSpaceRequest.getChangeSpaceCode()); + }else{ + invPreInProductDetailEntity.setInvSpaceCode(invPlaceOrderDetailEntity.getInvSpaceCode()); + } invProductDetailDao.insert(invPreInProductDetailEntity); } } diff --git a/src/main/resources/schemas/schema_v2.1.sql b/src/main/resources/schemas/schema_v2.1.sql index 27b637eed..44f9340eb 100644 --- a/src/main/resources/schemas/schema_v2.1.sql +++ b/src/main/resources/schemas/schema_v2.1.sql @@ -399,3 +399,13 @@ CALL Pro_Temp_ColumnWork('io_order', 'reviewSp', 'tinyint', 1); -- CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'regStatus', 'tinyint', 1); CALL Pro_Temp_ColumnWork('io_order_detail_code', 'regStatus', 'varchar(255) ', 1); + + +CALL Pro_Temp_ColumnWork('inv_place_order', 'count', 'int', 1); +CALL Pro_Temp_ColumnWork('inv_place_order', 'id', 'bigint', 2); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'id', 'bigint', 2); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'nameCode', 'varchar(255)', 1); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'supId', 'varchar(255)', 1); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'expireDate', 'varchar(255)', 1); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'produceDate', 'varchar(255)', 1); +CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'serialNo', 'varchar(255)', 1); \ No newline at end of file