测试提交

This commit is contained in:
18188916393
2022-08-18 08:50:52 +08:00
parent 97756e5a41
commit 512cd3acd3
6 changed files with 67 additions and 17 deletions

View File

@@ -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

View File

@@ -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");

View File

@@ -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);

View File

@@ -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)) {

View File

@@ -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);
}
}
}