lv.wenbin 8 месяцев назад
Родитель
Сommit
4baa6cc7b0
21 измененных файлов с 226 добавлено и 177 удалено
  1. 13 2
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AreaController.java
  2. 4 4
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsObjAttrController.java
  3. 7 10
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/CoChargingConfigRel.java
  4. 24 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/EmsTag.java
  5. 27 28
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/ObjTagRel.java
  6. 2 1
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/AreaAttrMapper.java
  7. 8 8
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/ObjTagRelMapper.java
  8. 0 1
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/model/QueryChargingBill.java
  9. 8 8
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IObjTagRelService.java
  10. 7 6
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AreaAttrServiceImpl.java
  11. 11 1
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AreaServiceImpl.java
  12. 1 1
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/ChargingBillServiceImpl.java
  13. 8 8
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/ObjTagRelServiceImpl.java
  14. 1 1
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/AreaAttrMapper.xml
  15. 4 4
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/CoChargingConfigRelMapper.xml
  16. 11 2
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/EmsTagMapper.xml
  17. 10 10
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/ObjTagRelMapper.xml
  18. 16 8
      ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/BusObjType.java
  19. 2 2
      ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/DevObjType.java
  20. 53 53
      ems-cloud/sql/ems_init_data.sql
  21. 9 19
      ems-cloud/sql/ems_server.sql

+ 13 - 2
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AreaController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.ems.controller;
 
+import com.ruoyi.common.core.enums.BusObjType;
 import com.ruoyi.common.core.web.controller.BaseController;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.log.annotation.Log;
