fix:一次配盘区编码

add:工单配盘绑定点位
This commit is contained in:
zhaoyf
2026-07-03 16:18:02 +08:00
parent 3d8817994e
commit a6c3ee58b2
4 changed files with 17 additions and 47 deletions

View File

@@ -8,7 +8,7 @@ public class RegionConstant {
/**
* 一次配盘区编码
*/
public static final String FIRST_MEAL = "firstMeal";
public static final String FIRST_MEAL = "EB1";
/**
* 机加工二次配盘区,原料线边库

View File

@@ -1,12 +1,9 @@
package org.nl.wms.ext_manage.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.IdUtil;
import org.nl.config.SpringContextHolder;
import org.nl.wms.ext_manage.service.MesToWmsService;
import org.nl.wms.ext_manage.service.dto.MesTaskParams;
@@ -18,15 +15,12 @@ import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
import org.nl.wms.warehouse_manage.stockReturn.service.IPmStockReturnService;
import org.nl.wms.warehouse_manage.stockReturn.service.dao.PmStockReturn;
import org.nl.wms.warehouse_manage.stockReturn.service.enums.StockReturnStatusEnum;
import org.nl.wms.welding_manage.service.work_order.IWorkOrderService;
import org.nl.wms.welding_manage.service.work_order.dao.WorkOrderBomDao;
import org.nl.wms.welding_manage.service.work_order.dao.WorkOrderDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@@ -56,13 +50,15 @@ public class MesToWmsServiceImpl implements MesToWmsService {
//不用处理顺序执行
case "3"://返空
case "4"://托盘余料退回
//TODO
String[] empVehLocation = {"EB101101","EB101102"};//暂定空托对接位
if (StrUtil.isEmptyIfStr(vehicleCode)) {
throw new BadRequestException("请求失败,上料口没有绑定托盘");
}
//获取回空对接位
SchBasePoint pointDJ = iSchBasePointService.getOne(new LambdaQueryWrapper<SchBasePoint>()
.isNull(SchBasePoint::getVehicle_code)
.likeRight(SchBasePoint::getPoint_code, mesTaskParams.getLineCode() + "DJ"));
.in(SchBasePoint::getPoint_code, Arrays.asList(empVehLocation)));
if (pointDJ == null) {
throw new BadRequestException("未找到空闲返空对接位");
}
@@ -101,45 +97,7 @@ public class MesToWmsServiceImpl implements MesToWmsService {
taskFormCall.put("create_name", "MES");
LineCallFullTask lineCallFullTask = SpringContextHolder.getBean("LineCallFullTask");
lineCallFullTask.create(taskFormCall);
//调用eas领料出库单
//获取工单信息
WorkOrderDao workOrder = iWorkOrderService.getWorkOrder(mesTaskParams.getOrderCode());
List<WorkOrderBomDao> orderBomItems = iWorkOrderService.getOrderBomItem(mesTaskParams.getOrderCode());
// 创建最外层的JSONObject
JSONObject root = new JSONObject();
root.put("method", "DealMaterailReqBill");
root.put("type", "MES");
// 创建data对象
JSONObject data = new JSONObject();
data.put("bizStatus", "02");
data.put("mesNo", IdUtil.getLongId());
// 创建entrys数组
JSONArray entrys = new JSONArray();
// 创建第一个entry对象
JSONObject entry = new JSONObject();
for (WorkOrderBomDao orderBomItem : orderBomItems) {
entry.put("qty", groupPlate.getQty());
entry.put("sourceBillId", workOrder.getOrder_id());
entry.put("sourceBillEntryId", orderBomItem.getItem_id());
entry.put("sourceBillNo", workOrder.getOrder_code());
}
// 将entry添加到数组中
entrys.add(entry);
// 将entrys数组设置到data中
data.put("entrys", entrys);
// 将data设置到根对象中
root.put("data", data);
// ErpUtil.create().login().audit(root.toJSONString());
//保存回传单
PmStockReturn stockReturn = new PmStockReturn();
stockReturn.setRequest_Id(workOrder.getOrder_id());
stockReturn.setRequest_type(IOSEnum.BILL_TYPE.code("生产领料"));
stockReturn.setStatus(StockReturnStatusEnum.TODO.getCode()); // 0-处理中
stockReturn.setCreate_time(DateUtil.now());
stockReturn.setRequest_data(root.toJSONString());
iPmStockReturnService.save(stockReturn);
if (Objects.equals(mesTaskParams.getRequestedCode(), "2")) break;
}
}

View File

@@ -14,6 +14,8 @@ public class GroupPalletDto {
private String palletCode;
private String pointCode;
private String loadPort;
private List<BomData> bomDataList;

View File

@@ -1,8 +1,11 @@
package org.nl.wms.welding_manage.service.product_group.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.utils.IdUtil;
import org.nl.wms.sch_manage.service.ISchBasePointService;
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
import org.nl.wms.warehouse_manage.service.dao.mapper.MdPbGroupplateMapper;
import org.nl.wms.welding_manage.enums.work_order.StatusEnum;
import org.nl.wms.welding_manage.service.product_group.IProductGroupService;
@@ -30,6 +33,9 @@ public class ProductGroupServiceImpl implements IProductGroupService {
@Autowired
private MdPbGroupplateMapper GroupPlateMapper;
@Autowired
private ISchBasePointService schBasePointService;
@Override
@Transactional
public void groupPallet(GroupPalletDto dto) {
@@ -83,5 +89,9 @@ public class ProductGroupServiceImpl implements IProductGroupService {
//执行批量新增
GroupPlateMapper.insertAllData(groupPalletList);
}
//绑定站点
schBasePointService.update(new LambdaUpdateWrapper<SchBasePoint>()
.set(SchBasePoint::getVehicle_code, dto.getPalletCode())
.eq(SchBasePoint::getPoint_code, dto.getPointCode()));
}
}