java110
2023-06-13 ae42d2da37fe9d161e7058b51367b95f24c3d97a
service-common/src/main/java/com/java110/common/cmd/meterMachine/ListMeterMachineFactoryCmd.java
@@ -20,12 +20,14 @@
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
import com.java110.dto.meterMachine.MeterMachineFactorySpecDto;
import com.java110.intf.common.IMeterMachineFactorySpecV1InnerServiceSMO;
import com.java110.intf.common.IMeterMachineFactoryV1InnerServiceSMO;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
import com.java110.dto.meterMachineFactory.MeterMachineFactoryDto;
import com.java110.dto.meterMachine.MeterMachineFactoryDto;
import java.util.List;
import java.util.ArrayList;
@@ -53,6 +55,9 @@
    @Autowired
    private IMeterMachineFactoryV1InnerServiceSMO meterMachineFactoryV1InnerServiceSMOImpl;
    @Autowired
    private IMeterMachineFactorySpecV1InnerServiceSMO machineFactorySpecV1InnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
        super.validatePageInfo(reqJson);
@@ -69,6 +74,7 @@
        if (count > 0) {
            meterMachineFactoryDtos = meterMachineFactoryV1InnerServiceSMOImpl.queryMeterMachineFactorys(meterMachineFactoryDto);
            freshSpecs(meterMachineFactoryDtos);
        } else {
            meterMachineFactoryDtos = new ArrayList<>();
        }
@@ -79,4 +85,40 @@
        cmdDataFlowContext.setResponseEntity(responseEntity);
    }
    /**
     * 刷入配置
     *
     * @param meterMachineFactoryDtos
     */
    private void freshSpecs(List<MeterMachineFactoryDto> meterMachineFactoryDtos) {
        if (meterMachineFactoryDtos == null || meterMachineFactoryDtos.size() < 1) {
            return;
        }
        List<String> factoryIds = new ArrayList<>();
        for (MeterMachineFactoryDto meterMachineFactoryDto : meterMachineFactoryDtos) {
            factoryIds.add(meterMachineFactoryDto.getFactoryId());
        }
        MeterMachineFactorySpecDto machineFactorySpecDto = new MeterMachineFactorySpecDto();
        machineFactorySpecDto.setFactoryIds(factoryIds.toArray(new String[factoryIds.size()]));
        List<MeterMachineFactorySpecDto> machineFactorySpecDtos = machineFactorySpecV1InnerServiceSMOImpl.queryMeterMachineFactorySpecs(machineFactorySpecDto);
        if (machineFactorySpecDtos == null || machineFactorySpecDtos.size() < 1) {
            return;
        }
        List<MeterMachineFactorySpecDto> specs = null;
        for (MeterMachineFactoryDto meterMachineFactoryDto : meterMachineFactoryDtos) {
            specs = new ArrayList<>();
            for (MeterMachineFactorySpecDto tmpMeterMachineFactorySpecDto : machineFactorySpecDtos) {
                if (meterMachineFactoryDto.getFactoryId().equals(tmpMeterMachineFactorySpecDto.getFactoryId())) {
                    specs.add(tmpMeterMachineFactorySpecDto);
                }
            }
            meterMachineFactoryDto.setSpecs(specs);
        }
    }
}