@@ -61,6 +62,16 @@ public class AreaController extends BaseController {
      * 查询区域对象列表
      */
     @RequiresPermissions("ems:area:list")
+    @GetMapping("/listDetail")
+    public AjaxResult listDetail(Area area) {
+        List<Area> list = areaService.selectAreaDetail(area);
+        return success(list);
+    }
+
+    /**
+     * 查询区域对象列表
+     */
+    @RequiresPermissions("ems:area:list")
     @GetMapping("/getAreaListByTag")
     public AjaxResult getAreaListByTag(@RequestParam(name = "parentCode", required = false, defaultValue = "0") String parentCode,
         @RequestParam(name = "recursion", required = false, defaultValue = "true") boolean recursion,
@@ -69,7 +80,7 @@ public class AreaController extends BaseController {
         List<Area> areaTree = areaService.selectAreaTree(parentCode, recursion);
 
         // 查询列表
-        List<ObjTagRel> tagRels = objTagRelService.selectListByTagCode(1, tagCode);
+        List<ObjTagRel> tagRels = objTagRelService.selectListByTagCode(BusObjType.AREA.getValue(), tagCode);
         Set<String> facsAreaCodes = tagRels.stream().map(ObjTagRel::getObjCode).collect(Collectors.toSet());
 
         // 过滤树节点
@@ -144,7 +155,7 @@ public class AreaController extends BaseController {
         List<Area> areaTree = areaService.selectAreaTree(parentCode, recursion);
 
         // 查询列表
-        List<ObjTagRel> tagRels = objTagRelService.selectListByTagCode(1, tagCode);
+        List<ObjTagRel> tagRels = objTagRelService.selectListByTagCode(BusObjType.AREA.getValue(), tagCode);
         Set<String> facsAreaCodes = tagRels.stream().map(ObjTagRel::getObjCode).collect(Collectors.toSet());
 
         // 过滤树节点

+ 4 - 4
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsObjAttrController.java

@@ -11,7 +11,7 @@ import com.ruoyi.ems.domain.EmsDeviceComponent;
 import com.ruoyi.ems.domain.EmsFacs;
 import com.ruoyi.ems.domain.EmsObjAttr;
 import com.ruoyi.ems.domain.EmsObjAttrValue;
-import com.ruoyi.common.core.enums.ObjType;
+import com.ruoyi.common.core.enums.DevObjType;
 import com.ruoyi.ems.service.IEmsDeviceComponentService;
 import com.ruoyi.ems.service.IEmsDeviceService;
 import com.ruoyi.ems.service.IEmsFacsService;
@@ -88,17 +88,17 @@ public class EmsObjAttrController extends BaseController {
         try {
             String modeCode = null;
 
-            if (objType == ObjType.FACS.getCode()) {
+            if (objType == DevObjType.FACS.getCode()) {
                 EmsFacs facs = facsService.selectEmsFacsByCode(objCode);
                 Assert.notNull(facs, -1, "能源设施不存在");
                 modeCode = facs.getFacsModel();
             }
-            else if (objType == ObjType.DEVC.getCode()) {
+            else if (objType == DevObjType.DEVC.getCode()) {
                 EmsDevice device = deviceService.selectByCode(objCode);
                 Assert.notNull(device, -1, "能源设备不存在");
                 modeCode = device.getDeviceModel();
             }
-            else if (objType == ObjType.COMPONENT.getCode()) {
+            else if (objType == DevObjType.COMPONENT.getCode()) {
                 EmsDeviceComponent devCompo = componentService.selectByCode(objCode);
                 Assert.notNull(devCompo, -1, "设备部件不存在");
                 modeCode = devCompo.getCompoModel();

+ 7 - 10
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/CoChargingConfigRel.java

@@ -12,13 +12,11 @@ import com.ruoyi.common.core.web.domain.BaseEntity;
  */
 public class CoChargingConfigRel
 {
-    private static final long serialVersionUID = 1L;
-
     /** 计费序号 */
     private Long priceCfgId;
 
     /** 区块编码 */
-    private String zoningCode;
+    private String areaCode;
 
     public void setPriceCfgId(Long priceCfgId) 
     {
@@ -29,21 +27,20 @@ public class CoChargingConfigRel
     {
         return priceCfgId;
     }
-    public void setZoningCode(String zoningCode) 
-    {
-        this.zoningCode = zoningCode;
+
+    public String getAreaCode() {
+        return areaCode;
     }
 
-    public String getZoningCode() 
-    {
-        return zoningCode;
+    public void setAreaCode(String areaCode) {
+        this.areaCode = areaCode;
     }
 
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
             .append("priceCfgId", getPriceCfgId())
-            .append("zoningCode", getZoningCode())
+            .append("areaCode", getAreaCode())
             .toString();
     }
 }

+ 24 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/EmsTag.java

@@ -26,6 +26,12 @@ public class EmsTag extends BaseEntity
     /** 标签名称 */
     private String tagName;
 
+    /** 修改标记 */
+    private Integer modFlag;
+
+    /** 标签颜色 */
+    private String tagColor;
+
     public void setId(Long id) 
     {
         this.id = id;
@@ -63,6 +69,22 @@ public class EmsTag extends BaseEntity
         return tagName;
     }
 
+    public Integer getModFlag() {
+        return modFlag;
+    }
+
+    public void setModFlag(Integer modFlag) {
+        this.modFlag = modFlag;
+    }
+
+    public String getTagColor() {
+        return tagColor;
+    }
+
+    public void setTagColor(String tagColor) {
+        this.tagColor = tagColor;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@@ -70,6 +92,8 @@ public class EmsTag extends BaseEntity
             .append("tagModel", getTagModel())
             .append("tagCode", getTagCode())
             .append("tagName", getTagName())
+            .append("modFlag", getModFlag())
+            .append("tagColor", getTagColor())
             .toString();
     }
 }

+ 27 - 28
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/ObjTagRel.java

@@ -1,5 +1,6 @@
 package com.ruoyi.ems.domain;
 
+import com.ruoyi.common.core.enums.BusObjType;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 import com.ruoyi.common.core.annotation.Excel;
@@ -13,9 +14,6 @@ import com.ruoyi.common.core.web.domain.BaseEntity;
  */
 public class ObjTagRel
 {
-    /** 标签类型 */
-    private Integer tagType;
-
     /** 标签代码 */
     private String tagCode;
 
@@ -24,59 +22,60 @@ public class ObjTagRel
      */
     private String tagName;
 
+    /**
+     * 对象类型
+     */
+    private int objType;
+
     /** 对象代码 */
     private String objCode;
 
     public ObjTagRel(){
     }
 
-    public ObjTagRel(Integer tagType, String tagCode, String objCode) {
-        this.tagType = tagType;
+    public ObjTagRel(String tagCode, BusObjType objType, String objCode) {
         this.tagCode = tagCode;
+        this.objType = objType.getValue();
         this.objCode = objCode;
     }
 
-    public void setTagType(Integer tagType)
-    {
-        this.tagType = tagType;
+    public String getTagCode() {
+        return tagCode;
     }
 
-    public Integer getTagType()
-    {
-        return tagType;
-    }
-    public void setTagCode(String tagCode) 
-    {
+    public void setTagCode(String tagCode) {
         this.tagCode = tagCode;
     }
 
-    public String getTagCode() 
-    {
-        return tagCode;
+    public String getTagName() {
+        return tagName;
     }
-    public void setObjCode(String objCode) 
-    {
-        this.objCode = objCode;
+
+    public void setTagName(String tagName) {
+        this.tagName = tagName;
     }
 
-    public String getObjCode() 
-    {
-        return objCode;
+    public int getObjType() {
+        return objType;
     }
 
-    public String getTagName() {
-        return tagName;
+    public void setObjType(int objType) {
+        this.objType = objType;
     }
 
-    public void setTagName(String tagName) {
-        this.tagName = tagName;
+    public String getObjCode() {
+        return objCode;
+    }
+
+    public void setObjCode(String objCode) {
+        this.objCode = objCode;
     }
 
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("tagType", getTagType())
             .append("tagCode", getTagCode())
+            .append("objType", getObjType())
             .append("objCode", getObjCode())
             .append("tagName", getTagName())
             .toString();

+ 2 - 1
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/AreaAttrMapper.java

@@ -1,6 +1,7 @@
 package com.ruoyi.ems.mapper;
 
 import com.ruoyi.ems.domain.AreaAttr;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Set;
@@ -26,7 +27,7 @@ public interface AreaAttrMapper {
      * @param list 区域对象代码集合
      * @return 区域对象属性集合
      */
-    List<AreaAttr> selectAreaAttrList(Set<String> list);
+    List<AreaAttr> selectAreaAttrList(@Param("set") Set<String> set);
 
     /**
      * 新增区域对象属性

+ 8 - 8
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/ObjTagRelMapper.java

@@ -15,28 +15,28 @@ public interface ObjTagRelMapper {
     /**
      * 查询对象&标签关系列表
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @return 对象&标签关系集合
      */
-    List<ObjTagRel> selectListByType(int tagType);
+    List<ObjTagRel> selectListByType(int objType);
 
     /**
      * 新增对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param tagCode 标签代码
      * @return 结果
      */
-    List<ObjTagRel> selectListByTagCode(@Param("tagType") int tagType, @Param("tagCode") String tagCode);
+    List<ObjTagRel> selectListByTagCode(@Param("objType") int objType, @Param("tagCode") String tagCode);
 
     /**
      * 新增对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param objCode 标签代码
      * @return 结果
      */
-    List<ObjTagRel> selectListByObjCode(@Param("tagType") int tagType, @Param("objCode") String objCode);
+    List<ObjTagRel> selectListByObjCode(@Param("objType") int objType, @Param("objCode") String objCode);
 
     /**
      * 批量插入
@@ -49,11 +49,11 @@ public interface ObjTagRelMapper {
     /**
      * 删除对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param objCode 对象代码
      * @return 结果
      */
-    int deleteByObjCode(@Param("tagType") int tagType, @Param("objCode") String objCode);
+    int deleteByObjCode(@Param("objType") int objType, @Param("objCode") String objCode);
 
     /**
      * 删除对象&标签关系

+ 0 - 1
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/model/QueryChargingBill.java

@@ -11,7 +11,6 @@
 package com.ruoyi.ems.model;
 
 import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.common.core.enums.AreaTier;
 
 /**
  * 查询账单请求

+ 8 - 8
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IObjTagRelService.java

@@ -14,28 +14,28 @@ public interface IObjTagRelService {
     /**
      * 查询对象&标签关系列表
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @return 对象&标签关系集合
      */
-    List<ObjTagRel> selectListByType(int tagType);
+    List<ObjTagRel> selectListByType(int objType);
 
     /**
      * 新增对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param tagCode 标签代码
      * @return 结果
      */
-    List<ObjTagRel> selectListByTagCode(int tagType, String tagCode);
+    List<ObjTagRel> selectListByTagCode(int objType, String tagCode);
 
     /**
      * 新增对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param objCode 标签代码
      * @return 结果
      */
-    List<ObjTagRel> selectListByObjCode(int tagType, String objCode);
+    List<ObjTagRel> selectListByObjCode(int objType, String objCode);
 
     /**
      * 批量插入
@@ -48,11 +48,11 @@ public interface IObjTagRelService {
     /**
      * 删除对象&标签关系
      *
-     * @param tagType 标签类型
+     * @param objType 标签类型
      * @param objCode 对象代码
      * @return 结果
      */
-    int deleteByObjCode(int tagType, String objCode);
+    int deleteByObjCode(int objType, String objCode);
 
     /**
      * 删除对象&标签关系

+ 7 - 6
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AreaAttrServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ruoyi.ems.service.impl;
 
+import com.ruoyi.common.core.enums.BusObjType;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.ems.domain.AreaAttr;
 import com.ruoyi.ems.domain.ObjTagRel;
@@ -82,7 +83,7 @@ public class AreaAttrServiceImpl implements IAreaAttrService {
     }
 
     private void fillExt(AreaAttr areaAttr) {
-        List<ObjTagRel> tagRel = tagRelService.selectListByObjCode(1, areaAttr.getAreaCode());
+        List<ObjTagRel> tagRel = tagRelService.selectListByObjCode(BusObjType.AREA.getValue(), areaAttr.getAreaCode());
 
         if (CollectionUtils.isNotEmpty(tagRel)) {
             List<String> tagCodes = tagRel.stream().map(ObjTagRel::getTagCode).collect(Collectors.toList());
@@ -94,7 +95,7 @@ public class AreaAttrServiceImpl implements IAreaAttrService {
     }
 
     private void fillExtBatch(List<AreaAttr> list) {
-        List<ObjTagRel> tagRel = tagRelService.selectListByType(1);
+        List<ObjTagRel> tagRel = tagRelService.selectListByType(BusObjType.AREA.getValue());
         Map<String, List<ObjTagRel>> tagRelMap = tagRel.stream()
             .collect(Collectors.groupingBy(ObjTagRel::getObjCode));
 
@@ -116,7 +117,7 @@ public class AreaAttrServiceImpl implements IAreaAttrService {
             List<ObjTagRel> tagRelList = new ArrayList<>();
 
             for (String tagCode : tagArray) {
-                ObjTagRel tagRel = new ObjTagRel(1, tagCode, areaAttr.getAreaCode());
+                ObjTagRel tagRel = new ObjTagRel(tagCode, BusObjType.AREA, areaAttr.getAreaCode());
                 tagRelList.add(tagRel);
             }
 
@@ -130,15 +131,15 @@ public class AreaAttrServiceImpl implements IAreaAttrService {
             List<ObjTagRel> tagRelList = new ArrayList<>();
 
             for (String tagCode : tagArray) {
-                ObjTagRel tagRel = new ObjTagRel(1, tagCode, areaAttr.getAreaCode());
+                ObjTagRel tagRel = new ObjTagRel(tagCode, BusObjType.AREA, areaAttr.getAreaCode());
                 tagRelList.add(tagRel);
             }
 
-            tagRelService.deleteByObjCode(1, areaAttr.getAreaCode());
+            tagRelService.deleteByObjCode(BusObjType.AREA.getValue(), areaAttr.getAreaCode());
             tagRelService.insertBatch(tagRelList);
         }
         else {
-            tagRelService.deleteByObjCode(1, areaAttr.getAreaCode());
+            tagRelService.deleteByObjCode(BusObjType.AREA.getValue(), areaAttr.getAreaCode());
         }
     }
 }

+ 11 - 1
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AreaServiceImpl.java

@@ -77,8 +77,18 @@ public class AreaServiceImpl implements IAreaService {
         List<Area> list = areaMapper.selectAreaList(param);
 
         if (CollectionUtils.isNotEmpty(list)) {
+            
+
+            List<String> areaCodes = list.stream().map(Area::getAreaCode).collect(Collectors.toList());
+            List<AreaAttr> attrList = attrService.selectAreaAttrList(areaCodes);
+            Map<String, AreaAttr> attrMap = attrList.stream()
+                .collect(Collectors.toMap(AreaAttr::getAreaCode, Function.identity()));
+
             for (Area area : list) {
-                area.setAreaAttr(attrService.selectAreaAttrByCode(area.getAreaCode()));
+                if (attrMap.containsKey(area.getAreaCode())) {
+                    AreaAttr attr = attrMap.get(area.getAreaCode());
+                    area.setAreaAttr(attr);
+                }
             }
         }
 

+ 1 - 1
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/ChargingBillServiceImpl.java

@@ -447,7 +447,7 @@ public class ChargingBillServiceImpl implements IChargingBillService {
         Set<String> coSet;
 
         if (null != chargingCfg) {
-            coSet = chargingCfg.getRelCoList().stream().map(CoChargingConfigRel::getZoningCode)
+            coSet = chargingCfg.getRelCoList().stream().map(CoChargingConfigRel::getAreaCode)
                 .collect(Collectors.toSet());
         }
         else {

+ 8 - 8
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/ObjTagRelServiceImpl.java

@@ -20,18 +20,18 @@ public class ObjTagRelServiceImpl implements IObjTagRelService {
     private ObjTagRelMapper objTagRelMapper;
 
     @Override
-    public List<ObjTagRel> selectListByType(int tagType) {
-        return objTagRelMapper.selectListByType(tagType);
+    public List<ObjTagRel> selectListByType(int objType) {
+        return objTagRelMapper.selectListByType(objType);
     }
 
     @Override
-    public List<ObjTagRel> selectListByTagCode(int tagType, String tagCode) {
-        return objTagRelMapper.selectListByTagCode(tagType, tagCode);
+    public List<ObjTagRel> selectListByTagCode(int objType, String tagCode) {
+        return objTagRelMapper.selectListByTagCode(objType, tagCode);
     }
 
     @Override
-    public List<ObjTagRel> selectListByObjCode(int tagType, String objCode) {
-        return objTagRelMapper.selectListByObjCode(tagType, objCode);
+    public List<ObjTagRel> selectListByObjCode(int objType, String objCode) {
+        return objTagRelMapper.selectListByObjCode(objType, objCode);
     }
 
     @Override
@@ -40,8 +40,8 @@ public class ObjTagRelServiceImpl implements IObjTagRelService {
     }
 
     @Override
-    public int deleteByObjCode(int tagType, String objCode) {
-        return objTagRelMapper.deleteByObjCode(tagType, objCode);
+    public int deleteByObjCode(int objType, String objCode) {
+        return objTagRelMapper.deleteByObjCode(objType, objCode);
     }
 
     @Override

+ 1 - 1
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/AreaAttrMapper.xml

@@ -41,7 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <where>
             area_code in
             (
-              <foreach collection="list" item="item" index="index" separator=",">
+              <foreach collection="set" item="item" index="index" separator=",">
                 #{item}
               </foreach>
             )

+ 4 - 4
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/CoChargingConfigRelMapper.xml

@@ -6,11 +6,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     
     <resultMap type="com.ruoyi.ems.domain.CoChargingConfigRel" id="CoChargingConfigRelResult">
         <result property="priceCfgId"    column="price_cfg_id"    />
-        <result property="zoningCode"    column="zoning_code"    />
+        <result property="areaCode"      column="area_code"    />
     </resultMap>
 
     <sql id="selectAdmCoChargingConfigRelVo">
-        select price_cfg_id, zoning_code from adm_co_charging_config_rel
+        select price_cfg_id, area_code from adm_co_charging_config_rel
     </sql>
 
     <select id="selectRelList" parameterType="java.lang.Long" resultMap="CoChargingConfigRelResult">
@@ -19,10 +19,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <insert id="insertRelBatch" parameterType="java.util.List">
-        insert into adm_co_charging_config_rel (price_cfg_id, zoning_code)
+        insert into adm_co_charging_config_rel (price_cfg_id, area_code)
         values
         <foreach collection="list" item="item" index="index" separator=",">
-            (#{item.priceCfgId}, #{item.zoningCode})
+            (#{item.priceCfgId}, #{item.areaCode})
         </foreach>
     </insert>
 

+ 11 - 2
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/EmsTagMapper.xml

@@ -6,13 +6,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     
     <resultMap type="com.ruoyi.ems.domain.EmsTag" id="emsTagResult">
         <result property="id"    column="id"    />
-        <result property="tagModel"    column="tag_model"    />
+        <result property="tagModel"   column="tag_model"    />
         <result property="tagCode"    column="tag_code"    />
         <result property="tagName"    column="tag_name"    />
+        <result property="modFlag"    column="mod_flag"    />
+        <result property="tagColor"   column="tag_color"    />
     </resultMap>
 
     <sql id="selectEmsTagVo">
-        select id, tag_model, tag_code, tag_name from dim_ems_tag
+        select id, tag_model, tag_code, tag_name, mod_flag, tag_color from dim_ems_tag
     </sql>
 
     <select id="selectEmsTagList" parameterType="com.ruoyi.ems.domain.EmsTag" resultMap="emsTagResult">
@@ -21,6 +23,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="tagModel != null  and tagModel != ''"> and tag_model = #{tagModel}</if>
             <if test="tagCode != null  and tagCode != ''"> and tag_code = #{tagCode}</if>
             <if test="tagName != null  and tagName != ''"> and tag_name like concat('%', #{tagName}, '%')</if>
+            <if test="modFlag != null  and modFlag != ''"> and mod_flag = #{modFlag}</if>
         </where>
     </select>
     
@@ -35,11 +38,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="tagModel != null and tagModel != ''">tag_model,</if>
             <if test="tagCode != null and tagCode != ''">tag_code,</if>
             <if test="tagName != null and tagName != ''">tag_name,</if>
+            <if test="modFlag != null and modFlag != ''">mod_flag,</if>
+            <if test="tagColor != null and tagColor != ''">tag_color,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="tagModel != null and tagModel != ''">#{tagModel},</if>
             <if test="tagCode != null and tagCode != ''">#{tagCode},</if>
             <if test="tagName != null and tagName != ''">#{tagName},</if>
+            <if test="modFlag != null">#{modFlag},</if>
+            <if test="tagColor != null and tagColor != ''">#{tagColor},</if>
          </trim>
     </insert>
 
@@ -49,6 +56,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="tagModel != null and tagModel != ''">tag_model = #{tagModel},</if>
             <if test="tagCode != null and tagCode != ''">tag_code = #{tagCode},</if>
             <if test="tagName != null and tagName != ''">tag_name = #{tagName},</if>
+            <if test="modFlag != null and modFlag != ''">mod_flag = #{modFlag},</if>
+            <if test="tagColor != null and tagColor != ''">tag_color = #{tagColor},</if>
         </trim>
         where id = #{id}
     </update>

+ 10 - 10
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/ObjTagRelMapper.xml

@@ -5,42 +5,42 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 <mapper namespace="com.ruoyi.ems.mapper.ObjTagRelMapper">
     
     <resultMap type="com.ruoyi.ems.domain.ObjTagRel" id="objTagRelResult">
-        <result property="tagType"    column="tag_type"    />
         <result property="tagCode"    column="tag_code"    />
+        <result property="objType"    column="obj_type"    />
         <result property="objCode"    column="obj_code"    />
         <result property="tagName"    column="tag_name"    />
     </resultMap>
 
     <sql id="selectAdmObjTagRelVo">
-        select tag_type, tag_code, obj_code from adm_obj_tag_rel
+        select tag_code, obj_type, obj_code from adm_obj_tag_rel
     </sql>
 
     <select id="selectListByType" parameterType="java.lang.Integer" resultMap="objTagRelResult">
         select
-            r.tag_type, r.tag_code, r.obj_code, t.tag_name
+            r.tag_code, t.tag_name, r.obj_type, r.obj_code
         from adm_obj_tag_rel r
             left join dim_ems_tag t on r.tag_code = t.tag_code
-        where r.tag_type = #{tagType}
+        where r.obj_type = #{objType}
     </select>
 
     <select id="selectListByTagCode" resultMap="objTagRelResult">
         <include refid="selectAdmObjTagRelVo"/>
-        where tag_type = #{tagType} and tag_code = #{tagCode}
+        where obj_type = #{objType} and tag_code = #{tagCode}
     </select>
 
     <select id="selectListByObjCode" resultMap="objTagRelResult">
         select
-            r.tag_type, r.tag_code, r.obj_code, t.tag_name
+            r.tag_code, t.tag_name, r.obj_type, r.obj_code
         from adm_obj_tag_rel r
             left join dim_ems_tag t on r.tag_code = t.tag_code
-        where r.tag_type = #{tagType} and r.obj_code = #{objCode}
+        where r.obj_type = #{objType} and r.obj_code = #{objCode}
     </select>
 
     <insert id="insertBatch" parameterType="java.util.List">
-        insert into adm_obj_tag_rel (tag_type, tag_code, obj_code)
+        insert into adm_obj_tag_rel (tag_code, obj_type, obj_code)
         values
         <foreach collection="list" item="item" index="index" separator=",">
-            (#{item.tagType}, #{item.tagCode}, #{item.objCode})
+            (#{item.tagCode}, #{item.objType}, #{item.objCode})
         </foreach>
     </insert>
 
@@ -50,6 +50,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
 
     <delete id="deleteByObjCode">
-        delete from adm_obj_tag_rel where tag_type = #{tagType} and obj_code = #{objCode}
+        delete from adm_obj_tag_rel where obj_type = #{objType} and obj_code = #{objCode}
     </delete>
 </mapper>

+ 16 - 8
ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/AreaTier.java → ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/BusObjType.java

@@ -1,9 +1,9 @@
 /*
- * 文 件 名:  AreaTier
+ * 文 件 名:  BusObjType
  * 版    权:  浩鲸云计算科技股份有限公司
  * 描    述:  <描述>
  * 修 改 人:  lvwenbin
- * 修改时间:  2024/7/25
+ * 修改时间:  2024/11/8
  * 跟踪单号:  <跟踪单号>
  * 修改单号:  <修改单号>
  * 修改内容:  <修改内容>
@@ -11,18 +11,26 @@
 package com.ruoyi.common.core.enums;
 
 /**
- * 区域层级枚举
+ * 业务对象类型
  * <功能详细描述>
  *
  * @author lvwenbin
- * @version [版本号, 2024/7/25]
+ * @version [版本号, 2024/11/8]
  * @see [相关类/方法]
  * @since [产品/模块版本]
  */
-public enum AreaTier {
-    Area,
+public enum BusObjType {
+    AREA(1),
+    FACS(2),
+    DEV(3);
 
-    Building,
+    private int value;
 
-    Zoning;
+    BusObjType(int value) {
+        this.value = value;
+    }
+
+    public int getValue() {
+        return value;
+    }
 }

+ 2 - 2
ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/ObjType.java → ems-cloud/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/DevObjType.java

@@ -19,12 +19,12 @@ package com.ruoyi.common.core.enums;
  * @see [相关类/方法]
  * @since [产品/模块版本]
  */
-public enum ObjType {
+public enum DevObjType {
     FACS(1),
     DEVC(2),
     COMPONENT(3);
 
-    ObjType(int code) {
+    DevObjType(int code) {
         this.code = code;
     }
 

+ 53 - 53
ems-cloud/sql/ems_init_data.sql

@@ -511,59 +511,59 @@ INSERT INTO `adm_ems_device_component` (`device_code`, `compo_code`, `compo_tag`
 
 
 -- 区域&标签关系表
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-101','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-102','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-103','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-104','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-105','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-106','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-107','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-108','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-109','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-110','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-111','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-112','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-113','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-114','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-115','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-116','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-117','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-118','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','B-119','Area_00');
-
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-CD','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-DKC','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-HC','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-WXP','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-WZA','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','321283124S3001_CW-XK','Area_00');
-
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-101','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-102','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-103','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-104','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-105','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-106','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-107','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-108','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-109','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-110','Area_01');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-111','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-112','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-113','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-114','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-115','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-116','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-117','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-118','Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3','N-119','Area_00');
-
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-CD',  'Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-DKC', 'Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-HC',  'Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-WXP', 'Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-WZA', 'Area_00');
-insert into adm_obj_tag_rel (`tag_type`,`obj_code`,`tag_code`) VALUES ('3', '321283124S3002_CW-XK',  'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-101', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-102', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-103', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-104', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-105', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-106', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-107', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-108', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-109', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-110', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-111', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-112', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-113', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-114', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-115', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-116', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-117', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-118', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('B-119', 1, 'Area_00');
+
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-CD', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-DKC', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-HC', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-WXP', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-WZA', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3001_CW-XK', 1, 'Area_00');
+
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-101', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-102', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-103', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-104', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-105', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-106', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-107', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-108', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-109', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-110', 1, 'Area_01');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-111', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-112', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-113', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-114', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-115', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-116', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-117', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-118', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('N-119', 1, 'Area_00');
+
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-CD', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-DKC', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-HC', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-WXP', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-WZA', 1, 'Area_00');
+insert into adm_obj_tag_rel (`obj_code`, `obj_type`, `tag_code`) VALUES ('321283124S3002_CW-XK', 1,  'Area_00');
 
 -- 服务区用电属性数据
 INSERT INTO adm_area_elec_attr (`area_code`, `price_code`, `req_capacity_flag`, `trans_capacity`, `req_quantity`) VALUES ('321283124S3001', '4001', 1, 630, NULL);

+ 9 - 19
ems-cloud/sql/ems_server.sql

@@ -288,13 +288,16 @@ create table dim_ems_tag (
   `tag_model`     varchar(128)    not null                   comment '标签模型',
   `tag_code`      varchar(64)     not null                   comment '标签代码',
   `tag_name`      varchar(128)    not null                   comment '标签名称',
+  `mod_flag`      int             not null                   comment '修改标记',
+  `tag_color`     varchar(64)     default null               comment '标签颜色',
   primary key (`id`),
   unique key ux_ems_tag(`tag_code`)
 ) engine=innodb auto_increment=1 comment = '标签分类';
 
-INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`) VALUES ('Area', 'Area_00', '公共区域');
-INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`) VALUES ('Area', 'Area_01', '商户区域');
-
+INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`, `mod_flag`, `tag_color`) VALUES ('Area', 'Area_00', '公共区域', 0, null);
+INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`, `mod_flag`, `tag_color`) VALUES ('Area', 'Area_01', '商户区域', 0, null);
+INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`, `mod_flag`, `tag_color`) VALUES ('Area', 'Area_02', '房建区', 0, null);
+INSERT INTO `dim_ems_tag` (`tag_model`, `tag_code`, `tag_name`, `mod_flag`, `tag_color`) VALUES ('Area', 'Area_03', '充电区', 0, null);
 
 -- ----------------------------
 -- 电价计量分类
@@ -901,10 +904,10 @@ create table adm_ems_device_rbook (
 -- ----------------------------
 drop table if exists adm_obj_tag_rel;
 create table adm_obj_tag_rel (
-  `tag_type`         int             not null                     comment '标签类型',
   `tag_code`         varchar(64)     not null                     comment '标签代码',
+  `obj_type`         int             not null                     comment '对象类型 1:园区,2:区块,3:设施',
   `obj_code`         varchar(64)     not null                     comment '对象代码',
-  key inx_obj_tag_rel(`tag_type`, `tag_code`)
+  unique key inx_obj_tag_rel(`tag_code`, `obj_type`, `obj_code`)
 ) engine=innodb auto_increment=1 comment = '对象&标签关系表';
 
 
@@ -929,19 +932,6 @@ create table adm_meter_reading (
   key meter_reading_manual(`device_code`)
 ) engine=innodb auto_increment=1 comment = '抄表记录表';
 
-
--- ----------------------------
--- 对象&标签关系表
--- ----------------------------
-drop table if exists adm_obj_tag_rel;
-create table adm_obj_tag_rel (
-  `tag_type`         int             not null                     comment '标签类型',
-  `tag_code`         varchar(64)     not null                     comment '标签代码',
-  `obj_code`         varchar(64)     not null                     comment '对象代码',
-  key inx_obj_tag_rel(`tag_type`, `tag_code`)
-) engine=innodb auto_increment=1 comment = '对象&标签关系表';
-
-
 -- ----------------------------
 -- 服务区用电属性表
 -- ----------------------------
@@ -1055,7 +1045,7 @@ create table adm_co_charging_config (
 drop table if exists adm_co_charging_config_rel;
 create table adm_co_charging_config_rel (
   `price_cfg_id`          bigint(20)      not null auto_increment      comment '计费序号',
-  `zoning_code`           varchar(16)     not null                     comment '区块编码',
+  `area_code`             varchar(16)     not null                     comment '区块编码',
   unique key ux_co_emsprice_config_rel(`price_cfg_id`, `zoning_code`)
 ) engine=innodb comment = '商户能源计费关系表';