lv.wenbin 10 luni în urmă
părinte
comite
da51baa5cb

+ 305 - 278
ems-ui/src/views/basecfg/device/model.vue

@@ -32,7 +32,8 @@
           size="mini"
           @click="handleAdd"
           v-hasPermi="['ems:model:add']"
-        >新增</el-button>
+        >新增
+        </el-button>
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -43,7 +44,8 @@
           :disabled="single"
           @click="handleUpdate"
           v-hasPermi="['ems:model:edit']"
-        >修改</el-button>
+        >修改
+        </el-button>
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -54,16 +56,17 @@
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['ems:model:remove']"
-        >删除</el-button>
+        >删除
+        </el-button>
       </el-col>
 
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="modelList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="模型编码" align="center" prop="modelCode" />
-      <el-table-column label="模型名称" align="center" prop="modelName" />
+      <el-table-column type="selection" width="55" align="center"/>
+      <el-table-column label="模型编码" align="center" prop="modelCode"/>
+      <el-table-column label="模型名称" align="center" prop="modelName"/>
       <el-table-column label="对象类型" align="center">
         <template slot-scope="scope">
           {{ objTypeMapping[scope.row.objType] }}
@@ -77,21 +80,24 @@
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['ems:model:edit']"
-          >修改</el-button>
+          >修改
+          </el-button>
           <el-button
             size="mini"
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['ems:model:remove']"
-          >删除</el-button>
+          >删除
+          </el-button>
           <el-button
             size="mini"
             type="text"
             icon="el-icon-info"
             @click="handleDetail(scope.row)"
           >
-            特性</el-button>
+            特性
+          </el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -108,16 +114,17 @@
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="模型编码" prop="modelCode">
-          <el-input v-model="form.modelCode" placeholder="请输入模型code" />
+          <el-input v-model="form.modelCode" placeholder="请输入模型code"/>
         </el-form-item>
         <el-form-item label="模型名称" prop="modelName">
-          <el-input v-model="form.modelName" placeholder="请输入模型名称" />
+          <el-input v-model="form.modelName" placeholder="请输入模型名称"/>
         </el-form-item>
         <el-form-item label="对象类型" prop="objType">
           <el-select v-model="form.objType" placeholder="请选择对象类型">
-            <el-option label="设施" value="1"></el-option>
-            <el-option label="设备" value="2"></el-option>
-            <el-option label="设备部件" value="3"></el-option>
+            <el-option v-for="item in objTypeOptions"
+                       :label="item.name"
+                       :value="item.code"
+                       :key="item.code" />
           </el-select>
         </el-form-item>
 
@@ -130,47 +137,54 @@
 
 
     <!-- ”特性“对话框   -->
-    <el-drawer :title=curRow.modelName size="80%" :visible.sync="showDrawer" direction="rtl" >
-      <div class="drawer-content" style="padding-left:50px" >
-        <el-tabs v-model="subKey" >
-          <el-tab-pane label="对象属性" name="attr" >
+    <el-drawer :title=curRow.modelName size="80%" :visible.sync="showDrawer" direction="rtl">
+      <div class="drawer-content" style="padding-left:50px">
+        <el-tabs v-model="subKey">
+          <el-tab-pane label="对象属性" name="attr">
             <el-row :gutter="10" class="mb8">
               <el-col :span="1.5">
-                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAttrAdd" v-hasPermi="['ems:attr:add']">新增
+                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAttrAdd"
+                           v-hasPermi="['ems:attr:add']"
+                >新增
                 </el-button>
               </el-col>
             </el-row>
             <el-table v-loading="loading" :data="attrList">
-              <el-table-column type="selection" width="55" align="center" />
-<!--              <el-table-column label="序号" align="center" prop="id" />-->
-<!--              <el-table-column label="模型code" align="center" prop="modelCode" />-->
-              <el-table-column label="属性名称" align="center" prop="attrName" />
-              <el-table-column label="属性标识" align="center" prop="attrKey" />
-<!--              <el-table-column label="属性值" align="center" prop="attrValue" />-->
-              <el-table-column label="属性单位" align="center" prop="attrUnit" />
+              <el-table-column type="selection" width="55" align="center"/>
+              <el-table-column label="属性名称" align="center" prop="attrName"/>
+              <el-table-column label="属性标识" align="center" prop="attrKey"/>
+              <el-table-column label="属性单位" align="center" prop="attrUnit"/>
               <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
                 <template slot-scope="scope">
-                  <el-button size="mini" type="text"  icon="el-icon-edit" @click="handleAttrUpdate(scope.row)" v-hasPermi="['ems:attr:edit']">
-                    修改</el-button>
-                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn" @click="handleAttrDelete(scope.row)" v-hasPermi="['ems:attr:remove']">
-                    删除</el-button>
+                  <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAttrUpdate(scope.row)"
+                             v-hasPermi="['ems:attr:edit']"
+                  >
+                    修改
+                  </el-button>
+                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn"
+                             @click="handleAttrDelete(scope.row)" v-hasPermi="['ems:attr:remove']"
+                  >
+                    删除
+                  </el-button>
                 </template>
               </el-table-column>
             </el-table>
 
