fix 表结构修改,反向组盘接口
This commit is contained in:
@@ -122,11 +122,7 @@ public class AcsToWmsController {
|
|||||||
@ApiOperation("入窑口反向组盘")
|
@ApiOperation("入窑口反向组盘")
|
||||||
@SaIgnore
|
@SaIgnore
|
||||||
public ResponseEntity<Object> reverseGroup(@RequestBody JSONObject whereJson) {
|
public ResponseEntity<Object> reverseGroup(@RequestBody JSONObject whereJson) {
|
||||||
acsToWmsService.reverseGroup(whereJson);
|
return new ResponseEntity<>(acsToWmsService.reverseGroup(whereJson), HttpStatus.OK);
|
||||||
JSONObject result = new JSONObject();
|
|
||||||
result.put("status", HttpStatus.OK.value());
|
|
||||||
result.put("message", "发送任务成功");
|
|
||||||
return new ResponseEntity<>(result, HttpStatus.OK);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@SaIgnore
|
@SaIgnore
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ public interface AcsToWmsService {
|
|||||||
* 入窑口反向组盘
|
* 入窑口反向组盘
|
||||||
* @param whereJson
|
* @param whereJson
|
||||||
*/
|
*/
|
||||||
void reverseGroup(JSONObject whereJson);
|
JSONObject reverseGroup(JSONObject whereJson);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据设备编码获取托盘信息
|
* 根据设备编码获取托盘信息
|
||||||
|
|||||||
@@ -207,263 +207,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public JSONObject apply(JSONObject param) {
|
public JSONObject apply(JSONObject param) {
|
||||||
String point_code = param.getString("device_code");
|
return null;
|
||||||
if (StrUtil.isBlank(point_code)) {
|
|
||||||
throw new BadRequestException("点位不能为空!");
|
|
||||||
}
|
|
||||||
String type = param.getString("type");
|
|
||||||
String task_code;
|
|
||||||
JSONObject point = param.getJSONObject("point");
|
|
||||||
if (ObjectUtil.isEmpty(point)) {
|
|
||||||
point = WQLObject
|
|
||||||
.getWQLObject("sch_base_point")
|
|
||||||
.query("is_used = '1' AND point_code = '" + point_code + "'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
if (ObjectUtil.isEmpty(point)) {
|
|
||||||
throw new BadRequestException("[" + point_code + "] 已删除或未启用!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
TaskUtils.isLocked(point);
|
|
||||||
|
|
||||||
Region region = Region.get(point.getString("region_code"));
|
|
||||||
|
|
||||||
JSONObject method_param = new JSONObject();
|
|
||||||
method_param.put("point", point);
|
|
||||||
method_param.put("create_mode", CreateMode.ACSSQ.value());
|
|
||||||
String request_param = param.getString("request_param");
|
|
||||||
if (StrUtil.isBlank(request_param)) {
|
|
||||||
request_param = param.toJSONString();
|
|
||||||
}
|
|
||||||
method_param.put("request_param", request_param);
|
|
||||||
method_param.put("create_id", ACSSystem.id);
|
|
||||||
method_param.put("create_name", ACSSystem.nick_name);
|
|
||||||
switch (type) {
|
|
||||||
case "1":
|
|
||||||
// 送料
|
|
||||||
switch (region) {
|
|
||||||
case HL:
|
|
||||||
JSONObject workorder = TaskUtils.hasWorkOrder(point);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
String vehicle_code = TaskUtils.formatVehicleCode(param.getString("vehicle_code"));
|
|
||||||
if ("0000".equals(vehicle_code)) {
|
|
||||||
throw new BadRequestException("载具编码不能为空!");
|
|
||||||
}
|
|
||||||
method_param.put("vehicle_code", vehicle_code);
|
|
||||||
String weight = param.getString("weight");
|
|
||||||
if (StrUtil.isBlank(weight)) {
|
|
||||||
throw new BadRequestException("重量不能为空!");
|
|
||||||
}
|
|
||||||
|
|
||||||
WQLObject vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
|
|
||||||
JSONObject vd_update = new JSONObject();
|
|
||||||
vd_update.put("is_delete", "1");
|
|
||||||
vd_update.put("update_optid", ACSSystem.id);
|
|
||||||
vd_update.put("update_optname", ACSSystem.nick_name);
|
|
||||||
String now = DateUtil.now();
|
|
||||||
vd_update.put("update_time", now);
|
|
||||||
vd_table.update(vd_update, "vehicle_type = '1' AND vehicle_code = '" + vehicle_code + "' AND is_delete = '0'");
|
|
||||||
|
|
||||||
String device_code = workorder.getString("device_code");
|
|
||||||
JSONObject result = wmsToAcsService.getDeviceStatus(
|
|
||||||
new JSONArray() {{
|
|
||||||
add(new JSONObject() {{
|
|
||||||
put("device_code", device_code);
|
|
||||||
}});
|
|
||||||
}});
|
|
||||||
if (!"200".equals(result.getString("status"))) {
|
|
||||||
throw new BadRequestException("[" + device_code + "] ACS未返回设备信息!");
|
|
||||||
}
|
|
||||||
JSONArray data = result.getJSONArray("data");
|
|
||||||
if (ObjectUtil.isEmpty(data)) {
|
|
||||||
throw new BadRequestException("[" + device_code + "] ACS未返回设备信息!");
|
|
||||||
}
|
|
||||||
String mix_num = data.getJSONObject(0).getString("mix_num");
|
|
||||||
if (StrUtil.isBlank(mix_num)) {
|
|
||||||
throw new BadRequestException("未知碾次!");
|
|
||||||
}
|
|
||||||
|
|
||||||
JSONObject vd = new JSONObject();
|
|
||||||
vd.put("vd_id", IdUtil.getSnowflake(1L, 1L).nextId());
|
|
||||||
vd.put("vehicle_type", VehicleType.CUP.value());
|
|
||||||
vd.put("vehicle_code", vehicle_code);
|
|
||||||
vd.put("material_id", workorder.getString("material_id"));
|
|
||||||
vd.put("weight", weight);
|
|
||||||
vd.put("workorder_id", workorder.getString("workorder_id"));
|
|
||||||
vd.put("point_code", point_code);
|
|
||||||
vd.put("create_id", ACSSystem.id);
|
|
||||||
vd.put("create_name", ACSSystem.nick_name);
|
|
||||||
vd.put("create_time", now);
|
|
||||||
vd.put("is_in_kiln", "0");
|
|
||||||
vd.put("stand_status", StandStatus.STANDING.value());
|
|
||||||
vd.put("mix_num", mix_num);
|
|
||||||
vd_table.insert(vd);
|
|
||||||
method_param.put("vd", vd);
|
|
||||||
|
|
||||||
task_code = hlSendMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case YZ:
|
|
||||||
method_param.put("workorder", param.getJSONObject("workorder"));
|
|
||||||
method_param.put("vd", param.getJSONObject("vd"));
|
|
||||||
task_code = yzSendMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case SZ:
|
|
||||||
vehicle_code = TaskUtils.formatVehicleCode(param.getString("vehicle_code"));
|
|
||||||
if ("0000".equals(vehicle_code)) {
|
|
||||||
throw new BadRequestException("载具编码不能为空!");
|
|
||||||
}
|
|
||||||
method_param.put("vehicle_code", vehicle_code);
|
|
||||||
vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
|
|
||||||
vd = vd_table
|
|
||||||
.query("is_delete = '0' AND vehicle_type = '2' AND vehicle_code = '" + vehicle_code + "'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
if (ObjectUtil.isEmpty(vd)) {
|
|
||||||
throw new BadRequestException("未找到 [" + vehicle_code + "] 的组盘信息!");
|
|
||||||
}
|
|
||||||
vd.put("is_fire", "1");
|
|
||||||
vd.put("is_in_kiln", "0");
|
|
||||||
vd_table.update(vd);
|
|
||||||
method_param.put("vd", vd);
|
|
||||||
|
|
||||||
task_code = szSendMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case FJ:
|
|
||||||
method_param.put("workorder", param.getJSONObject("workorder"));
|
|
||||||
method_param.put("vd", param.getJSONObject("vd"));
|
|
||||||
task_code = fjSendMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("[" + region.label() + "] 不能发起送料任务!");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "2":
|
|
||||||
// 叫料
|
|
||||||
switch (region) {
|
|
||||||
case YZ:
|
|
||||||
JSONObject workorder = TaskUtils.hasWorkOrder(point);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
task_code = yzCallMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case SZ:
|
|
||||||
task_code = szCallMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case FJ:
|
|
||||||
workorder = TaskUtils.hasWorkOrder(point);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
task_code = fjCallMaterialTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("[" + region.label() + "] 不能发起叫料任务!");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "3":
|
|
||||||
// 送空
|
|
||||||
JSONObject workorder = WQLObject
|
|
||||||
.getWQLObject("pdm_bd_workorder")
|
|
||||||
.query("is_delete = '0' AND device_code = '" + point.getString("device_code") + "' AND order_status = '3'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
|
|
||||||
switch (region) {
|
|
||||||
case YZ:
|
|
||||||
String vehicle_type = point.getString("vehicle_type");
|
|
||||||
if (StrUtil.isBlank(vehicle_type)) {
|
|
||||||
throw new BadRequestException("点位 [" + point_code + "] 无载具类型!");
|
|
||||||
}
|
|
||||||
String vehicle_code = TaskUtils.formatVehicleCode(point.getString("vehicle_code"));
|
|
||||||
if ("0000".equals(vehicle_code)) {
|
|
||||||
throw new BadRequestException("点位 [" + point_code + "] 无载具编码!");
|
|
||||||
}
|
|
||||||
JSONObject vd_update = new JSONObject();
|
|
||||||
vd_update.put("is_delete", TrueOrFalse.TRUE.value());
|
|
||||||
TaskUtils.addACSUpdateColum(vd_update);
|
|
||||||
WQLObject
|
|
||||||
.getWQLObject("st_ivt_vehicle_detail")
|
|
||||||
.update(vd_update, "vehicle_type = " + vehicle_type + " AND vehicle_code = '" + vehicle_code + "'");
|
|
||||||
|
|
||||||
task_code = yzSendEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case FJ:
|
|
||||||
vehicle_code = TaskUtils.formatVehicleCode(param.getString("vehicle_code"));
|
|
||||||
if ("0000".equals(vehicle_code)) {
|
|
||||||
vehicle_code = point.getString("vehicle_code");
|
|
||||||
if (StrUtil.isBlank(vehicle_code) || "0000".equals(vehicle_code)) {
|
|
||||||
throw new BadRequestException("载具编码不能为空!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
method_param.put("vehicle_code", vehicle_code);
|
|
||||||
vd_update = new JSONObject();
|
|
||||||
vd_update.put("is_delete", TrueOrFalse.TRUE.value());
|
|
||||||
TaskUtils.addACSUpdateColum(vd_update);
|
|
||||||
WQLObject
|
|
||||||
.getWQLObject("st_ivt_vehicle_detail")
|
|
||||||
.update(vd_update, "vehicle_type = '2' AND vehicle_code = '" + vehicle_code + "'");
|
|
||||||
task_code = fjSendEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("[" + region.label() + "] 不能发起送空任务!");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "4":
|
|
||||||
// 叫空
|
|
||||||
switch (region) {
|
|
||||||
case HL:
|
|
||||||
workorder = WQLObject
|
|
||||||
.getWQLObject("pdm_bd_workorder")
|
|
||||||
.query("is_delete = '0' AND device_code = '" + point.getString("device_code") + "' AND order_status = '3'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
task_code = hlCallEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case YZ:
|
|
||||||
workorder = WQLObject
|
|
||||||
.getWQLObject("pdm_bd_workorder")
|
|
||||||
.query("is_delete = '0' AND device_code = '" + point.getString("device_code") + "' AND order_status = '3'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
task_code = yzCallEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case GTK:
|
|
||||||
task_code = gtkCallEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case FJ:
|
|
||||||
workorder = TaskUtils.hasWorkOrder(point);
|
|
||||||
method_param.put("workorder", workorder);
|
|
||||||
task_code = fjCallEmptyTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("[" + region.label() + "] 不能发起叫空任务!");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "5":
|
|
||||||
// 去包装
|
|
||||||
switch (region) {
|
|
||||||
case FJ:
|
|
||||||
method_param.put("workorder", param.getJSONObject("workorder"));
|
|
||||||
method_param.put("vd", param.getJSONObject("vd"));
|
|
||||||
task_code = fjToPackageTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
case BTHC:
|
|
||||||
TaskUtils.isNotEmptyPoint(point);
|
|
||||||
JSONObject vd = WQLObject
|
|
||||||
.getWQLObject("st_ivt_vehicle_detail").query("is_delete = '0' vehicle_type = '" + point.getString("vehicle_type") + "' AND vehicle_code = '" + point.getString("vehicle_code") + "'")
|
|
||||||
.uniqueResult(0);
|
|
||||||
if (ObjectUtil.isEmpty(vd)) {
|
|
||||||
throw new BadRequestException("未找到 [" + point_code + "] 上的组盘信息!");
|
|
||||||
}
|
|
||||||
method_param.put("vd", vd);
|
|
||||||
task_code = bthcToPackageTask.createTask(method_param);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("[" + region.label() + "] 不能发起去包装任务!");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new BadRequestException("未知任务类型!");
|
|
||||||
}
|
|
||||||
JSONObject result = new JSONObject();
|
|
||||||
result.put("message", "申请任务成功,任务编码 [" + task_code + "]");
|
|
||||||
result.put("status", HttpStatus.OK.value());
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -480,11 +224,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
if (StrUtil.isBlank(point_code)) {
|
if (StrUtil.isBlank(point_code)) {
|
||||||
throw new BadRequestException("点位不能为空!");
|
throw new BadRequestException("点位不能为空!");
|
||||||
}
|
}
|
||||||
String vehicle_code = jsonObject.getString("vehicle_code");
|
|
||||||
vehicle_code = TaskUtils.formatVehicleCode(vehicle_code);
|
|
||||||
if ("0000".equals(vehicle_code)) {
|
|
||||||
throw new BadRequestException("载具编码不能为空!");
|
|
||||||
}
|
|
||||||
String qty = jsonObject.getString("qty");
|
String qty = jsonObject.getString("qty");
|
||||||
if (StrUtil.isBlank(qty)) {
|
if (StrUtil.isBlank(qty)) {
|
||||||
throw new BadRequestException("数量不能为空!");
|
throw new BadRequestException("数量不能为空!");
|
||||||
@@ -507,13 +246,16 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
}
|
}
|
||||||
TaskUtils.isLocked(point);
|
TaskUtils.isLocked(point);
|
||||||
|
|
||||||
|
String vehicle_code = TaskUtils.formatVehicleCode(jsonObject.getString("vehicle_code"));
|
||||||
JSONObject workorder = TaskUtils.hasWorkOrder(point);
|
JSONObject workorder = TaskUtils.hasWorkOrder(point);
|
||||||
String vehicle_type = workorder.getString("vehicle_type");
|
String vehicle_type = workorder.getString("vehicle_type");
|
||||||
WQLObject vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
|
WQLObject vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
|
||||||
JSONObject vd_update = new JSONObject();
|
if (!"0000".equals(vehicle_code)) {
|
||||||
vd_update.put("is_delete", TrueOrFalse.TRUE.value());
|
JSONObject vd_update = new JSONObject();
|
||||||
TaskUtils.addACSUpdateColum(vd_update);
|
vd_update.put("is_delete", TrueOrFalse.TRUE.value());
|
||||||
vd_table.update(vd_update, "is_delete = '0' AND vehicle_type = '" + vehicle_type + "' AND vehicle_code = '" + vehicle_code + "'");
|
TaskUtils.addACSUpdateColum(vd_update);
|
||||||
|
vd_table.update(vd_update, "is_delete = '0' AND vehicle_type = '" + vehicle_type + "' AND vehicle_code = '" + vehicle_code + "'");
|
||||||
|
}
|
||||||
|
|
||||||
JSONObject vd = new JSONObject();
|
JSONObject vd = new JSONObject();
|
||||||
vd.put("vd_id", IdUtil.getSnowflake(1, 1).nextId());
|
vd.put("vd_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||||
@@ -578,19 +320,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
vd.put("create_time", DateUtil.now());
|
vd.put("create_time", DateUtil.now());
|
||||||
vd.put("is_delete", TrueOrFalse.FALSE.value());
|
vd.put("is_delete", TrueOrFalse.FALSE.value());
|
||||||
|
|
||||||
vd.put("is_fire", TrueOrFalse.FALSE.value());
|
|
||||||
String region_code = point.getString("region_code");
|
|
||||||
if (Region.FJ.value().equals(region_code)) {
|
|
||||||
vd.put("is_fire", TrueOrFalse.TRUE.value());
|
|
||||||
}
|
|
||||||
vd.put("is_in_kiln", is_full);
|
|
||||||
if (Region.FJ.value().equals(region_code)) {
|
|
||||||
vd.put("is_in_kiln", TrueOrFalse.FALSE.value());
|
|
||||||
}
|
|
||||||
if (Region.FJ.value().equals(region_code)) {
|
|
||||||
vd.put("is_package", jsonObject.getString("is_package"));
|
|
||||||
}
|
|
||||||
|
|
||||||
vd_table.insert(vd);
|
vd_table.insert(vd);
|
||||||
|
|
||||||
// 入库
|
// 入库
|
||||||
@@ -777,25 +506,20 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void reverseGroup(JSONObject whereJson) {
|
public JSONObject reverseGroup(JSONObject whereJson) {
|
||||||
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
|
|
||||||
WQLObject groupTab = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
|
||||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
|
|
||||||
String vehicle_code = whereJson.getString("vehicle_code");
|
String vehicle_code = whereJson.getString("vehicle_code");
|
||||||
String task_id = whereJson.getString("task_id");
|
if (StrUtil.isBlank(vehicle_code)) {
|
||||||
// 通过任务号获取任务中的
|
throw new BadRequestException("条码不能为空!");
|
||||||
JSONObject taskObj = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0);
|
}
|
||||||
String group_id = taskObj.getString("group_id");
|
String task_code = whereJson.getString("task_code");
|
||||||
|
if (StrUtil.isBlank(task_code)) {
|
||||||
|
throw new BadRequestException("任务编码不能为空!");
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONObject result = new JSONObject();
|
||||||
JSONObject rywPoint = pointTab.query("point_code = 'RYW'").uniqueResult(0);
|
result.put("status", HttpStatus.OK.value());
|
||||||
JSONObject group = groupTab.query("group_id = '" + group_id + "'").uniqueResult(0);
|
result.put("message", "组盘成功!");
|
||||||
group.put("vehicle_code", vehicle_code);
|
return result;
|
||||||
group.put("create_time", DateUtil.now());
|
|
||||||
groupTab.update(group);
|
|
||||||
// 清理点位
|
|
||||||
rywPoint.put("point_status", PointEnum.POINT_STATUS_EMPTY_POSITION.getCode());
|
|
||||||
pointTab.update(rywPoint);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Binary file not shown.
@@ -6,7 +6,7 @@ spring:
|
|||||||
druid:
|
druid:
|
||||||
db-type: com.alibaba.druid.pool.DruidDataSource
|
db-type: com.alibaba.druid.pool.DruidDataSource
|
||||||
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||||
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lnsh_lms3}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useOldAliasMetadataBehavior=true
|
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lnsh_lms4}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useOldAliasMetadataBehavior=true
|
||||||
username: ${DB_USER:root}
|
username: ${DB_USER:root}
|
||||||
password: ${DB_PWD:123456}
|
password: ${DB_PWD:123456}
|
||||||
# 初始连接数
|
# 初始连接数
|
||||||
|
|||||||
Reference in New Issue
Block a user