diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java index 15c744f..91b8cd0 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java @@ -112,8 +112,12 @@ public class DynamicEntity extends BaseBean implements Serializable { try { val = getValue(propName,val); // LOGGER.error("设置动态对象属性值 attr name:{} -> value:{} ",setMethodName,val); - Method setMethod = this.getClass().getDeclaredMethod(setMethodName, new Class[]{val.getClass()}); - setMethod.invoke(this, val); + if(val != null){ + Method setMethod = this.getClass().getDeclaredMethod(setMethodName, new Class[]{val.getClass()}); + setMethod.invoke(this, val); + }else{ + LOGGER.error("设置动态对象属性值 attr name:{} -> value:{} ",setMethodName,val); + } } catch (NoSuchMethodException e) { // LOGGER.error("没有方法:{}",setMethodName,e); LOGGER.error("没有方法:{}",setMethodName); diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java index 457faaa..7edd378 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java @@ -502,8 +502,8 @@ public class WmsEnumUtil { SUPPLIER_RETURN_SMRR(190, "SUPPLIER_RETURN_SMRR", "供应商退货(SMRR)"), NC_DISMANTLING_PICKING(160, "NC_DISMANTLING_PICKING", "NC拆解领料"), NC_DISMANTLING_RETREAT(170, "NC_DISMANTLING_RETREAT", "NC拆解退料"), - LINE_EDGE_SCRAPPING_OUT(180, "LINE_EDGE_SCRAPPING_OUT", "线边报废出库"); - + LINE_EDGE_SCRAPPING_OUT(180, "LINE_EDGE_SCRAPPING_OUT", "线边报废出库"), + AMPR(190, "AMPR", "AMPR"); private int value; private String code; @@ -2853,4 +2853,74 @@ public class WmsEnumUtil { return tmp; } } + + /** + * ERP同步标识 10=待同步,20=同步成功,30=同步失败 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum WMS_SN_GENERATE_RULE { + SOURCE(10, "源"), TARGET(20, "目标"), NON_ASSIGNMENT(30, "不赋值"); + + private int value; + private String description; + + WMS_SN_GENERATE_RULE(int value, String description) { + this.value = value; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static String valueOf(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + } + + /** + * PDA顶级菜单 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum PDA_TOP_MENU { + RC("RC", "收货"), + QC("QC", "质检"), + PICK("PICK", "拣货"), + OUTSTOCK("OUTSTOCK", "出库"), + INSTOCK("INSTOCK", "入库"), + MOVESTOCK("MOVESTOCK", "移库"), + ASSIST("ASSIST", "辅助"), + NC("NC", "NC"), + CS("CS", "盘点"); + + private String value; + private String description; + + PDA_TOP_MENU(String value, String description) { + this.value = value; + this.description = description; + } + + public String getCode() { + return value; + } + + public String getDescription() { + return description; + } + + public String getValue() { + return value; + } + } } \ No newline at end of file diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java index e68b624..f568f5f 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java @@ -96,20 +96,34 @@ public class CoreHqlPack { * @param position * @return */ - public static String packHqlSysPosition(SysPosition position){ - StringBuffer result = new StringBuffer(); + public static DdlPackBean packHqlSysPosition(SysPosition position){ + DdlPackBean result = new DdlPackBean(); + // 查询参数封装 - HqlPack.getNumEqualPack(position.getParentId(),"parentId",result); - HqlPack.getStringLikerPack(position.getName(),"name",result); - HqlPack.getStringLikerPack(position.getPositionCode(),"positionCode",result); + DdlPreparedPack.getNumEqualPack(position.getParentId(),"parentId",result); + DdlPreparedPack.getStringEqualPack(position.getName(),"name",result); + DdlPreparedPack.getStringEqualPack(position.getPositionCode(),"positionCode",result); + DdlPreparedPack.getStringEqualPack(position.getOrganizeCode(),"organizeCode",result); - // 添加默认排序 - HqlPack.getOrderDefault(position); + return result; + } - return result.toString(); + /** + * 岗位复杂查询 + * @param position + * @return + */ + public static DdlPackBean packHqlSysPositionList(SysPosition position){ + DdlPackBean result = new DdlPackBean(); + + // 查询参数封装 + DdlPreparedPack.getStringEqualPack(position.getOrganizeCode(),"organizeCode",result); + + return result; } + /** * 组织复杂查询 * @param organize diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsASNMaster.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsASNMaster.java index b3feab4..d7c0a9d 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsASNMaster.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsASNMaster.java @@ -36,7 +36,7 @@ public class WmsASNMaster extends BaseBean { @Column(name = "ASN_TYPE") @ApiParam("单据类型") - public String asnType; + public Integer asnType; @Column(name = "ASN_STATUS") @ApiParam(value = "状态", example = "0") diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsCSOrderMaster.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsCSOrderMaster.java index de7eb41..34a617c 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsCSOrderMaster.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsCSOrderMaster.java @@ -58,14 +58,26 @@ public class WmsCSOrderMaster extends BaseBean { @ApiParam(value = "是否允许清点", example = "1") public Integer isInventory; - @Transient - @ApiParam(value = "盘点明细集") - public List wmsCSOrderDetailsList; - @Column(name = "IS_TASK") @ApiParam(value = "是否生产任务", example = "1") public Integer isTask; + @Column(name = "IS_PART") + @ApiParam(value = "是否散件") + public Integer isPart; + + @Column(name = "YEAR") + @ApiParam("年度") + public String year; + + @Column(name = "IS_SYNC_ERP") + @ApiParam("是否同步ERP: 1=已同步,2=未同步") + public Integer isSyncErp; + + @Transient + @ApiParam(value = "盘点明细集") + public List wmsCSOrderDetailsList; + @Transient @ApiParam(value = "盘点物料清单") public String[] wmsCSParts; @@ -78,14 +90,6 @@ public class WmsCSOrderMaster extends BaseBean { @ApiParam(value = "盘点库位清单") public String[] wmsCSLocates; - @Column(name = "IS_PART") - @ApiParam(value = "是否散件") - private Integer isPart; - - @Column(name = "YEAR") - @ApiParam("年度") - public String year; - public Integer getIsInventoryVal() { return this.isInventory == null ? 0 :this.isInventory.intValue(); } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java index d9563fd..9c8029d 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java @@ -210,4 +210,16 @@ public class WmsDocMovementDetails extends BaseBean { @Column(name = "LOCK_VERSION") @ApiParam(value = "乐观锁", example = "1") public transient Integer lockVersion; + + @Transient + @ApiParam("移动类型") + public Integer moveType; + + @Transient + @ApiParam("业务类型") + public Integer busiType; + + @Column(name = "IS_SN") + @ApiParam(value = "条码生成状态", example = "1") + public Integer isSn; } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsPart.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsPart.java index 61c8310..0c1b599 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsPart.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsPart.java @@ -151,6 +151,10 @@ public class WmsPart extends BaseBean { @ApiParam("库存水平") private String stockLevelStatus; + @Column(name = "IS_PROD_LOT") + @ApiParam(value = "是否录入生产批次", example = "1") + private Integer isProdLot; + public int getIqcValue(){ return this.iqc == null ? 0 : this.iqc.intValue(); } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsStockQuan.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsStockQuan.java index 4c690e0..649ae75 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsStockQuan.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsStockQuan.java @@ -10,6 +10,7 @@ import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; import javax.persistence.*; +import java.util.List; /** * @Description : 库存信息 @@ -126,6 +127,10 @@ public class WmsStockQuan extends BaseBean { @ApiParam(value = "总数量") private Double totalQty; + @Transient + @ApiParam(value = "存储区集合") + private List zoneList; + public Double getQtyVal() { return this.qty == null ? 0 : this.qty; } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsTransType.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsTransType.java index f074954..c095d84 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsTransType.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsTransType.java @@ -68,4 +68,8 @@ public class WmsTransType extends BaseBean { @Transient @ApiParam("菜单URL") private String menuUrl; + + public String getMenuUrl() { + return "/handle?transCode=" + this.transTypeCode; + } } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/engine/rule/GenerateSnRule.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/engine/rule/GenerateSnRule.java new file mode 100644 index 0000000..8d22953 --- /dev/null +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/engine/rule/GenerateSnRule.java @@ -0,0 +1,40 @@ +package cn.estsh.i3plus.pojo.wms.engine.rule; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GenerateSnRule { + /** + * 业务类型 130 + */ + private Integer busiType; + + /** + * 是否允许生成条码 + */ + private Integer isGenerateSn; + + /** + * 条码状态 + */ + private Integer snStatus; + + /** + * 质量状态 + */ + private Integer qcStatus; + + /** + * 仓库来源 + */ + private Integer whSource; + + /** + * 存储区来源 + */ + private Integer zoneSource; +} diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java index 0d9a204..f42fcb0 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java @@ -118,7 +118,7 @@ public class WmsHqlPack { DdlPackBean packBean = new DdlPackBean(); //查询参数封装 - DdlPreparedPack.getStringRightLikerPack(wmsDocMovementMaster.getOrderNo(), "orderNo", packBean); + DdlPreparedPack.getStringLikerPack(wmsDocMovementMaster.getOrderNo(), "orderNo", packBean); DdlPreparedPack.getNumEqualPack(wmsDocMovementMaster.getMoveType(), "moveType", packBean); DdlPreparedPack.getNumEqualPack(wmsDocMovementMaster.getBusiType(), "busiType", packBean); DdlPreparedPack.getStringEqualPack(wmsDocMovementMaster.getCustNo(), "custNo", packBean); @@ -521,7 +521,7 @@ public class WmsHqlPack { DdlPackBean result = new DdlPackBean(); DdlPreparedPack.getStringRightLikerPack(wmsASNMaster.getOrderNo(), "orderNo", result); - DdlPreparedPack.getStringEqualPack(wmsASNMaster.getAsnType(), "asnType", result); + DdlPreparedPack.getNumEqualPack(wmsASNMaster.getAsnType(), "asnType", result); DdlPreparedPack.getNumEqualPack(wmsASNMaster.getAsnStatus(), "asnStatus", result); DdlPreparedPack.getStringEqualPack(wmsASNMaster.getVendorNo(), "vendorNo", result); DdlPreparedPack.getStringEqualPack(wmsASNMaster.getVersion(), "version", result); @@ -821,9 +821,9 @@ public class WmsHqlPack { public static DdlPackBean packWmsStockQuan(WmsStockQuan wmsStockQuan) { DdlPackBean result = new DdlPackBean(); + DdlPreparedPack.getInPackList(wmsStockQuan.getZoneList(),"zoneNo",result); //查询参数封装 DdlPreparedPack.getStringEqualPack(wmsStockQuan.getWhNo(), "whNo", result); - DdlPreparedPack.getStringEqualPack(wmsStockQuan.getZoneNo(), "zoneNo", result); DdlPreparedPack.getStringEqualPack(wmsStockQuan.getLocateNo(), "locateNo", result); DdlPreparedPack.getStringEqualPack(wmsStockQuan.getPartNo(), "partNo", result); DdlPreparedPack.getStringEqualPack(wmsStockQuan.getCustNo(), "custNo", result); @@ -1014,6 +1014,8 @@ public class WmsHqlPack { DdlPackBean result = new DdlPackBean(); DdlPreparedPack.getStringEqualPack(wmsMoveSn.getOrderNo(), "orderNo", result); + DdlPreparedPack.getNumEqualPack(wmsMoveSn.getItem(), "item", result); + DdlPreparedPack.getNumEqualPack(wmsMoveSn.getItemStatus(), "itemStatus", result); DdlPreparedPack.getStringEqualPack(wmsMoveSn.getSn(), "sn", result); DdlPreparedPack.getStringEqualPack(wmsMoveSn.getPartNo(), "partNo", result); DdlPreparedPack.getStringLikerPack(wmsMoveSn.getPartNameRdd(), "partNameRdd", result); @@ -2000,6 +2002,7 @@ public class WmsHqlPack { public static DdlPackBean packHqlWmsUnit(WmsUnit wmsUnit) { DdlPackBean result = new DdlPackBean(); + DdlPreparedPack.getStringEqualPack(wmsUnit.getOrganizeCode(), "organizeCode", result); DdlPreparedPack.getStringEqualPack(wmsUnit.getUnitCode(), "unitCode", result); DdlPreparedPack.getStringEqualPack(wmsUnit.getUnitName(), "unitName", result); DdlPreparedPack.getNumEqualPack(wmsUnit.getUnitPrecision(), "unitPrecision", result);