fix:取货点未qzz_point
This commit is contained in:
@@ -3255,7 +3255,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
StructAllsetDto left = needStructs.get(0);
|
||||
StructAllsetDto right = needStructs.get(needStructs.size()-1);
|
||||
//确认左/右出库并根据出库顺序获取货位集合
|
||||
List<JSONObject> structs = 左右出库确认(needStructs, left, right);
|
||||
List<JSONObject> structs = 左右出库确认(needStructs, left, right,whereJson.getString("iostorinv_id"));
|
||||
//attr.struct_code,attr.lock_type,attr.storagevehicle_code,attr.inv_code,storagevehicle_code
|
||||
List<String> needStructList = needStructs.stream().map(StructAllsetDto::getStruct_code).collect(Collectors.toList());
|
||||
/**
|
||||
@@ -3270,29 +3270,29 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
for (int i = 0; i < structs.size(); i++) {
|
||||
JSONObject item = structs.get(i);
|
||||
item.put("task_group_id",taskGroup);
|
||||
item.put("seq",i);
|
||||
item.put("sort_seq",i);
|
||||
item.put("point_code",point_code);
|
||||
item.put("point_id",jsonPoint2.getString("point_id"));
|
||||
String structCode = item.getString("struct_code");
|
||||
if (CollectionUtils.isEmpty(needStructs)){
|
||||
if (CollectionUtils.isEmpty(needStructList)){
|
||||
break;
|
||||
}
|
||||
if (!item.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))){
|
||||
continue;
|
||||
}
|
||||
if (needStructList.contains(structCode)){
|
||||
//出库
|
||||
this.createOut(item);
|
||||
needStructList.remove(structCode);
|
||||
}else {
|
||||
//移库
|
||||
//移库:如果当前存在业务锁定则说明存在相关任务,不需要移库,直接跳过
|
||||
if (!item.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))){
|
||||
continue;
|
||||
}
|
||||
this.createMove(item);
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
private List<JSONObject> 左右出库确认(List<StructAllsetDto> structs, StructAllsetDto left, StructAllsetDto right) {
|
||||
private List<JSONObject> 左右出库确认(List<StructAllsetDto> structs, StructAllsetDto left, StructAllsetDto right,String invId) {
|
||||
/**
|
||||
* 1.查询当前排被锁住的货位集合
|
||||
* 2.过滤仓位没有没有被其他单据锁定的货位
|
||||
@@ -3308,9 +3308,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
//查询当前排
|
||||
//lock_type('2','3','6','7')
|
||||
// 查询仓位被锁住的货位
|
||||
HashMap param = MapOf.of("flag", "51", "sect_id",left.getSect_id(),"block_num", left.getBlock_num(), "row_num", left.getRow_num());
|
||||
HashMap param = MapOf.of("invId",invId,"flag", "51", "sect_id",left.getSect_id(),"block_num", left.getBlock_num(), "row_num", left.getRow_num());
|
||||
JSONArray allLock = WQL.getWO("ST_OUTIVT04").addParamMap(param).process().getResultJSONArray(0);
|
||||
List<JSONObject> hasLock = this.isNumList(allLock);
|
||||
|
||||
String option;
|
||||
//如果货位有锁定则需要判断左右
|
||||
//口回口口回口*口口 <--->
|
||||
@@ -3360,8 +3361,8 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
//查询当前排最大order
|
||||
HashMap maxParam = MapOf.of("flag", "52", "sect_id",left.getSect_id(),"block_num", left.getBlock_num(), "row_num", left.getRow_num());
|
||||
JSONObject result = WQL.getWO("ST_OUTIVT04").addParamMap(maxParam).process().uniqueResult(0);
|
||||
Integer maxSeq = result.getInteger("maxSeq");
|
||||
Integer minSeq = result.getInteger("minSeq");
|
||||
Integer maxSeq = result.getInteger("maxseq");
|
||||
Integer minSeq = result.getInteger("minseq");
|
||||
int leftVe = Integer.valueOf(left.getOut_order_seq()) - minSeq;
|
||||
int rightVe = maxSeq - Integer.valueOf(right.getOut_order_seq());
|
||||
option = leftVe>rightVe?"03":"02";
|
||||
@@ -3369,8 +3370,9 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
option = placementType;
|
||||
}
|
||||
}
|
||||
//option确认了左边出库还是右边出库03左边,02右边
|
||||
HashMap structParam = MapOf.of("flag", "53", "out_order_seq",option,"sect_id",left.getSect_id(),"block_num", left.getBlock_num(), "row_num", left.getRow_num());
|
||||
//option确认了左边出库还是右边出库03右边,02左边
|
||||
String orderBy = "order by out_order_seq "+(option.equals("02")?"asc":"desc");
|
||||
HashMap structParam = MapOf.of("flag", "53", "order_by",orderBy,"sect_id",left.getSect_id(),"block_num", left.getBlock_num(), "row_num", left.getRow_num());
|
||||
return WQL.getWO("ST_OUTIVT04").addParamMap(structParam).process().getResultJSONArray(0).toJavaList(JSONObject.class);
|
||||
}
|
||||
@Transactional
|
||||
@@ -3429,7 +3431,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
form.put("point_code1", json.getString("struct_code"));
|
||||
form.put("point_code2", jsonMove.getString("struct_code"));
|
||||
form.put("task_group_id", struct.getLongValue("task_group_id")); // 任务组
|
||||
form.put("sort_seq", struct.getIntValue("seq") + 1); // 任务组顺序号
|
||||
form.put("sort_seq", struct.getIntValue("sort_seq") + 1); // 任务组顺序号
|
||||
json.put("task_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
json.put("task_code", IdUtil.getSnowflake(1, 1).nextId());
|
||||
json.put("task_type", form.getString("task_type"));
|
||||
@@ -3472,7 +3474,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
param.put("material_id", oneDis.getMaterial_id());
|
||||
// 更新出库任务:任务组和顺序号
|
||||
param.put("task_group_id", struct.getString("task_group_id")); // 任务组
|
||||
param.put("sort_seq", struct.getString("sort_seq")+1); // 任务组顺序号
|
||||
param.put("sort_seq", struct.getIntValue("sort_seq")+1); // 任务组顺序号
|
||||
String create_task_id = outTask.createTask(param);
|
||||
//批量更细分配明细
|
||||
List<Long> disIds = list.stream().map(StIvtIostorinvdis::getIostorinvdis_id).collect(Collectors.toList());
|
||||
|
||||
@@ -18,8 +18,9 @@
|
||||
输入.iostorinvdtl_id TYPEAS s_string
|
||||
输入.block_num TYPEAS s_string
|
||||
输入.sect_id TYPEAS s_string
|
||||
输入.invId TYPEAS s_string
|
||||
输入.row_num TYPEAS s_string
|
||||
输入.out_order_seq TYPEAS s_string
|
||||
输入.order_by TYPEAS f_string
|
||||
输入.iostorinvdis_id TYPEAS s_string
|
||||
|
||||
[临时表]
|
||||
@@ -278,7 +279,7 @@
|
||||
IF 输入.flag = "51"
|
||||
QUERY
|
||||
SELECT
|
||||
attr.struct_code,attr.lock_type,attr.storagevehicle_code,attr.inv_code
|
||||
attr.struct_code,attr.lock_type,attr.storagevehicle_code,attr.inv_code,attr.out_order_seq
|
||||
FROM
|
||||
st_ivt_structattr attr
|
||||
WHERE
|
||||
@@ -287,13 +288,16 @@
|
||||
AND attr.row_num = 输入.row_num
|
||||
AND attr.sect_id = 输入.sect_id
|
||||
AND IFNULL( attr.storagevehicle_code, '' ) <> ''
|
||||
OPTION 输入.invId <> ""
|
||||
attr.inv_id <> 输入.invId
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
IF 输入.flag = "52"
|
||||
QUERY
|
||||
SELECT
|
||||
MAX(attr.out_order_seq) as maxSeq,MIN(attr.out_order_seq) as minSeq
|
||||
MAX(attr.out_order_seq) as maxseq,MIN(attr.out_order_seq) as minseq
|
||||
FROM
|
||||
st_ivt_structattr attr
|
||||
WHERE
|
||||
@@ -305,25 +309,22 @@
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
IF 输入.flag = "53"
|
||||
QUERY
|
||||
SELECT
|
||||
attr.struct_code,attr.lock_type,attr.storagevehicle_code,attr.inv_code
|
||||
FROM
|
||||
st_ivt_structattr attr
|
||||
WHERE
|
||||
attr.block_num = 输入.block_num
|
||||
AND attr.row_num = 输入.row_num
|
||||
AND attr.sect_id = 输入.sect_id
|
||||
AND IFNULL( attr.storagevehicle_code, '' ) <> ''
|
||||
OPTION 输入.out_order_seq == "03"
|
||||
ORDER BY out_order_seq asc
|
||||
ENDOPTION
|
||||
OPTION 输入.out_order_seq == "02"
|
||||
ORDER BY out_order_seq desc
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
QUERY
|
||||
SELECT
|
||||
attr.struct_code,attr.lock_type,attr.storagevehicle_code,attr.inv_code
|
||||
FROM
|
||||
st_ivt_structattr attr
|
||||
WHERE
|
||||
attr.block_num = 输入.block_num
|
||||
AND attr.row_num = 输入.row_num
|
||||
AND attr.sect_id = 输入.sect_id
|
||||
AND IFNULL( attr.storagevehicle_code, '' ) <> ''
|
||||
OPTION 输入.order_by <> ""
|
||||
1=1 输入.order_by
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "6"
|
||||
QUERY
|
||||
|
||||
Reference in New Issue
Block a user