代码更新
This commit is contained in:
@@ -53,11 +53,11 @@ public class AcsToWmsController {
|
||||
return new ResponseEntity<>(acsToWmsService.apply(whereJson), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/towApply")
|
||||
@PostMapping("/againApply")
|
||||
@Log("二次申请任务")
|
||||
@ApiOperation("二次申请任务")
|
||||
@SaCheckPermission("menu:list")
|
||||
public ResponseEntity<Object> towApply(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(acsToWmsService.towApply(whereJson), HttpStatus.OK);
|
||||
public ResponseEntity<Object> towApply(@RequestBody String task_id) {
|
||||
return new ResponseEntity<>(acsToWmsService.againApply(task_id), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,12 +51,4 @@ public interface AcsToWmsService {
|
||||
*/
|
||||
JSONObject apply(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* ACS客户端--->LMS服务端
|
||||
* 二次任务申请
|
||||
*
|
||||
* @param whereJson 条件
|
||||
* @return JSONObject
|
||||
*/
|
||||
JSONObject towApply(JSONObject whereJson);
|
||||
}
|
||||
|
||||
@@ -112,8 +112,21 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
return result;
|
||||
}
|
||||
|
||||
@LokiLog(type = LokiLogType.ACS_TO_LMS)
|
||||
@Override
|
||||
public String againApply(String task_id) {
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
|
||||
JSONObject jsonTask = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0);
|
||||
|
||||
try {
|
||||
Class<?> clz = Class.forName(jsonTask.getString("handle_class"));
|
||||
Object obj = clz.newInstance();
|
||||
Method m = obj.getClass().getDeclaredMethod("againApply", JSONObject.class, String.class);
|
||||
Object invoke = m.invoke(task_id);
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -362,35 +375,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public JSONObject towApply(JSONObject whereJson) {
|
||||
/*
|
||||
* 1.入空载具
|
||||
* 2.出空载具
|
||||
* 3.入物料
|
||||
* 4.出物料
|
||||
*/
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表
|
||||
WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); // 点位表
|
||||
|
||||
String task_id = whereJson.getString("task_id");
|
||||
|
||||
JSONObject jsonTask = taskTab.query("task_id ='" + task_id + "'").uniqueResult(0);
|
||||
JSONObject jsonPoint2 = pointTab.query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
|
||||
if (StrUtil.equals(jsonTask.getString("acs_task_type"), "1")) {
|
||||
// 根据 point_code2 的类型找对对应的列
|
||||
pointTab.query("region_id = '"+jsonPoint2.getString("region_id")+
|
||||
"' and block_num = '"+jsonPoint2.getString("block_num")+
|
||||
"' and col_num = '"+jsonPoint2.getString("col_num")+
|
||||
"' and point_status = '2' order by in_empty_seq ASC").uniqueResult(0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@LokiLog(type = LokiLogType.ACS_TO_LMS)
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public JSONObject inCreateRegion(JSONObject json) {
|
||||
|
||||
@@ -65,7 +65,7 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
JSONObject endPoint = pointTab.query("point_code = '" + point_code + "'").uniqueResult(0);
|
||||
|
||||
//终点是叠盘架
|
||||
if (StrUtil.equals(endPoint.getString("region_id"),RegionTypeEnum.DPJQA.getId())) {
|
||||
if (StrUtil.equals(endPoint.getString("region_id"), RegionTypeEnum.DPJQA.getId())) {
|
||||
Integer vehicle_qty = endPoint.getInteger("vehicle_qty");
|
||||
vehicle_qty += jsonTask.getInteger("vehicle_qty");
|
||||
endPoint.put("lock_type", "1");
|
||||
@@ -152,12 +152,12 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
// 如果此时point_code2为空则生成起点确认的任务
|
||||
if (ObjectUtil.isEmpty(point_code2)) {
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("task_status","2");
|
||||
param.put("point_code1",point_code1);
|
||||
param.put("vehicle_type",jsonVehicle.getString("vehicle_type"));
|
||||
param.put("vehicle_qty",qty);
|
||||
param.put("vehicle_code",jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type","1");
|
||||
param.put("task_status", "2");
|
||||
param.put("point_code1", point_code1);
|
||||
param.put("vehicle_type", jsonVehicle.getString("vehicle_type"));
|
||||
param.put("vehicle_qty", qty);
|
||||
param.put("vehicle_code", jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type", "1");
|
||||
task_id = this.pubCreateTask(param);
|
||||
} else {
|
||||
// 说明货梯无任务:找终点
|
||||
@@ -169,12 +169,12 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
// 如果终点为空则创建起点确定的任务
|
||||
if (ObjectUtil.isEmpty(endPoint)) {
|
||||
JSONObject param2 = new JSONObject();
|
||||
param2.put("task_status","2");
|
||||
param2.put("point_code1",point_code1);
|
||||
param2.put("vehicle_type",jsonVehicle.getString("vehicle_type"));
|
||||
param2.put("vehicle_qty",qty);
|
||||
param2.put("vehicle_code",jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type","1");
|
||||
param2.put("task_status", "2");
|
||||
param2.put("point_code1", point_code1);
|
||||
param2.put("vehicle_type", jsonVehicle.getString("vehicle_type"));
|
||||
param2.put("vehicle_qty", qty);
|
||||
param2.put("vehicle_code", jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type", "1");
|
||||
task_id = this.pubCreateTask(param2);
|
||||
} else {
|
||||
// 不为空则创建到养生A区等待点的任务
|
||||
@@ -183,13 +183,13 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
// String sub_1 = endPoint.substring(0, endPoint.indexOf("-"));
|
||||
// String sub_2 = endPoint.substring(endPoint.indexOf("-"), endPoint.length());
|
||||
JSONObject param2 = new JSONObject();
|
||||
param2.put("task_status","4");
|
||||
param2.put("point_code1",point_code1);
|
||||
param2.put("point_code2",endPoint);
|
||||
param2.put("vehicle_type",jsonVehicle.getString("vehicle_type"));
|
||||
param2.put("vehicle_qty",qty);
|
||||
param2.put("vehicle_code",jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type","1");
|
||||
param2.put("task_status", "4");
|
||||
param2.put("point_code1", point_code1);
|
||||
param2.put("point_code2", endPoint);
|
||||
param2.put("vehicle_type", jsonVehicle.getString("vehicle_type"));
|
||||
param2.put("vehicle_qty", qty);
|
||||
param2.put("vehicle_code", jsonVehicle.getString("vehicle_code"));
|
||||
param.put("acs_task_type", "1");
|
||||
task_id = this.pubCreateTask(param2);
|
||||
|
||||
// 锁定终点
|
||||
@@ -280,8 +280,8 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
// 更新任务表point_code2
|
||||
jsonTask.put("point_code2",endPoint);
|
||||
jsonTask.put("task_status","4");
|
||||
jsonTask.put("point_code2", endPoint);
|
||||
jsonTask.put("task_status", "4");
|
||||
taskTab.update(jsonTask);
|
||||
|
||||
// 锁定终点
|
||||
@@ -377,7 +377,7 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表
|
||||
|
||||
JSONObject jsonTask = new JSONObject();
|
||||
jsonTask.put("task_id", IdUtil.getSnowflake(1,1).nextId());
|
||||
jsonTask.put("task_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
jsonTask.put("task_code", CodeUtil.getNewCode("TASK_CODE"));
|
||||
jsonTask.put("task_type", "");
|
||||
jsonTask.put("task_status", param.getString("task_status"));
|
||||
@@ -416,4 +416,48 @@ public class HtSendEmpVehicleTask extends AbstractAcsTask {
|
||||
return result;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String againApply(String task_id) {
|
||||
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表
|
||||
WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); // 点位表
|
||||
|
||||
String point_code = "";
|
||||
|
||||
JSONObject jsonTask = taskTab.query("task_id ='" + task_id + "'").uniqueResult(0);
|
||||
JSONObject jsonPoint2 = pointTab.query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
|
||||
|
||||
// 根据 区域、块、列找到第一个有物料的货位
|
||||
JSONObject jsonOnePoint = pointTab.query("region_id = '" + jsonPoint2.getString("region_id") +
|
||||
"' and block_num = '" + jsonPoint2.getString("block_num") +
|
||||
"' and col_num = '" + jsonPoint2.getString("col_num") +
|
||||
"' and point_code <> '"+jsonPoint2.getString("point_code")+
|
||||
"' and point_status = '2' order by in_empty_seq ASC").uniqueResult(0);
|
||||
|
||||
// 如果为空说明这一列其他货位为空 则入到最后一个货位
|
||||
if (ObjectUtil.isEmpty(jsonOnePoint)) {
|
||||
JSONObject jsonEmpPoint = pointTab.query("region_id = '" + jsonPoint2.getString("region_id") +
|
||||
"' and block_num = '" + jsonPoint2.getString("block_num") +
|
||||
"' and col_num = '" + jsonPoint2.getString("col_num") +
|
||||
"' and point_code <> '"+jsonPoint2.getString("point_code")+
|
||||
"' and point_status = '1' order by in_empty_seq DESC").uniqueResult(0);
|
||||
|
||||
if (ObjectUtil.isEmpty(jsonEmpPoint)) point_code = jsonEmpPoint.getString("point_code");
|
||||
} else {
|
||||
// 找前一位的空位
|
||||
double in_empty_seq = NumberUtil.sub(jsonOnePoint.getIntValue("in_empty_seq"), 1);
|
||||
|
||||
JSONObject jsonEmpPoint = pointTab.query("region_id = '" + jsonPoint2.getString("region_id") +
|
||||
"' and block_num = '" + jsonPoint2.getString("block_num") +
|
||||
"' and col_num = '" + jsonPoint2.getString("col_num") +
|
||||
"' and point_code <> '"+jsonPoint2.getString("point_code")+
|
||||
"' and in_empty_seq = '"+ in_empty_seq +
|
||||
"' and point_status = '1'").uniqueResult(0);
|
||||
|
||||
if (ObjectUtil.isNotEmpty(jsonEmpPoint)) point_code = jsonEmpPoint.getString("point_code");
|
||||
}
|
||||
|
||||
return point_code;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user