|
|
|
@ -2,13 +2,18 @@ package cn.estsh.i3plus.pojo.wms.sqlpack;
|
|
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.WmsEnumUtil;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.SqlPack;
|
|
|
|
|
import cn.estsh.i3plus.pojo.wms.bean.*;
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
import com.google.common.base.Strings;
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.Set;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @Description : 仓库管理对象封装
|
|
|
|
@ -53,8 +58,8 @@ public class WmsHqlPack {
|
|
|
|
|
HqlPack.getNumEqualPack(wmsPOMasterDetails.getItem(), "item", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getPartNo(), "partNo", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getPartNameRdd(), "partNameRdd", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getZTime(), "zTime", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getZDate(), "zDate", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getZTime(), "planTime", result);
|
|
|
|
|
HqlPack.getStringLikerPack(wmsPOMasterDetails.getZDate(), "planDate", result);
|
|
|
|
|
|
|
|
|
|
getStringBuilderPack(wmsPOMasterDetails, result);
|
|
|
|
|
|
|
|
|
@ -83,7 +88,7 @@ public class WmsHqlPack {
|
|
|
|
|
* @param orderNos
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String packHqlWmsDocMovementDetailsByOrderNos(List<String> orderNos) {
|
|
|
|
|
public static String packWmsOrderDetailsByOrderNos(List<String> orderNos) {
|
|
|
|
|
StringBuffer result = new StringBuffer();
|
|
|
|
|
StringBuffer orderNoStr = new StringBuffer();
|
|
|
|
|
for (int i = 0; i < orderNos.size(); i++) {
|
|
|
|
@ -580,8 +585,8 @@ public class WmsHqlPack {
|
|
|
|
|
HqlPack.getNumEqualPack(wmsASNMasterDetails.getQty(), "qty", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getPoItem(), "poItem", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getUnit(), "unit", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getZDate(), "zDate", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getZTime(), "zTime", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getPlanDate(), "planDate", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getPlanTime(), "planTime", result);
|
|
|
|
|
HqlPack.getNumEqualPack(wmsASNMasterDetails.getItemStatus(), "itemStatus", result);
|
|
|
|
|
HqlPack.getStringEqualPack(wmsASNMasterDetails.getPackAge(), "packAge", result);
|
|
|
|
|
HqlPack.getNumEqualPack(wmsASNMasterDetails.getIsFree(), "isFree", result);
|
|
|
|
@ -950,10 +955,10 @@ public class WmsHqlPack {
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getOrderNo(), "orderNo", result);
|
|
|
|
|
//业务类型
|
|
|
|
|
HqlPack.getNumEqualPack(wmsQCMaster.getOrderType(), "orderType", result);
|
|
|
|
|
//采购单号
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getPoNo(), "poNo", result);
|
|
|
|
|
//ASN单号
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getAsnNo(), "asnNo", result);
|
|
|
|
|
//关联单据类型
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getRefType(), "refType", result);
|
|
|
|
|
//关联单据号
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getRefSrc(), "refSrc", result);
|
|
|
|
|
//入库单号
|
|
|
|
|
HqlPack.getStringEqualPack(wmsQCMaster.getIbNo(), "ibNo", result);
|
|
|
|
|
|
|
|
|
@ -1313,8 +1318,8 @@ public class WmsHqlPack {
|
|
|
|
|
public static String packHqlWmsStockSnLike(WmsStockSn wmsStockSn) {
|
|
|
|
|
StringBuffer result = new StringBuffer();
|
|
|
|
|
HqlPack.getStringLikerPack(wmsStockSn.getSn(),"sn", result);
|
|
|
|
|
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"createDatetime"}, result);
|
|
|
|
|
getStringBuilderPack(wmsStockSn, result);
|
|
|
|
|
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"createDatetime"}, result);
|
|
|
|
|
return result.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1330,4 +1335,69 @@ public class WmsHqlPack {
|
|
|
|
|
getStringBuilderPack(wmsStockQuan, result);
|
|
|
|
|
return result.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据用户角色id列表查询数据权限信息
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String packHqlWmsDataAuth(WmsDataAuth dataAuth, List<String> roleIds) {
|
|
|
|
|
StringBuffer result = new StringBuffer();
|
|
|
|
|
HqlPack.getStringEqualPack(dataAuth.getDataObj() ,"dataObj", result);
|
|
|
|
|
String data = String.join(",", roleIds);
|
|
|
|
|
HqlPack.getInPackString(data, "roleCode", result);
|
|
|
|
|
getStringBuilderPack(new WmsDataAuth(), result);
|
|
|
|
|
return result.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据权限数据拼查询任务详情sql
|
|
|
|
|
* @param groupDataAuth
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String packHqlWmsTaskDetail(Map<String ,List<WmsDataAuth>> groupDataAuth) {
|
|
|
|
|
StringBuffer result = new StringBuffer();
|
|
|
|
|
Set<Map.Entry<String, List<WmsDataAuth>>> entries = groupDataAuth.entrySet();
|
|
|
|
|
//拼sql
|
|
|
|
|
entries.stream().filter(o->!Strings.isNullOrEmpty(o.getKey())).forEach(o->{
|
|
|
|
|
List<WmsDataAuth> value = o.getValue();
|
|
|
|
|
List<String> vList = value.stream().map(x -> x.getDataObjValue()).collect(Collectors.toList());
|
|
|
|
|
String data = String.join(",", vList);
|
|
|
|
|
if (StringUtils.isNotBlank(data)) {
|
|
|
|
|
List<Map> mapList = JSONObject.parseArray(data, Map.class);
|
|
|
|
|
if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.WAREHOUSE.getValue() + "", o.getKey())) {
|
|
|
|
|
for (Map whNoItem : mapList) {
|
|
|
|
|
HqlPack.getInOrPackString(whNoItem.get("WH_CODE").toString(), "destWhNo", result);
|
|
|
|
|
}
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.LOCATE.getValue() + "", o.getKey())) {
|
|
|
|
|
for (Map locateNoItem : mapList) {
|
|
|
|
|
HqlPack.getInOrPackString(locateNoItem.get("LOCATE_NO").toString(), "destLocateNo", result);
|
|
|
|
|
}
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.ZONE.getValue() + "", o.getKey())) {
|
|
|
|
|
for (Map zoneNoItem : mapList) {
|
|
|
|
|
HqlPack.getInOrPackString(zoneNoItem.get("ZONE_CODE").toString(), "destZoneNo", result);
|
|
|
|
|
}
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.MATERIAL.getValue() + "", o.getKey())) {
|
|
|
|
|
for (Map zoneNoItem : mapList) {
|
|
|
|
|
HqlPack.getInOrPackString(zoneNoItem.get("PART_NO").toString(), "partNo", result);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
getStringBuilderPack(new WmsDataAuth(), result);
|
|
|
|
|
return result.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 给定字段动态in sql
|
|
|
|
|
* @param columnName
|
|
|
|
|
* @param vals
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String packHqlAndIn(BaseBean bean,String columnName,List<String> vals) {
|
|
|
|
|
StringBuffer result = new StringBuffer();
|
|
|
|
|
String data = String.join(",", vals);
|
|
|
|
|
HqlPack.getInPackString(data,columnName,result);
|
|
|
|
|
getStringBuilderPack(bean, result);
|
|
|
|
|
return result.toString();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|