|
|
|
@ -1462,26 +1462,29 @@ public class WmsHqlPack {
|
|
|
|
|
if (StringUtils.isNotBlank(data)) {
|
|
|
|
|
List<Map> mapList = JSONObject.parseArray(data, Map.class);
|
|
|
|
|
if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.WAREHOUSE.getValue() + "", key)) {
|
|
|
|
|
packMutilConditionHql(mapList, "WH_CODE", "destWhNo", result);
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.LOCATE.getValue() + "", key)) {
|
|
|
|
|
packMutilConditionHql(mapList, "LOCATE_NO", "destLocateNo", result);
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.ZONE.getValue() + "", key)) {
|
|
|
|
|
packMutilConditionHql(mapList, "ZONE_CODE", "destZoneNo", result);
|
|
|
|
|
} else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.MATERIAL.getValue() + "", key)) {
|
|
|
|
|
packMutilConditionHql(mapList, "PART_NO", "partNo", result);
|
|
|
|
|
}
|
|
|
|
|
DdlPreparedPack.getInPackList(cyclicTraversal(mapList,"WH_CODE"), "destWhNo", result);
|
|
|
|
|
//packMutilConditionHql(mapList, "WH_CODE", "destWhNo", result);
|
|
|
|
|
}/* else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.LOCATE.getValue() + "", key)) {
|
|
|
|
|
DdlPreparedPack.getInPackList(cyclicTraversal(mapList,"LOCATE_NO"), "destLocateNo", result);
|
|
|
|
|
//packMutilConditionHql(mapList, "LOCATE_NO", "destLocateNo", result);
|
|
|
|
|
}*/ else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.ZONE.getValue() + "", key)) {
|
|
|
|
|
DdlPreparedPack.getInPackList(cyclicTraversal(mapList,"ZONE_CODE"), "destZoneNo", result);
|
|
|
|
|
//packMutilConditionHql(mapList, "ZONE_CODE", "destZoneNo", result);
|
|
|
|
|
} /*else if (StringUtils.equalsIgnoreCase(WmsEnumUtil.DATA_OBJ_TYPE.MATERIAL.getValue() + "", key)) {
|
|
|
|
|
DdlPreparedPack.getInPackList(cyclicTraversal(mapList,"PART_NO"), "partNo", result);
|
|
|
|
|
//packMutilConditionHql(mapList, "PART_NO", "partNo", result);
|
|
|
|
|
}*/
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//转换封装后的hql
|
|
|
|
|
String packedHql = result.getPackedHql();
|
|
|
|
|
/*String packedHql = result.getPackedHql();
|
|
|
|
|
if(packedHql.startsWith(" or")){
|
|
|
|
|
packedHql = " and (" + packedHql.substring(3,packedHql.length()) + ") ";
|
|
|
|
|
System.out.println(packedHql);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
result.setWhereAppend(packedHql);
|
|
|
|
|
|
|
|
|
|
result.setWhereAppend(packedHql);*/
|
|
|
|
|
// 通用数据拼接
|
|
|
|
|
WmsDataAuth wmsDataAuth = new WmsDataAuth();
|
|
|
|
|
wmsDataAuth.setOrganizeCode(organizeCode);
|
|
|
|
@ -1490,6 +1493,20 @@ public class WmsHqlPack {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 把 List<Map> 中的一组数据重新封装到List<String>中
|
|
|
|
|
* @param mapList
|
|
|
|
|
* @param keyName
|
|
|
|
|
*/
|
|
|
|
|
private static List<String> cyclicTraversal(List<Map> mapList,String keyName) {
|
|
|
|
|
List<String> list = new ArrayList<String>();
|
|
|
|
|
for(int i=0;i<mapList.size();i++){
|
|
|
|
|
Map<String,String> map = mapList.get(i);
|
|
|
|
|
list.add(map.get(keyName));
|
|
|
|
|
}
|
|
|
|
|
return list;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 把 List<Map> 中的一组查询条件封装成 HQL
|
|
|
|
|
* @param mapList
|
|
|
|
|
* @param keyName
|
|
|
|
@ -1518,37 +1535,31 @@ public class WmsHqlPack {
|
|
|
|
|
*/
|
|
|
|
|
public static DdlPackBean packHqlAndIn(WmsTaskInfo bean, String columnName, List<String> orderList,Map<String, List<WmsDataAuth>> groupDataAuth) {
|
|
|
|
|
DdlPackBean packBean = new DdlPackBean();
|
|
|
|
|
|
|
|
|
|
Set<Map.Entry<String, List<WmsDataAuth>>> entries = groupDataAuth.entrySet();
|
|
|
|
|
//拼sql
|
|
|
|
|
entries.stream().filter(o -> !Strings.isNullOrEmpty(o.getKey()));
|
|
|
|
|
|
|
|
|
|
for (Map.Entry<String, List<WmsDataAuth>> map : entries) {
|
|
|
|
|
|
|
|
|
|
String key = map.getKey();
|
|
|
|
|
List<WmsDataAuth> valueList = map.getValue();
|
|
|
|
|
List<String> vList = valueList.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.TRANS_TYPE.getValue() + "", key)) {
|
|
|
|
|
|
|
|
|
|
packMutilConditionHql(mapList, "TRANS_TYPE_CODE", "transTypeCode", packBean);
|
|
|
|
|
DdlPreparedPack.getInPackList(cyclicTraversal(mapList,"TRANS_TYPE_CODE"), "transTypeCode", packBean);
|
|
|
|
|
//packMutilConditionHql(mapList, "TRANS_TYPE_CODE", "transTypeCode", packBean);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//转换封装后的hql
|
|
|
|
|
String packedHql = packBean.getPackedHql();
|
|
|
|
|
/*String packedHql = packBean.getPackedHql();
|
|
|
|
|
if(packedHql.startsWith(" or")){
|
|
|
|
|
packedHql = " and (" + packedHql.substring(3,packedHql.length()) + ") ";
|
|
|
|
|
System.out.println(packedHql);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
packBean.setWhereAppend(packedHql);
|
|
|
|
|
|
|
|
|
|
packBean.setWhereAppend(packedHql);*/
|
|
|
|
|
DdlPreparedPack.getInPackList(orderList, columnName, packBean);
|
|
|
|
|
DdlPreparedPack.getStringRightLikerPack(bean.getOrderNo(), "orderNo", packBean);
|
|
|
|
|
DdlPreparedPack.getNumNOEqualPack(bean.getTaskStatus(), "taskStatus", packBean);
|
|
|
|
@ -1827,6 +1838,28 @@ public class WmsHqlPack {
|
|
|
|
|
getStringBuilderPack(wmsLineLocatePart, result);
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 任务数据来源唯一校验
|
|
|
|
|
*
|
|
|
|
|
* @param wmsTaskSrc
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static DdlPackBean packHqlWmsTaskSrcIsUniq(WmsTaskSrc wmsTaskSrc) {
|
|
|
|
|
DdlPackBean result = new DdlPackBean();
|
|
|
|
|
|
|
|
|
|
//查询参数封装
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(wmsTaskSrc.getOrganizeCode(), "organizeCode", result);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(wmsTaskSrc.getOpTypeCode(), "opTypeCode", result);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(wmsTaskSrc.getDataSrc(), "dataSrc", result);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(wmsTaskSrc.getBusiType(), "busiType", result);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(wmsTaskSrc.getPriority(), "priority", result);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(wmsTaskSrc.getIsSn(), "isSn", result);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(wmsTaskSrc.getIsOneStep(), "isOneStep", result);
|
|
|
|
|
getStringBuilderPack(wmsTaskSrc, result);
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 任务数据来源 分页查询
|
|
|
|
|
*
|
|
|
|
@ -1841,6 +1874,7 @@ public class WmsHqlPack {
|
|
|
|
|
getStringBuilderPack(wmsTaskSrc, result);
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 供应商零件 分页查询
|
|
|
|
|
*
|
|
|
|
@ -1890,4 +1924,21 @@ public class WmsHqlPack {
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 物料 条件封装
|
|
|
|
|
*
|
|
|
|
|
* @param wmsPart
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static DdlPackBean packHqlWmsPartByList(WmsPart wmsPart,List<WmsStockSn> partNoList) {
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = new DdlPackBean();
|
|
|
|
|
DdlPreparedPack.getInPackList(partNoList.stream().map(part -> part.getPartNo()).collect(Collectors.toList()),"partNo",packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(wmsPart.getOrganizeCode(),"organizeCode",packBean);
|
|
|
|
|
getStringBuilderPack(wmsPart, packBean);
|
|
|
|
|
|
|
|
|
|
return packBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|