From f21253fe4bdd742acf546472fddf99d2fa06fecb Mon Sep 17 00:00:00 2001 From: Jay <csj123456> Date: 星期五, 08 十一月 2024 08:34:26 +0800 Subject: [PATCH] 测点导出模板增加类型选择项 --- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcua/controller/admin/ChannelOPCUATagController.java | 3 + iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/vo/PointImportExcelVO.java | 19 +++++++-- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/IsEnableEnum.java | 19 ++++----- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/DataTypeEnum.java | 7 ++- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/controller/admin/HttpTagController.java | 3 + iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java | 20 +++------ iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/controller/admin/DaPointController.java | 12 +++--- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/kio/controller/admin/ChannelKioTagController.java | 3 + iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/modbus/controller/admin/ChannelModbusTagController.java | 3 + iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcda/controller/admin/ChannelOPCDATagController.java | 3 + 10 files changed, 51 insertions(+), 41 deletions(-) diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/controller/admin/HttpTagController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/controller/admin/HttpTagController.java index ceeac7b..d849d96 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/controller/admin/HttpTagController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/controller/admin/HttpTagController.java @@ -14,6 +14,7 @@ import com.iailab.module.data.channel.tag.vo.TagExportExcelVO; import com.iailab.module.data.channel.tag.vo.TagImportExcelVO; import com.iailab.module.data.channel.tag.vo.TagImportRespVO; +import com.iailab.module.data.common.enums.IsEnableEnum; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; @@ -108,7 +109,7 @@ public void importTemplate(HttpServletResponse response) throws IOException { // 手动创建导出 demo List<TagImportExcelVO> list = Collections.singletonList( - TagImportExcelVO.builder().tagName("Tag名称").tagDesc("Tag描述").dataType("String").enabled(1) + TagImportExcelVO.builder().tagName("Tag名称").tagDesc("Tag描述").dataType("String").enabled(IsEnableEnum.ENABLE.getCode()) .build() ); // 输出 diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/kio/controller/admin/ChannelKioTagController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/kio/controller/admin/ChannelKioTagController.java index b4ed847..b1e28b1 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/kio/controller/admin/ChannelKioTagController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/kio/controller/admin/ChannelKioTagController.java @@ -14,6 +14,7 @@ import com.iailab.module.data.channel.tag.vo.TagExportExcelVO; import com.iailab.module.data.channel.tag.vo.TagImportExcelVO; import com.iailab.module.data.channel.tag.vo.TagImportRespVO; +import com.iailab.module.data.common.enums.IsEnableEnum; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; @@ -102,7 +103,7 @@ public void importTemplate(HttpServletResponse response) throws IOException { // 手动创建导出 demo List<TagImportExcelVO> list = Collections.singletonList( - TagImportExcelVO.builder().tagName("Tag名称").tagDesc("Tag描述").dataType("String").enabled(1) + TagImportExcelVO.builder().tagName("Tag名称").tagDesc("Tag描述").dataType("String").enabled(IsEnableEnum.ENABLE.getCode()) .build() ); // 输出 diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/modbus/controller/admin/ChannelModbusTagController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/modbus/controller/admin/ChannelModbusTagController.java index 16f7080..168d744 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/modbus/controller/admin/ChannelModbusTagController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/modbus/controller/admin/ChannelModbusTagController.java @@ -14,6 +14,7 @@ import com.iailab.module.data.channel.modbus.vo.ModBusTagPageReqVO; import com.iailab.module.data.channel.modbus.vo.ModBusTagRespVO; import com.iailab.module.data.channel.tag.vo.TagImportRespVO; +import com.iailab.module.data.common.enums.IsEnableEnum; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; @@ -118,7 +119,7 @@ // 手动创建导出 demo List<ModBusTagImportExcelVO> list = Collections.singletonList( ModBusTagImportExcelVO.builder().tagName("Tag名称").tagDesc("Tag描述").dataType("String"). - address("123").format("1").samplingRate(1000).enabled(1) + address("123").format("1").samplingRate(1000).enabled(IsEnableEnum.ENABLE.getCode()) .build() ); // 输出 diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcda/controller/admin/ChannelOPCDATagController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcda/controller/admin/ChannelOPCDATagController.java index d3e5a94..39898d4 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcda/controller/admin/ChannelOPCDATagController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcda/controller/admin/ChannelOPCDATagController.java @@ -14,6 +14,7 @@ import com.iailab.module.data.channel.opcda.vo.OpcDaTagPageReqVO; import com.iailab.module.data.channel.opcda.vo.OpcDaTagRespVO; import com.iailab.module.data.channel.tag.vo.TagImportRespVO; +import com.iailab.module.data.common.enums.IsEnableEnum; import com.iailab.module.data.common.exception.RRException; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -116,7 +117,7 @@ public void importTemplate(HttpServletResponse response) throws IOException { // 手动创建导出 demo List<OpcDaTagImportExcelVO> list = Collections.singletonList( - OpcDaTagImportExcelVO.builder().tagName("Tag名称").dataType("String").enabled(1) + OpcDaTagImportExcelVO.builder().tagName("Tag名称").dataType("String").enabled(IsEnableEnum.ENABLE.getCode()) .build() ); // 输出 diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcua/controller/admin/ChannelOPCUATagController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcua/controller/admin/ChannelOPCUATagController.java index 365bcc2..3985333 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcua/controller/admin/ChannelOPCUATagController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/opcua/controller/admin/ChannelOPCUATagController.java @@ -14,6 +14,7 @@ import com.iailab.module.data.channel.opcua.vo.OpcUaTagPageReqVO; import com.iailab.module.data.channel.opcua.vo.OpcUaTagRespVO; import com.iailab.module.data.channel.tag.vo.TagImportRespVO; +import com.iailab.module.data.common.enums.IsEnableEnum; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; @@ -101,7 +102,7 @@ public void importTemplate(HttpServletResponse response) throws IOException { // 手动创建导出 demo List<OpcUaTagImportExcelVO> list = Collections.singletonList( - OpcUaTagImportExcelVO.builder().tagName("Tag名称").dataType("String").address("123").samplingRate(1000).enabled(1) + OpcUaTagImportExcelVO.builder().tagName("Tag名称").dataType("String").address("123").samplingRate(1000).enabled(IsEnableEnum.ENABLE.getCode()) .build() ); // 输出 diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/DataTypeEnum.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/DataTypeEnum.java index 19a46ff..33438a0 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/DataTypeEnum.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/DataTypeEnum.java @@ -12,11 +12,12 @@ @AllArgsConstructor public enum DataTypeEnum { - INT("int"), + INT("int","整型"), - FLOAT("float"), + FLOAT("float","浮点型"), - BOOLEAN("boolean"); + BOOLEAN("boolean", "布尔型"); private String code; + private String desc; } diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/IsEnableEnum.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/IsEnableEnum.java index 7c31aa0..8aaca72 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/IsEnableEnum.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/common/enums/IsEnableEnum.java @@ -1,21 +1,20 @@ package com.iailab.module.data.common.enums; +import lombok.AllArgsConstructor; +import lombok.Getter; + /** * @author PanZhibao * @Description * @createTime 2023年07月17日 17:41:00 */ +@Getter +@AllArgsConstructor public enum IsEnableEnum { - DISABLE(0), // 手动 - ENABLE(1); //自动 + DISABLE(0, "否"), + ENABLE(1, "是"); - private Integer value; + private Integer code; + private String desc; - IsEnableEnum(Integer value) { - this.value = value; - } - - public Integer value() { - return this.value; - } } diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/controller/admin/DaPointController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/controller/admin/DaPointController.java index efc7dce..e4d79db 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/controller/admin/DaPointController.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/controller/admin/DaPointController.java @@ -1,6 +1,5 @@ package com.iailab.module.data.point.controller.admin; -import com.fasterxml.jackson.annotation.JsonFormat; import com.iailab.framework.apilog.core.annotation.ApiAccessLog; import com.iailab.framework.common.pojo.CommonResult; import com.iailab.framework.common.pojo.PageParam; @@ -8,11 +7,12 @@ import com.iailab.framework.common.util.object.ConvertUtils; import com.iailab.framework.excel.core.util.ExcelUtils; import com.iailab.module.data.api.dto.ApiPointValueQueryDTO; -import com.iailab.module.data.channel.common.service.ChannelSourceService; import com.iailab.module.data.common.enums.DataSourceType; +import com.iailab.module.data.common.enums.DataTypeEnum; +import com.iailab.module.data.common.enums.MeasureValueType; import com.iailab.module.data.influxdb.service.InfluxDBService; +import com.iailab.module.data.point.common.PointTypeEnum; import com.iailab.module.data.point.dto.DaPointDTO; -import com.iailab.module.data.point.entity.DaPointEntity; import com.iailab.module.data.point.service.DaPointService; import com.iailab.module.data.point.vo.*; import io.swagger.v3.oas.annotations.Operation; @@ -34,8 +34,8 @@ import java.text.SimpleDateFormat; import java.util.*; -import static com.iailab.framework.common.pojo.CommonResult.success; import static com.iailab.framework.apilog.core.enums.OperateTypeEnum.EXPORT; +import static com.iailab.framework.common.pojo.CommonResult.success; /** @@ -180,14 +180,14 @@ public void importTemplate(HttpServletResponse response) throws IOException { // 手动创建导出 demo List<PointImportExcelVO> list = Arrays.asList( - PointImportExcelVO.builder().pointName("测点1").pointType("MEASURE").dataType("float").valueType("SIMULATE") + PointImportExcelVO.builder().pointName("测点1").pointType(PointTypeEnum.MEASURE_POINT.getCode()).dataType(DataTypeEnum.FLOAT.getCode()).valueType(MeasureValueType.SIMULATE.getCode()) .storeType(null).unit("t(非必填)").unittransfactor(new BigDecimal(1)).defaultValue(new BigDecimal(0)).maxValue(new BigDecimal(10000000.000000)).minValue(new BigDecimal(0)) .minfreqid("1min").remark("备注(非必填)").sourceType(DataSourceType.HTTP.getCode()) .sourceName("").tagNo("SARD1200G00102RC001") .build() ); // 输出 - ExcelUtils.write(response, "测点导入模板.xlsx", "测点列表", PointImportExcelVO.class, list); + ExcelUtils.write(response, "测点导入模板.xlsx", "测点列表", PointImportExcelVO.class, list,true); } @PostMapping("/import") diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java index ac053f1..1ff6d26 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java @@ -1,19 +1,14 @@ package com.iailab.module.data.point.service.impl; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.google.common.annotations.VisibleForTesting; -import com.iailab.framework.common.exception.ServiceException; import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.util.object.BeanUtils; import com.iailab.framework.common.util.object.ConvertUtils; -import com.iailab.framework.datapermission.core.util.DataPermissionUtils; -import com.iailab.framework.mybatis.core.query.LambdaQueryWrapperX; import com.iailab.module.data.channel.common.service.ChannelSourceService; import com.iailab.module.data.common.enums.CommonConstant; import com.iailab.module.data.common.enums.IsEnableEnum; @@ -28,21 +23,20 @@ import com.iailab.module.data.point.service.DaMeasurePointService; import com.iailab.module.data.point.service.DaPointService; import com.iailab.module.data.point.service.DaSequenceNumService; -import com.iailab.module.data.point.vo.*; +import com.iailab.module.data.point.vo.DaPointPageReqVO; +import com.iailab.module.data.point.vo.PointImportExcelVO; +import com.iailab.module.data.point.vo.PointImportRespVO; import com.iailab.module.infra.api.config.ConfigApi; import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; - import javax.annotation.Resource; import java.util.*; -import com.iailab.module.data.enums.ErrorCodeConstants; - import static com.iailab.framework.common.exception.util.ServiceExceptionUtil.exception; -import static com.iailab.module.data.enums.ErrorCodeConstants.*; +import static com.iailab.module.data.enums.ErrorCodeConstants.POINT_EXISTS; +import static com.iailab.module.data.enums.ErrorCodeConstants.POINT_IMPORT_LIST_IS_EMPTY; /** * @author lirm @@ -389,7 +383,7 @@ Arrays.asList(ids).forEach(item -> { DaPointEntity entity = new DaPointEntity(); entity.setId(item); - entity.setIsEnable(IsEnableEnum.ENABLE.value()); + entity.setIsEnable(IsEnableEnum.ENABLE.getCode()); daPointDao.updateById(entity); }); } @@ -402,7 +396,7 @@ Arrays.asList(ids).forEach(item -> { DaPointEntity entity = new DaPointEntity(); entity.setId(item); - entity.setIsEnable(IsEnableEnum.DISABLE.value()); + entity.setIsEnable(IsEnableEnum.DISABLE.getCode()); daPointDao.updateById(entity); }); } diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/vo/PointImportExcelVO.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/vo/PointImportExcelVO.java index ee99bb8..7cf3b6d 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/vo/PointImportExcelVO.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/vo/PointImportExcelVO.java @@ -1,6 +1,9 @@ package com.iailab.module.data.point.vo; import com.alibaba.excel.annotation.ExcelProperty; +import com.iailab.framework.excel.core.annotations.DictFormat; +import com.iailab.framework.excel.core.annotations.ExcelColumnSelect; +import com.iailab.framework.excel.core.convert.DictConvert; import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; @@ -26,10 +29,14 @@ @ExcelProperty("测点名称") private String pointName; - @ExcelProperty("测点类型") + @ExcelProperty(value = "测点类型", converter = DictConvert.class) + @ExcelColumnSelect(dictType = "data_point_type") + @DictFormat("data_point_type") private String pointType; - @ExcelProperty("数据类型") + @ExcelProperty(value = "数据类型", converter = DictConvert.class) + @ExcelColumnSelect(dictType = "point_data_type") + @DictFormat("point_data_type") private String dataType; @ExcelProperty("存储类型") @@ -57,7 +64,9 @@ @ExcelProperty("备注") private String remark; - @ExcelProperty("数据源类型") + @ExcelProperty(value = "数据源类型", converter = DictConvert.class) + @ExcelColumnSelect(dictType = "data_source_type") + @DictFormat("data_source_type") private String sourceType; @ExcelProperty("数据源名称") @@ -69,7 +78,9 @@ @ExcelProperty("平滑尺度") private Integer dimension; - @ExcelProperty("值类型") + @ExcelProperty(value = "值类型", converter = DictConvert.class) + @ExcelColumnSelect(dictType = "measure_value_type") + @DictFormat("measure_value_type") private String valueType; @ExcelProperty("计算公式") -- Gitblit v1.9.3