yun-zuoyi
shiyanghuan 6 years ago
commit f3151cbbe3

@ -193,10 +193,10 @@ public class WmsEnumUtil {
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ORDER_DETAILS_STATUS {
CREATE(10, "N", "创建"),
RECEIPTED(20, "R", "已完成"),
CANCEL(30, "C", "行取消"),
PRINTED(40, "C", "已打印");
CREATE(10, "CREATE", "创建"),
RECEIPTED(20, "FINISHED", "已完成"),
CANCEL(30, "CANCLE", "行取消"),
PRINTED(40, "PRINTED", "已打印");
private int value;
private String code;

@ -23,7 +23,7 @@ public class SapBase {
private String actusr = "导入";
@ApiParam(value = "SID", example = "-1")
private String sid = ( Math.abs(new Random().nextInt())+ "");
private String sid = "";
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiParam(value = "接收数据日期", example = "-1")

@ -0,0 +1,59 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : amy
* @CreateDate : 2019-06-22 10:03
* @Modify:
**/
@Data
@Api(value = "委外材料发运", description = "委外材料发运")
public class SapCgio extends SapBase{
@ApiParam(value = "编号")
@AnnoOutputColumn
private String zinstno;
@ApiParam(value = "行号")
@AnnoOutputColumn
private String zeile;
@ApiParam(value = "工厂")
@AnnoOutputColumn
private String werks;
@ApiParam(value = "发(退)料库存地点")
@AnnoOutputColumn
private String lgort;
@ApiParam(value = "供应商代码")
@AnnoOutputColumn
private String zlifnr;
@ApiParam(value = "物料编码")
@AnnoOutputColumn
private String matnr;
@ApiParam(value = "发(退)料数量")
@AnnoOutputColumn
private String erfmg;
@ApiParam(value = "计量单位")
@AnnoOutputColumn
private String erfme;
@ApiParam(value = "状态")
@AnnoOutputColumn
private String zzlzt;
@ApiParam(value = "业务类型")
@AnnoOutputColumn
private String zaction;
}

@ -0,0 +1,74 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : amy
* @CreateDate : 2019-06-22 10:16
* @Modify:
**/
@Data
@Api(value="盘点",description = "盘点")
public class SapCyco extends SapBase{
@ApiParam(value = "盘点凭证号")
@AnnoOutputColumn
private String iblnr;
@ApiParam(value = "行号")
@AnnoOutputColumn
private Integer zeili;
@ApiParam(value = "物料编码")
@AnnoOutputColumn
private String matnr;
@ApiParam(value = "计量单位")
@AnnoOutputColumn
private String meins;
@ApiParam(value = "工厂")
@AnnoOutputColumn
private String werks;
@ApiParam(value = "库存地点")
@AnnoOutputColumn
private String lgort;
@ApiParam(value = "库存状态")
@AnnoOutputColumn
private String zstat;
@ApiParam(value = "特殊库存标识")
@AnnoOutputColumn
private String sobkz;
@ApiParam(value = "项目号")
@AnnoOutputColumn
private String zxm;
@ApiParam(value = "库存账冻结标志")
@AnnoOutputColumn
private String zdjbs;
@ApiParam(value = "删除标识")
@AnnoOutputColumn
private String xloek;
@ApiParam(value = "年度")
@AnnoOutputColumn
private Integer gjahr;
public Integer getZeilVal() {
return zeili== null ? 0 : this.zeili.intValue();
}
public Integer getGjahrVal() {
return gjahr== null ? 0 : this.gjahr.intValue();
}
}

@ -0,0 +1,39 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : amy
* @CreateDate : 2019-06-22 10:27
* @Modify:
**/
@Data
@Api(value="盘点调差",description = "盘点调差")
public class SapDifo extends SapBase{
@ApiParam(value = "工厂")
@AnnoOutputColumn
private String werks;
@ApiParam(value = "盘点凭证号")
@AnnoOutputColumn
private String iblnr;
@ApiParam(value = "行号")
@AnnoOutputColumn
private String zeili;
@ApiParam(value = "调整")
@AnnoOutputColumn
private String ztzbs;
@ApiParam(value = "年度")
@AnnoOutputColumn
private String gjahr;
}

@ -9,6 +9,7 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -29,7 +30,7 @@ public class WmsActionResponseBean<Obj> implements Serializable {
public Map<String, Obj> barCode;
@ApiParam("进度")
public String percent ="消息提示:";
public String percent = "消息提示:";
@ApiParam("当前步骤")
public Integer currentStep;
@ -42,9 +43,21 @@ public class WmsActionResponseBean<Obj> implements Serializable {
@ApiParam("列表信息")
public List<String> informations;
public void setInformation(List<String> list){
if(list == null){
list = new ArrayList<>();
}
informations = list;
}
@ApiParam("可选项")
public List<WmsOptionModel> options;
public void setOptions(List<WmsOptionModel> opt){
if(opt == null){
opt = new ArrayList<>();
}
options = opt;
}
@ApiParam("选中的明细数据")
public Obj details;
@ -97,6 +110,9 @@ public class WmsActionResponseBean<Obj> implements Serializable {
@ApiParam(value = "是否完成流程操作")
public Boolean isComplete = false;
@ApiParam(value = "交易类型信息")
public WmsTransType wmsTransType;
public WmsActionResponseBean(Boolean codeStatus, String message) {
this.codeStatus = codeStatus;
this.message = message;

@ -60,4 +60,17 @@ public class WmsCSAdjustRange extends BaseBean {
@Transient
@ApiParam("单位")
public String unit;
public WmsCSAdjustRange(){}
public WmsCSAdjustRange(String orderNo, Integer item, Integer isAdjust, String partNo, String partNameRdd, String zoneNo, String locateNo, String unit,String organizeCode) {
this.orderNo = orderNo;
this.item = item;
this.isAdjust = isAdjust;
this.partNo = partNo;
this.partNameRdd = partNameRdd;
this.zoneNo = zoneNo;
this.locateNo = locateNo;
this.unit = unit;
this.organizeCode = organizeCode;
}
}

@ -182,6 +182,14 @@ public class WmsDocMovementDetails extends BaseBean {
@ApiParam(value ="余数",example = "1")
private Double restQty;
@Transient
@ApiParam("任务状态")
private Integer isTask;
@Transient
@ApiParam("主表单据状态")
private Integer orderMasterStatus;
public String getRecommondLot() {
return recommondLot == null ? "无" : this.recommondLot;
}
@ -194,6 +202,10 @@ public class WmsDocMovementDetails extends BaseBean {
public Double getActualQty() {return actualQty == null ? 0D : this.actualQty.doubleValue(); }
public Integer getIsTaskVal() {return isTask == null ? 0 : this.isTask.intValue();}
public Integer getOrderMasterStatus() { return orderMasterStatus== null ? 0 : this.orderMasterStatus.intValue(); }
@Version
@Column(name = "LOCK_VERSION")
@ApiParam(value = "乐观锁", example = "1")

@ -27,6 +27,7 @@ import javax.persistence.Table;
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Api(value="线边库物料信息",description = "线边库物料信息")
@Deprecated
public class WmsLineLocatePart extends BaseBean {
@Column(name="LOCATE_NO")

@ -30,125 +30,130 @@ import javax.persistence.*;
})
@Api("PO订单明细信息")
public class WmsPOMasterDetails extends BaseBean {
private static final long serialVersionUID = -677572691809622129L;
@Column(name = "PART_NO")
@ApiParam("物料编码")
public String partNo;
private String partNo;
@Column(name = "BOX_QTY" )
@Column(name = "BOX_QTY")
@ColumnDefault("0")
@ApiParam(value ="箱数", example = "0")
public Integer boxQty;
@ApiParam(value = "箱数", example = "0")
private Integer boxQty;
@Column(name = "PART_NAME_RDD")
@ApiParam("物料名称")
public String partNameRdd;
private String partNameRdd;
@Column(name = "ITEM")
@ApiParam("行号")
public Integer item;
private Integer item;
@Column(name = "QTY")
@ColumnDefault("0")
@ApiParam(value = "需求数量", example = "0")
public Double qty;
private Double qty;
public Double getQty(){ return this.qty == null ? 0 : this.qty; }
// 不可能为 null 值
// Rock.Yu at 2019-06-22 20:03
//private Double getQty(){ return this.qty == null ? new Double(0) : this.qty; }
@Column(name = "UNIT")
@ApiParam("单位")
public String unit;
private String unit;
@Column(name = "ORDER_NO")
@ApiParam("订单号")
public String orderNo;
private String orderNo;
@Column(name = "PRINT_QTY")
@ColumnDefault("0")
@ApiParam(value = "条码打印数量", example = "0")
public Double printQty;
private Double printQty;
public Double getPrintQty(){ return this.printQty == null ? 0 : this.printQty; }
//private Double getPrintQty(){ return this.printQty == null ? new Double(0) : this.printQty; }
@Column(name = "RC_QTY")
@ColumnDefault("0")
@ApiParam(value = "收货数量", example = "0")
public Double rcQty;
private Double rcQty;
public Double getRcQty(){ return this.rcQty == null ? 0 : this.rcQty; }
//private Double getRcQty(){ return this.rcQty == null ? new Double(0) : this.rcQty; }
@Column(name = "PASS_QTY")
@ColumnDefault("0")
@ApiParam(value = "质检合格数量", example = "0")
public Double passQty;
private Double passQty;
public Double getPassQty(){ return this.passQty == null ? 0 : this.passQty; }
//private Double getPassQty(){ return this.passQty == null ? new Double(0) : this.passQty; }
@Column(name = "NG_QTY")
@ColumnDefault("0")
@ApiParam(value = "质检不合格数量", example = "0")
public Double ngQty;
private Double ngQty;
public Double getNgQty(){ return this.ngQty == null ? 0 : this.ngQty; }
//private Double getNgQty(){ return this.ngQty == null ? new Double(0) : this.ngQty; }
@Column(name = "PLAN_DATE")
@ApiParam("计划交货日期")
public String planDate;
private String planDate;
@Column(name = "PLAN_TIME")
@ApiParam("计划交货时间")
public String planTime;
private String planTime;
@Column(name = "ERP_AREA_NO")
@ApiParam("默认收货库存地")
public String erpAreaNo;
private String erpAreaNo;
/**
* :10 N=,20 C=
*/
@Column(name = "ITEM_STATUS")
@ApiParam("状态")
public Integer itemStatus;
private Integer itemStatus;
@Column(name = "SNP")
@ApiParam("标准包装")
public Double snp;
private Double snp;
/**
* :0=,1=
*/
@Column(name = "IS_FREE")
@ApiParam(value = "是否免费", example = "1")
public Integer isFree;
private Integer isFree;
@Transient
@ApiParam(value = "散件收货输入数量", example = "0")
public Double inputRcQty;
private Double inputRcQty;
@Transient
@ApiParam(value = "供应商批次")
public String dateCode;
private String dateCode;
@Transient
@ApiParam("前端表格编辑使用")
public Boolean isSet = false;
private Boolean isSet = false;
@Transient
@ApiParam("供应商批次字段是否可编辑")
public Boolean isDateCodeEdit = true;
private Boolean isDateCodeEdit = true;
public Double getInputRcQty(){ return this.inputRcQty == null ? 0 : this.inputRcQty; }
//private Double getInputRcQty(){ return this.inputRcQty == null ? new Double(0) : this.inputRcQty; }
@Version
@Column(name = "LOCK_VERSION")
@ApiParam(value = "乐观锁", example = "1")
public transient int lockVersion;
private transient int lockVersion;
@Transient
@ApiParam("PO条码总箱数")
public Integer totalBoxes;
private Integer totalBoxes;
@Transient
@ApiParam("差异")
public Double difference;
private Double difference;
}

@ -13,6 +13,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @Description :
@ -202,8 +203,25 @@ public class WmsStockSn extends BaseBean {
@ApiParam(value = "工厂名称")
public String organizeName;
@Transient
@ApiParam(value = "物料数量总和")
public Double sumPartQty;
@Transient
@ApiParam(value = "条码数量总和")
public Long snCount;
@Transient
@ApiParam(value = "物料编码集合")
public List<String> partNoList;
@Transient
@ApiParam(value = "ERP库存地集合")
public List<String> erpZoneNoList;
public WmsStockSn(){}
public WmsStockSn(String partNo){
this.partNo = partNo;
}
@ -213,4 +231,10 @@ public class WmsStockSn extends BaseBean {
}
public Double getInputNCQty(){return inputNCQty == null ? 0L : this.inputNCQty.doubleValue();}
public WmsStockSn( Long snCount, Double sumPartQty,String locateNo) {
this.snCount = snCount;
this.sumPartQty = sumPartQty;
this.locateNo = locateNo;
}
}

@ -13,6 +13,7 @@ import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Index;
import javax.persistence.Table;
import java.math.BigDecimal;
/**
* @Description :
@ -137,6 +138,10 @@ public class WmsTaskDetails extends BaseBean {
return this.qty == null ? 0 : this.qty;
}
public String getQtyTxt(){
return new BigDecimal(getQty() + "").stripTrailingZeros().toPlainString();
}
public Double getTransQty() {
return this.transQty == null ? 0 : this.transQty;
}

@ -89,4 +89,11 @@ public class WmsZones extends BaseBean {
@Transient
@ApiParam(value ="子存储区列表")
private List<WmsZones> childList;
public WmsZones(String zoneNo){
this.zoneNo = zoneNo;
}
public WmsZones(){}
}

@ -0,0 +1,12 @@
package cn.estsh.i3plus.pojo.wms.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.wms.bean.WmsBom;
import org.springframework.stereotype.Repository;
/**
* Created by Administrator on 2019/6/22.
*/
@Repository
public interface WmsBomRepository extends BaseRepository<WmsBom, Long> {
}

@ -4,6 +4,8 @@ import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.wms.bean.WmsStockSn;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
/**
* @Description : dao
* @Reference :
@ -21,13 +23,14 @@ public interface WmsStockSnRepository extends BaseRepository<WmsStockSn, Long> {
/**
* Rock.Yu at 2019-06-22 11:05
*
*
* @return
*/
@Query(value = "select sn from WmsStockSn " +
"where organizeCode=?1 and isValid=?2 and isDeleted=?3 " +
"and zoneNo=?4 and partNo=?5 " +
@Query(value = "from WmsStockSn " +
"where organizeCode=?1 " +
"and zoneNo=?2 and partNo=?3 and isValid=?4 and isDeleted=?5 and snStatus=40 " +
"order by fixLotNo, dateCode, lotNo")
WmsStockSn findFirstFifoSNByZoneNo(String organizeCode, int isValid, int isDeleted, String zoneNo, String partNo);
List<WmsStockSn> findByFifoSNByZoneNo(String organizeCode, String zoneNo, String partNo, int isValid, int isDeleted);
}

@ -21,6 +21,7 @@ import java.util.stream.Collectors;
* @Reference :
* @Author : silliter.yuan
* @CreateDate : 2018-10-31 10:45
* @CreateDate : 2019-06-25
* @Modify:
**/
public class WmsHqlPack {
@ -77,8 +78,14 @@ public class WmsHqlPack {
DdlPackBean result = new DdlPackBean();
//查询参数封装
DdlPreparedPack.getStringEqualPack(wmsDocMovementDetails.getOrderNo(), "orderNo", result);
DdlPreparedPack.getStringLikerPack(wmsDocMovementDetails.getOrderNo(), "orderNo", result);
DdlPreparedPack.getNumEqualPack(wmsDocMovementDetails.getItemStatus(), "itemStatus", result);
DdlPreparedPack.getStringLikerPack(wmsDocMovementDetails.getPartNo(), "partNo", result);
DdlPreparedPack.getStringLikerPack(wmsDocMovementDetails.getDestZoneNo(), "destZoneNo", result);
DdlPreparedPack.getStringLikerPack(wmsDocMovementDetails.getDestLocateNo(), "destLocateNo", result);
DdlPreparedPack.timeBuilder(wmsDocMovementDetails.getCreateDateTimeStart(),
wmsDocMovementDetails.getCreateDateTimeEnd(),"createDatetime",result,true);
getStringBuilderPack(wmsDocMovementDetails, result);
return result;
@ -1102,6 +1109,34 @@ public class WmsHqlPack {
}
/**
*
* @param wmsStockSn
* @return
*/
public static DdlPackBean packHqlWmsStockSnReportByPager(WmsStockSn wmsStockSn) {
DdlPackBean result = new DdlPackBean();
DdlPreparedPack.getStringEqualPack(wmsStockSn.getRefSrc(), "refSrc", result);
// 物料编码支持多选
DdlPreparedPack.getInPackList(wmsStockSn.getPartNoList(), "partNo", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getWhNo(), "whNo", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getZoneNo(), "zoneNo", result);
DdlPreparedPack.getInPackList(wmsStockSn.getErpZoneNoList(), "zoneNo", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getVendorNo(), "vendorNo", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getLocateNo(), "locateNo", result);
DdlPreparedPack.getNumEqualPack(wmsStockSn.getSnStatus(), "snStatus", result);
DdlPreparedPack.getNumEqualPack(wmsStockSn.getQcStatus(), "qcStatus", result);
DdlPreparedPack.getStringLikerPack(wmsStockSn.getSn(), "sn", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getDateCode(), "dateCode", result);
DdlPreparedPack.getStringEqualPack(wmsStockSn.getLotNo(), "lotNo", result);
getStringBuilderPack(wmsStockSn, result);
return result;
}
/**
*
*
* @param wmsQCDetails
@ -1739,7 +1774,7 @@ public class WmsHqlPack {
//查询参数封装
DdlPreparedPack.getInPackArray(new Object[]{WmsEnumUtil.CS_ORDER_STATUS.STARTING_INVENTORY.getValue(),
WmsEnumUtil.CS_ORDER_STATUS.IN_INVENTORY.getValue()}, "orderStatus", result);
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isPart", result);
DdlPreparedPack.getNumEqualPack(wmsCSOrderMaster.getIsPart(), "isPart", result);
DdlPreparedPack.getStringEqualPack(wmsCSOrderMaster.getOrderNo(), "orderNo", result);
getStringBuilderPack(wmsCSOrderMaster, result);
@ -1930,10 +1965,10 @@ public class WmsHqlPack {
* @param wmsPart
* @return
*/
public static DdlPackBean packHqlWmsPartByList(WmsPart wmsPart,List<WmsStockSn> partNoList) {
public static DdlPackBean packHqlWmsPartByList(WmsPart wmsPart,String[] parts) {
DdlPackBean packBean = new DdlPackBean();
DdlPreparedPack.getInPackList(partNoList.stream().map(part -> part.getPartNo()).collect(Collectors.toList()),"partNo",packBean);
DdlPreparedPack.getInPackArray(parts,"partNo",packBean);
DdlPreparedPack.getStringEqualPack(wmsPart.getOrganizeCode(),"organizeCode",packBean);
getStringBuilderPack(wmsPart, packBean);
@ -1998,5 +2033,23 @@ public class WmsHqlPack {
return result;
}
/**
*
*
* @param zoneNoList
*@param wmsZones
* @param locateType
* @return
*/
public static DdlPackBean packLocateNoByZoneNo(List<String> zoneNoList , WmsZones wmsZones , Integer locateType) {
DdlPackBean result = new DdlPackBean();
//查询参数封装
DdlPreparedPack.getInPackList(zoneNoList, "zoneNo", result);
DdlPreparedPack.getNumEqualPack(locateType, "locateType", result);
getStringBuilderPack(wmsZones, result);
return result;
}
}

Loading…
Cancel
Save