自动化立体仓库 - WMS系统
1
zc
2025-08-06 4423ce8835075825bcdba5438e602e10ab39c041
src/main/java/com/zy/asrs/controller/OutController.java
@@ -1,13 +1,16 @@
package com.zy.asrs.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.R;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.Order;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.MatCompareUtils;
import com.zy.common.model.LocDto;
import com.zy.common.model.TaskDto;
import com.zy.common.web.BaseController;
@@ -17,7 +20,9 @@
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -66,10 +71,18 @@
            if (issued <= 0.0D) {
                continue;
            }
            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl);
            List<LocDetl> locDetls;
            Order order = orderService.selectByNo(orderDetl.getOrderNo());
            if (order != null && !Cools.isEmpty(order.getTemp3())) {
                locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("zpallet", order.getTemp3()));
            } else {
                locDetls = locDetlService.queryStock(orderDetl);
            }
            for (LocDetl locDetl : locDetls) {
                if (locDetl.getMatnr().equals(orderDetl.getMatnr())) {
                if (MatCompareUtils.compare(locDetl,orderDetl)) {
                   // if (locDetl.getMatnr().equals(orderDetl.getMatnr())) {
                    if (issued > 0) {
                        LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
                                issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);