This commit is contained in:
2022-08-02 18:11:04 +08:00
parent 9f64af34cf
commit b5c04b33cc
11 changed files with 316 additions and 17 deletions

View File

@@ -49,4 +49,18 @@ public class AcsToWmsController {
public ResponseEntity<Object> orderFinish(@RequestBody String string) {
return new ResponseEntity<>(acsToWmsService.orderFinish(string), HttpStatus.OK);
}
@PostMapping("/feedDeviceStatusType")
@Log("向wms反馈设备状态")
@ApiOperation("向wms反馈设备状态")
public ResponseEntity<Object> feedDeviceStatusType(@RequestBody String string) {
return new ResponseEntity<>(acsToWmsService.feedDeviceStatusType(string), HttpStatus.OK);
}
@PostMapping("/feedOrderRealQty")
@Log("向wms反订单实施数量")
@ApiOperation("向wms反订单实施数量")
public ResponseEntity<Object> feedOrderRealQty(@RequestBody String string) {
return new ResponseEntity<>(acsToWmsService.feedOrderRealQty(string), HttpStatus.OK);
}
}

View File

@@ -39,4 +39,18 @@ public interface AcsToWmsService {
* @return
*/
Map<String, Object> orderFinish(String string);
/**
* ACS给WMS反馈设备状态状态
* @param string
* @return
*/
Map<String, Object> feedDeviceStatusType(String string);
/**
* ACS给WMS反馈订单实时数量
* @param string
* @return
*/
Map<String, Object> feedOrderRealQty(String string);
}

View File

@@ -2,6 +2,7 @@ package org.nl.wms.ext.acs.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@@ -132,22 +133,74 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
public Map<String, Object> orderFinish(String string) {
JSONObject orderJson = JSONObject.parseObject(string);
String ext_order_id = orderJson.getString("ext_order_id");
// JSONArray array = JSONArray.parseArray(string);
// JSONArray array = JSONArray.parseArray(string);
String now = DateUtil.now();
WQLObject wo = WQLObject.getWQLObject("MPS_BD_ProduceShiftOrder");
JSONObject map = new JSONObject();
map.put("produceorder_id",ext_order_id);
map.put("order_status","04");
map.put("produceorder_id", ext_order_id);
map.put("order_status", "04");
map.put("update_optid", 1111111111);
map.put("device_id", "");
map.put("update_optname", "acs");
map.put("update_time", now);
map.put("realproduceend_date", now);
wo.update(map,"produceorder_id = '"+ext_order_id+"'");
wo.update(map, "produceorder_id = '" + ext_order_id + "'");
JSONObject result = new JSONObject();
result.put("status", HttpStatus.OK.value());
result.put("message", "任务状态反馈成功!");
return result;
}
@Override
public Map<String, Object> feedDeviceStatusType(String string) {
JSONObject param = JSONObject.parseObject(string);
String device_code = param.getString("device_code");
String status_type = param.getString("status_type");
String start_time = param.getString("start_time");
Integer error_code = Integer.parseInt(param.getString("error_code"));
WQLObject wo = WQLObject.getWQLObject("pdm_bi_device");
JSONObject device_json = wo.query("is_delete = '0' and is_active = '1' and device_code = '" + device_code + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(device_json)) {
String device_id = device_json.getString("device_id");
WQLObject wo_status = WQLObject.getWQLObject("PDM_BI_DeviceRunStatusRecord");
JSONObject status_json = wo_status.query("device_id = '" + device_id + "' and (end_time is null or end_time = '' )").uniqueResult(0);
if (ObjectUtil.isNotEmpty(status_json)){
status_json.put("end_time", start_time);
wo_status.update(status_json);
}
JSONObject map = new JSONObject();
map.put("record_id", IdUtil.getSnowflake(1, 1).nextId());
map.put("device_id", device_id);
map.put("status_type", status_type);
map.put("start_time", start_time);
if (error_code > 0 && error_code < 50){
map.put("err_status_id",error_code);
} else if (error_code > 50){
map.put("err_status_id", error_code - 50);
} else {
map.put("err_status_id", null);
}
wo_status.insert(map);
}
JSONObject result = new JSONObject();
result.put("status", HttpStatus.OK.value());
result.put("message", "设备状态反馈成功");
return result;
}
@Override
public Map<String, Object> feedOrderRealQty(String string) {
JSONObject param = JSONObject.parseObject(string);
String order_code = param.getString("order");
String real_qty = param.getString("real_qty");
WQLObject wo = WQLObject.getWQLObject("mps_bd_produceshiftorder");
JSONObject map = new JSONObject();
map.put("real_qty",real_qty);
wo.update(map,"produceorder_code = '"+order_code+"'");
JSONObject result = new JSONObject();
result.put("status", HttpStatus.OK.value());
result.put("message", "设备状态反馈成功");
return result;
}
}