skyouc
6 天以前 e046dba174365eb8934ee1e4206f09821145e876
zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/controller/OutStockController.java
@@ -1,6 +1,7 @@
package com.zy.asrs.wms.apis.wcs.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.framework.common.R;
import com.zy.asrs.framework.exception.CoolException;
@@ -10,19 +11,26 @@
import com.zy.asrs.wms.apis.wcs.services.WcsApiService;
import com.zy.asrs.wms.asrs.entity.CacheSite;
import com.zy.asrs.wms.asrs.entity.Task;
import com.zy.asrs.wms.asrs.entity.WaveSeed;
import com.zy.asrs.wms.asrs.entity.param.BindPlatformParam;
import com.zy.asrs.wms.asrs.service.CacheSiteService;
import com.zy.asrs.wms.asrs.service.PlatformService;
import com.zy.asrs.wms.asrs.service.TaskService;
import com.zy.asrs.wms.asrs.service.WaveSeedService;
import com.zy.asrs.wms.asrs.service.impl.WaveSeedServiceImpl;
import com.zy.asrs.wms.system.controller.BaseController;
import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
@Slf4j
@RestController
@@ -40,6 +48,9 @@
    @Resource
    private TaskService taskService;
    @Autowired
    private WaveSeedService waveSeedService;
    /**
@@ -84,9 +95,11 @@
    }
    /**
     * ESS 播种墙拍灯回调
     * 播种墙拍灯,ESS调用
     */
    @PostMapping("/light/off")
    @Transactional(rollbackFor = Exception.class)
    public R lightOff(@RequestBody Map<String, Object> request) {
        if (Objects.isNull(request)) {
            throw new CoolException("参数不能为空!!");
@@ -98,18 +111,39 @@
            throw new CoolException("事件名称不能为空!!");
        }
        log.info("播种墙拍灯,请求参数:{}", JSONObject.toJSONString(request));
        // 根据站点编码查播种站点信息
        CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getSiteNo, request.get("tagCode")));
        if (Objects.isNull(cacheSite)) {
            throw new CoolException("当前站点不存在!!");
        }
        WaveSeed waveSeed = waveSeedService.getOne(new LambdaQueryWrapper<WaveSeed>()
                        .eq(WaveSeed::getExceStatus, 1)
                .eq(WaveSeed::getSiteNo, request.get("tagCode").toString()), false);
        if (Objects.isNull(waveSeed)) {
            throw new CoolException("播种墙地标未绑定!!");
        }
        // 根据播种站点信息条码,查任务
        Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getBarcode, cacheSite.getBarcode()));
        Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getId, waveSeed.getTaskId()));
        if (Objects.isNull(task)) {
            throw new CoolException("当前站点任务不存在!!");
        }
        request.clear();
        request.put("taskNo", task.getTaskNo());
        request.put("orderNo",cacheSite.getOrderNo());
        Map<String, Object> param = new HashMap<>();
        param.put("taskNo", task.getTaskNo());
        param.put("siteNo", cacheSite.getSiteNo());
        param.put("weedId", waveSeed.getId());
        param.put("orderNo",cacheSite.getOrderNo());
        wcsApiService.slapLightLogic(request);
        waveSeed.setExceStatus(0);
        if (!waveSeedService.updateById(waveSeed)) {
            throw new CoolException("播种状态修改失败!!");
        }
        return R.ok();
       return wcsApiService.slapLightLogic(param);
    }
    /**