CZT
2023-08-31 6b1c7e3fa773aa75ea34b346d4104ba70064f52c
igds-verb/src/main/java/com/ld/igds/verb/manager/VerbManager.java
@@ -5,7 +5,10 @@
import com.ld.igds.common.CoreSerService;
import com.ld.igds.common.DepotStatusService;
import com.ld.igds.common.dto.DepotSerData;
import com.ld.igds.constant.*;
import com.ld.igds.constant.BizType;
import com.ld.igds.constant.DepotType;
import com.ld.igds.constant.DeviceType;
import com.ld.igds.constant.RespCodeEnum;
import com.ld.igds.data.PageResponse;
import com.ld.igds.io.RemoteControlService;
import com.ld.igds.io.RemoteManager;
@@ -22,15 +25,11 @@
import com.ld.igds.util.ContextUtil;
import com.ld.igds.verb.AreationModel;
import com.ld.igds.verb.dto.VerbParam;
import com.ld.igds.verb.service.CoreAreationService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
@@ -41,19 +40,17 @@
@Component
public class VerbManager {
    @Autowired
    @Resource
    private CoreCommonService coreCommonService;
    @Autowired
    @Resource
    private CoreDeviceService coreDeviceService;
    @Autowired
    @Resource
    private ExeOrderService exeOrderService;
    @Autowired
    @Resource
    private RemoteManager remoteManager;
    @Autowired
    @Resource
    private CoreSerService coreSerService;
    @Autowired
    private CoreAreationService areationService;
    @Autowired
    @Resource
    private DepotStatusService depotCheckService;
    private RemoteControlService remoteControlService;
@@ -245,11 +242,11 @@
        // 获取分机信息
        DeviceSer deviceSer = coreSerService.getCacheSer(param.getCompanyId(), serId);
        if (Constant.YN_N.equals(deviceSer.getStatus())) {
            return new DeviceControlResponse(
                    OrderRespEnum.ORDER_ERROR.getCode(),
                    "当前设备所属控制柜[" + deviceSer.getName() + "]不在线,执行失败。");
        }
//        if (Constant.YN_N.equals(deviceSer.getStatus())) {
//            return new DeviceControlResponse(
//                    OrderRespEnum.ORDER_ERROR.getCode(),
//                    "当前设备所属控制柜[" + deviceSer.getName() + "]不在线,执行失败。");
//        }
        DeviceControlRequest request = new DeviceControlRequest();
        request.setDepotId(param.getDepotId());
@@ -301,16 +298,22 @@
            return new DeviceControlResponse(OrderRespEnum.ORDER_ERROR.getCode(), "没有需要更新的设备信息!!");
        }
//        2023-08-31暂时禁用,使用仓库编码获取仓库所有设备的分机信息
        //根据设备所属分机进行分组
        Map<String, List<ExeDevice>> groupBy = param.getDeviceList().stream().collect(Collectors.groupingBy(ExeDevice::getSerId));
//        Map<String, List<ExeDevice>> groupBy = param.getDeviceList().stream().collect(Collectors.groupingBy(ExeDevice::getSerId));
//        DeviceControlResponse response = new DeviceControlResponse(OrderRespEnum.ORDER_SUCCESS.getCode(), "命令发送成功!");
//        DeviceSer deviceSer;
//        DeviceControlRequest request;
//        try {
//            for (String serId : groupBy.keySet()) {
        Set<String> list = coreDeviceService.getCacheDeviceSerByDepotId(param.getCompanyId(), param.getDepotId());
        DeviceControlResponse response = new DeviceControlResponse(OrderRespEnum.ORDER_SUCCESS.getCode(), "命令发送成功!");
        DeviceSer deviceSer;
        DeviceControlRequest request;
        try {
            for (String serId : groupBy.keySet()) {
             for (String serId : list) {
                deviceSer = coreSerService.getCacheSer(param.getCompanyId(), serId);
                if (null == deviceSer) {
                    log.info("根据仓库{}获取设备状态,分机编码{}的分机不存在,取消执行。", param.getDepotId(), serId);