skyouc
1 天以前 51d287f6639d12d5e37a77b7612d0b518e749c28
上报内容添加入库信息
2个文件已修改
29 ■■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderLogSchedule.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderLogSchedule.java
@@ -11,9 +11,12 @@
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.*;
import com.vincent.rsf.server.manager.service.*;
import com.vincent.rsf.server.manager.service.impl.StockItemServiceImpl;
import com.vincent.rsf.server.manager.service.impl.StockServiceImpl;
import com.vincent.rsf.server.system.entity.User;
import com.vincent.rsf.server.system.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
@@ -54,6 +57,10 @@
    private UserService userService;
    @Autowired
    private ReportMsgService reportMsgService;
    @Autowired
    private StockItemService stockItemService;
    @Autowired
    private StockService stockService;
    /**
     * @param
@@ -126,7 +133,25 @@
                if (!Objects.isNull(user)) {
                    nickName = user.getNickname();
                }
            //获取入库库位信息
           if (order.getType().equals(OrderType.ORDER_IN.type)) {
               //筛选当前唯一字段所有出入库信息
               List<StockItem> stockItems = stockItemService.list(new LambdaQueryWrapper<StockItem>()
                       .eq(StockItem::getFieldsIndex, orderItem.getFieldsIndex()));
               //获取库存中订单库位
               if (!stockItems.isEmpty()) {
                   Set<Long> stockIds = stockItems.stream().map(StockItem::getStockId).collect(Collectors.toSet());
                   //获取库存库位信息
                   List<Stock> stocks = stockService.list(new LambdaQueryWrapper<Stock>()
                           .in(Stock::getId, stockIds)
                           .eq(Stock::getType, OrderType.ORDER_IN.type)
                           .eq(Stock::getSourceCode, order.getCode()));
                   Set<String> locs = stocks.stream().map(Stock::getLocCode).collect(Collectors.toSet());
                   String locCode = StringUtils.join(locs.toArray(), ",");
                   param.setZone(locCode);
               }
           }
            //获取索引内容
                Map<String, String> fields = FieldsUtils.getFields(orderItem.getFieldsIndex());
                //设置通用参数
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
@@ -289,6 +289,8 @@
                    .setType(Constants.TASK_TYPE_WAVE_OUT_STOCK)
                    .setSourceId(wave.getId())
                    .setTarLoc(loc.getCode());
            //TODO 生成出库任务,获取波次单据信息
            locItemService.generateTask(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val, taskParams, loginUserId);
        }
    }