1
15 小时以前 4f47f94957e67df0864930a2f638e9bdc8411b36
lsh#
3个文件已修改
69 ■■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/pda/PdaOutStockController.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/entity/params/OrderOutGeneralParam.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/pda/PdaOutStockController.java
@@ -10,12 +10,13 @@
import com.vincent.rsf.server.api.entity.params.OrderOutGeneralParam;
import com.vincent.rsf.server.api.service.PdaOutStockService;
import com.vincent.rsf.server.manager.controller.params.OrderOutTaskParam;
import com.vincent.rsf.server.manager.controller.params.OutStockToTaskParams;
import com.vincent.rsf.server.manager.entity.Loc;
import com.vincent.rsf.server.manager.entity.LocItem;
import com.vincent.rsf.server.manager.entity.WkOrder;
import com.vincent.rsf.server.manager.entity.WkOrderItem;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.service.AsnOrderItemService;
import com.vincent.rsf.server.manager.service.OutStockItemService;
import com.vincent.rsf.server.manager.service.OutStockService;
import com.vincent.rsf.server.manager.service.*;
import com.vincent.rsf.server.system.constant.DictTypeCode;
import com.vincent.rsf.server.system.controller.BaseController;
import com.vincent.rsf.server.system.entity.DictData;
@@ -27,6 +28,7 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -45,6 +47,10 @@
    private DictDataService dictDataService;
    @Autowired
    private AsnOrderItemService asnOrderItemService;
    @Autowired
    private LocService locService;
    @Autowired
    private LocItemService locItemService;
    @GetMapping("/outStockTaskItem/{barcode}")
    @ApiOperation("快速拣货查询")
@@ -154,9 +160,24 @@
    //
    @PostMapping("/orderOut/getOutLocRun")
    public R orderOutGetOutLocRun(@RequestBody OrderOutGeneralParam param) {
        //参数 param.getOrderItemId()//出库执行
        LocItem locItem = locItemService.getById(param.getItemId());
        if (Cools.isEmpty(locItem)) {
            return R.error().add("未查询到库存明细");
        }
        Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locItem.getLocCode()));
        return R.ok();
        if (Cools.isEmpty(loc)) {
            return R.error().add("未查询到库位信息");
        }
        WkOrderItem orderItem = asnOrderItemService.getById(param.getOrderItemId());
        List<OutStockToTaskParams> tasks = new ArrayList<>();
        OutStockToTaskParams outStockToTaskParams = new OutStockToTaskParams(orderItem);
        outStockToTaskParams.setLocCode(loc.getCode());
        outStockToTaskParams.setSiteNo(param.getOutSta().toString());
        tasks.add(outStockToTaskParams);
        return outStockService.genOutStockTask(tasks,getLoginUserId(), orderItem.getOrderId());
    }
}
rsf-server/src/main/java/com/vincent/rsf/server/api/entity/params/OrderOutGeneralParam.java
@@ -19,5 +19,11 @@
        private Double anfme;
    }
    private Long itemId;//库存明细ID
    private Long outQty;//出库数量
    private Long outSta;//出库站点
}
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
@@ -615,25 +615,25 @@
    @Async
    public void asyncOutboundExecutionWcs(List<OutStockToTaskParams> param, Long orderId, Long loginUserId) {
        try {
            int i = 0;
            List<OutStockToTaskParams> tasks = new ArrayList<>();
            while (true) {
                tasks = new ArrayList<>();
                i++;
                if (i > 5) return;
                Thread.sleep(3000);
                for (OutStockToTaskParams taskParam : new OutStockToTaskParams[param.size()]) {
                    if (StringUtils.isNotBlank(taskParam.getLocCode())) {
                        tasks.add(taskParam);
                    }
                }
                break;
            }
            if (tasks.isEmpty()){
//            int i = 0;
//            List<OutStockToTaskParams> tasks = new ArrayList<>();
//            while (true) {
//                tasks = new ArrayList<>();
//                i++;
//                if (i > 5) return;
//                Thread.sleep(3000);
//                for (OutStockToTaskParams taskParam : new OutStockToTaskParams[param.size()]) {
//                    if (StringUtils.isNotBlank(taskParam.getLocCode())) {
//                        tasks.add(taskParam);
//                    }
//                }
//                break;
//            }
            if (param.isEmpty()){
                log.warn("订单ID {} 没有找到可出库明细,跳过自动出库", orderId);
                return;
            }
            outStockService.genOutStockTask(tasks, loginUserId, orderId);
            outStockService.genOutStockTask(param, loginUserId, orderId);
            log.info("订单ID {} 自动出库,共处理 {} 个明细", orderId, param.size());
        } catch (Exception e) {