-            <pagination v-show="total>0" :total="total" :page.sync="queryAttrParams.pageNum" :limit.sync="queryAttrParams.pageSize"
-                        @pagination="getAttrList" />
+            <pagination v-show="total>0" :total="total" :page.sync="queryAttrParams.pageNum"
+                        :limit.sync="queryAttrParams.pageSize"
+                        @pagination="getAttrList"
+            />
             <!-- 添加或修改服务区用电属性对话框 -->
             <el-dialog :title="title" :visible.sync="attrOpen" width="500px" append-to-body>
               <el-form ref="attrForm" :model="attrForm" :rules="attrRules" label-width="150px">
-                  <el-form-item label="模型code" prop="modelCode">
-                  <el-input v-model="attrForm.modelCode" placeholder="请输入模型code" />
-                  </el-form-item>
+                <el-form-item label="模型code" prop="modelCode">
+                  <el-input v-model="attrForm.modelCode" placeholder="请输入模型code"/>
+                </el-form-item>
                 <el-form-item label="属性名称" prop="attrName">
-                  <el-input v-model="attrForm.attrName" placeholder="请输入属性名称" />
+                  <el-input v-model="attrForm.attrName" placeholder="请输入属性名称"/>
                 </el-form-item>
                 <el-form-item label="属性标识" prop="attrKey">
-                  <el-input v-model="attrForm.attrKey" placeholder="请输入属性标识" />
+                  <el-input v-model="attrForm.attrKey" placeholder="请输入属性标识"/>
                 </el-form-item>
                 <el-form-item label="属性类型" prop="attrType">
                   <el-select v-model="attrForm.attrType" placeholder="请选择属性类型">
@@ -178,11 +192,11 @@
                     <el-option label="动态" value="1"></el-option>
                   </el-select>
                 </el-form-item>
-<!--                <el-form-item label="属性值" prop="attrValue">-->
-<!--                  <el-input v-model="attrForm.attrValue" type="textarea" placeholder="请输入内容" />-->
-<!--                </el-form-item>-->
+                <!--                <el-form-item label="属性值" prop="attrValue">-->
+                <!--                  <el-input v-model="attrForm.attrValue" type="textarea" placeholder="请输入内容" />-->
+                <!--                </el-form-item>-->
                 <el-form-item label="属性单位" prop="attrUnit">
-                  <el-input v-model="attrForm.attrUnit" placeholder="请输入属性单位" />
+                  <el-input v-model="attrForm.attrUnit" placeholder="请输入属性单位"/>
                 </el-form-item>
               </el-form>
               <div slot="footer" class="dialog-footer">
@@ -192,18 +206,20 @@
             </el-dialog>
           </el-tab-pane>
 
-          <el-tab-pane label="对象事件" name="second" >
+          <el-tab-pane label="对象事件" name="second">
             <el-row :gutter="10" class="mb8">
               <el-col :span="1.5">
-                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleEventAdd" v-hasPermi="['ems:event:add']">新增
+                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleEventAdd"
+                           v-hasPermi="['ems:event:add']"
+                >新增
                 </el-button>
               </el-col>
             </el-row>
             <el-table v-loading="loading" :data="eventList">
-              <el-table-column type="selection" width="55" align="center" />
-    <!--       <el-table-column label="序号" align="center" prop="id" />-->
-    <!--       <el-table-column label="模型code" align="center" prop="modelCode" />-->
-              <el-table-column label="事件名称" align="center" prop="eventKey" />
+              <el-table-column type="selection" width="55" align="center"/>
+              <!--       <el-table-column label="序号" align="center" prop="id" />-->
+              <!--       <el-table-column label="模型code" align="center" prop="modelCode" />-->
+              <el-table-column label="事件名称" align="center" prop="eventKey"/>
               <el-table-column label="事件类型" align="center" prop="eventType">
                 <template slot-scope="scope">
                   <span>{{ scope.row.eventType === 1 ? '消息上报' : '异常告警' }}</span>
@@ -211,20 +227,28 @@
               </el-table-column>
               <!-- <el-table-column label="事件名称" align="center" prop="eventDesc" />-->
               <!-- <el-table-column label="事件名称" align="center" prop="eventName" />-->
-              <el-table-column label="事件代码" align="center" prop="eventCode" />
-              <el-table-column label="外系统事件代码" align="center" prop="extEventCode" />
+              <el-table-column label="事件代码" align="center" prop="eventCode"/>
+              <el-table-column label="外系统事件代码" align="center" prop="extEventCode"/>
               <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
                 <template slot-scope="scope">
-                  <el-button size="mini" type="text"  icon="el-icon-edit" @click="handleEventUpdate(scope.row)" v-hasPermi="['ems:event:edit']">
-                    修改</el-button>
-                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn" @click="handleEventDelete(scope.row)" v-hasPermi="['ems:event:remove']">
-                    删除</el-button>
+                  <el-button size="mini" type="text" icon="el-icon-edit" @click="handleEventUpdate(scope.row)"
+                             v-hasPermi="['ems:event:edit']"
+                  >
+                    修改
+                  </el-button>
+                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn"
+                             @click="handleEventDelete(scope.row)" v-hasPermi="['ems:event:remove']"
+                  >
+                    删除
+                  </el-button>
                 </template>
               </el-table-column>
             </el-table>
 
