跟mes对接提交
This commit is contained in:
@@ -0,0 +1,51 @@
|
|||||||
|
package org.nl.wms.common;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import org.nl.exception.BadRequestException;
|
||||||
|
import org.nl.wql.WQL;
|
||||||
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
|
|
||||||
|
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 = (int) whereJson.get("qty");
|
||||||
|
String record_id = "";
|
||||||
|
//根据设备查询当前设备以及排产单号
|
||||||
|
JSONObject joo = WQL.getWO("QSTRUCT_RULE").addParam("flag", "1").addParam("point_code", device_code).process().uniqueResult(0);
|
||||||
|
String producetask_id = joo.getString("producetask_id");
|
||||||
|
if (StrUtil.isEmpty(producetask_id)) {
|
||||||
|
throw new BadRequestException("为找到生产任务!");
|
||||||
|
}
|
||||||
|
WQLObject RecordTable = WQLObject.getWQLObject("st_buss_qualityRecord");
|
||||||
|
JSONObject recordObj = RecordTable.query("producetask_id='" + producetask_id + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(recordObj)) {
|
||||||
|
recordObj.put("qty", qty + recordObj.getIntValue("qty"));
|
||||||
|
recordObj.put("reason", reason);
|
||||||
|
recordObj.put("update_time", DateUtil.now());
|
||||||
|
record_id = recordObj.getString("record_id");
|
||||||
|
RecordTable.update(recordObj);
|
||||||
|
} else {
|
||||||
|
//如果没有插入
|
||||||
|
JSONObject Obj = new JSONObject();
|
||||||
|
record_id = IdUtil.getSnowflake(1, 1).nextIdStr();
|
||||||
|
Obj.put("record_id", record_id);
|
||||||
|
Obj.put("producetask_id", joo.getString("producetask_id"));
|
||||||
|
Obj.put("material_id", joo.getString("material_id"));
|
||||||
|
Obj.put("device_id", joo.getString("device_id"));
|
||||||
|
Obj.put("qty", qty);
|
||||||
|
Obj.put("update_time", DateUtil.now());
|
||||||
|
Obj.put("reason", reason);
|
||||||
|
RecordTable.insert(Obj);
|
||||||
|
}
|
||||||
|
return record_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -14,6 +14,9 @@ public class SortingUtil {
|
|||||||
public static void record(JSONObject whereJson) {
|
public static void record(JSONObject whereJson) {
|
||||||
String device_code = (String) whereJson.get("device_code");
|
String device_code = (String) whereJson.get("device_code");
|
||||||
String vehicle_code = (String) whereJson.get("vehicle_code");
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
|
if (StrUtil.isEmpty(vehicle_code)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
//木托盘对应刚托盘记录主表【st_buss_vehicleRelaRecord】
|
//木托盘对应刚托盘记录主表【st_buss_vehicleRelaRecord】
|
||||||
WQLObject ehicleRelaRecordmst = WQLObject.getWQLObject("st_buss_vehicleRelaRecord");
|
WQLObject ehicleRelaRecordmst = WQLObject.getWQLObject("st_buss_vehicleRelaRecord");
|
||||||
//木托盘对应刚托盘记录明细【st_buss_vehicleRelaRecordtl】
|
//木托盘对应刚托盘记录明细【st_buss_vehicleRelaRecordtl】
|
||||||
@@ -40,7 +43,7 @@ public class SortingUtil {
|
|||||||
JSONObject jo = pointArr.getJSONObject(i);
|
JSONObject jo = pointArr.getJSONObject(i);
|
||||||
String Sl_vehicle_code = jo.getString("vehicle_code");
|
String Sl_vehicle_code = jo.getString("vehicle_code");
|
||||||
record_id = mstObj.getString("record_id");
|
record_id = mstObj.getString("record_id");
|
||||||
if(StrUtil.isEmpty(Sl_vehicle_code))
|
if (StrUtil.isEmpty(Sl_vehicle_code))
|
||||||
continue;
|
continue;
|
||||||
JSONObject dtljo = ehicleRelaRecordmstdtl.query("record_id='" + record_id + "' and vehicle_code ='" + Sl_vehicle_code + "'").uniqueResult(0);
|
JSONObject dtljo = ehicleRelaRecordmstdtl.query("record_id='" + record_id + "' and vehicle_code ='" + Sl_vehicle_code + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isEmpty(dtljo)) {
|
if (ObjectUtil.isEmpty(dtljo)) {
|
||||||
@@ -61,5 +64,4 @@ public class SortingUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,7 @@
|
|||||||
输入.is_full TYPEAS s_string
|
输入.is_full TYPEAS s_string
|
||||||
输入.material_id TYPEAS s_string
|
输入.material_id TYPEAS s_string
|
||||||
输入.next_point_code TYPEAS s_string
|
输入.next_point_code TYPEAS s_string
|
||||||
|
输入.point_code TYPEAS s_string
|
||||||
|
|
||||||
|
|
||||||
[临时表]
|
[临时表]
|
||||||
@@ -344,4 +345,26 @@ IF 输入.flag = "11"
|
|||||||
ENDOPTION
|
ENDOPTION
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDQUERY
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "12"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
point.point_code,
|
||||||
|
producetask.material_id,
|
||||||
|
producetask.producetask_id,
|
||||||
|
device.device_id
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
LEFT JOIN pdm_base_device device ON device.device_id = point.device_id
|
||||||
|
LEFT JOIN pdm_mg_producetask producetask ON producetask.device_id = device.device_id
|
||||||
|
AND producetask.producetask_status IN ( '04' )
|
||||||
|
WHERE
|
||||||
|
1=1
|
||||||
|
|
||||||
|
OPTION 输入.point_code <> ""
|
||||||
|
point.point_code = 输入.point_code
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -2,8 +2,6 @@
|
|||||||
package org.nl.wms.ext.acs.rest;
|
package org.nl.wms.ext.acs.rest;
|
||||||
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
|
||||||
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;
|
||||||
@@ -111,4 +109,10 @@ public class AcsToWmsController {
|
|||||||
public ResponseEntity<Object> receiveTaskStatusAcs(@RequestBody String material_code) {
|
public ResponseEntity<Object> receiveTaskStatusAcs(@RequestBody String material_code) {
|
||||||
return new ResponseEntity<>(acsToWmsService.receiveTaskStatusAcs(material_code), HttpStatus.OK);
|
return new ResponseEntity<>(acsToWmsService.receiveTaskStatusAcs(material_code), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/agv")
|
||||||
|
@Log("ACS给WMS反馈任务状态")
|
||||||
|
@ApiOperation("ACS给WMS反馈任务状态")
|
||||||
|
public ResponseEntity<Object> receiveAgvStatus(@RequestBody Map whereJson ) {
|
||||||
|
return new ResponseEntity<>(acsToWmsService.receiveAgvStatus( whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,30 +44,42 @@ public class WmsToJnController {
|
|||||||
return new ResponseEntity<>(WmsToJnService.synchroMaterial(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.synchroMaterial(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/feedMaterial")
|
||||||
|
@Log("wms反馈jn同步了该物料")
|
||||||
|
@ApiOperation("wms反馈jn同步了该物料")
|
||||||
|
public ResponseEntity<Object> feedMaterial(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedMaterial(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@PostMapping("/feedBackStatus")
|
@PostMapping("/feedBackStatus")
|
||||||
@Log("反馈设备状态")
|
@Log("反馈设备状态")
|
||||||
@ApiOperation("反馈设备状态")
|
@ApiOperation("反馈设备状态")
|
||||||
public ResponseEntity<Object> feedBackStatus(@RequestBody Map whereJson) {
|
public ResponseEntity<Object> feedBackStatus(@RequestBody Map whereJson) {
|
||||||
return new ResponseEntity<>(WmsToJnService.feedBackStatus(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.feedBackStatus(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/feedBackCarryRecord")
|
@PostMapping("/feedBackCarryRecord")
|
||||||
@Log("反馈搬运记录")
|
@Log("反馈搬运记录")
|
||||||
@ApiOperation("反馈搬运记录")
|
@ApiOperation("反馈搬运记录")
|
||||||
public ResponseEntity<Object> feedBackCarryRecord(@RequestBody Map whereJson) {
|
public ResponseEntity<Object> feedBackCarryRecord(@RequestBody Map whereJson) {
|
||||||
return new ResponseEntity<>(WmsToJnService.feedBackCarryRecord(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.feedBackCarryRecord(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/feedBackInKiln")
|
@PostMapping("/feedBackInKiln")
|
||||||
@Log("反馈进窑信息")
|
@Log("反馈进窑信息")
|
||||||
@ApiOperation("反馈进窑信息")
|
@ApiOperation("反馈进窑信息")
|
||||||
public ResponseEntity<Object> feedBackInKiln(@RequestBody Map whereJson) {
|
public ResponseEntity<Object> feedBackInKiln(@RequestBody Map whereJson) {
|
||||||
return new ResponseEntity<>(WmsToJnService.feedBackInKiln(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.feedBackInKiln(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/feedBackOutKiln")
|
@PostMapping("/feedBackOutKiln")
|
||||||
@Log("反馈出窑信息")
|
@Log("反馈出窑信息")
|
||||||
@ApiOperation("反馈出窑信息")
|
@ApiOperation("反馈出窑信息")
|
||||||
public ResponseEntity<Object> feedBackOutKiln(@RequestBody Map whereJson) {
|
public ResponseEntity<Object> feedBackOutKiln(@RequestBody Map whereJson) {
|
||||||
return new ResponseEntity<>(WmsToJnService.feedBackOutKiln(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.feedBackOutKiln(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/feedBackPackage")
|
@PostMapping("/feedBackPackage")
|
||||||
@Log("反馈包装信息")
|
@Log("反馈包装信息")
|
||||||
@ApiOperation("反馈包装信息")
|
@ApiOperation("反馈包装信息")
|
||||||
@@ -75,4 +87,11 @@ public class WmsToJnController {
|
|||||||
return new ResponseEntity<>(WmsToJnService.feedBackPackage(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.feedBackPackage(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/feedBackQualityInfo")
|
||||||
|
@Log("返回不合格数量")
|
||||||
|
@ApiOperation("返回不合格数量")
|
||||||
|
public ResponseEntity<Object> feedBackQualityInfo(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackQualityInfo((String) whereJson.get(" record_id")), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,4 +101,13 @@ public interface AcsToWmsService {
|
|||||||
|
|
||||||
Map<String, Object> CribbingInfoByCode(String material_code);
|
Map<String, Object> CribbingInfoByCode(String material_code);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ACS客户端--->WMS服务端
|
||||||
|
* 反馈agv状态
|
||||||
|
*
|
||||||
|
* @param string 条件 物料条码
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
Map<String, Object> receiveAgvStatus(Map jsonObject);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,15 @@ public interface WmsToJnService {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
Map<String, Object> synchroMaterial(Map whereJson);
|
Map<String, Object> synchroMaterial(Map whereJson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WMS同步jn物料
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> feedMaterial(Map whereJson);
|
||||||
/**
|
/**
|
||||||
* WMS 反馈设备状态(专机,agv)
|
* WMS 反馈设备状态(专机,agv)
|
||||||
*
|
*
|
||||||
@@ -68,6 +77,14 @@ public interface WmsToJnService {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
Map<String, Object> feedBackPackage(Map whereJson);
|
Map<String, Object> feedBackPackage(Map whereJson);
|
||||||
|
/**
|
||||||
|
* WMS 返回不合格数量
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> feedBackQualityInfo(String record_id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ import org.nl.utils.SpringContextHolder;
|
|||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
import org.nl.wms.common.KilnUtil;
|
import org.nl.wms.common.KilnUtil;
|
||||||
import org.nl.wms.common.PointUpdateUtil;
|
import org.nl.wms.common.PointUpdateUtil;
|
||||||
|
import org.nl.wms.common.PressureUtil;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
import org.nl.wms.database.service.dto.VehicleDto;
|
import org.nl.wms.database.service.dto.VehicleDto;
|
||||||
import org.nl.wms.ext.acs.service.AcsToWmsService;
|
import org.nl.wms.ext.acs.service.AcsToWmsService;
|
||||||
@@ -75,12 +76,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
jsonObject.put("start_point_code", device_code);
|
jsonObject.put("start_point_code", device_code);
|
||||||
jsonObject.put("create_mode", "01");
|
jsonObject.put("create_mode", "01");
|
||||||
jsonObject.put("group_id", group_id);
|
jsonObject.put("group_id", group_id);
|
||||||
|
|
||||||
if (StrUtil.isEmpty(is_full)) {
|
if (StrUtil.isEmpty(is_full)) {
|
||||||
throw new BadRequestException("托盘是否满托不能为空!");
|
throw new BadRequestException("托盘是否满托不能为空!");
|
||||||
}
|
}
|
||||||
String material_code = (String) jsonObject.get("material_code");
|
String material_code = (String) jsonObject.get("material_code");
|
||||||
String producetask_id = (String)jsonObject.get("producetask_id");
|
String producetask_id = (String) jsonObject.get("producetask_id");
|
||||||
String material_id = "";
|
String material_id = "";
|
||||||
JSONObject materialObj = WQLObject.getWQLObject("md_me_material").query("material_code ='" + material_code + "'").uniqueResult(0);
|
JSONObject materialObj = WQLObject.getWQLObject("md_me_material").query("material_code ='" + material_code + "'").uniqueResult(0);
|
||||||
if (StrUtil.isEmpty(material_code) && (!StrUtil.equals(device_code, "CYSSX101"))) {
|
if (StrUtil.isEmpty(material_code) && (!StrUtil.equals(device_code, "CYSSX101"))) {
|
||||||
@@ -103,14 +103,16 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
jsonObject.put("qty", vehicleObj.getString("qty"));
|
jsonObject.put("qty", vehicleObj.getString("qty"));
|
||||||
jsonObject.put("vehicle_code", vehicle_code);
|
jsonObject.put("vehicle_code", vehicle_code);
|
||||||
}
|
}
|
||||||
jsonObject.put("producetask_id",producetask_id);
|
jsonObject.put("producetask_id", producetask_id);
|
||||||
jsonObject.put("create_mode", "01");
|
jsonObject.put("create_mode", "01");
|
||||||
jsonObject.put("material_id", material_id);
|
jsonObject.put("material_id", material_id);
|
||||||
JSONObject materiralObj = WQLObject.getWQLObject("md_me_material").query("material_id = '" + material_id + "'").uniqueResult(0);
|
JSONObject materiralObj = WQLObject.getWQLObject("md_me_material").query("material_id = '" + material_id + "'").uniqueResult(0);
|
||||||
Double stewing_time = materiralObj.getDouble("stewing_time");
|
Double stewing_time = materiralObj.getDouble("stewing_time");
|
||||||
jsonObject.put("stewing_time", stewing_time);
|
jsonObject.put("stewing_time", stewing_time);
|
||||||
//假如是压制下料的几个位置,则要考虑是入输送线 还是入立体库
|
|
||||||
String area_type = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("area_type");
|
String area_type = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("area_type");
|
||||||
|
|
||||||
|
|
||||||
|
//假如是压制下料的几个位置,则要考虑是入输送线 还是入立体库
|
||||||
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode()) && stewing_time <= 0) {
|
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode()) && stewing_time <= 0) {
|
||||||
//1.首先更新所有输送线的点位状态
|
//1.首先更新所有输送线的点位状态
|
||||||
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", "07").addParam("flag", "4").process().getResultJSONArray(0);
|
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", "07").addParam("flag", "4").process().getResultJSONArray(0);
|
||||||
@@ -138,6 +140,17 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
jsonObject.put("vehicle_code", vehicle_code);
|
jsonObject.put("vehicle_code", vehicle_code);
|
||||||
}
|
}
|
||||||
sendMaterialTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
sendMaterialTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
||||||
|
//假如是压制下料的几个位置 需要记录不合格数量
|
||||||
|
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode())) {
|
||||||
|
/* JSONObject joo = new JSONObject();
|
||||||
|
joo.put("qty", "qty");
|
||||||
|
joo.put("device_code", device_code);
|
||||||
|
joo.put("reason", "reason");
|
||||||
|
String record_id = PressureUtil.record(joo);
|
||||||
|
//回传不合格记录
|
||||||
|
WmsToJnServiceImpl wmsToJnService = new WmsToJnServiceImpl();
|
||||||
|
wmsToJnService.feedBackQualityInfo(record_id);*/
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "2":
|
case "2":
|
||||||
//叫料出库
|
//叫料出库
|
||||||
@@ -179,7 +192,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
//叫料出库
|
//叫料出库
|
||||||
jsonObject.put("next_point_code", device_code);
|
jsonObject.put("next_point_code", device_code);
|
||||||
jsonObject.put("create_mode", "01");
|
jsonObject.put("create_mode", "01");
|
||||||
jsonObject.put("pcsn", "pcsn");
|
|
||||||
jsonObject.put("material_id", material_id);
|
jsonObject.put("material_id", material_id);
|
||||||
jsonObject.put("is_full", "0");
|
jsonObject.put("is_full", "0");
|
||||||
jsonObject.put("workprocedure_id", WorkProcedureEnum.BZGX.getId());
|
jsonObject.put("workprocedure_id", WorkProcedureEnum.BZGX.getId());
|
||||||
@@ -214,7 +226,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
}
|
}
|
||||||
//寻找起点
|
//寻找起点
|
||||||
//更新所有设备的点位的状态
|
//更新所有设备的点位的状态
|
||||||
JSONArray pointConveyArr = pointTable.query("area_type='07' and device_point_type ='01' ").getResultJSONArray(0);
|
//JSONArray pointConveyArr = pointTable.query("area_type='07' and device_point_type ='01' ").getResultJSONArray(0);
|
||||||
|
JSONArray pointConveyArr = WQL.getWO("ACSTOMES_001").addParam("area_type", "07").addParam("flag", "4").process().getResultJSONArray(0);
|
||||||
|
|
||||||
PointUpdateUtil.updatePoint(pointConveyArr);
|
PointUpdateUtil.updatePoint(pointConveyArr);
|
||||||
//假如没有设置哪个输送线先出,没有按照先进先出
|
//假如没有设置哪个输送线先出,没有按照先进先出
|
||||||
JSONObject param = new JSONObject();
|
JSONObject param = new JSONObject();
|
||||||
@@ -228,6 +242,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
throw new BadRequestException("未找到合适的输送线可以出!");
|
throw new BadRequestException("未找到合适的输送线可以出!");
|
||||||
}
|
}
|
||||||
jsonObject.put("start_point_code", param.getString("point_code"));
|
jsonObject.put("start_point_code", param.getString("point_code"));
|
||||||
|
jsonObject.put("vehicle_code", param.getString("vehicle_code"));
|
||||||
rgvTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
rgvTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -567,7 +582,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//根据设备去找设备id
|
//根据设备去找设备id
|
||||||
String device_id = WQLObject.getWQLObject("sch_base_point").query("point_code='" + device_code + "'").uniqueResult(0).getString("device_id");
|
String device_id = WQLObject.getWQLObject("sch_base_point").query("point_code='" + device_code + "'").uniqueResult(0).getString("device_id");
|
||||||
//根据物料code 去找物料id
|
//根据物料code 去找物料id
|
||||||
JSONObject materiObj = WQLObject.getWQLObject("MD_ME_Material").query("material_code='" + material_code + "'").uniqueResult(0);
|
JSONObject materiObj = WQLObject.getWQLObject("MD_ME_Material").query("material_code='" + material_code + "'").uniqueResult(0);
|
||||||
if (!StrUtil.equals(device_id, taskObj.getString("device_id"))) {
|
if (!StrUtil.equals(device_id, taskObj.getString("device_id"))) {
|
||||||
@@ -696,6 +711,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> receiveAgvStatus(Map jsonObject) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private JSONObject getProduceInfoByCode(String code) {
|
private JSONObject getProduceInfoByCode(String code) {
|
||||||
//根据 设备点位去找生产任务信息
|
//根据 设备点位去找生产任务信息
|
||||||
//1 根据点位去找设备,去找对应的设备信息
|
//1 根据点位去找设备,去找对应的设备信息
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import org.springframework.http.HttpStatus;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@@ -31,6 +32,11 @@ public class WmsToJnServiceImpl implements WmsToJnService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> synchroDaySchedule(Map whereJson) {
|
public Map<String, Object> synchroDaySchedule(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
String methon = "/getshoporder";
|
String methon = "/getshoporder";
|
||||||
String today = DateUtil.today();
|
String today = DateUtil.today();
|
||||||
//同步日计划
|
//同步日计划
|
||||||
@@ -64,10 +70,10 @@ public class WmsToJnServiceImpl implements WmsToJnService {
|
|||||||
//压机编号
|
//压机编号
|
||||||
String SBDM = dayScheduleObj.getString("SBDM");
|
String SBDM = dayScheduleObj.getString("SBDM");
|
||||||
JSONObject materialObj = material_table.query("material_code ='" + ITEMCODE + "'").uniqueResult(0);
|
JSONObject materialObj = material_table.query("material_code ='" + ITEMCODE + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isEmpty(materialObj)){
|
if (ObjectUtil.isEmpty(materialObj)) {
|
||||||
this.synchroMaterial(new JSONObject());
|
this.synchroMaterial(new JSONObject());
|
||||||
materialObj = material_table.query("material_code ='" + ITEMCODE + "'").uniqueResult(0);
|
materialObj = material_table.query("material_code ='" + ITEMCODE + "'").uniqueResult(0);
|
||||||
}
|
}
|
||||||
JSONObject deviceObj = device_Table.query("ext_device_code='" + SBDM + "'").uniqueResult(0);
|
JSONObject deviceObj = device_Table.query("ext_device_code='" + SBDM + "'").uniqueResult(0);
|
||||||
JSONObject scheduleObj = produceTaskTable.query("ext_shoporder_no='" + SHOPORDERNO + "'").uniqueResult(0);
|
JSONObject scheduleObj = produceTaskTable.query("ext_shoporder_no='" + SHOPORDERNO + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isEmpty(scheduleObj)) {
|
if (ObjectUtil.isEmpty(scheduleObj)) {
|
||||||
@@ -99,12 +105,17 @@ public class WmsToJnServiceImpl implements WmsToJnService {
|
|||||||
JSONObject returnjo = new JSONObject();
|
JSONObject returnjo = new JSONObject();
|
||||||
returnjo.put("status", HttpStatus.OK.value());
|
returnjo.put("status", HttpStatus.OK.value());
|
||||||
returnjo.put("message", "任务状态反馈成功!");
|
returnjo.put("message", "任务状态反馈成功!");
|
||||||
return result;
|
return returnjo;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Map<String, Object> synchroMaterial(Map whereJson) {
|
public Map<String, Object> synchroMaterial(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
String methon = "/getItems";
|
String methon = "/getItems";
|
||||||
/**
|
/**
|
||||||
* DM: "物料代码",
|
* DM: "物料代码",
|
||||||
@@ -179,10 +190,37 @@ public class WmsToJnServiceImpl implements WmsToJnService {
|
|||||||
materialObj.put("create_time", DateUtil.now());
|
materialObj.put("create_time", DateUtil.now());
|
||||||
material_table.insert(materialObj);
|
material_table.insert(materialObj);
|
||||||
}
|
}
|
||||||
|
//反馈嘉耐已经同步了该物料
|
||||||
|
/* HashMap map = new HashMap();
|
||||||
|
map.put("material_code", materialjo.getString("DM"));
|
||||||
|
this.feedMaterial(map);*/
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("status", HttpStatus.OK.value());
|
||||||
|
returnjo.put("message", "任务状态反馈成功!");
|
||||||
|
return returnjo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> feedMaterial(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
String method = "setItems";
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", JSONObject.toJSON(whereJson));
|
||||||
|
log.info("诺力请求嘉耐反馈物料同步入参{}", obj.toString());
|
||||||
|
String resultMsg = HttpRequest.post(URL + method)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
|
log.info("诺力请求嘉耐反馈物料同步出参{}", resultMsg);
|
||||||
//调用接口告诉wms 调用已经同步该物料
|
//调用接口告诉wms 调用已经同步该物料
|
||||||
/* String returnResultMsg = HttpRequest.post(URL)
|
String returnResultMsg = HttpRequest.post(URL)
|
||||||
.body(String.valueOf(obj)).timeout(timeout)
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
.execute().body();
|
.execute().body();
|
||||||
JSONObject returnResult = JSONObject.parseObject(returnResultMsg);
|
JSONObject returnResult = JSONObject.parseObject(returnResultMsg);
|
||||||
@@ -191,62 +229,156 @@ public class WmsToJnServiceImpl implements WmsToJnService {
|
|||||||
log.info("wms反馈嘉耐物料成功!");
|
log.info("wms反馈嘉耐物料成功!");
|
||||||
} else {
|
} else {
|
||||||
log.info("wms反馈嘉耐物料失败!");
|
log.info("wms反馈嘉耐物料失败!");
|
||||||
}*/
|
}
|
||||||
JSONObject returnjo = new JSONObject();
|
|
||||||
returnjo.put("status", HttpStatus.OK.value());
|
|
||||||
returnjo.put("message", "任务状态反馈成功!");
|
return null;
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackStatus(Map whereJson) {
|
public Map<String, Object> feedBackStatus(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
JSONArray results = WQL.getWO("WMSTOJN_001").addParam("flag", "7").process().getResultJSONArray(0);
|
||||||
|
String method = "upDEVStatus";
|
||||||
|
|
||||||
return null;
|
for (int i = 0; i < results.size(); i++) {
|
||||||
|
JSONObject param = results.getJSONObject(0);
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", param);
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录入参{}", obj.toString());
|
||||||
|
String resultMsg = HttpRequest.post(URL + method)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录出参{}", resultMsg);
|
||||||
|
}
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("status", HttpStatus.OK.value());
|
||||||
|
returnjo.put("message", "任务状态反馈成功!");
|
||||||
|
return returnjo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackCarryRecord(Map whereJson) {
|
public Map<String, Object> feedBackCarryRecord(Map whereJson) {
|
||||||
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
//如果连接了嘉耐 则反馈搬运记录
|
if (StrUtil.equals(value, "0")) {
|
||||||
if (StrUtil.equals(value, "1")) {
|
return null;
|
||||||
String task_id = (String) whereJson.get("task_id");
|
|
||||||
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "1").addParam("task_id", task_id).process().uniqueResult(0);
|
|
||||||
String returnResultMsg = HttpRequest.post(URL)
|
|
||||||
.body(String.valueOf(jsonObject)).timeout(timeout)
|
|
||||||
.execute().body();
|
|
||||||
}
|
}
|
||||||
|
String method = "InsertPressInfo";
|
||||||
|
String task_id = (String) whereJson.get("task_id");
|
||||||
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "1").addParam("task_id", task_id).process().uniqueResult(0);
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", jsonObject);
|
||||||
|
log.info("诺力请求嘉耐回传搬运记录入参{}", obj.toString());
|
||||||
|
String returnResultMsg = HttpRequest.post(URL + method)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
log.info("诺力请求嘉耐回传搬运记录出参{}", returnResultMsg);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackInKiln(Map whereJson) {
|
public Map<String, Object> feedBackInKiln(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
String method = "InKiln";
|
||||||
String vehicle_code = (String) whereJson.get("vehicle_code");
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "2").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "2").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
||||||
String returnResultMsg = HttpRequest.post(URL)
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", jsonObject);
|
||||||
|
log.info("诺力请求嘉耐回传入窑信息入参{}", obj.toString());
|
||||||
|
String returnResultMsg = HttpRequest.post(URL + method)
|
||||||
.body(String.valueOf(jsonObject)).timeout(timeout)
|
.body(String.valueOf(jsonObject)).timeout(timeout)
|
||||||
.execute().body();
|
.execute().body();
|
||||||
|
log.info("诺力请求嘉耐回传入窑信息出参{}", returnResultMsg);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackOutKiln(Map whereJson) {
|
public Map<String, Object> feedBackOutKiln(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
String vehicle_code = (String) whereJson.get("vehicle_code");
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "3").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "3").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
||||||
String returnResultMsg = HttpRequest.post(URL)
|
String method = "OutKiln";
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", jsonObject);
|
||||||
|
log.info("诺力请求嘉耐回传入窑信息入参{}", obj.toString());
|
||||||
|
String returnResultMsg = HttpRequest.post(URL + method)
|
||||||
.body(String.valueOf(jsonObject)).timeout(timeout)
|
.body(String.valueOf(jsonObject)).timeout(timeout)
|
||||||
.execute().body();
|
.execute().body();
|
||||||
|
log.info("诺力请求嘉耐回传入窑信息出参{}", returnResultMsg);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackPackage(Map whereJson) {
|
public Map<String, Object> feedBackPackage(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
//木托盘号码
|
//木托盘号码
|
||||||
String vehicle_code = (String) whereJson.get("vehicle_code");
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
if (StrUtil.isEmpty(vehicle_code)) {
|
if (StrUtil.isEmpty(vehicle_code)) {
|
||||||
throw new BadRequestException("托盘编码不能为空!");
|
throw new BadRequestException("托盘编码不能为空!");
|
||||||
}
|
}
|
||||||
|
JSONObject mstObj = WQL.getWO("WMSTOJN_001").addParam("flag", "9").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
||||||
|
JSONArray dtlarr = WQL.getWO("WMSTOJN_001").addParam("flag", "8").addParam("record_id", mstObj.getString("record_id")).process().getResultJSONArray(0);
|
||||||
|
mstObj.put("DETAILS", dtlarr);
|
||||||
|
String method = "";
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", mstObj);
|
||||||
|
log.info("诺力请求嘉耐回传组盘记录入参{}", obj.toString());
|
||||||
|
String resultMsg = HttpRequest.post(URL + method)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
|
log.info("诺力请求嘉耐回传组盘记录出参{}", resultMsg);
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> feedBackQualityInfo(String record_id) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
if (StrUtil.equals(value, "0")) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
WQLObject recordTable = WQLObject.getWQLObject("st_buss_qualityRecord");
|
||||||
|
JSONObject recordObj = WQL.getWO("WMSTOJN_001").addParam("flag", "6").addParam("record_id", record_id).process().uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(recordObj)) {
|
||||||
|
throw new BadRequestException("未找到记录标识为'" + record_id + "'的记录");
|
||||||
|
}
|
||||||
|
String method = "InsertQualityInfo";
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put("ticker", "WLXT");
|
||||||
|
obj.put("stringData", recordObj);
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录入参{}", obj.toString());
|
||||||
|
String resultMsg = HttpRequest.post(URL + method)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录出参{}", resultMsg);
|
||||||
|
String status = result.getString("status");
|
||||||
|
if (StrUtil.isNotEmpty(status) && status.equals("1")) {
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录成功!");
|
||||||
|
} else {
|
||||||
|
log.info("诺力请求嘉耐回传不合格记录失败!");
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -125,3 +125,68 @@
|
|||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDQUERY
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "5"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
|
||||||
|
point.point_code as device_code
|
||||||
|
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
LEFT JOIN pdm_base_device device ON point.device_id = device.device_id
|
||||||
|
WHERE
|
||||||
|
point.area_type = '22'
|
||||||
|
AND point.point_code <> 'MDJXS101'
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "6"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
point.point_id,
|
||||||
|
point.point_code ,
|
||||||
|
device.device_id,
|
||||||
|
device.device_code
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
LEFT JOIN pdm_base_device device ON point.device_id = device.device_id
|
||||||
|
WHERE
|
||||||
|
point.area_type = '22'
|
||||||
|
AND point.point_code <> 'MDJXS101'
|
||||||
|
OPTION 输入.point_code <> ""
|
||||||
|
point.point_code = 输入.point_code
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "7"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
point.point_code as device_code,
|
||||||
|
point.vehicle_code
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
WHERE
|
||||||
|
point_code IN ( 'FJJXSXLW201', 'FJJXSXLW202' )
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "8"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
point.point_code as device_code,
|
||||||
|
point.vehicle_code
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
WHERE
|
||||||
|
point_code IN ( 'FJJXSXLW301', 'FJJXSXLW302' )
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
@@ -13,8 +13,10 @@
|
|||||||
#################################################
|
#################################################
|
||||||
## 表字段对应输入参数
|
## 表字段对应输入参数
|
||||||
#################################################
|
#################################################
|
||||||
输入.flag TYPEAS s_string
|
输入.flag TYPEAS s_string
|
||||||
输入.task TYPEAS s_string
|
输入.task TYPEAS s_string
|
||||||
|
输入.record_id TYPEAS s_string
|
||||||
|
输入.vehicle_code TYPEAS s_string
|
||||||
|
|
||||||
[临时表]
|
[临时表]
|
||||||
--这边列出来的临时表就会在运行期动态创建
|
--这边列出来的临时表就会在运行期动态创建
|
||||||
@@ -118,4 +120,83 @@ IF 输入.flag = "5"
|
|||||||
point.point_code IN ( 'FJJXSXLW201', 'FJJXSXLW202' )
|
point.point_code IN ( 'FJJXSXLW201', 'FJJXSXLW202' )
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDQUERY
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "6"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
producetask.ext_shoporder_no AS SHOPORDERNO,
|
||||||
|
material_code AS ITEMCODE,
|
||||||
|
device.device_code AS SBDM,
|
||||||
|
record.update_time AS CHECKTIME,
|
||||||
|
record.qty AS QTY,
|
||||||
|
record.reason AS BZ
|
||||||
|
FROM
|
||||||
|
st_buss_qualityRecord record
|
||||||
|
LEFT JOIN pdm_mg_producetask producetask ON producetask.producetask_id = record.producetask_id
|
||||||
|
LEFT JOIN md_me_material material ON material.material_id = record.material_id
|
||||||
|
LEFT JOIN pdm_base_device device ON device.device_id = record.device_id
|
||||||
|
where
|
||||||
|
1=1
|
||||||
|
OPTION 输入.record_id <> ""
|
||||||
|
record.record_id = 输入.record_id
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "7"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
deviceStatus.device_code AS SBDM,
|
||||||
|
deviceStatus.device_status AS STATUS,
|
||||||
|
deviceStatus.update_time AS UPDATETIME,
|
||||||
|
"" AS BZ
|
||||||
|
FROM
|
||||||
|
st_buss_deviceStatus deviceStatus
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "8"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
dtl.material_move_id AS ID,
|
||||||
|
task.ext_shoporder_no AS SHOPORDERNO,
|
||||||
|
dtl.vehicle_code AS STOCKNO,
|
||||||
|
"0" AS QTY
|
||||||
|
FROM
|
||||||
|
st_buss_vehiclerelarecordtl dtl
|
||||||
|
LEFT JOIN st_buss_vehicleRelaRecord mst ON mst.record_id = dtl.record_id
|
||||||
|
LEFT JOIN pdm_mg_producetask task ON task.producetask_id = dtl.producetask_id
|
||||||
|
where
|
||||||
|
1=1
|
||||||
|
OPTION 输入.record_id <> ""
|
||||||
|
record.record_id = 输入.record_id
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "9"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
material.material_code AS ITEMCODE,
|
||||||
|
mst.pc AS pc,
|
||||||
|
mst.vehicle_code AS PROD_STOCKNO,
|
||||||
|
mst.packing_time AS RECORD_TIME,
|
||||||
|
vehiclegroup.qty AS TOTALQTY
|
||||||
|
FROM
|
||||||
|
st_buss_vehicleRelaRecord mst
|
||||||
|
LEFT JOIN st_buss_vehiclegroup vehiclegroup ON vehiclegroup.vehicle_code = mst.vehicle_code
|
||||||
|
LEFT JOIN md_me_material material ON material.material_id = mst.material_id
|
||||||
|
where
|
||||||
|
1=1
|
||||||
|
OPTION 输入.vehicle_code <> ""
|
||||||
|
mst.vehicle_code = 输入.vehicle_code
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
FROM
|
FROM
|
||||||
pdm_mg_producetask task
|
pdm_mg_producetask task
|
||||||
LEFT JOIN sch_base_point point ON point.device_id = task.device_id
|
LEFT JOIN sch_base_point point ON point.device_id = task.device_id
|
||||||
AND point.point_code <> 'MDJXS102'
|
AND point.point_code <> 'MDJXS101'
|
||||||
LEFT JOIN md_me_material material ON material.material_id = task.material_id
|
LEFT JOIN md_me_material material ON material.material_id = task.material_id
|
||||||
WHERE
|
WHERE
|
||||||
1 =1
|
1 =1
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import org.nl.modules.system.util.CodeUtil;
|
|||||||
import org.nl.utils.SecurityUtils;
|
import org.nl.utils.SecurityUtils;
|
||||||
import org.nl.utils.SpringContextHolder;
|
import org.nl.utils.SpringContextHolder;
|
||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
|
import org.nl.wms.common.SortingUtil;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
import org.nl.wms.database.service.dto.VehicleDto;
|
import org.nl.wms.database.service.dto.VehicleDto;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
@@ -65,6 +66,17 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
|
|||||||
WQLObject.getWQLObject("st_buss_EmptyVehicleRecord").update(map, "task_uuid='" + jsonTask.getString("task_id") + "'");
|
WQLObject.getWQLObject("st_buss_EmptyVehicleRecord").update(map, "task_uuid='" + jsonTask.getString("task_id") + "'");
|
||||||
//解锁仓位,托盘信息,回写到点位上去
|
//解锁仓位,托盘信息,回写到点位上去
|
||||||
String vehicle_code = jsonTask.getString("vehicle_code");
|
String vehicle_code = jsonTask.getString("vehicle_code");
|
||||||
|
//插入刚托盘木托盘表
|
||||||
|
String point_code = jsonTask.getString("next_point_code");
|
||||||
|
String area_type = WQLObject.getWQLObject("sch_base_point").query("point_code='" + point_code + "'").uniqueResult(0).getString("area_type");
|
||||||
|
if (StrUtil.equals(area_type, AreaEnum.FJQY.getCode())) {
|
||||||
|
JSONObject jo = new JSONObject();
|
||||||
|
jo.put("device_code", point_code);
|
||||||
|
jo.put("vehicle_code", vehicle_code);
|
||||||
|
SortingUtil.record(jo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
|
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
|
||||||
JSONObject endpointObj = pointTab.query("point_code='" + jsonTask.getString("next_point_code") + "'").uniqueResult(0);
|
JSONObject endpointObj = pointTab.query("point_code='" + jsonTask.getString("next_point_code") + "'").uniqueResult(0);
|
||||||
endpointObj.put("lock_type", "00");
|
endpointObj.put("lock_type", "00");
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import org.nl.modules.system.util.CodeUtil;
|
|||||||
import org.nl.utils.SecurityUtils;
|
import org.nl.utils.SecurityUtils;
|
||||||
import org.nl.utils.SpringContextHolder;
|
import org.nl.utils.SpringContextHolder;
|
||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
|
import org.nl.wms.common.SortingUtil;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.AreaEnum;
|
import org.nl.wms.sch.manage.AreaEnum;
|
||||||
@@ -113,6 +114,32 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
paramTable.update(paramObj);
|
paramTable.update(paramObj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
////如果终点是分拣区域,则更新木托盘铁托盘记录表
|
||||||
|
String next_area = nextPointDto.getArea_type();
|
||||||
|
if (StrUtil.equals(next_area, AreaEnum.FJQY.getCode())) {
|
||||||
|
//如果是下料料位置 托盘则是木托盘
|
||||||
|
if (StrUtil.equals(next_point_code, "FJJXSXLW201") ||
|
||||||
|
StrUtil.equals(next_point_code, "FJJXSXLW202") ||
|
||||||
|
StrUtil.equals(next_point_code, "FJJXSXLW301") ||
|
||||||
|
StrUtil.equals(next_point_code, "FJJXSXLW302")) {
|
||||||
|
JSONObject jo = new JSONObject();
|
||||||
|
jo.put("device_code",next_point_code);
|
||||||
|
jo.put("vehicle_code",vehicle_code);
|
||||||
|
SortingUtil.record(jo);
|
||||||
|
}
|
||||||
|
//如果是上料位置 则需要去找点位记录表上的托盘记录
|
||||||
|
else {
|
||||||
|
String flag = "8";
|
||||||
|
if (StrUtil.equals(next_point_code, "FJJXSSLW101") || StrUtil.equals(next_point_code, "FJJXSSLW102")) {
|
||||||
|
flag = "7";
|
||||||
|
}
|
||||||
|
JSONArray paramArr = WQL.getWO("ACSTOMES_001.wql").addParam("flag", flag).process().getResultJSONArray(0);
|
||||||
|
for (int i = 0; i < paramArr.size(); i++) {
|
||||||
|
JSONObject jo = paramArr.getJSONObject(i);
|
||||||
|
SortingUtil.record(jo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
JSONObject startPointObj = pointTab.query("point_code='" + jsonTask.getString("start_point_code") + "'").uniqueResult(0);
|
JSONObject startPointObj = pointTab.query("point_code='" + jsonTask.getString("start_point_code") + "'").uniqueResult(0);
|
||||||
startPointObj.put("lock_type", "00");
|
startPointObj.put("lock_type", "00");
|
||||||
startPointObj.put("point_status", "00");
|
startPointObj.put("point_status", "00");
|
||||||
@@ -233,14 +260,11 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
//如果没给终点,根据起点去找工序,找一个合适的仓位 并且生成入库单,并且锁定点位
|
//如果没给终点,根据起点去找工序,找一个合适的仓位 并且生成入库单,并且锁定点位
|
||||||
if (StrUtil.isEmpty(start_point_code)) {
|
if (StrUtil.isEmpty(start_point_code)) {
|
||||||
if (StrUtil.isEmpty(workprocedure_id)) {
|
if (StrUtil.isEmpty(workprocedure_id)) {
|
||||||
|
|
||||||
JSONObject workInfo = WQL.getWO("QSTRUCT_RULE").addParam("flag", "1").addParam("code", next_point_code)
|
JSONObject workInfo = WQL.getWO("QSTRUCT_RULE").addParam("flag", "1").addParam("code", next_point_code)
|
||||||
.process().uniqueResult(0);
|
.process().uniqueResult(0);
|
||||||
workprocedure_id = workInfo.getString("workprocedure_id");
|
workprocedure_id = workInfo.getString("workprocedure_id");
|
||||||
|
|
||||||
WorkProcedureEnum workProcedureEnum = WorkProcedureEnum.get(workprocedure_id);
|
WorkProcedureEnum workProcedureEnum = WorkProcedureEnum.get(workprocedure_id);
|
||||||
switch (workProcedureEnum) {
|
switch (workProcedureEnum) {
|
||||||
|
|
||||||
//烧制工序
|
//烧制工序
|
||||||
case SZGX:
|
case SZGX:
|
||||||
startArea_type = AreaEnum.RYHCHJ.getCode();
|
startArea_type = AreaEnum.RYHCHJ.getCode();
|
||||||
@@ -323,17 +347,17 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
iosObj.put("create_mode", create_mode);
|
iosObj.put("create_mode", create_mode);
|
||||||
iosObj.put("task_id", task_id);
|
iosObj.put("task_id", task_id);
|
||||||
iosObj.put("pcsn", pcsn);
|
iosObj.put("pcsn", pcsn);
|
||||||
iosObj.put("create_id","1");
|
iosObj.put("create_id", "1");
|
||||||
iosObj.put("create_name", "管理员");
|
iosObj.put("create_name", "管理员");
|
||||||
iosObj.put("create_time", DateUtil.now());
|
iosObj.put("create_time", DateUtil.now());
|
||||||
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
|
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
|
||||||
//将组盘里面的task_id改为当前的任务
|
//将组盘里面的task_id改为当前的任务
|
||||||
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
||||||
JSONObject groupObj = groupTable.query("vehicle_code='" + vehicle_code + "'").uniqueResult(0);
|
JSONObject groupObj = groupTable.query("vehicle_code='" + vehicle_code + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isNotEmpty(groupObj)){
|
if (ObjectUtil.isNotEmpty(groupObj)) {
|
||||||
groupObj.put("task_id",task_id);
|
groupObj.put("task_id", task_id);
|
||||||
groupTable.update(groupObj);
|
groupTable.update(groupObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package org.nl.wms.sch.manage.buss;
|
|||||||
|
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.IdUtil;
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import org.nl.exception.BadRequestException;
|
import org.nl.exception.BadRequestException;
|
||||||
@@ -73,6 +74,13 @@ public class RgvTask extends AbstractAcsTask {
|
|||||||
if (StrUtil.isEmpty(start_point_code)) {
|
if (StrUtil.isEmpty(start_point_code)) {
|
||||||
throw new BadRequestException("起点不能为空!");
|
throw new BadRequestException("起点不能为空!");
|
||||||
}
|
}
|
||||||
|
JSONObject beforTaskObj = WQLObject.getWQLObject("sch_base_task").
|
||||||
|
query("is_delete='0' and start_point_code='" + start_point_code + "' and task_status <>'" + TaskStatusEnum.FINISHED.getCode() + "'")
|
||||||
|
.uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(beforTaskObj)) {
|
||||||
|
throw new BadRequestException("存在指令号为'" + beforTaskObj.getString("task_code") + "' 未完成!");
|
||||||
|
}
|
||||||
|
|
||||||
taskObj.put("task_id", IdUtil.getSnowflake(1, 1).nextId() + "");
|
taskObj.put("task_id", IdUtil.getSnowflake(1, 1).nextId() + "");
|
||||||
String task_status = TaskStatusEnum.START_AND_POINT.getCode();
|
String task_status = TaskStatusEnum.START_AND_POINT.getCode();
|
||||||
taskObj.put("task_code", CodeUtil.getNewCode("TASK_CODE"));
|
taskObj.put("task_code", CodeUtil.getNewCode("TASK_CODE"));
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ import org.nl.wms.BussConstant;
|
|||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
import org.nl.wms.ext.acs.service.WmsToJnService;
|
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||||
|
import org.nl.wms.ext.acs.service.impl.WmsToJnServiceImpl;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.AreaEnum;
|
import org.nl.wms.sch.manage.AreaEnum;
|
||||||
import org.nl.wms.sch.manage.BillTypeEnum;
|
import org.nl.wms.sch.manage.BillTypeEnum;
|
||||||
@@ -33,11 +34,10 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@RequiredArgsConstructor
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class ToConveyorTask extends AbstractAcsTask {
|
public class ToConveyorTask extends AbstractAcsTask {
|
||||||
private final String THIS_CLASS = ToConveyorTask.class.getName();
|
private final String THIS_CLASS = ToConveyorTask.class.getName();
|
||||||
private final WmsToJnService wmsToJnService;
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -73,9 +73,12 @@ public class ToConveyorTask extends AbstractAcsTask {
|
|||||||
jsonTask.put("remark", "任务执行完成");
|
jsonTask.put("remark", "任务执行完成");
|
||||||
taskTab.update(jsonTask);
|
taskTab.update(jsonTask);
|
||||||
//调用接口反馈给嘉耐 搬运任务
|
//调用接口反馈给嘉耐 搬运任务
|
||||||
JSONObject param = new JSONObject();
|
|
||||||
|
/*JSONObject param = new JSONObject();
|
||||||
param.put("task_id", task_id);
|
param.put("task_id", task_id);
|
||||||
wmsToJnService.feedBackCarryRecord(param);
|
WmsToJnService wmsToJnService = new WmsToJnServiceImpl();
|
||||||
|
wmsToJnService.feedBackCarryRecord(param)
|
||||||
|
wmsToJnService.feedBackCarryRecord(param);*/
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,80 @@
|
|||||||
|
|
||||||
|
package org.nl.wms.sch.task;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.SneakyThrows;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.wms.ext.acs.service.impl.WmsToAcsServiceImpl;
|
||||||
|
import org.nl.wms.sch.manage.buss.CallMaterialTask;
|
||||||
|
import org.nl.wql.WQL;
|
||||||
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Component
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class AutoSynchronDeviceStausTask {
|
||||||
|
private final CallMaterialTask callMaterialTask;
|
||||||
|
|
||||||
|
@SneakyThrows
|
||||||
|
public void run() {
|
||||||
|
this.doExecute();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
void doExecute() {
|
||||||
|
//1 同步压机设备状态
|
||||||
|
this.SynchronDevice();
|
||||||
|
//2 反馈给嘉耐
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SynchronDevice() {
|
||||||
|
JSONArray deviceArr = WQL.getWO("ACSTOMES_001").addParam("flag", "5").process().getResultJSONArray(0);
|
||||||
|
WmsToAcsServiceImpl wmsToAcsServiceImpl = new WmsToAcsServiceImpl();
|
||||||
|
JSONObject joo = wmsToAcsServiceImpl.queryPointStatus(deviceArr);
|
||||||
|
JSONArray pointarr = joo.getJSONArray("data");
|
||||||
|
WQLObject recordTabele = WQLObject.getWQLObject("st_buss_deviceStatus");
|
||||||
|
for (int i = 0; i < pointarr.size(); i++) {
|
||||||
|
JSONObject devicejo = pointarr.getJSONObject(i);
|
||||||
|
String point_code = devicejo.getString("device_code");
|
||||||
|
//根据点位去找设备
|
||||||
|
String device_code = WQL.getWO("ACSTOMES_001").addParam("flag", "6").addParam("point_code",point_code).process().uniqueResult(0).getString("device_code");
|
||||||
|
JSONObject recordObj = recordTabele.query("device_code='" + device_code + "'").uniqueResult(0);
|
||||||
|
int mode = devicejo.getIntValue("mode");
|
||||||
|
int error = devicejo.getIntValue("error");
|
||||||
|
String device_status = "";
|
||||||
|
//2空闲,3工作中,4等待搬运 5缺料请求
|
||||||
|
if (mode==2){
|
||||||
|
device_status="3";
|
||||||
|
}
|
||||||
|
if (mode==3){
|
||||||
|
device_status="1";
|
||||||
|
}
|
||||||
|
if (mode==4){
|
||||||
|
device_status="2";
|
||||||
|
}
|
||||||
|
if (mode==5){
|
||||||
|
device_status="5";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (error >0){
|
||||||
|
device_status="4";
|
||||||
|
}
|
||||||
|
recordObj.put("device_status", device_status);
|
||||||
|
recordObj.put("update_time", DateUtil.now());
|
||||||
|
recordTabele.update(recordObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -45,17 +45,15 @@
|
|||||||
b.workprocedure_name,
|
b.workprocedure_name,
|
||||||
c.material_name,
|
c.material_name,
|
||||||
p1.point_name AS start_point_name,
|
p1.point_name AS start_point_name,
|
||||||
p2.point_name AS end_point_name,
|
p2.point_name AS end_point_name
|
||||||
unit.unit_name,
|
|
||||||
cust.cust_name
|
|
||||||
FROM
|
FROM
|
||||||
ST_IVT_workProcedureIOS a
|
ST_IVT_workProcedureIOS a
|
||||||
LEFT JOIN pdm_base_workprocedure b ON a.workprocedure_id = b.workprocedure_id
|
LEFT JOIN pdm_base_workprocedure b ON a.workprocedure_id = b.workprocedure_id
|
||||||
LEFT JOIN md_me_material c ON c.material_id = a.material_id
|
LEFT JOIN md_me_material c ON c.material_id = a.material_id
|
||||||
LEFT JOIN sch_base_point p1 ON a.start_point_code = p1.point_code
|
LEFT JOIN sch_base_point p1 ON a.start_point_code = p1.point_code
|
||||||
LEFT JOIN sch_base_point p2 ON a.end_point_code = p2.point_code
|
LEFT JOIN sch_base_point p2 ON a.end_point_code = p2.point_code
|
||||||
LEFT JOIN md_pb_measureunit unit ON a.qty_unit_id = unit.unit_id
|
|
||||||
LEFT JOIN md_cs_customerbase cust ON a.cust_id = cust.cust_id
|
|
||||||
WHERE
|
WHERE
|
||||||
a.is_delete = '0' and a.io_type = '0'
|
a.is_delete = '0' and a.io_type = '0'
|
||||||
OPTION 输入.search <> ""
|
OPTION 输入.search <> ""
|
||||||
|
|||||||
@@ -70,31 +70,27 @@
|
|||||||
|
|
||||||
IF 输入.flag = "2"
|
IF 输入.flag = "2"
|
||||||
PAGEQUERY
|
PAGEQUERY
|
||||||
SELECT
|
SELECT
|
||||||
point.*,
|
point.*,
|
||||||
material.material_id,
|
material.material_id,
|
||||||
material.material_name,
|
material.material_name,
|
||||||
structivt.vehicle_code AS vehicle_code111,
|
structivt.vehicle_code AS vehicle_code111,
|
||||||
structivt.pcsn,
|
structivt.canuse_qty,
|
||||||
structivt.canuse_qty,
|
structivt.frozen_qty,
|
||||||
structivt.frozen_qty,
|
structivt.ivt_qty,
|
||||||
structivt.ivt_qty,
|
structivt.warehousing_qty,
|
||||||
structivt.warehousing_qty,
|
structivt.is_full,
|
||||||
structivt.qty_unit_id,
|
structivt.instorage_time
|
||||||
structivt.is_full,
|
FROM
|
||||||
structivt.instorage_time,
|
st_ivt_structivt structivt
|
||||||
unit.unit_name
|
LEFT JOIN sch_base_point point ON point.point_id = structivt.struct_id
|
||||||
FROM
|
LEFT JOIN md_me_material material ON structivt.material_id = material.material_id
|
||||||
st_ivt_structivt structivt
|
WHERE
|
||||||
LEFT JOIN sch_base_point point ON point.point_id = structivt.struct_id
|
point.is_delete = '0'
|
||||||
LEFT JOIN md_me_material material ON structivt.material_id = material.material_id
|
AND point.point_type = '02'
|
||||||
LEFT JOIN md_pb_measureunit unit ON structivt.qty_unit_id = unit.unit_id
|
AND point.lock_type = '00'
|
||||||
WHERE
|
AND structivt.canuse_qty > 0
|
||||||
point.is_delete = '0'
|
AND point.is_used = '1'
|
||||||
AND point.point_type = '02'
|
|
||||||
and point.lock_type='00'
|
|
||||||
and structivt.canuse_qty > 0
|
|
||||||
and point.is_used = '1'
|
|
||||||
and structivt.workprocedure_id = 输入.ivt_workprocedure_id
|
and structivt.workprocedure_id = 输入.ivt_workprocedure_id
|
||||||
and structivt.is_full = 输入.is_full
|
and structivt.is_full = 输入.is_full
|
||||||
and structivt.material_id = 输入.material_id
|
and structivt.material_id = 输入.material_id
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user