package com.qianwen.smartman.common.enums;
|
|
import java.util.Arrays;
|
import java.util.List;
|
import java.util.Optional;
|
import com.qianwen.smartman.modules.cps.vo.WorkstationDataTypeExecParamVO;
|
import com.qianwen.smartman.modules.system.constant.FieldConstant;
|
import com.qianwen.smartman.modules.tdengine.mapper.WorkstationAggregateCountMapper;
|
import com.qianwen.smartman.modules.tdengine.mapper.WorkstationAggregatePulseMapper;
|
import com.qianwen.smartman.modules.tdengine.mapper.WorkstationDynamicCollectMapper;
|
|
public enum DynamicCalculationWcsDataType {
|
COUNT(8, WorkstationAggregateCountMapper.class, null),
|
PULSE(9, WorkstationAggregatePulseMapper.class, Arrays.asList(new WorkstationDataTypeExecParamVO("脉冲计数倍率", FieldConstant.OPTION_KEY, "number")));
|
|
private final int code;
|
private final Class<? extends WorkstationDynamicCollectMapper<?>> operationMapper;
|
private List<WorkstationDataTypeExecParamVO> params;
|
|
DynamicCalculationWcsDataType(int code, Class operationMapper, List params) {
|
this.code = code;
|
this.params = params;
|
this.operationMapper = operationMapper;
|
}
|
|
public static DynamicCalculationWcsDataType of(int code) {
|
return (DynamicCalculationWcsDataType) Arrays.stream(values()).filter(item -> {
|
return item.getCode() == code;
|
}).findFirst().orElse(null);
|
}
|
|
public static List<WorkstationDataTypeExecParamVO> getParamsByCode(int code) {
|
return (List) Optional.ofNullable(of(code)).map((v0) -> {
|
return v0.getParams();
|
}).orElse(null);
|
}
|
|
public int getCode() {
|
return this.code;
|
}
|
|
public List<WorkstationDataTypeExecParamVO> getParams() {
|
return this.params;
|
}
|
|
public Class<? extends WorkstationDynamicCollectMapper<?>> getOperationMapper() {
|
return this.operationMapper;
|
}
|
}
|