-            <pagination v-show="total>0" :total="total" :page.sync="queryEventParams.pageNum" :limit.sync="queryEventParams.pageSize"
-                        @pagination="getEventList" />
+            <pagination v-show="total>0" :total="total" :page.sync="queryEventParams.pageNum"
+                        :limit.sync="queryEventParams.pageSize"
+                        @pagination="getEventList"
+            />
 
             <!-- 添加或修改事件对话框 -->
             <el-dialog :title="title" :visible.sync="eventOpen" width="500px" append-to-body>
@@ -233,10 +257,10 @@
                   <el-input v-model="eventForm.modelCode" placeholder="请输入模型code"/>
                 </el-form-item>
                 <el-form-item label="事件名称" prop="eventKey">
-                  <el-input v-model="eventForm.eventKey" placeholder="请输入事件名称" />
+                  <el-input v-model="eventForm.eventKey" placeholder="请输入事件名称"/>
                 </el-form-item>
                 <el-form-item label="事件类型" prop="eventType">
-                  <el-input v-model="eventForm.eventType" placeholder="请输入事件类型" />
+                  <el-input v-model="eventForm.eventType" placeholder="请输入事件类型"/>
                 </el-form-item>
                 <!--<el-form-item label="事件名称" prop="eventName">-->
                 <!--  <el-input v-model="eventForm.eventName" placeholder="请输入事件名称" />-->
@@ -245,10 +269,10 @@
                 <!--  <el-input v-model="eventForm.eventDesc" type="textarea" placeholder="请输入内容" />-->
                 <!--</el-form-item>-->
                 <el-form-item label="事件代码" prop="eventCode">
-                  <el-input v-model="eventForm.eventCode" placeholder="请输入事件代码" />
+                  <el-input v-model="eventForm.eventCode" placeholder="请输入事件代码"/>
                 </el-form-item>
                 <el-form-item label="外系统事件代码" prop="extEventCode">
-                  <el-input v-model="eventForm.extEventCode" placeholder="请输入外系统事件代码" />
+                  <el-input v-model="eventForm.extEventCode" placeholder="请输入外系统事件代码"/>
                 </el-form-item>
               </el-form>
               <div slot="footer" class="dialog-footer">
@@ -258,27 +282,35 @@
             </el-dialog>
           </el-tab-pane>
 
-          <el-tab-pane label="对象能力" name="third" >
+          <el-tab-pane label="对象能力" name="third">
             <el-row :gutter="10" class="mb8">
               <el-col :span="1.5">
-                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAbilityAdd" v-hasPermi="['ems:ability:add']">新增
+                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAbilityAdd"
+                           v-hasPermi="['ems:ability:add']"
+                >新增
                 </el-button>
               </el-col>
             </el-row>
-            <el-table v-loading="loading" :data="abilityList" >
-              <el-table-column type="selection" width="55" align="center" />
-<!--          <el-table-column label="序号" align="center" prop="id" />-->
-<!--          <el-table-column label="模型code" align="center" prop="modelCode" />-->
-              <el-table-column label="能力名称" align="center" prop="abilityName" />
-              <el-table-column label="能力键" align="center" prop="abilityKey" />
-              <el-table-column label="能力参数" align="center" prop="abilityParam" />
-              <el-table-column label="能力描述" align="center" prop="abilityDesc" />
+            <el-table v-loading="loading" :data="abilityList">
+              <el-table-column type="selection" width="55" align="center"/>
+              <!--          <el-table-column label="序号" align="center" prop="id" />-->
+              <!--          <el-table-column label="模型code" align="center" prop="modelCode" />-->
+              <el-table-column label="能力名称" align="center" prop="abilityName"/>
+              <el-table-column label="能力键" align="center" prop="abilityKey"/>
+              <el-table-column label="能力参数" align="center" prop="abilityParam"/>
+              <el-table-column label="能力描述" align="center" prop="abilityDesc"/>
               <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
                 <template slot-scope="scope">
-                  <el-button size="mini" type="text"  icon="el-icon-edit" @click="handleAbilityUpdate(scope.row)" v-hasPermi="['ems:ability:edit']">
-                    修改</el-button>
-                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn" @click="handleAbilityDelete(scope.row)" v-hasPermi="['ems:ability:remove']">
-                    删除</el-button>
+                  <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAbilityUpdate(scope.row)"
+                             v-hasPermi="['ems:ability:edit']"
+                  >
+                    修改
+                  </el-button>
+                  <el-button size="mini" type="text" icon="el-icon-delete" class="deleteBtn"
+                             @click="handleAbilityDelete(scope.row)" v-hasPermi="['ems:ability:remove']"
+                  >
+                    删除
+                  </el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -287,19 +319,19 @@
             <el-dialog :title="title" :visible.sync="abilityOpen" width="500px" append-to-body>
               <el-form ref="abilityForm" :model="abilityForm" :rules="abilityRules" label-width="80px">
                 <el-form-item label="模型code" prop="modelCode">
-                  <el-input v-model="abilityForm.modelCode" placeholder="请输入模型code" />
+                  <el-input v-model="abilityForm.modelCode" placeholder="请输入模型code"/>
                 </el-form-item>
                 <el-form-item label="能力键" prop="abilityKey">
