feat: 二期ACS气胀轴二次分配
This commit is contained in:
@@ -390,6 +390,7 @@ public class SlitterServiceImpl implements SlitterService {
|
||||
@SneakyThrows
|
||||
@Override
|
||||
public JSONObject acsSendShaftToCache(JSONObject param) {
|
||||
// 需要请求放货
|
||||
log.info("ACS申请送气涨轴到气涨轴暂存位的输入参数为:{}", param);
|
||||
String lock = "lock";
|
||||
JSONObject res = new JSONObject();
|
||||
@@ -409,15 +410,21 @@ public class SlitterServiceImpl implements SlitterService {
|
||||
BstIvtShafttubeivt startPoint = shafttubeivtService.getByPointCode(deviceCode, false);
|
||||
// 临时存放气涨轴尺寸
|
||||
startPoint.setQzz_size(qzzSize);
|
||||
// 获取等待点(放货点)
|
||||
// 获取空位
|
||||
List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCacheEmpty(startPoint);
|
||||
if (shafttubeivts.size() == 0) {
|
||||
throw new BadRequestException("未找到可存放气涨轴规格「" + qzzSize + "」的空暂存位");
|
||||
// List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCacheEmpty(startPoint);
|
||||
// if (shafttubeivts.size() == 0) {
|
||||
// throw new BadRequestException("未找到可存放气涨轴规格「" + qzzSize + "」的空暂存位");
|
||||
// }
|
||||
BstIvtShafttubeivt putWaitPoint = shafttubeivtService.getOne(new LambdaQueryWrapper<BstIvtShafttubeivt>()
|
||||
.eq(BstIvtShafttubeivt::getPoint_location, startPoint.getPoint_location())
|
||||
.eq(BstIvtShafttubeivt::getPoint_type, "8"));
|
||||
if (ObjectUtil.isNotEmpty(putWaitPoint)) {
|
||||
throw new BadRequestException("未找到可存放气涨轴规格「" + qzzSize + "」的等待点位");
|
||||
}
|
||||
BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0);
|
||||
// 创建任务
|
||||
param.put("point_code1", deviceCode);
|
||||
param.put("point_code2", shafttubeivt.getPoint_code());
|
||||
param.put("point_code2", putWaitPoint.getPoint_code());
|
||||
// hint: 当前分切计划的气涨轴尺寸
|
||||
param.put("qzz_size", qzzSize);
|
||||
param.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴位<>气胀轴缓存位"));
|
||||
@@ -452,14 +459,20 @@ public class SlitterServiceImpl implements SlitterService {
|
||||
}
|
||||
BstIvtShafttubeivt startPoint = shafttubeivtService.getByPointCode(deviceCode, false);
|
||||
// 获取气涨轴缓存没有任务的点位
|
||||
List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCache(qzzSize,
|
||||
startPoint.getQzz_generation(), startPoint.getPoint_location());
|
||||
if (shafttubeivts.size() == 0) {
|
||||
throw new BadRequestException("未找到气涨轴规格「" + qzzSize + "」的暂存位");
|
||||
// List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCache(qzzSize,
|
||||
// startPoint.getQzz_generation(), startPoint.getPoint_location());
|
||||
// if (shafttubeivts.size() == 0) {
|
||||
// throw new BadRequestException("未找到气涨轴规格「" + qzzSize + "」的暂存位");
|
||||
// }
|
||||
BstIvtShafttubeivt pickWaitPoint = shafttubeivtService.getOne(new LambdaQueryWrapper<BstIvtShafttubeivt>()
|
||||
.eq(BstIvtShafttubeivt::getPoint_location, startPoint.getPoint_location())
|
||||
.eq(BstIvtShafttubeivt::getPoint_type, "7"));
|
||||
if (ObjectUtil.isNotEmpty(pickWaitPoint)) {
|
||||
throw new BadRequestException("未找到可存放气涨轴规格「" + qzzSize + "」的等待点位");
|
||||
}
|
||||
BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0);
|
||||
// BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0);
|
||||
JSONObject taskParam = new JSONObject();
|
||||
taskParam.put("point_code1", shafttubeivt.getPoint_code());
|
||||
taskParam.put("point_code1", pickWaitPoint.getPoint_code());
|
||||
taskParam.put("point_code2", startPoint.getPoint_code());
|
||||
taskParam.put("is_bushing", SlitterConstant.SLITTER_YES);
|
||||
taskParam.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴位<>气胀轴缓存位"));
|
||||
|
||||
@@ -35,11 +35,6 @@ public class AcsToWmsController {
|
||||
return new ResponseEntity<>(acsToWmsService.receiveTaskStatusAcs(string), HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/orderFinish")
|
||||
@Log(value = "ACS给WMS下发工单完成状态", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS)
|
||||
|
||||
@@ -230,6 +225,13 @@ public class AcsToWmsController {
|
||||
return new ResponseEntity<>(acsToWmsService.acsCallShaftFromCache(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/acsRequestPoint")
|
||||
@Log(value = "二期ACS请求出轴", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS)
|
||||
@SaIgnore
|
||||
public ResponseEntity<Object> acsRequestPoint(@RequestBody JSONObject param) {
|
||||
return new ResponseEntity<>(acsToWmsService.acsRequestPoint(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/forceMove")
|
||||
@Log(value = "二期捆扎位ACS请求强制离开", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS)
|
||||
@SaIgnore
|
||||
|
||||
@@ -239,4 +239,11 @@ public interface AcsToWmsService {
|
||||
* @return JSONObject
|
||||
*/
|
||||
JSONObject forceMove(JSONObject param);
|
||||
|
||||
/**
|
||||
* 二期请求放货/取货
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
JSONObject acsRequestPoint(JSONObject param);
|
||||
}
|
||||
|
||||
@@ -19,6 +19,8 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.nl.b_lms.bst.ivt.shafttubeivt.service.IBstIvtShafttubeivtService;
|
||||
import org.nl.b_lms.bst.ivt.shafttubeivt.service.dao.BstIvtShafttubeivt;
|
||||
import org.nl.b_lms.pda.service.ProductOutTwoService;
|
||||
import org.nl.b_lms.pdm.bi.slittingproductionplan.service.IPdmBiSlittingproductionplanService;
|
||||
import org.nl.b_lms.pdm.bi.slittingproductionplan.service.dao.PdmBiSlittingproductionplan;
|
||||
@@ -165,6 +167,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
|
||||
@Autowired
|
||||
private IStIvtIostorinvOutService iStIvtIostorinvOutService;
|
||||
@Autowired
|
||||
private IBstIvtShafttubeivtService shafttubeivtService;
|
||||
|
||||
|
||||
/**
|
||||
@@ -2730,4 +2734,66 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
log.info("forceMove返回参数:---------------------------------------------{}", result.toString());
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject acsRequestPoint(JSONObject param) {
|
||||
log.info("acsRequestPoint输入参数为--------------------------:" + param.toString());
|
||||
JSONObject result = new JSONObject();
|
||||
// task_code、type
|
||||
String type = param.getString("type");
|
||||
String taskCode = param.getString("task_code");
|
||||
SchBaseTask task = taskService.getOne(new LambdaQueryWrapper<SchBaseTask>()
|
||||
.eq(SchBaseTask::getTask_code, taskCode)
|
||||
.eq(SchBaseTask::getIs_delete, "0"));
|
||||
if (ObjectUtil.isEmpty(task)) {
|
||||
throw new BadRequestException("任务号【" + taskCode + "】对应的任务找不到!");
|
||||
}
|
||||
String targetPoint = "";
|
||||
if ("1".equals(type)) {
|
||||
// 请求取货
|
||||
String deviceCode = task.getPoint_code2();
|
||||
BstIvtShafttubeivt startPoint = shafttubeivtService.getByPointCode(deviceCode, false);
|
||||
JSONObject requestParam = JSONObject.parseObject(task.getRequest_param());
|
||||
String qzzSize = requestParam.getString("qzz_size");
|
||||
// 获取气涨轴缓存没有任务的点位
|
||||
List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCache(qzzSize,
|
||||
startPoint.getQzz_generation(), startPoint.getPoint_location());
|
||||
if (shafttubeivts.size() == 0) {
|
||||
throw new BadRequestException("未找到气涨轴规格「" + qzzSize + "」的暂存位");
|
||||
}
|
||||
BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0);
|
||||
targetPoint = shafttubeivt.getPoint_code();
|
||||
// 修改任务
|
||||
task.setPoint_code1(targetPoint);
|
||||
task.setRemark("取货请求成功");
|
||||
task.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
if ("2".equals(type)) {
|
||||
// 请求放货
|
||||
// 穿拔轴点位
|
||||
String deviceCode = task.getPoint_code1();
|
||||
BstIvtShafttubeivt startPoint = shafttubeivtService.getByPointCode(deviceCode, false);
|
||||
JSONObject requestParam = JSONObject.parseObject(task.getRequest_param());
|
||||
String qzzSize = requestParam.getString("qzz_size");
|
||||
// 临时存放气涨轴尺寸
|
||||
startPoint.setQzz_size(qzzSize);
|
||||
// 获取空位
|
||||
List<BstIvtShafttubeivt> shafttubeivts = shafttubeivtService.getNotTaskShaftCacheEmpty(startPoint);
|
||||
if (shafttubeivts.size() == 0) {
|
||||
throw new BadRequestException("未找到可存放气涨轴规格「" + qzzSize + "」的空暂存位");
|
||||
}
|
||||
BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0);
|
||||
targetPoint = shafttubeivt.getPoint_code();
|
||||
// 修改任务
|
||||
task.setPoint_code2(targetPoint);
|
||||
task.setRemark("放货请求成功");
|
||||
task.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
taskService.updateById(task);
|
||||
result.put("status", HttpStatus.OK.value());
|
||||
result.put("device_code", targetPoint);
|
||||
result.put("message", "反馈成功!");
|
||||
log.info("acsRequestPoint输出参数为--------------------------:" + result.toString());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user