add:PDA配粉工序查询过滤,PDA球磨工序上料查询过滤,新增型材区域,手持喷雾工序增加按钮‘入原材料库’,外协发货增加逻辑,PDA增加内部软废入库功能
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
package org.nl.pda.pdm.rest;
|
package org.nl.pda.pdm.rest;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -183,6 +184,13 @@ public class PdmWorkTaskController {
|
|||||||
return new ResponseEntity<>(workTaskService.confirm(whereJson),HttpStatus.OK);
|
return new ResponseEntity<>(workTaskService.confirm(whereJson),HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/inRaw")
|
||||||
|
@Log("喷雾工序入原材料库")
|
||||||
|
@ApiOperation("喷雾工序入原材料库")
|
||||||
|
public ResponseEntity<Object> inRaw(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(workTaskService.inRaw(whereJson),HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package org.nl.pda.pdm.service;
|
package org.nl.pda.pdm.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import org.nl.wql.core.content.HttpContext;
|
import org.nl.wql.core.content.HttpContext;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -55,4 +56,6 @@ public interface PdmWorkTaskService {
|
|||||||
|
|
||||||
Map<String, Object> confirm(Map jsonObject);
|
Map<String, Object> confirm(Map jsonObject);
|
||||||
|
|
||||||
|
Map<String, Object> inRaw(JSONObject whereJson);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -159,6 +160,22 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService {
|
|||||||
JSONObject item = (JSONObject)o;
|
JSONObject item = (JSONObject)o;
|
||||||
String vehicle_code = item.getString("storagevehicle_code");
|
String vehicle_code = item.getString("storagevehicle_code");
|
||||||
if (!runVehicles.contains(vehicle_code)){
|
if (!runVehicles.contains(vehicle_code)){
|
||||||
|
|
||||||
|
/*
|
||||||
|
判断此配粉槽是否是所属系列产线指定的配粉槽
|
||||||
|
@param:
|
||||||
|
workprocedure_id - 工序标识 , product_series_id - 系列标识 , device_id - 设备标识
|
||||||
|
根据以上参数查询 MPS_BD_CapacityTemplateWorkDevice 表是否存在此设备的工序设备
|
||||||
|
*/
|
||||||
|
// 根据物料系列找到排产产能模板系列
|
||||||
|
String device_id = item.getString("device_id");
|
||||||
|
|
||||||
|
JSONObject jsonTemple= WQL.getWO("QPDM_WORK_TASK").addParam("workprocedure_id", workprocedure_id)
|
||||||
|
.addParam("product_series_id", product_series_id).addParam("flag", "11")
|
||||||
|
.addParam("device_id", device_id).process().uniqueResult(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(jsonTemple)) continue;
|
||||||
|
|
||||||
vehicle = item;
|
vehicle = item;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -613,12 +630,69 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService {
|
|||||||
if (ObjectUtil.isEmpty(jsonObject)) {
|
if (ObjectUtil.isEmpty(jsonObject)) {
|
||||||
throw new PdaRequestException("传入参数不能为空!");
|
throw new PdaRequestException("传入参数不能为空!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String device_code = MapUtil.getStr(jsonObject, "device_code");
|
||||||
|
if (ObjectUtil.isEmpty(device_code)) throw new BadRequestException("设备不能为空!");
|
||||||
|
|
||||||
JSONObject jo = JSONObject.parseObject(JSON.toJSONString(jsonObject));
|
JSONObject jo = JSONObject.parseObject(JSON.toJSONString(jsonObject));
|
||||||
String is_second = jo.getString("is_second");
|
String is_second = jo.getString("is_second");
|
||||||
JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "6").addParam("is_second", is_second).process().getResultJSONArray(0);
|
JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "6").addParam("is_second", is_second).process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 1.根据输入参数 device_code(球磨机) 查询排产模板中对应的物料系列,
|
||||||
|
* 2.根据物料系列查询配粉工序中设备是否包含此设备
|
||||||
|
*/
|
||||||
|
JSONObject jsonDevice = WQLObject.getWQLObject("em_bi_deviceinfo")
|
||||||
|
.query("device_code = '" + device_code + "' and is_delete = '0' and is_active = '1'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(jsonDevice)) throw new BadRequestException("设备不存在!");
|
||||||
|
|
||||||
|
// 获取喷雾
|
||||||
|
JSONObject jsonProced = WQLObject.getWQLObject("pdm_bi_workprocedure")
|
||||||
|
.query("workprocedure_code = 'GX001'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
// 获取此球磨机物料系列
|
||||||
|
JSONArray resultJSONArray = WQLObject.getWQLObject("MPS_BD_CapacityTemplateWorkDevice")
|
||||||
|
.query("device_id = '" + jsonDevice.getString("device_id") + "'")
|
||||||
|
.getResultJSONArray(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(resultJSONArray)) throw new BadRequestException("此设备没有配置模板系列!");
|
||||||
|
|
||||||
|
JSONArray array = new JSONArray();
|
||||||
|
HashSet<JSONObject> setMap = new HashSet<>();
|
||||||
|
for (int j = 0; j < resultJSONArray.size(); j++) {
|
||||||
|
JSONObject templeDevice = resultJSONArray.getJSONObject(j);
|
||||||
|
|
||||||
|
// 根据物料系列查询配粉工序中是否包含此设备
|
||||||
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
|
JSONObject json = rows.getJSONObject(i);
|
||||||
|
|
||||||
|
JSONObject jsonPfDevice = WQLObject.getWQLObject("em_bi_deviceinfo")
|
||||||
|
.query("device_code = '" + json.getString("storagevehicle_code") + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
JSONObject jsonWorkDevice = WQLObject.getWQLObject("MPS_BD_CapacityTemplateWorkDevice")
|
||||||
|
.query("product_series_id = '" + templeDevice.getString("product_series_id")
|
||||||
|
+ "' and workprocedure_id = '" + jsonProced.getString("workprocedure_id")
|
||||||
|
+ "' and device_id = '" + jsonPfDevice.getString("device_id") + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
// 判断是否存在 存在则返回
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonWorkDevice)) {
|
||||||
|
setMap.add(json);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (JSONObject json : setMap) {
|
||||||
|
array.add(json);
|
||||||
|
}
|
||||||
|
|
||||||
JSONObject returnjo = new JSONObject();
|
JSONObject returnjo = new JSONObject();
|
||||||
returnjo.put("code", "1");
|
returnjo.put("code", "1");
|
||||||
returnjo.put("content", rows);
|
returnjo.put("content", array);
|
||||||
returnjo.put("desc", "查询成功!");
|
returnjo.put("desc", "查询成功!");
|
||||||
return returnjo;
|
return returnjo;
|
||||||
}
|
}
|
||||||
@@ -959,9 +1033,64 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService {
|
|||||||
@Override
|
@Override
|
||||||
public Map<String, Object> PWload(Map jsonObject) {
|
public Map<String, Object> PWload(Map jsonObject) {
|
||||||
JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "8").process().getResultJSONArray(0);
|
JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "8").process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 1.根据输入参数 device_code(喷雾塔) 查询排产模板中对应的物料系列,
|
||||||
|
* 2.根据物料系列查询球磨工序中设备是否包含此设备
|
||||||
|
*/
|
||||||
|
String device_code = MapUtil.getStr(jsonObject, "device_code");
|
||||||
|
|
||||||
|
JSONObject jsonDevice = WQLObject.getWQLObject("em_bi_deviceinfo")
|
||||||
|
.query("device_code = '" + device_code + "' and is_delete = '0' and is_active = '1'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(jsonDevice)) throw new BadRequestException("设备不存在!");
|
||||||
|
|
||||||
|
// 获取球磨工序
|
||||||
|
JSONObject jsonProced = WQLObject.getWQLObject("pdm_bi_workprocedure")
|
||||||
|
.query("workprocedure_code = 'GX002'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
// 获取此喷雾塔物料系列
|
||||||
|
JSONArray resultJSONArray = WQLObject.getWQLObject("MPS_BD_CapacityTemplateWorkDevice")
|
||||||
|
.query("device_id = '" + jsonDevice.getString("device_id") + "'")
|
||||||
|
.getResultJSONArray(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(resultJSONArray)) throw new BadRequestException("此设备没有配置模板系列!");
|
||||||
|
|
||||||
|
JSONArray array = new JSONArray();
|
||||||
|
HashSet<JSONObject> setMap = new HashSet<>();
|
||||||
|
for (int j = 0; j < resultJSONArray.size(); j++) {
|
||||||
|
JSONObject templeDevice = resultJSONArray.getJSONObject(j);
|
||||||
|
|
||||||
|
// 根据物料系列查询球磨工序中是否包含此设备
|
||||||
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
|
JSONObject json = rows.getJSONObject(i);
|
||||||
|
|
||||||
|
JSONObject jsonPfDevice = WQLObject.getWQLObject("em_bi_deviceinfo")
|
||||||
|
.query("device_code = '" + json.getString("device_code") + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
JSONObject jsonWorkDevice = WQLObject.getWQLObject("MPS_BD_CapacityTemplateWorkDevice")
|
||||||
|
.query("product_series_id = '" + templeDevice.getString("product_series_id")
|
||||||
|
+ "' and workprocedure_id = '" + jsonProced.getString("workprocedure_id")
|
||||||
|
+ "' and device_id = '" + jsonPfDevice.getString("device_id") + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
// 判断是否存在 存在则返回
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonWorkDevice)) {
|
||||||
|
setMap.add(json);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (JSONObject json : setMap) {
|
||||||
|
array.add(json);
|
||||||
|
}
|
||||||
|
|
||||||
JSONObject returnjo = new JSONObject();
|
JSONObject returnjo = new JSONObject();
|
||||||
returnjo.put("code", "1");
|
returnjo.put("code", "1");
|
||||||
returnjo.put("content", rows);
|
returnjo.put("content", array);
|
||||||
returnjo.put("desc", "查询成功!");
|
returnjo.put("desc", "查询成功!");
|
||||||
return returnjo;
|
return returnjo;
|
||||||
}
|
}
|
||||||
@@ -1585,6 +1714,69 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService {
|
|||||||
return returnjo;
|
return returnjo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public Map<String, Object> inRaw(JSONObject whereJson) {
|
||||||
|
/*
|
||||||
|
只生成搬运任务
|
||||||
|
*/
|
||||||
|
|
||||||
|
WQLObject workorderTab = WQLObject.getWQLObject("pdm_bi_workorder");
|
||||||
|
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
|
||||||
|
|
||||||
|
String vehicle_code = whereJson.getString("vehicle_code");
|
||||||
|
String point_code = whereJson.getString("point_code");
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(vehicle_code)) throw new BadRequestException("托盘不能为空!");
|
||||||
|
if (ObjectUtil.isEmpty(point_code)) throw new BadRequestException("起点不能为空!");
|
||||||
|
|
||||||
|
JSONObject form = whereJson.getJSONObject("row");
|
||||||
|
|
||||||
|
// 判断是否是外协工令
|
||||||
|
JSONObject jsonWork = workorderTab.query("workorder_code = '" + form.getString("workorder_code") + "'").uniqueResult(0);
|
||||||
|
if (!StrUtil.equals(jsonWork.getString("is_out"), "1")) {
|
||||||
|
throw new PdaRequestException("此工令不是外协工令!");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 判断托盘是否被占用
|
||||||
|
JSONObject jsonVehicle = pointTab.query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonVehicle)) throw new BadRequestException("此托盘已被占用!");
|
||||||
|
|
||||||
|
// 找一个型材区的点位
|
||||||
|
JSONObject jsonNextPoint = pointTab.query("area_type = '09' and lock_type = '00' and is_used = '1' and is_delete = '0' and point_status = '00' order by point_code")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(jsonNextPoint)) throw new PdaRequestException("没有可用点位!");
|
||||||
|
|
||||||
|
// 生成任务并下发
|
||||||
|
JSONObject task_jo = new JSONObject();
|
||||||
|
task_jo.put("start_point_code", point_code);
|
||||||
|
task_jo.put("next_point_code",jsonNextPoint.getString("point_code"));
|
||||||
|
task_jo.put("vehicle_code", vehicle_code);
|
||||||
|
task_jo.put("task_type", "16");
|
||||||
|
task_jo.put("taskdtl_type", "15");
|
||||||
|
AbstractAcsTask task = new ProductTask();
|
||||||
|
String taskdtl_id = task.createTask(task_jo);
|
||||||
|
|
||||||
|
AbstractAcsTask intask = new InTask();
|
||||||
|
//调用ACS接受任务接口
|
||||||
|
JSONObject result = intask.notifyAcs(taskdtl_id);
|
||||||
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
|
String status = result.getString("status");
|
||||||
|
if ("200".equals(status)) {
|
||||||
|
HashMap<String, String> mapnow = new HashMap<>();
|
||||||
|
mapnow.put("task_status", "02");
|
||||||
|
WQLObject.getWQLObject("SCH_BASE_Task").update(mapnow, "taskdtl_id = '" + taskdtl_id + "'");
|
||||||
|
} else {
|
||||||
|
throw new BadRequestException("任务下发失败:" + result.getString("message"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("code", "1");
|
||||||
|
returnjo.put("desc", "操作成功!");
|
||||||
|
return returnjo;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Map<String, Object> confirmGZLoad(Map jsonObject) {
|
public Map<String, Object> confirmGZLoad(Map jsonObject) {
|
||||||
|
|||||||
@@ -23,6 +23,7 @@
|
|||||||
输入.is_second TYPEAS s_string
|
输入.is_second TYPEAS s_string
|
||||||
输入.product_series_id TYPEAS s_string
|
输入.product_series_id TYPEAS s_string
|
||||||
输入.workprocedure_id TYPEAS s_string
|
输入.workprocedure_id TYPEAS s_string
|
||||||
|
输入.device_id TYPEAS s_string
|
||||||
|
|
||||||
[临时表]
|
[临时表]
|
||||||
--这边列出来的临时表就会在运行期动态创建
|
--这边列出来的临时表就会在运行期动态创建
|
||||||
@@ -413,3 +414,22 @@
|
|||||||
ENDQUERY
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "11"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
device.*
|
||||||
|
FROM
|
||||||
|
MPS_BD_CapacityTemplateWorkDevice device
|
||||||
|
LEFT JOIN MPS_BD_CapacityTemplateMst mst ON mst.captemplate_id = device.captemplate_id
|
||||||
|
|
||||||
|
WHERE
|
||||||
|
device.product_series_id = 输入.product_series_id
|
||||||
|
AND device.workprocedure_id = 输入.workprocedure_id
|
||||||
|
AND device.device_id = 输入.device_id
|
||||||
|
AND mst.is_used = '1'
|
||||||
|
AND mst.is_delete = '0'
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
package org.nl.pda.st.in.rest;
|
package org.nl.pda.st.in.rest;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -113,4 +114,18 @@ public class HandNewMaterialController {
|
|||||||
return new ResponseEntity<>(handNewMaterialService.getRecBillDtl(whereJson,ctx),HttpStatus.OK);
|
return new ResponseEntity<>(handNewMaterialService.getRecBillDtl(whereJson,ctx),HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/insideIn")
|
||||||
|
@Log("内部软废入库查询组盘信息")
|
||||||
|
@ApiOperation("内部软废入库查询组盘信息")
|
||||||
|
public ResponseEntity<Object> insideIn(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(handNewMaterialService.insideIn(whereJson),HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/insideInConfirm")
|
||||||
|
@Log("内部软废入库确认")
|
||||||
|
@ApiOperation("内部软废入库确认")
|
||||||
|
public ResponseEntity<Object> insideInConfirm(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(handNewMaterialService.insideInConfirm(whereJson),HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package org.nl.pda.st.in.service;
|
package org.nl.pda.st.in.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import org.nl.wql.core.content.HttpContext;
|
import org.nl.wql.core.content.HttpContext;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -92,4 +93,20 @@ public interface HandNewMaterialService {
|
|||||||
* @return Map
|
* @return Map
|
||||||
*/
|
*/
|
||||||
Map<String, Object> askVehicle(Map jsonObject);
|
Map<String, Object> askVehicle(Map jsonObject);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 内部软废入库查询组盘信息
|
||||||
|
*
|
||||||
|
* @param whereJson 条件
|
||||||
|
* @return Map
|
||||||
|
*/
|
||||||
|
Map<String, Object> insideIn(JSONObject whereJson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 内部软废入库确认
|
||||||
|
*
|
||||||
|
* @param whereJson 条件
|
||||||
|
* @return Map
|
||||||
|
*/
|
||||||
|
Map<String, Object> insideInConfirm(JSONObject whereJson);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -960,6 +960,72 @@ public class HandNewMaterialServiceImpl implements HandNewMaterialService {
|
|||||||
return returnjo;
|
return returnjo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> insideIn(JSONObject whereJson) {
|
||||||
|
|
||||||
|
String vehicle_code = whereJson.getString("vehicle_code");
|
||||||
|
if (ObjectUtil.isEmpty(vehicle_code)) throw new PdaRequestException("载具号不能为空");
|
||||||
|
|
||||||
|
JSONArray resultJSONArray = WQL.getWO("QST_IVT_RAWASSISTISTOR")
|
||||||
|
.addParam("flag", "12").addParam("storagevehicle_code", vehicle_code)
|
||||||
|
.process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("code", "1");
|
||||||
|
returnjo.put("desc", "查询成功!");
|
||||||
|
returnjo.put("content", resultJSONArray);
|
||||||
|
return returnjo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public Map<String, Object> insideInConfirm(JSONObject whereJson) {
|
||||||
|
|
||||||
|
String vehicle_code = whereJson.getString("vehicle_code");
|
||||||
|
String point_code = whereJson.getString("point_code");
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(vehicle_code)) throw new PdaRequestException("载具号不能为空!");
|
||||||
|
if (ObjectUtil.isEmpty(point_code)) throw new PdaRequestException("站点不能为空!");
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 1.根据托盘号找到生成状态的分配明细
|
||||||
|
* 2.调用接口自动分配并下发任务
|
||||||
|
*/
|
||||||
|
// 根据托盘找到分配明细
|
||||||
|
JSONArray disArr = WQL.getWO("QST_IVT_RAWASSISTISTOR")
|
||||||
|
.addParam("storagevehicle_code", vehicle_code).addParam("flag", "13")
|
||||||
|
.process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
// 调用入库分配接口并下发任务
|
||||||
|
ArrayList<HashMap<String, String>> list = new ArrayList<>();
|
||||||
|
for (int i = 0; i < disArr.size(); i++) {
|
||||||
|
JSONObject jo = disArr.getJSONObject(i);
|
||||||
|
HashMap<String, String> row = new HashMap<>();
|
||||||
|
row.put("point_code", point_code);
|
||||||
|
row.put("storagevehicle_id", jo.getString("storagevehicle_id"));
|
||||||
|
row.put("storagevehicle_code", jo.getString("storagevehicle_code"));
|
||||||
|
row.put("storagevehicle_type", jo.getString("storagevehicle_type"));
|
||||||
|
row.put("material_id", jo.getString("material_id"));
|
||||||
|
row.put("iostorinv_id", jo.getString("iostorinv_id"));
|
||||||
|
JSONObject mater_jo = WQLObject.getWQLObject("md_me_materialbase").query("material_id = '" + jo.getString("material_id") + "'").uniqueResult(0);
|
||||||
|
row.put("material_code", mater_jo.getString("material_code"));
|
||||||
|
list.add(row);
|
||||||
|
}
|
||||||
|
whereJson.put("tableMater", list);
|
||||||
|
whereJson.put("checked", true);
|
||||||
|
whereJson.put("auto_issue", true);
|
||||||
|
try {
|
||||||
|
rawAssistIStorService.divStruct(whereJson);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new PdaRequestException(e.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("code", "1");
|
||||||
|
returnjo.put("desc", "入库成功!");
|
||||||
|
return returnjo;
|
||||||
|
}
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void insertBucket(HashMap row) {
|
public void insertBucket(HashMap row) {
|
||||||
WQLObject bucket_wql = WQLObject.getWQLObject("MD_PB_BucketRecord");
|
WQLObject bucket_wql = WQLObject.getWQLObject("MD_PB_BucketRecord");
|
||||||
|
|||||||
@@ -172,11 +172,23 @@ public class HandXCOutIvtServiceImpl implements HandXCOutIvtService {
|
|||||||
String allBucketunique = "(\""+bucketuniques.stream().collect(Collectors.joining("\",\""))+"\")";
|
String allBucketunique = "(\""+bucketuniques.stream().collect(Collectors.joining("\",\""))+"\")";
|
||||||
bucket.update(updateParam, "bucketunique in " + allBucketunique);
|
bucket.update(updateParam, "bucketunique in " + allBucketunique);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 解锁点位托盘:根据托盘找到点位并解锁
|
||||||
|
JSONObject jsonPoint = WQLObject.getWQLObject("sch_base_point")
|
||||||
|
.query("vehicle_code = '" + storagevehicle_code + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonPoint)) {
|
||||||
|
jsonPoint.put("vehicle_code","");
|
||||||
|
jsonPoint.put("point_status","00");
|
||||||
|
jsonPoint.put("lock_type","00");
|
||||||
|
WQLObject.getWQLObject("sch_base_point").update(jsonPoint);
|
||||||
|
}
|
||||||
|
|
||||||
JSONObject returnjo = new JSONObject();
|
JSONObject returnjo = new JSONObject();
|
||||||
returnjo.put("code", "1");
|
returnjo.put("code", "1");
|
||||||
returnjo.put("desc", "操作成功!");
|
returnjo.put("desc", "操作成功!");
|
||||||
return returnjo;
|
return returnjo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -449,6 +449,47 @@
|
|||||||
ENDQUERY
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "12"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
buck.bucketunique,
|
||||||
|
mater.material_code,
|
||||||
|
buck.pcsn,
|
||||||
|
buck.storage_qty
|
||||||
|
FROM
|
||||||
|
md_pb_bucketrecord buck
|
||||||
|
LEFT JOIN md_me_materialbase mater ON buck.material_id = mater.material_id
|
||||||
|
WHERE
|
||||||
|
buck.status = '02'
|
||||||
|
|
||||||
|
OPTION 输入.storagevehicle_code <> ""
|
||||||
|
buck.storagevehicle_code = 输入.storagevehicle_code
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "13"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
dis.*,
|
||||||
|
mst.iostorinv_id
|
||||||
|
FROM
|
||||||
|
st_ivt_iostorinvdis dis
|
||||||
|
LEFT JOIN st_ivt_iostorinv mst ON mst.iostorinv_id = dis.iostorinv_id
|
||||||
|
WHERE
|
||||||
|
mst.is_delete = '0'
|
||||||
|
AND dis.work_status = '00'
|
||||||
|
|
||||||
|
OPTION 输入.storagevehicle_code <> ""
|
||||||
|
dis.storagevehicle_code = 输入.storagevehicle_code
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user