-                  <el-input v-model="abilityForm.abilityKey" placeholder="请输入能力键" />
+                  <el-input v-model="abilityForm.abilityKey" placeholder="请输入能力键"/>
                 </el-form-item>
                 <el-form-item label="能力名称" prop="abilityName">
-                  <el-input v-model="abilityForm.abilityName" placeholder="请输入能力名称" />
+                  <el-input v-model="abilityForm.abilityName" placeholder="请输入能力名称"/>
                 </el-form-item>
                 <el-form-item label="能力描述" prop="abilityDesc">
-                  <el-input v-model="abilityForm.abilityDesc" type="textarea" placeholder="请输入内容" />
+                  <el-input v-model="abilityForm.abilityDesc" type="textarea" placeholder="请输入内容"/>
                 </el-form-item>
                 <el-form-item label="能力参数" prop="abilityParam">
-                  <el-input v-model="abilityForm.abilityParam" type="textarea" placeholder="请输入内容" />
+                  <el-input v-model="abilityForm.abilityParam" type="textarea" placeholder="请输入内容"/>
                 </el-form-item>
               </el-form>
               <div slot="footer" class="dialog-footer">
@@ -316,14 +348,13 @@
 </template>
 
 <script>
-import {listModel, getModel, delModel, addModel, updateModel, getModelByCode} from "@/api/basecfg/objModel";
-import { listEvent, getEvent, delEvent, addEvent, updateEvent } from "@/api/basecfg/objEvent";
-import { listAttr, getAttr, delAttr, addAttr, updateAttr } from "@/api/basecfg/objAttribute";
-import { listAbility, getAbility, delAbility, addAbility, updateAbility } from "@/api/basecfg/objAbility";
-
+import { listModel, getModel, delModel, addModel, updateModel, getModelByCode } from '@/api/basecfg/objModel'
+import { getEvent, delEvent, addEvent, updateEvent } from '@/api/basecfg/objEvent'
+import { getAttr, delAttr, addAttr, updateAttr } from '@/api/basecfg/objAttribute'
+import { getAbility, delAbility, addAbility, updateAbility } from '@/api/basecfg/objAbility'
 
 export default {
-  name: "Model",
+  name: 'Model',
   data() {
     return {
       // 遮罩层
@@ -341,7 +372,7 @@ export default {
       // 能源对象属性表格数据
       modelList: [],
       // 弹出层标题
-      title: "",
+      title: '',
       // 是否显示弹出层
       open: false,
       eventOpen: false,
@@ -360,18 +391,23 @@ export default {
         2: '设备',
         3: '设备部件'
       },
+      objTypeOptions: [
+        { code: 1, name: '设施' },
+        { code: 2, name: '设备' },
+        { code: 3, name: '设备部件' }
+      ],
       // 查询参数
       queryEventParams: {
         pageNum: 1,
-        pageSize: 10,
+        pageSize: 10
       },
       queryAttrParams: {
         pageNum: 1,
-        pageSize: 10,
+        pageSize: 10
       },
       queryAbilityParams: {
         pageNum: 1,
-        pageSize: 10,
+        pageSize: 10
       },
       curRow: {},
       // 表单参数
@@ -382,50 +418,50 @@ export default {
       //  表单校验
       rules: {
         modelCode: [
-          { required: true, message: "模型code不能为空", trigger: "blur" }
+          { required: true, message: '模型code不能为空', trigger: 'blur' }
         ],
         modelName: [
-          { required: true, message: "模型名称不能为空", trigger: "blur" }
+          { required: true, message: '模型名称不能为空', trigger: 'blur' }
         ],
         objType: [
-          { required: true, message: "对象类型不能为空", trigger: "change" }
+          { required: true, message: '对象类型不能为空', trigger: 'change' }
         ]
       },
       eventRules: {
         modelCode: [
-          {required: true, message: "模型code不能为空", trigger: "blur"}
+          { required: true, message: '模型code不能为空', trigger: 'blur' }
         ],
         eventKey: [
-          {required: true, message: "事件名称不能为空", trigger: "blur"}
+          { required: true, message: '事件名称不能为空', trigger: 'blur' }
         ],
         eventType: [
-          {required: true, message: "事件类型不能为空", trigger: "change"}
+          { required: true, message: '事件类型不能为空', trigger: 'change' }
         ],
         eventName: [
-          {required: true, message: "事件名称不能为空", trigger: "blur"}
-        ],
+          { required: true, message: '事件名称不能为空', trigger: 'blur' }
+        ]
       },
       attrRules: {
         modelCode: [
-          {required: true, message: "模型code不能为空", trigger: "blur"}
+          { required: true, message: '模型code不能为空', trigger: 'blur' }
         ],
         attrKey: [
-          {required: true, message: "属性标识不能为空", trigger: "blur"}
+          { required: true, message: '属性标识不能为空', trigger: 'blur' }
         ],
         attrName: [
-          {required: true, message: "属性名称不能为空", trigger: "blur"}
-        ],
+          { required: true, message: '属性名称不能为空', trigger: 'blur' }
+        ]
       },
       abilityRules: {
         modelCode: [
-          {required: true, message: "模型code不能为空", trigger: "blur"}
+          { required: true, message: '模型code不能为空', trigger: 'blur' }
         ],
         abilityKey: [
-          {required: true, message: "能力键不能为空", trigger: "blur"}
+          { required: true, message: '能力键不能为空', trigger: 'blur' }
         ],
         abilityName: [
-          {required: true, message: "能力名称不能为空", trigger: "blur"}
-        ],
+          { required: true, message: '能力名称不能为空', trigger: 'blur' }
+        ]
       },
 
       // 能源对象事件表格数据
@@ -438,11 +474,11 @@ export default {
       showDrawer: false,
       subDialogShow: false,
       // subTitle: '',
-      subKey: 'attr',
-    };
+      subKey: 'attr'
+    }
   },
   created() {
-    this.getList();
+    this.getList()
   },
   methods: {
     // 设配详情
@@ -452,93 +488,80 @@ export default {
       // this.subKey = this.$options.data().subKey
       // console.log("this.subKey",this.subKey)
       // this.modelCode = row.modelCode; // 更新当前模型代码
-      console.log("模型代码",this.modelCode)
+      console.log('模型代码', this.modelCode)
       getModel(this.curRow.id).then(response => {
-        const data=response.data;
-        console.log("data",data);
-        this.attrList=data.attrList
-        this.eventList=data.eventList
-        this.abilityList=data.abilityList
+        const data = response.data
+        console.log('data', data)
+        this.attrList = data.attrList
+        this.eventList = data.eventList
+        this.abilityList = data.abilityList
       })
     },
     /** 新增按钮操作 */
     handleAttrAdd() {
-      this.attrReset();
-      this.attrOpen = true;
-      this.title = "添加能源对象属性";
+      this.attrReset()
+      this.attrOpen = true
+      this.title = '添加能源对象属性'
     },
     handleEventAdd() {
-      this.eventReset();
-      this.eventOpen = true;
-      this.title = "添加能源对象事件";
+      this.eventReset()
+      this.eventOpen = true
+      this.title = '添加能源对象事件'
     },
     handleAbilityAdd() {
-      this.abilityReset();
-      this.abilityOpen = true;
-      this.title = "添加能源对象事件";
+      this.abilityReset()
+      this.abilityOpen = true
+      this.title = '添加能源对象事件'
     },
     /** 查询能源对象属性列表 */
     getList() {
-      this.loading = true;
+      this.loading = true
       listModel(this.queryParams).then(response => {
-        this.modelList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
+        this.modelList = response.rows
+        this.total = response.total
+        this.loading = false
+      })
     },
-    /** 查询能源对象事件列表 */
-    // getEventList(modelcode) {
-    //   console.log("对象事件!!!!")
-    //   this.loading = true;
-    //   listEvent(this.queryEventParams).then(response => {
-    //     this.eventList = response.rows;
-    //     console.log("对象事件",this.eventList)
-
-    //     this.total = this.eventList.length; // 更新总数为过滤后的总数
-    //     this.loading = false;
-    //   });
-    // },
     getEventList(modelcode) {
-      console.log("对象事件!!!!")
-      this.loading = true;
-        getModelByCode(modelcode).then(response => {
-          const data=response.data;
-          console.log("data",data);
-          this.attrList=data.attrList
-          this.eventList=data.eventList
-          this.abilityList=data.abilityList
-
-        })
-        this.loading = false;
+      console.log('对象事件!!!!')
+      this.loading = true
+      getModelByCode(modelcode).then(response => {
+        const data = response.data
+        console.log('data', data)
+        this.attrList = data.attrList
+        this.eventList = data.eventList
+        this.abilityList = data.abilityList
+      })
+      this.loading = false
 
     },
     /** 查询能源对象属性列表 */
     getAttrList(modelcode) {
-      this.loading = true;
-      console.log("对象属性!!!!")
+      this.loading = true
+      console.log('对象属性!!!!')
       getModelByCode(modelcode).then(response => {
-        const data=response.data;
-        console.log("data",data);
-        this.attrList=data.attrList
-        this.eventList=data.eventList
-        this.abilityList=data.abilityList
+        const data = response.data
+        console.log('data', data)
+        this.attrList = data.attrList
+        this.eventList = data.eventList
+        this.abilityList = data.abilityList
 
       })
-      this.loading = false;
+      this.loading = false
     },
     /** 查询能源对象能力列表 */
     getAbilityList(modelcode) {
-      this.loading = true;
-      console.log("对象能力!!!!")
+      this.loading = true
+      console.log('对象能力!!!!')
       getModelByCode(modelcode).then(response => {
-        const data=response.data;
-        console.log("data",data);
-        this.attrList=data.attrList
-        this.eventList=data.eventList
-        this.abilityList=data.abilityList
+        const data = response.data
+        console.log('data', data)
+        this.attrList = data.attrList
+        this.eventList = data.eventList
+        this.abilityList = data.abilityList
 
       })
-        this.loading = false;
+      this.loading = false
 
     },
 
@@ -548,12 +571,12 @@ export default {
         id: null,
         modelCode: null,
         attrKey: null,
-        attrType:null,
+        attrType: null,
         attrName: null,
         attrValue: null,
         attrUnit: null
-      };
-      this.resetForm("attrForm");
+      }
+      this.resetForm('attrForm')
     },
     eventReset() {
       this.eventForm = {
@@ -565,8 +588,8 @@ export default {
         eventDesc: null,
         eventCode: null,
         extEventCode: null
-      };
-      this.resetForm("eventForm");
+      }
+      this.resetForm('eventForm')
     },
     abilityReset() {
       this.abilityForm = {
@@ -576,151 +599,154 @@ export default {
         abilityName: null,
         abilityDesc: null,
         abilityParam: null
-      };
-      this.resetForm("abilityForm");
+      }
+      this.resetForm('abilityForm')
     },
 
     /** 修改按钮操作 */
     handleAttrUpdate(row) {
-      this.attrReset();
+      this.attrReset()
       const id = row.id || this.ids
       getAttr(id).then(response => {
-        this.attrForm = response.data;
-        this.attrOpen = true;
-        this.title = "修改能源对象属性";
-      });
+        this.attrForm = response.data
+        this.attrOpen = true
+        this.title = '修改能源对象属性'
+      })
     },
     handleEventUpdate(row) {
-      this.eventReset();
+      this.eventReset()
       const id = row.id || this.ids
       getEvent(id).then(response => {
-        this.eventForm = response.data;
-        this.eventOpen = true;
-        this.title = "修改能源对象事件";
-      });
+        this.eventForm = response.data
+        this.eventOpen = true
+        this.title = '修改能源对象事件'
+      })
     },
     handleAbilityUpdate(row) {
-      this.abilityReset();
+      this.abilityReset()
       const id = row.id || this.ids
       getAbility(id).then(response => {
-        this.abilityForm = response.data;
-        this.abilityOpen = true;
-        this.title = "修改能源对象能力";
-      });
+        this.abilityForm = response.data
+        this.abilityOpen = true
+        this.title = '修改能源对象能力'
+      })
     },
 
     /** 删除按钮操作 */
     handleAttrDelete(row) {
-      const ids = row.id || this.ids;
+      const ids = row.id || this.ids
       this.$modal.confirm('是否确认删除能源对象属性编号为"' + ids + '"的数据项?').then(function() {
-        return delAttr(ids);
+        return delAttr(ids)
       }).then(() => {
-        console.log("删除row",row.modelCode);
-        this.getAttrList(row.modelCode);
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+        console.log('删除row', row.modelCode)
+        this.getAttrList(row.modelCode)
+        this.$modal.msgSuccess('删除成功')
+      }).catch(() => {
+      })
     },
     handleEventDelete(row) {
-      const ids = row.id || this.ids;
+      const ids = row.id || this.ids
       this.$modal.confirm('是否确认删除能源对象事件编号为"' + ids + '"的数据项?').then(function() {
-        return delEvent(ids);
+        return delEvent(ids)
       }).then(() => {
-        console.log("删除row",row.modelCode);
-        this.getEventList(row.modelCode);
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+        console.log('删除row', row.modelCode)
+        this.getEventList(row.modelCode)
+        this.$modal.msgSuccess('删除成功')
+      }).catch(() => {
+      })
     },
     handleAbilityDelete(row) {
-      const ids = row.id || this.ids;
+      const ids = row.id || this.ids
       this.$modal.confirm('是否确认删除能源对象能力编号为"' + ids + '"的数据项?').then(function() {
-        return delAbility(ids);
+        return delAbility(ids)
       }).then(() => {
-        console.log("删除row",row.modelCode);
-        this.getAbilityList(row.modelCode);
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+        console.log('删除row', row.modelCode)
+        this.getAbilityList(row.modelCode)
+        this.$modal.msgSuccess('删除成功')
+      }).catch(() => {
+      })
     },
 
     /** 提交按钮 */
     submitAttrForm() {
-      this.$refs["attrForm"].validate(valid => {
+      this.$refs['attrForm'].validate(valid => {
         if (valid) {
           if (this.attrForm.id != null) {
             updateAttr(this.attrForm).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.attrOpen = false;
-              console.log("id",this.attrForm.modelCode)
-              this.getAttrList(this.attrForm.modelCode);
-            });
+              this.$modal.msgSuccess('修改成功')
+              this.attrOpen = false
+              console.log('id', this.attrForm.modelCode)
+              this.getAttrList(this.attrForm.modelCode)
+            })
           } else {
             addAttr(this.attrForm).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.attrOpen = false;
-              this.getAttrList(this.attrForm.modelCode);
-            });
+              this.$modal.msgSuccess('新增成功')
+              this.attrOpen = false
+              this.getAttrList(this.attrForm.modelCode)
+            })
           }
         }
