测试提交
This commit is contained in:
@@ -118,7 +118,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode()) && stewing_time <= 0) {
|
||||
//1.首先更新所有输送线的点位状态
|
||||
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", "07").addParam("flag", "4").process().getResultJSONArray(0);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
//2.找一个合适的输送带
|
||||
JSONObject pointObj = StructFindUtil.getConveyor(materiralObj);
|
||||
//如果未找到合适的输送带 就去货架
|
||||
@@ -131,9 +131,16 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
}
|
||||
//假如是分拣机械手的下料位置,并且是满托,则去包装线
|
||||
if (StrUtil.equals("1", is_full) && StrUtil.equals(area_type, AreaEnum.FJQY.getCode())) {
|
||||
String vehicle_code = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("vehicle_code");
|
||||
jsonObject.put("vehicle_code", vehicle_code);
|
||||
toPackIngTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
||||
break;
|
||||
}
|
||||
//假如是分拣机械手的下料位置,则需要将点位上的托盘号写入
|
||||
if (StrUtil.equals(area_type, AreaEnum.FJQY.getCode())) {
|
||||
String vehicle_code = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("vehicle_code");
|
||||
jsonObject.put("vehicle_code", vehicle_code);
|
||||
}
|
||||
sendMaterialTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
||||
break;
|
||||
case "2":
|
||||
@@ -162,7 +169,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
if (StrUtil.equals(device_code, "FJJXSXLW201") ||
|
||||
StrUtil.equals(device_code, "FJJXSXLW202") ||
|
||||
StrUtil.equals(device_code, "FJJXSXLW301") ||
|
||||
StrUtil.equals(device_code, "FJJXSXLW301")
|
||||
StrUtil.equals(device_code, "FJJXSXLW302")
|
||||
) {
|
||||
|
||||
material_id = produceInfoByCode.getString("material_id");
|
||||
@@ -185,7 +192,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
}
|
||||
//需要更新覆膜机的托盘类型
|
||||
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", "05").addParam("flag", "4").process().getResultJSONArray(0);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
}
|
||||
if (ObjectUtil.isEmpty(produceInfoByCode)) {
|
||||
throw new BadRequestException("未找到点位为'" + device_code + "'对应机械手的生产工单!");
|
||||
@@ -193,7 +200,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
jsonObject.put("vehicle_type", produceInfoByCode.getString("vehicle_type"));
|
||||
//需要更新堆叠位的点位状态
|
||||
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("point_code", "KTPDDW5").addParam("flag", "4").process().getResultJSONArray(0);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
PointUpdateUtil.updatePoint(pointarr);
|
||||
callEmptyVehicleTask.createTask((JSONObject) JSON.toJSON(jsonObject));
|
||||
break;
|
||||
//生产rgv搬运任务
|
||||
@@ -520,15 +527,21 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Map<String, Object> getVehicleInfoBycode(Map jsonObject) {
|
||||
String vehicle_code = (String) jsonObject.get("vehicle_code");
|
||||
String device_code = (String) jsonObject.get("device_code");
|
||||
WQLObject point_table = WQLObject.getWQLObject("sch_base_point");
|
||||
String vehicle_code = point_table.query("point_code='" + device_code + "'").uniqueResult(0).getString("vehicle_code");
|
||||
if (StrUtil.isEmpty(vehicle_code)) {
|
||||
throw new BadRequestException("托盘编码不能为空!");
|
||||
throw new BadRequestException("未找到该点位上的托盘信息!");
|
||||
}
|
||||
JSONObject vehicleObj = WQLObject.getWQLObject("st_buss_vehiclegroup").query("vehicle_code='" + vehicle_code + "' AND is_delete='0'").uniqueResult(0);
|
||||
if (ObjectUtil.isEmpty(vehicleObj)) {
|
||||
throw new BadRequestException("未找到托盘号为'" + vehicle_code + "'的托盘信息!");
|
||||
}
|
||||
return vehicleObj;
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("status", HttpStatus.OK.value());
|
||||
result.put("message", "任务状态反馈成功!");
|
||||
result.put("content", vehicleObj);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -4,6 +4,7 @@ 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.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.nl.exception.BadRequestException;
|
||||
@@ -12,6 +13,7 @@ import org.nl.utils.SecurityUtils;
|
||||
import org.nl.utils.SpringContextHolder;
|
||||
import org.nl.wms.WorkProcedureEnum;
|
||||
import org.nl.wms.common.StructFindUtil;
|
||||
import org.nl.wms.database.service.dto.VehicleDto;
|
||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||
import org.nl.wms.sch.manage.AreaEnum;
|
||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||
@@ -211,7 +213,7 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
JSONObject param = new JSONObject();
|
||||
//如果托盘类型不是02,则需要加上托盘类型
|
||||
if (!StrUtil.equals(vehicle_type,"02")){
|
||||
if (!StrUtil.equals(vehicle_type, "02")) {
|
||||
param.put("vehicle_type", vehicle_type);
|
||||
}
|
||||
|
||||
@@ -222,12 +224,28 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
vehicle_code = outStructObj.getString("vehicle_code");
|
||||
if (StrUtil.isEmpty(vehicle_code)){
|
||||
vehicle_code="999";
|
||||
if (StrUtil.isEmpty(vehicle_code)) {
|
||||
vehicle_code = "999";
|
||||
}
|
||||
//如果是托盘区域/生成一个该类型的托盘
|
||||
if (StrUtil.equals(workInfo.getString("workprocedure_code"), AreaEnum.MTPQ.getCode())) {
|
||||
if (StrUtil.equals(workInfo.getString("area_type"), AreaEnum.FJQY.getCode())) {
|
||||
vehicle_code = CodeUtil.getNewCode("VEHICCLE_CODE_MTP");
|
||||
//将托盘插入托盘表
|
||||
WQLObject wo = WQLObject.getWQLObject("MD_PB_Vehicle");
|
||||
JSONObject jo = new JSONObject();
|
||||
VehicleDto dto = new VehicleDto();
|
||||
dto.setVehicle_id(IdUtil.getSnowflake(1, 1).nextId());
|
||||
dto.setVehicle_code(vehicle_code);
|
||||
dto.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
dto.setVehicle_name(vehicle_code);
|
||||
dto.setCreate_name(SecurityUtils.getNickName());
|
||||
dto.setUpdate_optid(SecurityUtils.getCurrentUserId());
|
||||
dto.setUpdate_optname(SecurityUtils.getNickName());
|
||||
dto.setUpdate_time(DateUtil.now());
|
||||
dto.setCreate_time(DateUtil.now());
|
||||
dto.setVehicle_type(vehicle_type);
|
||||
JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
|
||||
wo.insert(json);
|
||||
}
|
||||
|
||||
start_point_code = outStructObj.getString("struct_code");
|
||||
|
||||
@@ -322,8 +322,8 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
iosObj.put("create_mode", create_mode);
|
||||
iosObj.put("task_id", task_id);
|
||||
iosObj.put("pcsn", pcsn);
|
||||
iosObj.put("create_id","1");
|
||||
iosObj.put("create_name", "管理员");
|
||||
iosObj.put("create_id",SecurityUtils.getCurrentUserId());
|
||||
iosObj.put("create_name", SecurityUtils.getNickName());
|
||||
iosObj.put("create_time", DateUtil.now());
|
||||
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
|
||||
//将组盘里面的task_id改为当前的任务
|
||||
@@ -370,8 +370,8 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
taskObj.put("vehicle_code", vehicle_code);
|
||||
taskObj.put("handle_class", THIS_CLASS);
|
||||
taskObj.put("is_auto_issue", "1");
|
||||
taskObj.put("create_name", "管理员");
|
||||
taskObj.put("create_id", "1");
|
||||
taskObj.put("create_name", SecurityUtils.getNickName());
|
||||
taskObj.put("create_id", SecurityUtils.getCurrentUserId());
|
||||
taskObj.put("create_time", DateUtil.now());
|
||||
taskObj.put("is_delete", "0");
|
||||
taskTable.insert(taskObj);
|
||||
|
||||
@@ -272,6 +272,10 @@ public class SendMaterialTask extends AbstractAcsTask {
|
||||
stewing_time = WQLObject.getWQLObject("md_me_material").query("material_id ='" + material_id + "'").
|
||||
uniqueResult(0).getString("stewing_time");
|
||||
}
|
||||
//假如是烧制工序,静置时间都是0
|
||||
if (StrUtil.equals(workProcedureEnum.getCode(), WorkProcedureEnum.SZGX.getCode())) {
|
||||
stewing_time = "0";
|
||||
}
|
||||
JSONObject iosObj = new JSONObject();
|
||||
iosObj.put("iostorinv_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
iosObj.put("bill_code", CodeUtil.getNewCode("IN_STORE_CODE"));
|
||||
@@ -328,10 +332,11 @@ public class SendMaterialTask extends AbstractAcsTask {
|
||||
taskObj.put("is_delete", "0");
|
||||
taskTable.insert(taskObj);
|
||||
|
||||
// 如果是压料制下需要更新组盘信息,将task_id 更新
|
||||
// 如果是压料制下,或者是分拣送料需要更新组盘信息,将task_id 更新
|
||||
JSONObject workInfo = WQL.getWO("QSTRUCT_RULE").addParam("flag", "1").addParam("code", start_point_code)
|
||||
.process().uniqueResult(0);
|
||||
if (StrUtil.equals(WorkProcedureEnum.YZGX.getCode(), workInfo.getString("workprocedure_code"))) {
|
||||
if (StrUtil.equals(WorkProcedureEnum.YZGX.getCode(), workInfo.getString("workprocedure_code"))
|
||||
||StrUtil.equals(WorkProcedureEnum.FJGX.getCode(), workInfo.getString("workprocedure_code"))) {
|
||||
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
||||
JSONObject groupInfo = groupTable.query("group_id='" + group_id + "'").uniqueResult(0);
|
||||
if (ObjectUtil.isNotEmpty(groupInfo)) {
|
||||
|
||||
@@ -59,6 +59,20 @@ public class ToPackIngTask extends AbstractAcsTask {
|
||||
jsonTask.put("update_time", DateUtil.now());
|
||||
jsonTask.put("remark", "任务执行完成");
|
||||
taskTab.update(jsonTask);
|
||||
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
|
||||
//将起点的载具清除
|
||||
JSONObject startPointObj = pointTab.query("point_code='" + jsonTask.getString("start_point_code") + "'").uniqueResult(0);
|
||||
startPointObj.put("lock_type", "00");
|
||||
startPointObj.put("point_status", "00");
|
||||
startPointObj.put("vehicle_code", "");
|
||||
pointTab.update(startPointObj);
|
||||
//将组盘表删除
|
||||
WQLObject group_Table = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
||||
JSONObject groupObj = group_Table.query("vehicle_code='" + jsonTask.getString("vehicle_code") + "' and is_delete='0'").uniqueResult(0);
|
||||
if (ObjectUtil.isNotEmpty(groupObj)) {
|
||||
groupObj.put("is_delete", "0");
|
||||
group_Table.update(groupObj);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user