自动化立体仓库 - WMS系统
zyh
16 小时以前 701542ac0a90cf0e3a0a81ec2bb8066b5de68e75
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -8,8 +8,8 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.enums.CommonEnum;
import com.zy.asrs.enums.LocStsType;
import com.zy.asrs.mapper.CanFinMapper;
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.mapper.ManLocDetlMapper;
import com.zy.asrs.service.*;
@@ -22,6 +22,7 @@
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
import com.zy.common.utils.HttpHandler;
import com.zy.system.service.impl.ConfigServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -29,8 +30,6 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.stream.Collectors;
@@ -114,6 +113,10 @@
    private BasStationService basStationService;
    @Autowired
    private BasContainerService basContainerService;
    @Autowired
    private ConfigServiceImpl configService;
    @Autowired
    private CanFinMapper canFinMapper;
    @Override
    @Transactional
@@ -733,7 +736,7 @@
                Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, orderNo);
                OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId);
            });
            if(!Cools.isEmpty(param.getLocNo())){
            if(!Cools.isEmpty(param.getRsta()) && param.getRsta().contains("-")){
                //生成AGV搬运任务
                //生成AGV搬运出库任务
                // 保存工作档
@@ -743,12 +746,12 @@
                if (param.getBarcode().charAt(0) == '3'){
                    s = "307";
                }else if (param.getBarcode().charAt(0) == '4'){
                    s = "401";
                }else if (param.getBarcode().charAt(0) == '5'){
                    s = "402";
                }else if (param.getBarcode().charAt(0) == '5'){
                    s = "401";
                }
                String TaskNo = param.getBarcode()+"-"+date.getTime();
                task.setWrkNo(Integer.getInteger(param.getBarcode()))
                String TaskNo = param.getBarcode()+"aa"+date.getTime();
                task.setWrkNo((int) date.getTime())
                        .setTaskNo(TaskNo)
                        .setIoTime(date)
                        .setWrkSts(301L) // 工作状态:301.任务下发
@@ -759,7 +762,7 @@
                        .setPicking("N") // 拣料
                        .setExitMk("N")// 退出
                        .setStaNo(s)
                        .setSourceStaNo(param.getLocNo())//空料架缓存区E1
                        .setSourceStaNo(param.getRsta())//agv取货位
                        .setEmptyMk("N")// 空板
                        .setBarcode(param.getBarcode())// 托盘码
                        .setLinkMis("N")
@@ -767,7 +770,13 @@
                        .setAppeTime(date)
                        .setModiUser(9945L)
                        .setModiTime(date);
                if (!taskService.insert(task)) {
                if (taskService.insert(task)) {
                    CanFin canFin = new CanFin();
                    canFin.setApplyTime(now);
                    canFin.setAgvType("agv-in");
                    canFin.setInNo(detlDtos.get(0).getOrderNo());
                    canFinMapper.insert(canFin);
                }else {
                    throw new CoolException("保存工作档失败");
                }
            }
@@ -1325,7 +1334,7 @@
    @Override
    @Transactional
    public R callEmptyBinOutBound(String staNo, String locType, Long userId) {
    public R callEmptyBinOutBound(String staNo, String locType, Long userId, String agvTaskNo) {
        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", 'D').eq("loc_type2", locType));
        if(locMast == null) {
            return R.parse("该类型:" + locType +"空托盘不存在");
@@ -1334,8 +1343,9 @@
        //滑块库
        if(locMast.getLocType3()==1){
            if(locMast.getLocType2()==1){
                sta = "402";
            }else if(locMast.getLocType2()==2){
                sta = "401";
            }
        }else if(locMast.getLocType3()==2){
            sta="307";
@@ -1368,12 +1378,23 @@
        wrkMast.setExitMk("N"); // 退出
        wrkMast.setEmptyMk("Y"); // 空板
        wrkMast.setLinkMis("N");
        if (agvTaskNo!=null){
            wrkMast.setUserNo(agvTaskNo);
        }else {
            Date date = new Date();
            wrkMast.setUserNo(staNo + "aa" + date.getTime());
        }
        wrkMast.setAppeUser(userId);
        wrkMast.setAppeTime(now);
        wrkMast.setModiUser(userId);
        wrkMast.setModiTime(now);
        wrkMast.setMemo(staNo);
        wrkMastService.insert(wrkMast);
        CanFin canFin = new CanFin();
        canFin.setAgvType("agv-out");
        canFin.setApplyTime(now);
        canFin.setOutNo(wrkMast.getUserNo());
        canFinMapper.insert(canFin);
        // 更新库位状态
        if (locMast.getLocSts().equals("D")) {
@@ -1544,3 +1565,4 @@
        }
    }
}