فهرست منبع

汇报环境修正

lv.wenbin 11 ماه پیش
والد
کامیت
d652d5a4ef

+ 5 - 5
ems-ui/src/api/mgr/elecStoreH.js

@@ -3,7 +3,7 @@ import request from '@/utils/request'
 // 查询储能计量-小时列表
 export function listElecStoreH(query) {
   return request({
-    url: '/ems/elecStoreH/list',
+    url: '/ems/elec/store/hour/list',
     method: 'get',
     params: query
   })
@@ -12,7 +12,7 @@ export function listElecStoreH(query) {
 // 查询储能计量-小时详细
 export function getElecStoreH(id) {
   return request({
-    url: '/ems/elecStoreH/' + id,
+    url: '/ems/elec/store/hour/' + id,
     method: 'get'
   })
 }
@@ -20,7 +20,7 @@ export function getElecStoreH(id) {
 // 新增储能计量-小时
 export function addElecStoreH(data) {
   return request({
-    url: '/ems/elecStoreH',
+    url: '/ems/elec/store/hour',
     method: 'post',
     data: data
   })
@@ -29,7 +29,7 @@ export function addElecStoreH(data) {
 // 修改储能计量-小时
 export function updateElecStoreH(data) {
   return request({
-    url: '/ems/elecStoreH',
+    url: '/ems/elec/store/hour',
     method: 'put',
     data: data
   })
@@ -38,7 +38,7 @@ export function updateElecStoreH(data) {
 // 删除储能计量-小时
 export function delElecStoreH(id) {
   return request({
-    url: '/ems/elecStoreH/' + id,
+    url: '/ems/elec/store/hour/' + id,
     method: 'delete'
   })
 }

+ 44 - 0
ems-ui/src/api/mgr/elecUseH.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询用能计量-小时列表
+export function listH(query) {
+  return request({
+    url: '/ems/elec/use/hour/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询用能计量-小时详细
+export function getH(id) {
+  return request({
+    url: '/ems/elec/use/hour/' + id,
+    method: 'get'
+  })
+}
+
+// 新增用能计量-小时
+export function addH(data) {
+  return request({
+    url: '/ems/elec/use/hour',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改用能计量-小时
+export function updateH(data) {
+  return request({
+    url: '/ems/elec/use/hour',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除用能计量-小时
+export function delH(id) {
+  return request({
+    url: '/ems/elec/use/hour/' + id,
+    method: 'delete'
+  })
+}

+ 5 - 5
ems-ui/src/api/mgr/pgSupplyH.js

@@ -3,7 +3,7 @@ import request from '@/utils/request'
 // 查询电网供应计量-小时列表
 export function listPgSupplyH(query) {
   return request({
-    url: '/ems/pgSupplyH/list',
+    url: '/ems/pg/supply/hour/list',
     method: 'get',
     params: query
   })
@@ -12,7 +12,7 @@ export function listPgSupplyH(query) {
 // 查询电网供应计量-小时详细
 export function getPgSupplyH(id) {
   return request({
-    url: '/ems/pgSupplyH/' + id,
+    url: '/ems/pg/supply/hour/' + id,
     method: 'get'
   })
 }
@@ -20,7 +20,7 @@ export function getPgSupplyH(id) {
 // 新增电网供应计量-小时
 export function addPgSupplyH(data) {
   return request({
-    url: '/ems/pgSupplyH',
+    url: '/ems/pg/supply/hour',
     method: 'post',
     data: data
   })
@@ -29,7 +29,7 @@ export function addPgSupplyH(data) {
 // 修改电网供应计量-小时
 export function updatePgSupplyH(data) {
   return request({
-    url: '/ems/pgSupplyH',
+    url: '/ems/pg/supply/hour',
     method: 'put',
     data: data
   })
@@ -38,7 +38,7 @@ export function updatePgSupplyH(data) {
 // 删除电网供应计量-小时
 export function delPgSupplyH(id) {
   return request({
-    url: '/ems/pgSupplyH/' + id,
+    url: '/ems/pg/supply/hour/' + id,
     method: 'delete'
   })
 }

+ 3 - 3
ems-ui/src/views/basecfg/building/index.vue

@@ -28,10 +28,10 @@
       </el-col>
       <el-col :span="20" :xs="24">
         <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-          <el-form-item label="建筑名称" prop="bldgName">
+          <el-form-item label="地块名称" prop="bldgName">
             <el-input
               v-model="queryParams.bldgName"
-              placeholder="请输入建筑名称"
+              placeholder="请输入地块名称"
               clearable
               @keyup.enter.native="handleQuery"
             />
@@ -90,7 +90,7 @@
 
         <el-table v-loading="loading" :data="buildingList" @selection-change="handleSelectionChange">
           <el-table-column type="selection" width="55" align="center" />
-          <el-table-column label="建筑名称" align="left" prop="bldgName" />
+          <el-table-column label="地块名称" align="left" prop="bldgName" />
           <el-table-column label="服务区" align="center" prop="areaShortName" />
           <el-table-column label="建筑编码" align="center" prop="bldgCode" />
           <el-table-column label="位置描述" align="center" prop="address" />

+ 325 - 0
ems-ui/src/views/devmgr/state/index.vue

@@ -0,0 +1,325 @@
+<template>
+  <div class="app-container">
+    <el-row :gutter="20">
+      <el-col :span="4" :xs="24">
+        <div class="head-container">
+          <el-input
+            v-model="areaName"
+            placeholder="请输入区域名称"
+            clearable
+            size="small"
+            prefix-icon="el-icon-search"
+            style="margin-bottom: 20px"
+          />
+        </div>
+        <div class="head-container">
+          <el-tree
+            :data="areaOptions"
+            :props="defaultProps"
+            :expand-on-click-node="false"
+            :filter-node-method="filterNode"
+            ref="tree"
+            node-key="id"
+            default-expand-all
+            highlight-current
+            @node-click="handleNodeClick"
+          />
+        </div>
+      </el-col>
+      <el-col :span="20" :xs="24">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="设备代码" prop="deviceCode">
+            <el-input
+              v-model="queryParams.deviceCode"
+              placeholder="请输入设备代码"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="设备名称" prop="deviceName">
+            <el-input
+              v-model="queryParams.deviceName"
+              placeholder="请输入设备名称"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="归属设施" prop="refFacs">
+            <el-input
+              v-model="queryParams.refFacs"
+              placeholder="请输入归属设施"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+          </el-form-item>
+        </el-form>
+
+        <el-table v-loading="loading" :data="deviceList" @selection-change="handleSelectionChange">
+          <el-table-column type="selection" width="55" align="center"/>
+          <el-table-column label="设备名称" align="center" prop="deviceName"/>
+          <el-table-column label="归属区域" align="left" prop="areaPath"/>
+          <el-table-column label="归属设施" align="center" prop="refFacsName"/>
+          <el-table-column label="设备代码" align="center" prop="deviceCode"/>
+          <el-table-column label="设备类型" align="center" prop="deviceTypeName"/>
+          <el-table-column label="设备状态" align="center" prop="deviceStatus"/>
+        </el-table>
+
+        <pagination
+          v-show="total>0"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="getList"
+        />
+
+        <!-- 添加或修改能源设备对话框 -->
+        <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="refFacs" >
+              <el-select v-model="form.refFacs" >
+                <el-option v-for="item in facsOptions" :label="item.facsName" :value="item.facsCode" :key="item.facsCode" />
+              </el-select>
+            </el-form-item>
+            <el-form-item label="归属区域" prop="refArea">
+              <treeselect v-model="form.refArea" :options="areaOptions" :show-count="true" placeholder="请选择所属建筑" @select="handleAreaType"/>
+            </el-form-item>
+            <el-form-item label="设备代码" prop="deviceCode">
+              <el-input v-model="form.deviceCode" placeholder="请输入设备代码"/>
+            </el-form-item>
+            <el-form-item label="设备名称" prop="deviceName">
+              <el-input v-model="form.deviceName" placeholder="请输入设备名称"/>
+            </el-form-item>
+            <el-form-item label="设备类型" prop="deviceType">
+              <el-select v-model="form.deviceType" >
+                <el-option v-for="item in devcTypeOptions" :label="item.typeName" :value="item.typeCode" :key="item.typeCode" />
+              </el-select>
+            </el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="submitForm">确 定</el-button>
+            <el-button @click="cancel">取 消</el-button>
+          </div>
+        </el-dialog>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import { listDevRecursionByArea, getDevice, delDevice, addDevice, updateDevice } from '@/api/device/device'
+import { areaTreeSelect } from "@/api/basecfg/area"
+import { listAllFacs } from "@/api/basecfg/emsfacs"
+import { getDevcType} from '@/api/commonApi'
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
+export default {
+  name: 'Device',
+  components: { Treeselect },
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 能源设备表格数据
+      deviceList: [],
+      // 弹出层标题
+      title: '',
+      // 是否显示弹出层
+      open: false,
+      // 区域名称
+      areaName: undefined,
+      // 区域树选项
+      areaOptions: undefined,
+      // 设施选项
+      facsOptions: undefined,
+      // 设备分类
+      devcTypeOptions: undefined,
+      defaultProps: {
+        children: "children",
+        label: "label"
+      },
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        deviceCode: null,
+        deviceName: null,
+        deviceType: null,
+        deviceStatus: null,
+        areaType: null,
+        refArea: null,
+        refFacs: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        refFacs: [
+          { required: true, message: '归属设施', trigger: 'blur' }
+        ],
+        refArea: [
+          { required: true, message: '归属区域', trigger: 'blur' }
+        ],
+        deviceCode: [
+          { required: true, message: '设备代码不能为空', trigger: 'blur' }
+        ],
+        deviceName: [
+          { required: true, message: '设备名称不能为空', trigger: 'blur' }
+        ]
+      }
+    }
+  },
+  created() {
+    this.getList();
+    this.getAreaTree('Zoning');
+    this.getFacsOptions("");
+    this.getDevcType();
+  },
+  methods: {
+    /** 查询能源设备列表 */
+    getList() {
+      this.loading = true
+      listDevRecursionByArea(this.queryParams).then(response => {
+        this.deviceList = response.rows
+        this.total = response.total
+        this.loading = false
+      })
+    },
+    /** 查询区域树结构 */
+    getAreaTree(tier) {
+      areaTreeSelect(tier).then(response => {
+        this.areaOptions = response.data;
+      });
+    },
+    // 筛选节点
+    filterNode(value, data) {
+      if (!value) return true;
+      return data.label.indexOf(value) !== -1;
+    },
+    // 节点单击事件
+    handleNodeClick(data) {
+      this.queryParams.refArea = data.id;
+      this.queryParams.areaType = data.tier;
+      this.handleQuery();
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false
+      this.reset()
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        deviceCode: null,
+        deviceName: null,
+        deviceType: null,
+        deviceStatus: null,
+        refArea: null,
+        refFacs: null,
+        createTime: null,
+        updateTime: null
+      }
+      this.resetForm('form')
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1
+      this.getList()
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.queryParams.refArea = null;
+      this.queryParams.areaType = null;
+      this.resetForm('queryForm')
+      this.handleQuery()
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length !== 1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset()
+      this.open = true
+      this.title = '添加能源设备'
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset()
+      const id = row.id || this.ids
+      getDevice(id).then(response => {
+        this.form = response.data
+        this.open = true
+        this.title = '修改能源设备'
+      })
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs['form'].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateDevice(this.form).then(response => {
+              this.$modal.msgSuccess('修改成功')
+              this.open = false
+              this.getList()
+            })
+          } else {
+            addDevice(this.form).then(response => {
+              this.$modal.msgSuccess('新增成功')
+              this.open = false
+              this.getList()
+            })
+          }
+        }
+      })
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids
+      this.$modal.confirm('是否确认删除能源设备编号为"' + ids + '"的数据项?').then(function() {
+        return delDevice(ids)
+      }).then(() => {
+        this.getList()
+        this.$modal.msgSuccess('删除成功')
+      }).catch(() => {
+      })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('ems/basecfg/device/export', {
+        ...this.queryParams
+      }, `device_${new Date().getTime()}.xlsx`)
+    },
+    handleAreaType(data) {
+      this.form.areaType = data.tier;
+    },
+    getFacsOptions(areaCode) {
+      listAllFacs(areaCode).then(response =>{
+        this.facsOptions = response.data;
+      })
+    },
+    getDevcType() {
+      getDevcType().then(response =>{
+        this.devcTypeOptions = response.data;
+      })
+    }
+  }
+}
+</script>

+ 14 - 24
ems-ui/src/views/mgr/powergrid.vue

@@ -61,36 +61,26 @@
         >删除
         </el-button>
       </el-col>
-      <el-col :span="1.5">
-        <el-button
-            type="warning"
-            plain
-            icon="el-icon-download"
-            size="mini"
-            @click="handleExport"
-            v-hasPermi="['ems:pgSupplyH:export']"
-        >导出
-        </el-button>
-      </el-col>
+
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="pgSupplyHList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="序号" align="center" prop="id" />
-      <el-table-column label="园区代码" align="center" prop="areaCode" />
-      <el-table-column label="设施代码" align="center" prop="facsCode" />
+      <el-table-column label="服务区" align="center" prop="areaShortName" />
+      <el-table-column label="设施" align="center" prop="facsName" />
       <el-table-column label="日期" align="center" prop="date" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="时间序列" align="center" prop="timeIndex" />
-      <el-table-column label="计量类型" align="center" prop="meterType">
+      <el-table-column label="时间" align="center" prop="time" >
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.meter_type" :value="scope.row.meterType" />
+          <span>{{ parseTime(scope.row.time, '{h}:{i}') }}</span>
         </template>
       </el-table-column>
+      <el-table-column label="时间序列" align="center" prop="timeIndex" />
+      <el-table-column label="计量类型" align="center" prop="meterType"/>
       <el-table-column label="单位电价" align="center" prop="meterUnitPrice" />
       <el-table-column label="用电读数" align="center" prop="useElecReading" />
       <el-table-column label="用电量" align="center" prop="useElecQuantity" />
@@ -145,6 +135,12 @@
                           placeholder="请选择日期">
           </el-date-picker>
         </el-form-item>
+        <el-form-item label="时间" prop="time">
+          <el-time-picker v-model="form.time" format="HH:mm" value-format="HH:mm:00"
+                          :picker-options='{"selectableRange":"00:00:00-23:59:59"}' :style="{width: '100%'}"
+                          placeholder="请选择时间选择" clearable>
+          </el-time-picker>
+        </el-form-item>
         <el-form-item label="时间序列" prop="timeIndex">
           <el-input v-model="form.timeIndex" placeholder="请输入时间序列" />
         </el-form-item>
@@ -362,13 +358,7 @@ export default {
         this.getList();
         this.$modal.msgSuccess('删除成功');
       }).catch(() => {});
-    },
-    /** 导出按钮操作 */
-    handleExport() {
-      this.download('ems/pgSupplyH/export', {
-        ...this.queryParams,
-      }, `pgSupplyH_${new Date().getTime()}.xlsx`);
-    },
+    }
   },
 };
 </script>

+ 0 - 345
ems-ui/src/views/mgr/powerload.vue

@@ -1,345 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="园区代码" prop="areaCode">
-        <el-input
-            v-model="queryParams.areaCode"
-            placeholder="请输入园区代码"
-            clearable
-            @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="设施代码" prop="facsCode">
-        <el-input
-            v-model="queryParams.facsCode"
-            placeholder="请输入设施代码"
-            clearable
-            @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="日期" prop="date">
-        <el-date-picker clearable
-                        v-model="queryParams.date"
-                        type="date"
-                        value-format="yyyy-MM-dd"
-                        placeholder="请选择日期">
-        </el-date-picker>
-      </el-form-item>
-      <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-      </el-form-item>
-    </el-form>
-
-    <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-            type="primary"
-            plain
-            icon="el-icon-plus"
-            size="mini"
-            @click="handleAdd"
-            v-hasPermi="['ems:loadIndex:add']"
-        >新增
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-            type="success"
-            plain
-            icon="el-icon-edit"
-            size="mini"
-            :disabled="single"
-            @click="handleUpdate"
-            v-hasPermi="['ems:loadIndex:edit']"
-        >修改
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-            type="danger"
-            plain
-            icon="el-icon-delete"
-            size="mini"
-            :disabled="multiple"
-            @click="handleDelete"
-            v-hasPermi="['ems:loadIndex:remove']"
-        >删除
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-            type="warning"
-            plain
-            icon="el-icon-download"
-            size="mini"
-            @click="handleExport"
-            v-hasPermi="['ems:loadIndex:export']"
-        >导出
-        </el-button>
-      </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-    </el-row>
-
-    <el-table v-loading="loading" :data="loadIndexList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="序号" align="center" prop="id" />
-      <el-table-column label="园区代码" align="center" prop="areaCode" />
-       <el-table-column label="园区名称" align="center" prop="areaName" />
-      <el-table-column label="设施代码" align="center" prop="facsCode" />
-      <el-table-column label="设施名称" align="center" prop="facsName" />
-      <el-table-column label="日期" align="center" prop="date" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="电压 " align="center" prop="voltage" />
-      <el-table-column label="电流 " align="center" prop="amperage" />
-      <el-table-column label="功率 " align="center" prop="power" />
-      <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="handleUpdate(scope.row)"
-              v-hasPermi="['ems:loadIndex:edit']"
-          >修改
-          </el-button>
-          <el-button
-              size="mini"
-              type="text"
-              icon="el-icon-delete"
-              @click="handleDelete(scope.row)"
-              v-hasPermi="['ems:loadIndex:remove']"
-          >删除
-          </el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <pagination
-        v-show="total>0"
-        :total="total"
-        :page.sync="queryParams.pageNum"
-        :limit.sync="queryParams.pageSize"
-        @pagination="getList"
-    />
-
-    <!-- 添加或修改电力负荷设施指标对话框 -->
-    <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="areaCode">
-          <el-input v-model="form.areaCode" placeholder="请输入园区代码" />
-        </el-form-item>
-        <el-form-item label="设施代码" prop="facsCode">
-          <el-input v-model="form.facsCode" placeholder="请输入设施代码" />
-        </el-form-item>
-        <el-form-item label="日期" prop="date">
-          <el-date-picker clearable
-                          v-model="form.date"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="请选择日期">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="时间" prop="time">
-          <el-date-picker clearable
-                          v-model="form.time"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="请选择时间">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="电压 " prop="voltage">
-          <el-input v-model="form.voltage" placeholder="请输入电压 " />
-        </el-form-item>
-        <el-form-item label="电流 " prop="amperage">
-          <el-input v-model="form.amperage" placeholder="请输入电流 " />
-        </el-form-item>
-        <el-form-item label="功率 " prop="power">
-          <el-input v-model="form.power" placeholder="请输入功率 " />
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import { listLoadIndex, getLoadIndex, delLoadIndex, addLoadIndex, updateLoadIndex } from '@/api/mgr/loadIndex';
-
-export default {
-  name: 'LoadIndex',
-  data() {
-    return {
-      // 遮罩层
-      loading: true,
-      // 选中数组
-      ids: [],
-      // 非单个禁用
-      single: true,
-      // 非多个禁用
-      multiple: true,
-      // 显示搜索条件
-      showSearch: true,
-      // 总条数
-      total: 0,
-      // 电力负荷设施指标表格数据
-      loadIndexList: [],
-      // 弹出层标题
-      title: '',
-      // 是否显示弹出层
-      open: false,
-      // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        areaCode: null,
-        facsCode: null,
-        date: null,
-        voltage: null,
-        amperage: null,
-        power: null,
-      },
-      // 表单参数
-      form: {},
-      // 表单校验
-      rules: {
-        areaCode: [
-          {
-            required: true,
-            message: '园区代码不能为空',
-            trigger: 'blur',
-          },
-        ],
-        facsCode: [
-          {
-            required: true,
-            message: '设施代码不能为空',
-            trigger: 'blur',
-          },
-        ],
-        date: [
-          {
-            required: true,
-            message: '日期不能为空',
-            trigger: 'blur',
-          },
-        ],
-        time: [
-          {
-            required: true,
-            message: '时间不能为空',
-            trigger: 'blur',
-          },
-        ],
-      },
-    };
-  },
-  created() {
-    this.getList();
-  },
-  methods: {
-    /** 查询电力负荷设施指标列表 */
-    getList() {
-      this.loading = true;
-      listLoadIndex(this.queryParams).then(response => {
-        this.loadIndexList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-    // 取消按钮
-    cancel() {
-      this.open = false;
-      this.reset();
-    },
-    // 表单重置
-    reset() {
-      this.form = {
-        id: null,
-        areaCode: null,
-        facsCode: null,
-        date: null,
-        time: null,
-        voltage: null,
-        amperage: null,
-        power: null,
-      };
-      this.resetForm('form');
-    },
-    /** 搜索按钮操作 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
-    /** 重置按钮操作 */
-    resetQuery() {
-      this.resetForm('queryForm');
-      this.handleQuery();
-    },
-    // 多选框选中数据
-    handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id);
-      this.single = selection.length !== 1;
-      this.multiple = !selection.length;
-    },
-    /** 新增按钮操作 */
-    handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = '添加电力负荷设施指标';
-    },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
-      const id = row.id || this.ids;
-      getLoadIndex(id).then(response => {
-        this.form = response.data;
-        this.open = true;
-        this.title = '修改电力负荷设施指标';
-      });
-    },
-    /** 提交按钮 */
-    submitForm() {
-      this.$refs['form'].validate(valid => {
-        if (valid) {
-          if (this.form.id != null) {
-            updateLoadIndex(this.form).then(response => {
-              this.$modal.msgSuccess('修改成功');
-              this.open = false;
-              this.getList();
-            });
-          } else {
-            addLoadIndex(this.form).then(response => {
-              this.$modal.msgSuccess('新增成功');
-              this.open = false;
-              this.getList();
-            });
-          }
-        }
-      });
-    },
-    /** 删除按钮操作 */
-    handleDelete(row) {
-      const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除电力负荷设施指标编号为"' + ids + '"的数据项?').then(function () {
-        return delLoadIndex(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess('删除成功');
-      }).catch(() => {});
-    },
-    /** 导出按钮操作 */
-    handleExport() {
-      this.download('ems/loadIndex/export', {
-        ...this.queryParams,
-      }, `loadIndex_${new Date().getTime()}.xlsx`);
-    },
-  },
-};
-</script>

+ 10 - 26
ems-ui/src/views/mgr/powerstore.vue

@@ -25,22 +25,6 @@
                         placeholder="请选择日期 yyyy-MM-dd">
         </el-date-picker>
       </el-form-item>
-      <el-form-item label="充电电量 " prop="chargeElecQuantity">
-        <el-input
-            v-model="queryParams.chargeElecQuantity"
-            placeholder="请输入充电电量 "
-            clearable
-            @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="放电电量" prop="dischargeElecQuantity">
-        <el-input
-            v-model="queryParams.dischargeElecQuantity"
-            placeholder="请输入放电电量"
-            clearable
-            @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -99,16 +83,18 @@
 
     <el-table v-loading="loading" :data="elecStoreHList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="序号" align="center" prop="id" />
-      <el-table-column label="园区代码" align="center" prop="areaCode" />
-      <el-table-column label="园区名称" align="center" prop="areaName" />
-      <el-table-column label="设施代码" align="center" prop="facsCode" />
+      <el-table-column label="园区名称" align="center" prop="areaShortName" />
       <el-table-column label="设施名称" align="center" prop="facsName" />
       <el-table-column label="日期" align="center" prop="date" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
+      <el-table-column label="时间" align="center" prop="time" >
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.time, '{h}:{i}') }}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="充电电量 " align="center" prop="chargeElecQuantity" />
       <el-table-column label="放电电量" align="center" prop="dischargeElecQuantity" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -159,12 +145,10 @@
           </el-date-picker>
         </el-form-item>
         <el-form-item label="时间" prop="time">
-          <el-date-picker clearable
-                          v-model="form.time"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="请选择时间">
-          </el-date-picker>
+          <el-time-picker v-model="form.time" format="HH:mm" value-format="HH:mm:00"
+                          :picker-options='{"selectableRange":"00:00:00-23:59:59"}' :style="{width: '100%'}"
+                          placeholder="请选择时间选择" clearable>
+          </el-time-picker>
         </el-form-item>
         <el-form-item label="充电电量 " prop="chargeElecQuantity">
           <el-input v-model="form.chargeElecQuantity" placeholder="请输入充电电量 " />

+ 335 - 0
ems-ui/src/views/mgr/poweruse.vue

@@ -0,0 +1,335 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="园区代码" prop="areaCode">
+        <el-input
+          v-model="queryParams.areaCode"
+          placeholder="请输入园区代码"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="设施代码" prop="facsCode">
+        <el-input
+          v-model="queryParams.facsCode"
+          placeholder="请输入设施代码"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="日期" prop="date">
+        <el-date-picker clearable
+          v-model="queryParams.date"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择日期 yyyy-MM-dd">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['ems:h:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['ems:h:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['ems:h:remove']"
+        >删除</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="hList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="园区" align="center" prop="areaShortName" />
+      <el-table-column label="设施" align="center" prop="facsName" />
+      <el-table-column label="设施类型" align="center" prop="facsType" />
+      <el-table-column label="设施子类" align="center" prop="facsSubtype" />
+      <el-table-column label="日期" align="center" prop="date" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="时间" align="center" prop="time" >
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.time, '{h}:{i}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="时间序列" align="center" prop="timeIndex" />
+      <el-table-column label="电表读数" align="center" prop="elecReading" />
+      <el-table-column label="用电量" align="center" prop="elecQuantity" />
+      <el-table-column label="电费" align="center" prop="elecCost" />
+      <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="handleUpdate(scope.row)"
+            v-hasPermi="['ems:h:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['ems:h:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改用能计量-小时对话框 -->
+    <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="areaCode">
+          <el-input v-model="form.areaCode" placeholder="请输入园区代码" />
+        </el-form-item>
+        <el-form-item label="设施代码" prop="facsCode">
+          <el-input v-model="form.facsCode" placeholder="请输入设施代码" />
+        </el-form-item>
+        <el-form-item label="设施类型" prop="facsType">
+          <el-input v-model="form.facsType" placeholder="请输入设施类型" />
+        </el-form-item>
+        <el-form-item label="设施子类" prop="facsSubtype">
+          <el-input v-model="form.facsSubtype" placeholder="请输入设施代码" />
+        </el-form-item>
+        <el-form-item label="日期" prop="date">
+          <el-date-picker clearable
+            v-model="form.date"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="时间" prop="time">
+          <el-time-picker v-model="form.time" format="HH:mm" value-format="HH:mm:00"
+                          :picker-options='{"selectableRange":"00:00:00-23:59:59"}' :style="{width: '100%'}"
+                          placeholder="请选择时间选择" clearable>
+          </el-time-picker>
+        </el-form-item>
+        <el-form-item label="时间序列" prop="timeIndex">
+          <el-input v-model="form.timeIndex" placeholder="请输入时间序列" />
+        </el-form-item>
+        <el-form-item label="电表读数" prop="elecReading">
+          <el-input v-model="form.elecReading" placeholder="请输入电表读数" />
+        </el-form-item>
+        <el-form-item label="用电量" prop="elecQuantity">
+          <el-input v-model="form.elecQuantity" placeholder="请输入用电量 单位:kW-h" />
+        </el-form-item>
+        <el-form-item label="电费" prop="elecCost">
+          <el-input v-model="form.elecCost" placeholder="请输入电费 单位: ¥" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listH, getH, delH, addH, updateH } from "@/api/mgr/elecUseH";
+
+export default {
+  name: "H",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 用能计量-小时表格数据
+      hList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        areaCode: null,
+        facsCode: null,
+        facsType: null,
+        facsSubtype: null,
+        date: null,
+        time: null,
+        timeIndex: null,
+        elecReading: null,
+        elecQuantity: null,
+        elecCost: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        areaCode: [
+          { required: true, message: "园区代码不能为空", trigger: "blur" }
+        ],
+        facsCode: [
+          { required: true, message: "设施代码不能为空", trigger: "blur" }
+        ],
+        facsType: [
+          { required: true, message: "设施类型不能为空", trigger: "change" }
+        ],
+        facsSubtype: [
+          { required: true, message: "设施子类不能为空", trigger: "change" }
+        ],
+        date: [
+          { required: true, message: "日期 yyyy-MM-dd不能为空", trigger: "blur" }
+        ],
+        time: [
+          { required: true, message: "时间 HH:mm:ss不能为空", trigger: "blur" }
+        ],
+        timeIndex: [
+          { required: true, message: "时间序列不能为空", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询用能计量-小时列表 */
+    getList() {
+      this.loading = true;
+      listH(this.queryParams).then(response => {
+        this.hList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        areaCode: null,
+        facsCode: null,
+        facsType: null,
+        facsSubtype: null,
+        date: null,
+        time: null,
+        timeIndex: null,
+        elecReading: null,
+        elecQuantity: null,
+        elecCost: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加用能计量-小时";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getH(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改用能计量-小时";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateH(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addH(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除用能计量-小时编号为"' + ids + '"的数据项?').then(function() {
+        return delH(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    }
+  }
+};
+</script>

+ 1 - 1
ems-ui/vue.config.js

@@ -38,7 +38,7 @@ module.exports = {
         target: `http://localhost:9100/`,
         changeOrigin: true,
         pathRewrite: {
-          ['^' + process.env.VUE_APP_BASE_API+ '/ems']: process.env.EMS_REWRITE_URL,
+          ['^' + process.env.VUE_APP_BASE_API + '/ems']: process.env.EMS_REWRITE_URL,
           ['^' + process.env.VUE_APP_BASE_API]: '',
         }
       },