-      });
+      })
     },
     submitEventForm() {
-      this.$refs["eventForm"].validate(valid => {
+      this.$refs['eventForm'].validate(valid => {
         if (valid) {
           if (this.eventForm.id != null) {
             updateEvent(this.eventForm).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.eventOpen = false;
-              console.log("id",this.eventForm)
-              this.getEventList(this.eventForm.modelCode);
-            });
+              this.$modal.msgSuccess('修改成功')
+              this.eventOpen = false
+              console.log('id', this.eventForm)
+              this.getEventList(this.eventForm.modelCode)
+            })
           } else {
             addEvent(this.eventForm).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.eventOpen = false;
-              console.log("id",this.eventForm)
-              this.getEventList(this.eventForm.modelCode);
-            });
+              this.$modal.msgSuccess('新增成功')
+              this.eventOpen = false
+              console.log('id', this.eventForm)
+              this.getEventList(this.eventForm.modelCode)
+            })
           }
         }
-      });
+      })
     },
     submitAbilityForm() {
-      this.$refs["abilityForm"].validate(valid => {
+      this.$refs['abilityForm'].validate(valid => {
         if (valid) {
           if (this.abilityForm.id != null) {
             updateAbility(this.abilityForm).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.abilityOpen =false;
-              this.getAbilityList(this.abilityForm.modelCode);
-            });
+              this.$modal.msgSuccess('修改成功')
+              this.abilityOpen = false
+              this.getAbilityList(this.abilityForm.modelCode)
+            })
           } else {
             addAbility(this.abilityForm).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.abilityOpen = false;
-              this.getAbilityList(this.abilityForm.modelCode);
-            });
+              this.$modal.msgSuccess('新增成功')
+              this.abilityOpen = false
+              this.getAbilityList(this.abilityForm.modelCode)
+            })
           }
         }
