Commit c3e77ded LN

NL料架扫码出库增加工单验证

1 个父辈 70a66a6b
package com.neotel.smfcore.core.device.handler.impl;
import cn.hutool.core.util.ObjectUtil;
import com.google.common.base.Strings;
import com.neotel.smfcore.common.bean.ResultBean;
import com.neotel.smfcore.common.exception.ValidateException;
......@@ -8,6 +9,8 @@ import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.device.api.IOpAuthApi;
import com.neotel.smfcore.core.device.bean.NLShelfOperateBean;
import com.neotel.smfcore.core.device.bean.StatusBean;
import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager;
import com.neotel.smfcore.core.order.service.po.LiteOrder;
import com.neotel.smfcore.core.storage.enums.DeviceType;
import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.core.storage.service.po.StoragePos;
......@@ -44,6 +47,9 @@ public class NLShelfHandler extends BaseDeviceHandler {
@Autowired
private TaskService taskService;
@Autowired
private ILiteOrderManager liteOrderManager;
@Override
public StatusBean handleClientRequest(StatusBean statusBean, HttpServletRequest request) {
handleMsg(statusBean);
......@@ -260,13 +266,18 @@ public class NLShelfHandler extends BaseDeviceHandler {
StoragePos inPos = storagePosManager.getByBarcodeId(barcode.getId());
if (inPos != null) {
// String sourceName = request.getParameter("sourceName");
Collection<DataLog> allTasks = taskService.getQueueTasks();
for (DataLog task : allTasks) {
if (task.isCheckOutTask() && task.getBarcode() != null && task.getBarcode().equals(barcode.getBarcode())) {
// if(!sourceName.equalsIgnoreCase("All") && !sourceName.equals(task.getSourceName())){
// return ResultBean.newErrorResult(1,"smfcore.shelf.error.orderError","任务与指定工单[{0}]不一致",new String[]{sourceName} );
// }
if(ObjectUtil.isNotEmpty(sourceId) && !sourceId.equals(task.getSourceId())) {
LiteOrder liteOrder = liteOrderManager.get(sourceId);
if (liteOrder != null) {
return ResultBean.newErrorResult(1, "smfcore.shelf.error.orderError", "任务与指定工单[{0}]不一致", new String[]{liteOrder.getOrderNo()});
} else {
return ResultBean.newErrorResult(1, "smfcore.shelf.error.orderError", "任务与指定工单[{0}]不一致", new String[]{sourceId});
}
}
taskService.addTaskToFinished(inPos, null, loginUser);
opPosLight("close", inPos, null);
log.info(barcode.getBarcode() + " 出库完成, 库位[" + inPos.getPosName() + "]灭灯");
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!