更新
This commit is contained in:
@@ -1358,6 +1358,7 @@ public class RljnPackagePalletSplitManipulatorDeviceDriver extends AbstractOpcDe
|
||||
json.put("one_qty",one_qty);
|
||||
json.put("two_qty",two_qty);
|
||||
json.put("tool_coordinate",tool_coordinate);
|
||||
json.put("material_code",material);
|
||||
|
||||
HttpResponse result = acsToWmsService.applyTaskManipulatorToWms(json);
|
||||
if (ObjectUtil.isNotEmpty(result)) {
|
||||
|
||||
@@ -163,7 +163,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
jo.put("device_code", parent_device_code);
|
||||
jo.putAll(json);
|
||||
|
||||
log.info("lnshApplyTaskToWms-----请求参数{}", jo.toString());
|
||||
log.info("applyIntoKiln-----请求参数{}", jo.toString());
|
||||
HttpResponse result2 = null;
|
||||
try {
|
||||
//{"status":400,"timestamp":"2021-10-22 16:32:22","message":"业务类型不正确!"}
|
||||
@@ -177,7 +177,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
//网络不通
|
||||
System.out.println(msg);
|
||||
}
|
||||
log.info("lnshApplyTaskToWms-----输出参数{}", result2.body());
|
||||
log.info("applyIntoKiln-----输出参数{}", result2.body());
|
||||
return result2;
|
||||
} finally {
|
||||
MDC.remove(log_file_type);
|
||||
@@ -323,7 +323,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
String methods_url = addressDto.getMethods_url();
|
||||
String url = wmsurl + methods_url;
|
||||
|
||||
log.info("getVehicleTokiln----请求参数{}", json.toString());
|
||||
log.info("inKiln----请求参数{}", json.toString());
|
||||
HttpResponse result = null;
|
||||
try {
|
||||
result = HttpRequest.post(url)
|
||||
@@ -334,7 +334,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
} catch (Exception e) {
|
||||
System.out.println(e.getMessage());
|
||||
}
|
||||
log.info("getVehicleTokiln----返回参数{}", result.body());
|
||||
log.info("inKiln----返回参数{}", result.body());
|
||||
return result;
|
||||
|
||||
} finally {
|
||||
|
||||
@@ -15,7 +15,7 @@ public class PressureUtil {
|
||||
public static String record(JSONObject whereJson) {
|
||||
String device_code = (String) whereJson.get("device_code");
|
||||
String reason = (String) whereJson.get("reason");
|
||||
int qty =Integer.valueOf((String)whereJson.get("qty"));
|
||||
int qty =Integer.valueOf(whereJson.get("qty").toString());
|
||||
String record_id = "";
|
||||
//根据设备查询当前设备以及排产单号
|
||||
JSONObject joo = WQL.getWO("QSTRUCT_RULE").addParam("flag", "12").addParam("point_code", device_code).process().uniqueResult(0);
|
||||
|
||||
@@ -106,16 +106,32 @@ public class StructFindUtil {
|
||||
|
||||
//获取空闲的输送线的上料位
|
||||
public static JSONObject getConveyor(JSONObject jsonObject) {
|
||||
//判断现在是否能去输送线
|
||||
/*//判断现在是否能去输送线
|
||||
String material_id = jsonObject.getString("material_id");
|
||||
WQLObject materialTable = WQLObject.getWQLObject("MD_ME_Material");
|
||||
JSONObject materialObj = materialTable.query("material_id ='" + material_id + "'").uniqueResult(0);
|
||||
//获取可以用的输送线数组
|
||||
JSONObject result = WQL.getWO("QSTRUCT_RULE").addParam("flag", "6")
|
||||
.addParam("material_type", materialObj.getString("material_type"))
|
||||
.addParam("material_code", materialObj.getString("material_code"))
|
||||
.process().uniqueResult(0);
|
||||
return result;
|
||||
JSONObject materialObj = materialTable.query("material_id ='" + material_id + "'").uniqueResult(0);*/
|
||||
|
||||
// 查询空闲输送线
|
||||
JSONArray arr = WQL.getWO("QSTRUCT_RULE").addParam("flag", "13")
|
||||
.process().getResultJSONArray(0);
|
||||
|
||||
// 匹配叫料的类型和输送线的类型
|
||||
String materialType = jsonObject.getString("material_type");
|
||||
String materialCode = jsonObject.getString("material_code");
|
||||
for (Object o : arr) {
|
||||
JSONObject line = (JSONObject) o;
|
||||
String lineMaterialType = line.getString("material_type");
|
||||
String lineMaterialCode = line.getString("material_code");
|
||||
// 先匹配类型
|
||||
if (StrUtil.equals(materialType, lineMaterialType)) {
|
||||
// 如果规定了特定类型 且 物料类型和特定类型不一致 下一轮循环
|
||||
if (StrUtil.isNotEmpty(lineMaterialCode) && !StrUtil.equals(materialCode, lineMaterialCode)) {
|
||||
continue;
|
||||
}
|
||||
return line;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static JSONObject getEmptyMto(JSONObject jsonObject) {
|
||||
|
||||
@@ -220,10 +220,7 @@ IF 输入.flag = "6"
|
||||
AND task.task_code IS NULL
|
||||
AND point.point_status = '00'
|
||||
OPTION 输入.material_type <> ""
|
||||
point.material_type = 输入.material_type
|
||||
ENDOPTION
|
||||
OPTION point.material_code <> "0"
|
||||
point.material_code = 输入.material_code
|
||||
point.material_type = 输入.material_type
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
@@ -305,6 +302,12 @@ IF 输入.flag = "9"
|
||||
OPTION 输入.is_full <> ""
|
||||
ivt.is_full = 输入.is_full
|
||||
ENDOPTION
|
||||
OPTION 输入.material_type <> ""
|
||||
material.material_type = 输入.material_type
|
||||
ENDOPTION
|
||||
OPTION 输入.material_id <> ""
|
||||
ivt.material_id = 输入.material_id
|
||||
ENDOPTION
|
||||
order by ruledis.out_seq_no
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
@@ -389,48 +392,47 @@ IF 输入.flag = "13"
|
||||
WHERE
|
||||
point.area_type = '07'
|
||||
AND device_point_type = '01'
|
||||
AND point.MODE <> '0'
|
||||
AND point.`mode` <> '0'
|
||||
AND point.point_status='00'
|
||||
AND ( point.vehicle_code = '' OR point.vehicle_code IS NULL )
|
||||
AND task.task_code IS NULL
|
||||
ORDER BY
|
||||
material_code DESC
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "14"
|
||||
QUERY
|
||||
SELECT DISTINCT
|
||||
point.point_code AS struct_code,
|
||||
point.point_id AS struct_id,
|
||||
point.point_name AS struct_name,
|
||||
point.vehicle_code,
|
||||
ivt.canuse_qty,
|
||||
ruledis.out_seq_no,
|
||||
material.material_id,
|
||||
material.material_code,
|
||||
material.material_name,
|
||||
material.material_spec
|
||||
FROM
|
||||
st_ivt_structivt ivt
|
||||
LEFT JOIN sch_base_point point ON point.point_id = ivt.struct_id
|
||||
LEFT JOIN st_rule_IOdisStruct ruledis ON ruledis.struct_uuid = ivt.struct_id
|
||||
LEFT JOIN md_me_material material ON material.material_id = ivt.material_id
|
||||
WHERE
|
||||
ivt.canuse_qty > 0
|
||||
AND point.point_status = '02'
|
||||
AND point.lock_type = '00'
|
||||
AND point.is_used = '1'
|
||||
and TIME_TO_SEC(timediff(now(),ivt.instorage_time)) >=ivt.stewing_time*60
|
||||
OPTION 输入.area_type <> ""
|
||||
point.area_type = 输入.area_type
|
||||
ENDOPTION
|
||||
OPTION 输入.material_type <> ""
|
||||
material.material_type = 输入.material_type
|
||||
ENDOPTION
|
||||
OPTION 输入.material_code <> ""
|
||||
material.material_code = 输入.material_code
|
||||
ENDOPTION
|
||||
order by ruledis.out_seq_no
|
||||
SELECT DISTINCT
|
||||
point.point_code AS struct_code,
|
||||
point.point_id AS struct_id,
|
||||
point.point_name AS struct_name,
|
||||
point.vehicle_code,
|
||||
ivt.canuse_qty,
|
||||
ruledis.out_seq_no,
|
||||
material.material_id,
|
||||
material.material_code,
|
||||
material.material_name,
|
||||
material.material_spec
|
||||
FROM
|
||||
st_ivt_structivt ivt
|
||||
LEFT JOIN sch_base_point point ON point.point_id = ivt.struct_id
|
||||
LEFT JOIN st_rule_IOdisStruct ruledis ON ruledis.struct_uuid = ivt.struct_id
|
||||
LEFT JOIN md_me_material material ON material.material_id = ivt.material_id
|
||||
WHERE
|
||||
ivt.canuse_qty > 0
|
||||
AND point.point_status = '02'
|
||||
AND point.lock_type = '00'
|
||||
AND point.is_used = '1'
|
||||
and TIME_TO_SEC(timediff(now(),ivt.instorage_time)) >=ivt.stewing_time*60
|
||||
OPTION 输入.area_type <> ""
|
||||
point.area_type = 输入.area_type
|
||||
ENDOPTION
|
||||
OPTION 输入.material_type <> ""
|
||||
material.material_type = 输入.material_type
|
||||
ENDOPTION
|
||||
order by ruledis.out_seq_no
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
@@ -61,6 +61,7 @@
|
||||
|
||||
WHERE
|
||||
task.is_delete = '0'
|
||||
and task.produceTask_status <> '05'
|
||||
OPTION 输入.search <> ""
|
||||
(task.producetask_code like 输入.search)
|
||||
ENDOPTION
|
||||
|
||||
@@ -36,9 +36,11 @@ public class AutoOutStructTask {
|
||||
//1.首先更新所有输送线的点位状态
|
||||
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", "07").addParam("flag", "4").process().getResultJSONArray(0);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
//2找一个空余的缓存线,对应的物料是否有库存
|
||||
JSONArray arr = WQL.getWO("QSTRUCT_RULE").addParam("flag", "13").process().getResultJSONArray(0);
|
||||
String material_id = "";
|
||||
|
||||
// 查询空余的入窑输送线
|
||||
JSONArray arr = WQL.getWO("QSTRUCT_RULE").addParam("flag", "13")
|
||||
.process().getResultJSONArray(0);
|
||||
/*String material_id = "";
|
||||
String vehicle_code = "";
|
||||
String point_code = "";
|
||||
for (int i = 0; i < arr.size(); i++) {
|
||||
@@ -50,7 +52,6 @@ public class AutoOutStructTask {
|
||||
}
|
||||
JSONObject outObj = WQL.getWO("QSTRUCT_RULE").addParam("flag", "14")
|
||||
.addParam("material_type", material_type)
|
||||
.addParam("material_code", material_code)
|
||||
.process().uniqueResult(0);
|
||||
if (ObjectUtil.isNotEmpty(outObj)) {
|
||||
material_id = outObj.getString("material_id");
|
||||
@@ -61,24 +62,33 @@ public class AutoOutStructTask {
|
||||
}
|
||||
if (StrUtil.isEmpty(material_id)) {
|
||||
return;
|
||||
}
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("flag", "9");
|
||||
param.put("area_type", "01");
|
||||
param.put("if_full", "1");
|
||||
JSONObject structObj = WQL.getWO("QSTRUCT_RULE").addParamMap(param).process().uniqueResult(0);
|
||||
}*/
|
||||
// 遍历输送线,给每一个输送线创建叫料任务
|
||||
CallMaterialTask callMaterialTask = new CallMaterialTask();
|
||||
JSONObject taskObj = new JSONObject();
|
||||
taskObj.put("next_point_code", point_code);
|
||||
taskObj.put("vehicle_code", structObj.get("vehicle_code"));
|
||||
taskObj.put("material_id", structObj.get("material_id"));
|
||||
taskObj.put("create_mode", "02");
|
||||
taskObj.put("is_full", "1");
|
||||
taskObj.put("workprocedure_id", WorkProcedureEnum.SZGX.getId());
|
||||
callMaterialTask.createTask(taskObj);
|
||||
return;
|
||||
for (Object o : arr) {
|
||||
JSONObject line = (JSONObject) o;
|
||||
|
||||
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("flag", "9");
|
||||
param.put("area_type", "01");
|
||||
param.put("if_full", "1");
|
||||
param.put("material_type", line.getString("material_type"));
|
||||
if (StrUtil.isNotEmpty(line.getString("material_code"))) {
|
||||
param.put("material_code", line.getString("material_code"));
|
||||
}
|
||||
JSONObject structObj = WQL.getWO("QSTRUCT_RULE").addParamMap(param).process().uniqueResult(0);
|
||||
if (ObjectUtil.isNotEmpty(structObj)) {
|
||||
JSONObject taskObj = new JSONObject();
|
||||
taskObj.put("next_point_code", line.getString("point_code"));
|
||||
taskObj.put("vehicle_code", structObj.get("vehicle_code"));
|
||||
taskObj.put("material_id", structObj.get("material_id"));
|
||||
taskObj.put("create_mode", "02");
|
||||
taskObj.put("is_full", "1");
|
||||
taskObj.put("workprocedure_id", WorkProcedureEnum.SZGX.getId());
|
||||
callMaterialTask.createTask(taskObj);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user