-      });
+      })
     },
     // 取消按钮
     attrCancel() {
-      this.attrOpen = false;
-      this.attrReset();
+      this.attrOpen = false
+      this.attrReset()
     },
     eventCancel() {
-      this.eventOpen = false;
-      this.eventReset();
+      this.eventOpen = false
+      this.eventReset()
     },
     // 取消按钮
     abilityCancel() {
-      this.abilityOpen = false;
-      this.abilityReset();
+      this.abilityOpen = false
+      this.abilityReset()
     },
 
     // 取消按钮
     cancel() {
-      this.open = false;
-      this.reset();
+      this.open = false
+      this.reset()
     },
     // 表单重置
     reset() {
@@ -729,71 +755,72 @@ export default {
         modelCode: null,
         modelName: null,
         objType: null
-      };
-      this.resetForm("form");
+      }
+      this.resetForm('form')
     },
     /** 搜索按钮操作 */
     handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
+      this.queryParams.pageNum = 1
+      this.getList()
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
+      this.resetForm('queryForm')
+      this.handleQuery()
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
       this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
+      this.single = selection.length !== 1
       this.multiple = !selection.length
     },
     /** 新增按钮操作 */
     handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = "添加能源对象属性";
+      this.reset()
+      this.open = true
+      this.title = '添加能源对象属性'
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
-      this.reset();
+      this.reset()
       const id = row.id || this.ids
       getModel(id).then(response => {
-        this.form = response.data;
-        this.open = true;
-        this.title = "修改能源对象属性";
-      });
+        this.form = response.data
+        this.open = true
+        this.title = '修改能源对象属性'
+      })
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      this.$refs['form'].validate(valid => {
         if (valid) {
           if (this.form.id != null) {
             updateModel(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.open = false;
-              this.getList();
-            });
+              this.$modal.msgSuccess('修改成功')
+              this.open = false
+              this.getList()
+            })
           } else {
             addModel(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.open = false;
-              this.getList();
-            });
+              this.$modal.msgSuccess('新增成功')
+              this.open = false
+              this.getList()
+            })
           }
         }
