Browse Source

将报表的取值模式,从数据组迁移到报表中

zhoupeng 2 years ago
parent
commit
7c1d06943c

+ 4 - 0
chaunyi_opc/opc_common/src/main/java/com/example/opc_common/entity/ChartDataDto.java

@@ -18,6 +18,10 @@ public class ChartDataDto implements Serializable {
      * 统计图时间取值格式0时,1日,2月
      */
     private Integer chartTimeType;
+    /**
+     * 报表取值条件0平均值,1最大值,2最小值,3瞬时值
+     */
+    private Integer valueCondition;
 
     /**
      * 获取值的开始归属时间,格式根据上面选择的什么格式传什么格式

+ 0 - 4
chaunyi_opc/opc_common/src/main/java/com/example/opc_common/entity/ItemGroup.java

@@ -51,10 +51,6 @@ public class ItemGroup implements Serializable {
      */
     private String endReadTime;
     /**
-     * 取值条件0平均值,1最大值,2最小值,3瞬时值
-     */
-    private Integer valueCondition;
-    /**
      * 创建时间
      */
     private String createTime;

+ 4 - 0
chaunyi_opc/opc_common/src/main/java/com/example/opc_common/entity/ReportTable.java

@@ -41,6 +41,10 @@ public class ReportTable extends BaseSchedule implements Serializable {
      */
     private Integer reportValueFormat;
     /**
+     * 报表取值条件0平均值,1最大值,2最小值,3瞬时值
+     */
+    private Integer valueCondition;
+    /**
      * 报表类型,是否为自动报表,0手动,1 自动,2自动报表生成的表
      */
     private Integer isAutoReport;

+ 4 - 0
chaunyi_opc/opc_common/src/main/java/com/example/opc_common/entity/TableDataDto.java

@@ -12,6 +12,10 @@ public class TableDataDto implements Serializable {
      * 报表取值格式,0每天的08:00到第二天的07:00
      */
     private Integer reportValueFormat;
+    /**
+     * 报表取值条件0平均值,1最大值,2最小值,3瞬时值
+     */
+    private Integer valueCondition;
 
     /**
      * 获取值的开始归属时间,yyyy-MM-dd HH,如果未传入,则是昨天的08时

+ 2 - 2
chaunyi_opc/opc_da/src/main/java/com/example/opc_da/controller/RawDataController.java

@@ -31,7 +31,7 @@ public class RawDataController {
     @PostMapping("/getChartData")
     @WebLog(ServerEnum = ServerEnum.CLIENT, ModelEnum = ModelEnum.REPORTTABLE, OperationEnum = OperationEnum.CHARTDATA)
     public Result getChartData(@RequestBody ChartDataDto chartDataDto) {
-        if (Blank.isEmpty(chartDataDto, chartDataDto.getType(), chartDataDto.getChartTimeType(), chartDataDto.getStartBelongTime(),
+        if (Blank.isEmpty(chartDataDto, chartDataDto.getType(), chartDataDto.getChartTimeType(), chartDataDto.getValueCondition(), chartDataDto.getStartBelongTime(),
                 chartDataDto.getEndBelongTime(), chartDataDto.getTableDataDtoChList())) {
             return Result.no(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "统计图类型,统计图取值格式,取值开始、结束时间,数据项不能为空");
         }
@@ -47,7 +47,7 @@ public class RawDataController {
     @PostMapping("/getTableData")
     @WebLog(ServerEnum = ServerEnum.CLIENT, ModelEnum = ModelEnum.REPORTTABLE, OperationEnum = OperationEnum.TABLEDATA)
     public Result getTableData(@RequestBody TableDataDto tableDataDto) {
-        if (Blank.isEmpty(tableDataDto, tableDataDto.getStartBelongTime(), tableDataDto.getEndBelongTime())) {
+        if (Blank.isEmpty(tableDataDto, tableDataDto.getStartBelongTime(), tableDataDto.getValueCondition(), tableDataDto.getEndBelongTime())) {
             return Result.no(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "数据归属的开始时间和结束时间不能为空");
         }
         return rawDataService.getTableData(tableDataDto);

+ 5 - 4
chaunyi_opc/opc_da/src/main/java/com/example/opc_da/controller/ReportTableController.java

@@ -148,9 +148,9 @@ public class ReportTableController {
     @PostMapping("/addReportTable")
     @WebLog(ServerEnum = ServerEnum.CLIENT, ModelEnum = ModelEnum.REPORTTABLE, OperationEnum = OperationEnum.ADD)
     public Result addReportTable(@RequestBody ReportTable reportTable) {
-        if (Blank.isEmpty(reportTable, reportTable.getTableTemplateId(), reportTable.getReportTableName(),
-                reportTable.getReportTableData(), reportTable.getReportValueFormat(), reportTable.getIsAutoReport())) {
-            return Result.no(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "报表名称,报表内容,报表类型,报表取值格式不能为空");
+        if (Blank.isEmpty(reportTable, reportTable.getTableTemplateId(), reportTable.getReportTableName(), reportTable.getReportTableData(),
+                reportTable.getReportValueFormat(), reportTable.getValueCondition(), reportTable.getIsAutoReport())) {
+            return Result.no(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "报表名称,报表内容,报表类型,报表取值格式,条件不能为空");
         }
         return reportTableService.addReportTable(reportTable);
     }
@@ -164,7 +164,8 @@ public class ReportTableController {
     @PostMapping("/updateReportTable")
     @WebLog(ServerEnum = ServerEnum.CLIENT, ModelEnum = ModelEnum.REPORTTABLE, OperationEnum = OperationEnum.UPDATE)
     public Result updateReportTable(@RequestBody ReportTable reportTable) {
-        if (Blank.isEmpty(reportTable, reportTable.getId(), reportTable.getReportTableName(), reportTable.getReportTableData(), reportTable.getReportValueFormat(), reportTable.getVersion())) {
+        if (Blank.isEmpty(reportTable, reportTable.getId(), reportTable.getReportTableName(), reportTable.getReportTableData(),
+                reportTable.getReportValueFormat(), reportTable.getValueCondition(), reportTable.getVersion())) {
             return Result.no(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "报表id,名称,报表内容,报表取值格式,版本号不能为空");
         }
         return reportTableService.updateReportTable(reportTable);

+ 26 - 24
chaunyi_opc/opc_da/src/main/java/com/example/opc_da/service/impl/RawDataServiceImpl.java

@@ -42,6 +42,7 @@ public class RawDataServiceImpl implements RawDataService {
 
     @Override
     public Result getChartData(ChartDataDto chartDataDto) {
+        Integer valueCondition = chartDataDto.getValueCondition();
         List<JSONObject> jsonObjectList = new ArrayList<>();
         String type = chartDataDto.getType();
         List<TableDataDtoCh> tableDataDtoChList = chartDataDto.getTableDataDtoChList();
@@ -66,7 +67,7 @@ public class RawDataServiceImpl implements RawDataService {
                                 String dataValue = rawDataList.get(i).getDataValue();
                                 Boolean[] dataValueList = JSON.parseObject(dataValue, Boolean[].class);
                                 Boolean data = null;
-                                if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         int countFalse = 0;
                                         int countTrue = 0;
@@ -85,7 +86,7 @@ public class RawDataServiceImpl implements RawDataService {
                                             }
                                         }
                                     }
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         for (int j = 0; j < dataValueList.length; j++) {
                                             if (dataValueList[i]) {
@@ -101,7 +102,7 @@ public class RawDataServiceImpl implements RawDataService {
                                             }
                                         }
                                     }
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         for (int j = 0; j < dataValueList.length; j++) {
                                             if (!dataValueList[i]) {
@@ -132,11 +133,11 @@ public class RawDataServiceImpl implements RawDataService {
                                 try {
                                     BigDecimal[] dataValueList = JSON.parseObject(dataValue, BigDecimal[].class);
                                     BigDecimal avg;
-                                    if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                    if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                         avg = MathUtil.getAvg(dataValueList);
-                                    } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                    } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                         avg = MathUtil.getMax(dataValueList);
-                                    } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                    } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                         avg = MathUtil.getMin(dataValueList);
                                     } else {
                                         throw new CustomException(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "目前还未适配此种类型数据组的取值条件");
@@ -188,11 +189,11 @@ public class RawDataServiceImpl implements RawDataService {
                                 String dataValue = rawDataList.get(i).getDataValue();
                                 Boolean[] dataValueList = JSON.parseObject(dataValue, Boolean[].class);
                                 Boolean avg;
-                                if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                     avg = MathUtil.getAvgBoolean(dataValueList);
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                     avg = MathUtil.getMaxBoolean(dataValueList);
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                     avg = MathUtil.getMinBoolean(dataValueList);
                                 } else {
                                     throw new CustomException(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "目前还未适配此种类型数据组的取值条件");
@@ -209,11 +210,11 @@ public class RawDataServiceImpl implements RawDataService {
                                 try {
                                     BigDecimal[] dataValueList = JSON.parseObject(dataValue, BigDecimal[].class);
                                     BigDecimal avg;
-                                    if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                    if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                         avg = MathUtil.getAvg(dataValueList);
-                                    } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                    } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                         avg = MathUtil.getMax(dataValueList);
-                                    } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                    } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                         avg = MathUtil.getMin(dataValueList);
                                     } else {
                                         throw new CustomException(ResultEnum.REQUEST_WRONGPARAMS.getRespCode(), "目前还未适配此种类型数据组的取值条件");
@@ -251,7 +252,7 @@ public class RawDataServiceImpl implements RawDataService {
                         if (Blank.isNotEmpty(rawDataList)) {
                             String dataType = rawDataList.get(0).getDataType();
                             if (dataType.toLowerCase().equals("boolean")) {
-                                if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                     Boolean avg = null;
                                     int countFalse = 0;
                                     int countTrue = 0;
@@ -275,7 +276,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         }
                                     }
                                     jsonObject.put("data", avg);
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                     Boolean max = null;
                                     for (RawData rawData : rawDataList) {
                                         Boolean[] dataValueList = JSON.parseObject(rawData.getDataValue(), Boolean[].class);
@@ -294,7 +295,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         }
                                     }
                                     jsonObject.put("data", max);
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                     Boolean data = null;
                                     for (RawData rawData : rawDataList) {
                                         Boolean[] dataValueList = JSON.parseObject(rawData.getDataValue(), Boolean[].class);
@@ -318,7 +319,7 @@ public class RawDataServiceImpl implements RawDataService {
                                 }
                             } else {
                                 Object data = null;
-                                if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                     int sum = 0;
                                     BigDecimal bigDecimal = null;
                                     for (RawData rawData : rawDataList) {
@@ -339,7 +340,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         }
                                     }
                                     data = bigDecimal.divide(new BigDecimal(sum), 4, RoundingMode.HALF_EVEN);
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                     BigDecimal max = null;
                                     for (RawData rawData : rawDataList) {
                                         try {
@@ -358,7 +359,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         }
                                     }
                                     data = max;
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                     BigDecimal min = null;
                                     for (RawData rawData : rawDataList) {
                                         try {
@@ -402,6 +403,7 @@ public class RawDataServiceImpl implements RawDataService {
 
     @Override
     public Result getTableData(TableDataDto tableDataDto) {
+        Integer valueCondition = tableDataDto.getValueCondition();
         List<JSONObject> jsonObjectList = new ArrayList<>();
         List<TableDataDtoCh> tableDataDtoChList = tableDataDto.getTableDataDtoChList();
 
@@ -430,7 +432,7 @@ public class RawDataServiceImpl implements RawDataService {
                             int countFalse = 0;
                             int countTrue = 0;
                             Boolean[] dataValueList = JSON.parseObject(dataValue, Boolean[].class);
-                            if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                            if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                 if (Blank.isNotEmpty(dataValueList)) {
                                     for (int j = 0; j < dataValueList.length; j++) {
                                         if (dataValueList[j]) {
@@ -447,7 +449,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         data = false;
                                     }
                                 }
-                            } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                            } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                 if (Blank.isNotEmpty(dataValueList)) {
                                     for (int j = 0; j < dataValueList.length; j++) {
                                         if (dataValueList[j]) {
@@ -461,7 +463,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         break;
                                     }
                                 }
-                            } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                            } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                 if (Blank.isNotEmpty(dataValueList)) {
                                     for (int j = 0; j < dataValueList.length; j++) {
                                         if (!dataValueList[j]) {
@@ -490,7 +492,7 @@ public class RawDataServiceImpl implements RawDataService {
                             try {
                                 BigDecimal[] dataValueList = JSON.parseObject(dataValue, BigDecimal[].class);
                                 BigDecimal data = null;
-                                if (itemGroup.getValueCondition().equals(ConstantStr.AVERAGE_VALUE)) {
+                                if (valueCondition.equals(ConstantStr.AVERAGE_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         BigDecimal bigDecimal = null;
                                         int sum = 0;
@@ -504,7 +506,7 @@ public class RawDataServiceImpl implements RawDataService {
                                         }
                                         data = bigDecimal.divide(new BigDecimal(sum), 4, RoundingMode.HALF_EVEN);
                                     }
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MAX_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MAX_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         for (int j = 0; j < dataValueList.length; j++) {
                                             if (Blank.isEmpty(data)) {
@@ -514,7 +516,7 @@ public class RawDataServiceImpl implements RawDataService {
                                             }
                                         }
                                     }
-                                } else if (itemGroup.getValueCondition().equals(ConstantStr.MIN_VALUE)) {
+                                } else if (valueCondition.equals(ConstantStr.MIN_VALUE)) {
                                     if (Blank.isNotEmpty(dataValueList)) {
                                         for (int j = 0; j < dataValueList.length; j++) {
                                             if (Blank.isEmpty(data)) {

+ 10 - 6
chaunyi_opc/opc_da/src/main/java/com/example/opc_da/task/ReportTableTask.java

@@ -46,6 +46,10 @@ public class ReportTableTask {
     public void getTableData(ReportTable reportTable) {
         log.info("动态报表,{},执行开始,执行时间为{}", reportTable, DateUtil.dateChangeStrYmdhmss(new Date()));
         String reportTableData = reportTable.getReportTableData();
+        Integer valueCondition = reportTable.getValueCondition();
+        if (Blank.isEmpty(valueCondition)) {
+            return;
+        }
         JSONObject jsonObject = JSONObject.parseObject(reportTableData);
         JSONArray objects = jsonObject.getJSONArray("tables");
         if (Blank.isEmpty(objects)) {
@@ -92,11 +96,11 @@ public class ReportTableTask {
                                     String dataValue = rawDataList.get(k).getDataValue();
                                     Boolean[] dataValueList = JSON.parseObject(dataValue, Boolean[].class);
                                     Boolean avg;
-                                    if (itemGroup.getValueCondition() == ConstantStr.AVERAGE_VALUE) {
+                                    if (valueCondition == ConstantStr.AVERAGE_VALUE) {
                                         avg = MathUtil.getAvgBoolean(dataValueList);
-                                    } else if (itemGroup.getValueCondition() == ConstantStr.MAX_VALUE) {
+                                    } else if (valueCondition == ConstantStr.MAX_VALUE) {
                                         avg = MathUtil.getMaxBoolean(dataValueList);
-                                    } else if (itemGroup.getValueCondition() == ConstantStr.MIN_VALUE) {
+                                    } else if (valueCondition == ConstantStr.MIN_VALUE) {
                                         avg = MathUtil.getMinBoolean(dataValueList);
                                     } else {
                                         messageNoticeDao.addMessageNotice(new MessageNotice(reportTable.getUserId(),
@@ -117,11 +121,11 @@ public class ReportTableTask {
                                     try {
                                         BigDecimal[] dataValueList = JSON.parseObject(dataValue, BigDecimal[].class);
                                         BigDecimal avg;
-                                        if (itemGroup.getValueCondition() == ConstantStr.AVERAGE_VALUE) {
+                                        if (valueCondition == ConstantStr.AVERAGE_VALUE) {
                                             avg = MathUtil.getAvg(dataValueList);
-                                        } else if (itemGroup.getValueCondition() == ConstantStr.MAX_VALUE) {
+                                        } else if (valueCondition == ConstantStr.MAX_VALUE) {
                                             avg = MathUtil.getMax(dataValueList);
-                                        } else if (itemGroup.getValueCondition() == ConstantStr.MIN_VALUE) {
+                                        } else if (valueCondition == ConstantStr.MIN_VALUE) {
                                             avg = MathUtil.getMin(dataValueList);
                                         } else {
                                             messageNoticeDao.addMessageNotice(new MessageNotice(reportTable.getUserId(),

+ 4 - 5
chaunyi_opc/opc_da/src/main/resources/mapper/ItemGroupDao.xml

@@ -5,7 +5,7 @@
     <sql id="itemGroup">
         id
         , user_id, group_name, group_describe, data_source_id, read_mode, mode_value, run_state,
-            start_read_time, end_read_time, value_condition, create_time
+            start_read_time, end_read_time , create_time
     </sql>
 
     <sql id="item">
@@ -16,9 +16,9 @@
     <insert id="addItemGroup" parameterType="com.example.opc_common.entity.ItemGroup" useGeneratedKeys="true"
             keyProperty="id">
         insert into t_item_group(user_id, group_name, group_describe, data_source_id, read_mode, mode_value,
-                                 start_read_time, end_read_time, value_condition, create_time)
+                                 start_read_time, end_read_time , create_time)
         values (#{userId}, #{groupName}, #{groupDescribe}, #{dataSourceId}, #{readMode}, #{modeValue}, #{startReadTime},
-                #{endReadTime}, #{valueCondition}, now())
+                #{endReadTime}, now())
     </insert>
 
     <insert id="addItem">
@@ -39,8 +39,7 @@
             read_mode=#{readMode},
             mode_value=#{modeValue},
             start_read_time=#{startReadTime},
-            end_read_time=#{endReadTime},
-            value_condition=#{valueCondition}
+            end_read_time=#{endReadTime}
         where id = #{id}
     </update>
 

+ 20 - 13
chaunyi_opc/opc_da/src/main/resources/mapper/ReportTableDao.xml

@@ -14,22 +14,22 @@
 
     <sql id="reportTable">
         id
-        , user_id, report_table_name, report_table_data, report_value_format, is_auto_report , version, create_time
+        , user_id, report_table_name, report_table_data, report_value_format, value_condition,  is_auto_report , version, create_time
     </sql>
 
     <sql id="reportTableNoData">
         id
-        ,table_template_id, user_id, report_table_name, report_value_format, is_auto_report , version, create_time
+        ,table_template_id, user_id, report_table_name, report_value_format, value_condition, is_auto_report , version, create_time
     </sql>
 
     <sql id="reportTableCron">
         id
-        ,table_template_id, user_id, report_table_name, report_table_data, report_value_format, is_auto_report, version, cron_id, cron , create_time
+        ,table_template_id, user_id, report_table_name, report_table_data, report_value_format, value_condition, is_auto_report, version, cron_id, cron , create_time
     </sql>
 
     <sql id="reportTableCronNoData">
         id
-        ,table_template_id, user_id, report_table_name, report_value_format, is_auto_report, version,cron_id, cron , create_time
+        ,table_template_id, user_id, report_table_name, report_value_format, value_condition, is_auto_report, version,cron_id, cron , create_time
     </sql>
 
     <insert id="addTableTemplate" parameterType="com.example.opc_common.entity.TableTemplate" useGeneratedKeys="true"
@@ -44,9 +44,9 @@
     <insert id="addReportTable" parameterType="com.example.opc_common.entity.ReportTable" useGeneratedKeys="true"
             keyProperty="id">
         insert into t_report_table(table_template_id, user_id, report_table_name, report_table_data,
-                                   report_value_format, is_auto_report, version,
+                                   report_value_format, value_condition, is_auto_report, version,
                                    create_time) VALUE
-            (#{tableTemplateId}, #{userId}, #{reportTableName}, #{reportTableData}, #{reportValueFormat}, #{isAutoReport}, #{version}, now())
+            (#{tableTemplateId}, #{userId}, #{reportTableName}, #{reportTableData}, #{reportValueFormat}, #{valueCondition}, #{isAutoReport}, #{version}, now())
     </insert>
 
     <insert id="addTableUserGroup">
@@ -81,6 +81,7 @@
         set report_table_name=#{reportTableName},
             report_table_data=#{reportTableData},
             report_value_format=#{reportValueFormat},
+            value_condition=#{valueCondition},
             version=#{version}
         where id = #{id}
     </update>
@@ -242,6 +243,7 @@
                trt.user_id,
                trt.report_table_name,
                trt.report_value_format,
+               trt.value_condition,
                trt.is_auto_report,
                trt.version,
                trt.cron_id,
@@ -280,9 +282,10 @@
     </select>
 
     <select id="getTableUserGroup" resultType="com.example.opc_common.entity.UserGroup">
-        select ttug.user_group_id as id,
-        tug.user_group_name as userGroupName
-        from t_table_user_group ttug left join t_user_group tug on ttug.user_group_id=tug.id
+        select ttug.user_group_id  as id,
+               tug.user_group_name as userGroupName
+        from t_table_user_group ttug
+                 left join t_user_group tug on ttug.user_group_id = tug.id
         where table_id = #{reportTableId}
     </select>
 
@@ -334,6 +337,7 @@
         <result property="userName" column="user_name"/>
         <result property="reportTableName" column="report_table_name"/>
         <result property="reportValueFormat" column="report_value_format"/>
+        <result property="valueCondition" column="value_condition"/>
         <result property="isAutoReport" column="is_auto_report"/>
         <result property="cronId" column="cron_id"/>
         <result property="cron" column="cron"/>
@@ -346,9 +350,10 @@
     </resultMap>
 
     <select id="getUserGroupById" parameterType="INTEGER" resultType="com.example.opc_common.entity.UserGroup">
-        select ttug.user_group_id as id,
-        tug.user_group_name as userGroupName
-        from t_table_user_group ttug left join t_user_group tug on ttug.user_group_id=tug.id
+        select ttug.user_group_id  as id,
+               tug.user_group_name as userGroupName
+        from t_table_user_group ttug
+                 left join t_user_group tug on ttug.user_group_id = tug.id
         where table_id = #{id}
     </select>
 
@@ -360,6 +365,7 @@
         su.user_name,
         trt.report_table_name,
         trt.report_value_format,
+        trt.value_condition,
         trt.is_auto_report,
         trt.version,
         trt.cron_id,
@@ -423,6 +429,7 @@
         trt.user_id,
         trt.report_table_name,
         trt.report_value_format,
+        trt.value_condition,
         trt.is_auto_report,
         trt.version,
         trt.cron_id,
@@ -445,4 +452,4 @@
         ( select auto_ch_table_id from t_table_auto_log
         where auto_table_id=#{autoTableId})
     </select>
-</mapper>
+</mapper>