-      });
+      })
     },
     /** 删除按钮操作 */
     handleDelete(row) {
-      const ids = row.id || this.ids;
+      const ids = row.id || this.ids
       this.$modal.confirm('是否确认删除能源对象属性编号为"' + ids + '"的数据项?').then(function() {
-        return delModel(ids);
+        return delModel(ids)
       }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+        this.getList()
+        this.$modal.msgSuccess('删除成功')
+      }).catch(() => {
+      })
     }
   }
-};
+}
 </script>

+ 0 - 4
ems-ui/src/views/basecfg/emsfacs/index.vue

@@ -394,10 +394,6 @@ export default {
     this.getSubCategorygetByCode()
     this.getFacsModel()
     this.$set(this.form, 'customAttrs', []);
-
-
-
-
   },
   methods: {
     /** 查询能源设施/系统列表 */

+ 0 - 1
ems-ui/src/views/mgr/powergrid.vue

@@ -391,7 +391,6 @@ export default {
       } else {
         this.getSummery();
       }
-
     },
     async getSummery () {
       await this.getHSummery();

+ 56 - 38
ems-ui/src/views/mgr/powerstore.vue

@@ -1,43 +1,52 @@
 <template>
   <div class="app-container">
-    <el-tabs v-model="queryParams.areaCode" @tab-click="handleQuery">
-      <el-tab-pane v-for="item in areaOptions" :key="item.areaCode" :label="item.shortName" :name="item.areaCode">
-      </el-tab-pane>
-    </el-tabs>
-    <template v-if="queryParams.areaCode == 'all'">
-      <div class="chartGroup">
-        <Block title="当日充电量(单位:kw·h)">
-          <div class="block-area" slot="main">
-            <div class="center-label">
-              <div>总充电量</div>
-              <div>{{daySum.chargeElecQuantity}}kw·h</div>
+    <el-tabs v-model="activeName" @tab-click="tabClick">
+      <el-tab-pane label="总览" name="summery">
+        <div class="chartGroup">
+          <Block title="当日充电量(单位:kw·h)">
+            <div class="block-area" slot="main">
+              <div class="center-label">
+                <div>总充电量</div>
+                <div>{{daySum.chargeElecQuantity}}kw·h</div>
+              </div>
+              <BaseChart width="100%" height="500px" :option="chargePieOptions" />
             </div>
-            <BaseChart width="100%" height="500px" :option="chargePieOptions" />
-          </div>
-        </Block>
-        <Block title="当日放电量(单位:kw·h)">
-          <div class="block-area" slot="main">
-            <div class="center-label">
-              <div>总放电量</div>
-              <div>{{daySum.dischargeElecQuantity}}kw·h</div>
+          </Block>
+          <Block title="当日放电量(单位:kw·h)">
+            <div class="block-area" slot="main">
+              <div class="center-label">
+                <div>总放电量</div>
+                <div>{{daySum.dischargeElecQuantity}}kw·h</div>
+              </div>
+              <BaseChart width="100%" height="500px" :option="disChargePieOptions" />
             </div>
-            <BaseChart width="100%" height="500px" :option="disChargePieOptions" />
-          </div>
-        </Block>
-      </div>
-    </template>
-    <template v-else>
-      <BaseChart width="100%" height="300px" :option="elecOptions" />
-      <el-table v-loading="loading" :data="elecStoreHList" max-height="400px">
-        <el-table-column label="设施名称" align="center" prop="facsName" />
-        <el-table-column label="日期" align="center" prop="date" width="180">
-        </el-table-column>
-        <el-table-column label="时间" align="center" prop="time">
-        </el-table-column>
-        <el-table-column label="充电电量(kW-h)" align="center" prop="chargeElecQuantity" />
-        <el-table-column label="放电电量(kW-h)" align="center" prop="dischargeElecQuantity" />
-      </el-table>
-    </template>
+          </Block>
+        </div>
+      </el-tab-pane>
+      <el-tab-pane label="区域" name="area">
+        <div class="container-block">
+          <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
+            <el-form-item label="服务区" prop="areaCode">
+              <el-select v-model="queryParams.areaCode" placeholder="请选择服务区" @change="handleQuery">
+                <el-option v-for="item in areaOptions" :key="item.areaCode" :label="item.areaName"
+                           :value="item.areaCode" />
+              </el-select>
+            </el-form-item>
+          </el-form>
+          <BaseChart width="100%" height="300px" :option="elecOptions" />
+        </div>
+        <BaseChart width="100%" height="300px" :option="elecOptions" />
+        <el-table v-loading="loading" :data="elecStoreHList" max-height="400px">
+          <el-table-column label="设施名称" align="center" prop="facsName" />
+          <el-table-column label="日期" align="center" prop="date" width="180">
+          </el-table-column>
+          <el-table-column label="时间" align="center" prop="time">
+          </el-table-column>
+          <el-table-column label="充电电量(kW-h)" align="center" prop="chargeElecQuantity" />
+          <el-table-column label="放电电量(kW-h)" align="center" prop="dischargeElecQuantity" />
+        </el-table>
+      </el-tab-pane>
+    </el-tabs>
   </div>
 </template>
 
@@ -47,6 +56,8 @@ import {areaWithFacsCategory} from '@/api/basecfg/area'
 import BaseChart from '@/components/BaseChart'
 import Block from '@/components/Block/block.vue';
 import {dateFormat} from '@/utils/index.js'
+import dayjs from 'dayjs'
+import { DateTool } from '@/utils/DateTool'
 export default {
   name: 'ElecStoreH',
   components: {
@@ -55,6 +66,7 @@ export default {
   },
   data () {
     return {
+      activeName: 'summery',
       // 遮罩层
       loading: true,
       facsCategory: '',
@@ -181,11 +193,18 @@ export default {
     // 查询区域列表
     async getAreaList () {
       await areaWithFacsCategory(this.facsCategory, this.facsSubCategory).then(response => {
-        response.data.unshift({areaCode: 'all', shortName: '总览'})
+
         this.areaOptions = response.data
         this.queryParams.areaCode = this.areaOptions[0].areaCode
       })
     },
+    tabClick () {
+      if (this.activeName !== 'summery') {
+        this.getSummary()
+      } else {
+        this.getList()
+      }
+    },
     /** 查询储能计量-小时列表 */
     getList () {
       this.loading = true
@@ -218,7 +237,6 @@ export default {
       } else {
         this.getList()
       }
-
     }
   }
 }

+ 15 - 1
ems-ui/src/views/mgr/poweruse.vue

@@ -1,5 +1,15 @@
 <template>
   <div class="app-container">
+    <el-tabs v-model="activeName" @tab-click="tabClick">
+      <el-tab-pane label="总览" name="summery">
+
+      </el-tab-pane>
+
+      <el-tab-pane v-for="item in areaOptions" :key="item.areaCode" :label="item.shortName" :name="item.areaCode">
+      </el-tab-pane>
+
+    </el-tabs>
+
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="园区代码" prop="areaCode">
         <el-input
@@ -148,6 +158,7 @@ export default {
   name: "H",
   data() {
     return {
+      activeName: 'summery',
       // 遮罩层
       loading: true,
       // 选中数组
@@ -293,6 +304,9 @@ export default {
         this.$modal.msgSuccess("删除成功");
       }).catch(() => {});
     }
+  },
+  tabClick () {
+
   }
-};
+}
 </script>