hfxc226 2 лет назад
Родитель
Сommit
7374157b65

+ 9 - 0
src/utils/dict.js

@@ -103,6 +103,7 @@ DictCache.TYPE = {
   SB_INFO_AUDIT_NODE: 'SB_INFO_AUDIT_NODE', // 设备报废节点
   SB_IS_CHILD: 'SB_IS_CHILD', // 自定义类型
   SB_IS_SHOW: 'SB_IS_SHOW', // 自定义类型
+  REMOTE_LINE: 'REMOTE_LINE', // 所属线路
   SB_IS_FINANCING: 'SB_IS_FINANCING', // 是否固定资产
   PRODUCER_AREA: 'PRODUCER_AREA', // 产地
   PART_LEVEL: 'PART_LEVEL', // 部位等级
@@ -608,6 +609,14 @@ DictCache.VALUE = {
     BGCL: 4, // 	计量设备
     TZSB: 5// 特种设备及附件
   },
+  SB_LINE: {
+    FIRST: 1, // 一般性生产设备
+    SECOND: 2, // 	计量设备
+    THIRD: 3, // 特种设备及附件
+    FOUR: 4, // 	计量设备
+    FIVE: 5, // 特种设备及附件
+    SIX: 6 // 	计量设备
+  },
   SB_IS_CHILD: {
     IS_CHILD: '1', // 子设备
     IS_PARENT: '2', // 父设备

+ 29 - 11
src/views/remote/degree-log/RemoteDegreeLog.vue

@@ -28,8 +28,8 @@
       <div class="table-operator" style="margin-bottom: 8px;">
         <a-row>
           <a-col :md="16">
-            <!-- <a-button v-if="$auth('remote-degree-logs-add')" type="primary" icon="plus" @click="handleAdd()">新增 -->
-            <!-- </a-button> -->
+            <a-button v-if="$auth('remote-degree-logs-add')" type="primary" icon="plus" @click="handleAdd()">新增
+            </a-button>
             <a-button
               style="margin-left: 8px"
               v-if="$auth('remote-degree-logs-export')"
@@ -108,6 +108,7 @@ export default {
     return {
       advanced: false,
       visible: true,
+      map: {},
       // 查询参数
       queryParam: {
         sbId: this.$route.query.sbId
@@ -131,11 +132,10 @@ export default {
         },
         {
           title: '类型',
-          dataIndex: 'type'
-        },
-        {
-          title: '实时数值',
-          dataIndex: 'result'
+          dataIndex: 'type',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Object.getField(this.map, text)
+          }
         },
         {
           title: '单位',
@@ -143,15 +143,32 @@ export default {
         },
         {
           title: '系数',
-          dataIndex: 'ratio',
-          customRender: (text, record, index) => {
-            return this.BaseTool.Amount.formatter(text)
-          }
+          dataIndex: 'ratio'
         },
         {
           title: '描述',
           dataIndex: 'description'
         },
+        {
+          title: '年',
+          dataIndex: 'year'
+        },
+        {
+          title: '月',
+          dataIndex: 'month'
+        },
+        {
+          title: '日',
+          dataIndex: 'day'
+        },
+        {
+          title: '时',
+          dataIndex: 'hour'
+        },
+        {
+          title: '实时数值',
+          dataIndex: 'result'
+        },
         {
           title: '备注',
           dataIndex: 'remark'
@@ -204,6 +221,7 @@ export default {
   },
   created () {
     // 下拉框map
+    this.map = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REMOTE_DEGREE)
     this.tableOption()
   },
   methods: {

+ 110 - 17
src/views/remote/degree-log/modules/BaseForm.vue

@@ -25,8 +25,10 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
+              style="width: 70%"
               disabled
-              v-decorator="['sbName', {rules: [{required: true, message: '设备名称不能为空'}]}]"/>
+              v-decorator="['sbName', {rules: [{required: true, message: '设备名称不能为空'}]}]" />
+            <a-button style="width: 30%" type="primary" @click="handleSbSelect">选择</a-button>
           </a-form-item>
         </row-item>
         <row-item>
@@ -38,13 +40,11 @@
           >
             <a-input-number
               style="width: 100%"
-              :min="0"
-              :formatter="BaseTool.Amount.formatter"
-              :parser="BaseTool.Amount.parser"
+              disabled
               v-decorator="['positionNum', {rules: [{required: true, message: '点位不能为空'}]}]"/>
           </a-form-item>
         </row-item>
-        <row-item>
+        <!--        <row-item>
 
           <a-form-item
             label="类型"
@@ -58,7 +58,7 @@
               :parser="BaseTool.Amount.parser"
               v-decorator="['type', {rules: [{required: true, message: '类型不能为空'}]}]"/>
           </a-form-item>
-        </row-item>
+        </row-item>-->
         <row-item>
 
           <a-form-item
@@ -67,44 +67,104 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
+              disabled
               v-decorator="['description', {rules: [{required: true, message: '描述不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
 
           <a-form-item
-            label="实时数值"
+            label="系数"
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
-            <a-input
-              v-decorator="['result', {rules: [{required: true, message: '实时数值不能为空'}]}]"/>
+            <a-input-number
+              style="width: 100%"
+              disabled
+              v-decorator="['ratio', {rules: [{required: true, message: '系数不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
 
           <a-form-item
-            label="系数"
+            label="单位"
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
-            <a-input-number
+            <a-input
+              disabled
+              v-decorator="['unit', {rules: [{required: true, message: '单位不能为空'}]}]"/>
+          </a-form-item>
+        </row-item>
+        <row-item>
+          <a-form-item
+            label="类型"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-select disabled v-decorator="['type', {initialValue:1, rules: [{required: true, message: '类型不能为空'}]}]" placeholder="请选择">
+              <a-select-option
+                v-for="(label,value) in map"
+                :key="value"
+                :label="label"
+                :value="parseInt(value)">{{ label }}
+              </a-select-option>
+            </a-select>
+          </a-form-item>
+        </row-item>
+        <row-item>
+          <a-form-item
+            label="年"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-input
               style="width: 100%"
-              :min="0"
-              :formatter="BaseTool.Amount.formatter"
-              :parser="BaseTool.Amount.parser"
-              v-decorator="['ratio', {rules: [{required: true, message: '系数不能为空'}]}]"/>
+              v-decorator="['year', {rules: [{required: true, message: '不能为空'}]}]"/>
+          </a-form-item>
+        </row-item>
+        <row-item>
+          <a-form-item
+            label="月"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-input
+              style="width: 100%"
+              v-decorator="['month', {rules: [{required: true, message: '不能为空'}]}]"/>
+          </a-form-item>
+        </row-item>
+        <row-item>
+          <a-form-item
+            label="日"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-input
+              style="width: 100%"
+              v-decorator="['day', {rules: [{required: true, message: '不能为空'}]}]"/>
+          </a-form-item>
+        </row-item>
+        <row-item>
+          <a-form-item
+            label="时"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-input
+              style="width: 100%"
+              v-decorator="['hour', {rules: [{required: true, message: '不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
 
           <a-form-item
-            label="单位"
+            label="实时数值"
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['unit', {rules: [{required: true, message: '单位不能为空'}]}]"/>
+              v-decorator="['result', {rules: [{required: true, message: '实时数值不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
@@ -120,18 +180,24 @@
         </row-item>
       </row-list>
     </a-form>
+    <remote-degree-select-modal ref="remoteDegreeSelectModal" @selected="handleSbSelectd"/>
   </a-card>
 </template>
 
 <script>
 import pick from 'lodash.pick'
 import { addRemoteDegreeLog, updateRemoteDegreeLog } from '@/api/remote/degree-log'
+import RemoteDegreeSelectModal from '@/views/remote/degree/modules/RemoteDegreeSelectModal'
 export default {
   name: 'BaseRemoteDegreeLog',
+  components: {
+    RemoteDegreeSelectModal
+  },
   data () {
     return {
       confirmLoading: false,
       modalTitle: null,
+      map: {},
       form: this.$form.createForm(this),
       visible: false
       // 下拉框map
@@ -140,6 +206,7 @@ export default {
   props: {},
   created () {
     // 下拉框map
+    this.map = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REMOTE_DEGREE)
   },
   methods: {
     base (record) {
@@ -161,6 +228,10 @@ export default {
           'type',
           'description',
           'result',
+          'year',
+          'month',
+          'day',
+          'hour',
           'ratio',
           'unit',
           'remark'
@@ -193,6 +264,28 @@ export default {
         }
       })
     },
+    handleSbSelect () {
+      this.$refs.remoteDegreeSelectModal.base({}, {})
+    },
+    handleSbSelectd (keys, rows) {
+      const [ key ] = keys
+      const [ row ] = rows
+      const { form: { setFieldsValue } } = this
+      this.sbId = key
+      // 日期处理
+      console.log(keys, rows)
+      this.$nextTick(() => {
+        setFieldsValue(Object.assign({
+          'sbId': key,
+          'positionNum': row.positionNum,
+          'sbName': row.sbName,
+          'description': row.description,
+          'ratio': row.ratio,
+          'type': row.type,
+          'unit': row.unit
+        }))
+      })
+    },
     handleCancel (values) {
       this.visible = false
       this.confirmLoading = false

+ 13 - 2
src/views/remote/degree-log/modules/Detail.vue

@@ -11,12 +11,17 @@
       <detail-list-item term="设备id">{{ model.sbId }}</detail-list-item>
       <detail-list-item term="设备名称">{{ model.sbName }}</detail-list-item>
       <detail-list-item term="点位">{{ model.positionNum }}</detail-list-item>
-      <detail-list-item term="类型">{{ model.type }}</detail-list-item>
+      <detail-list-item term="类型">
+        {{ BaseTool.Object.getField(map,model.type) }}</detail-list-item>
       <detail-list-item term="描述">{{ model.description }}</detail-list-item>
-      <detail-list-item term="实时数值">{{ model.result }}</detail-list-item>
       <detail-list-item term="系数">{{ model.ratio }}</detail-list-item>
       <detail-list-item term="单位">{{ model.unit }}</detail-list-item>
       <detail-list-item term="备注">{{ model.remark }}</detail-list-item>
+      <detail-list-item term="年">{{ model.year }}</detail-list-item>
+      <detail-list-item term="月">{{ model.month }}</detail-list-item>
+      <detail-list-item term="日">{{ model.day }}</detail-list-item>
+      <detail-list-item term="时">{{ model.hour }}</detail-list-item>
+      <detail-list-item term="实时数值">{{ model.result }}</detail-list-item>
       <detail-list-item term="创建人">{{ model.createdUserId }}</detail-list-item>
       <detail-list-item term="更新人">{{ model.updateUserId }}</detail-list-item>
       <detail-list-item term="更新日期">{{ model.updateTime }}</detail-list-item>
@@ -39,6 +44,7 @@ export default {
       confirmLoading: false,
       mdl: {},
       modalTitle: null,
+      map: {},
       visible: false,
       // 下拉框map
       model: {
@@ -50,6 +56,10 @@ export default {
         'result': null,
         'ratio': null,
         'unit': null,
+        'year': null,
+        'month': null,
+        'day': null,
+        'hour': null,
         'remark': null,
         'createdUserId': null,
         'updateUserId': null,
@@ -59,6 +69,7 @@ export default {
   },
   created () {
     // 下拉框map
+    this.map = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REMOTE_DEGREE)
 
   },
   methods: {

+ 2 - 1
src/views/remote/degree-log/modules/RemoteDegreeLogSelectModal.vue

@@ -130,7 +130,7 @@ export default {
           title: '类型',
           dataIndex: 'type',
           customRender: (text, record, index) => {
-            return this.BaseTool.Amount.formatter(text)
+            return this.BaseTool.Object.getField(this.map, text)
           }
         },
         {
@@ -201,6 +201,7 @@ export default {
   },
   created () {
     // 下拉框map
+    this.map = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REMOTE_DEGREE)
   },
   methods: {
     tableOption () {

+ 0 - 1
src/views/remote/degree/RemoteDegree.vue

@@ -177,7 +177,6 @@ export default {
       },
       selectedRowKeys: [],
       selectedRows: [],
-
       map: {},
       options: {
         alert: { show: true, clear: () => { this.selectedRowKeys = [] } },

+ 8 - 8
src/views/remote/degree/modules/BaseForm.vue

@@ -81,7 +81,7 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['result', {rules: [{required: true, message: '实时数值不能为空'}]}]" />
+              v-decorator="['result', {rules: [{required: false, message: '实时数值不能为空'}]}]" />
           </a-form-item>
         </row-item>
         <row-item>
@@ -96,7 +96,7 @@
               :min="0"
               :formatter="BaseTool.Amount.formatter"
               :parser="BaseTool.Amount.parser"
-              v-decorator="['ratio', {rules: [{required: true, message: '系数不能为空'}]}]" />
+              v-decorator="['ratio', {rules: [{required: false, message: '系数不能为空'}]}]" />
           </a-form-item>
         </row-item>
         <row-item>
@@ -118,24 +118,24 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['remark', {rules: [{required: true, message: '备注不能为空'}]}]" />
+              v-decorator="['remark', {rules: [{required: false, message: '备注不能为空'}]}]" />
           </a-form-item>
         </row-item>
       </row-list>
     </a-form>
-    <remote-degree-select-modal ref="remoteDegreeSelectModal" @selected="handleSbSelectd"/>
+    <sb-info-select-modal ref="sbInfoSelectModal" @selected="handleSbSelectd"/>
   </a-card>
 </template>
 
 <script>
 import pick from 'lodash.pick'
 import { addRemoteDegree, updateRemoteDegree } from '@/api/remote/degree'
-import RemoteDegreeSelectModal from './RemoteDegreeSelectModal'
+import SbInfoSelectModal from '@/views/sb/info/modules/SbInfoSelectModal'
 
 export default {
   name: 'BaseRemoteDegree',
   components: {
-    RemoteDegreeSelectModal
+    SbInfoSelectModal
   },
   data () {
     return {
@@ -205,7 +205,7 @@ export default {
       })
     },
     handleSbSelect () {
-      this.$refs.remoteDegreeSelectModal.base({}, {})
+      this.$refs.sbInfoSelectModal.base()
     },
     handleSbSelectd (keys, rows) {
       const [ key ] = keys
@@ -217,7 +217,7 @@ export default {
       this.$nextTick(() => {
         setFieldsValue(Object.assign({
           'sbId': key,
-          'sbName': row.sbName
+          'sbName': row.name
         }))
       })
     },

+ 2 - 8
src/views/remote/degree/modules/RemoteDegreeSelectModal.vue

@@ -115,10 +115,7 @@ export default {
         },
         {
           title: '点位',
-          dataIndex: 'positionNum',
-          customRender: (text, record, index) => {
-            return this.BaseTool.Amount.formatter(text)
-          }
+          dataIndex: 'positionNum'
         },
         {
           title: '类型',
@@ -138,10 +135,7 @@ export default {
         },
         {
           title: '系数',
-          dataIndex: 'ratio',
-          customRender: (text, record, index) => {
-            return this.BaseTool.Amount.formatter(text)
-          }
+          dataIndex: 'ratio'
         },
         {
           title: '描述',

+ 8 - 8
src/views/remote/measure/modules/BaseForm.vue

@@ -80,7 +80,7 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['result', {rules: [{required: true, message: '实时数值不能为空'}]}]"/>
+              v-decorator="['result', {rules: [{required: false, message: '实时数值不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
@@ -95,7 +95,7 @@
               :min="0"
               :formatter="BaseTool.Amount.formatter"
               :parser="BaseTool.Amount.parser"
-              v-decorator="['ratio', {rules: [{required: true, message: '系数不能为空'}]}]"/>
+              v-decorator="['ratio', {rules: [{required: false, message: '系数不能为空'}]}]"/>
           </a-form-item>
         </row-item>
         <row-item>
@@ -117,23 +117,23 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['remark', {rules: [{required: true, message: '备注不能为空'}]}]"/>
+              v-decorator="['remark', {rules: [{required: false, message: '备注不能为空'}]}]"/>
           </a-form-item>
         </row-item>
       </row-list>
     </a-form>
-    <remote-measure-select-modal ref="remoteMeasureSelectModal" @selected="handleSbSelectd"/>
+    <sb-info-select-modal ref="sbInfoSelectModal" @selected="handleSbSelectd"/>
   </a-card>
 </template>
 
 <script>
 import pick from 'lodash.pick'
 import { addRemoteMeasure, updateRemoteMeasure } from '@/api/remote/measure'
-import RemoteMeasureSelectModal from './RemoteMeasureSelectModal'
+import SbInfoSelectModal from '@/views/sb/info/modules/SbInfoSelectModal'
 export default {
   name: 'BaseRemoteMeasure',
   components: {
-    RemoteMeasureSelectModal
+    SbInfoSelectModal
   },
   data () {
     return {
@@ -203,7 +203,7 @@ export default {
       })
     },
     handleSbSelect () {
-      this.$refs.remoteMeasureSelectModal.base({}, {})
+      this.$refs.sbInfoSelectModal.base()
     },
     handleSbSelectd (keys, rows) {
       const [ key ] = keys
@@ -215,7 +215,7 @@ export default {
       this.$nextTick(() => {
         setFieldsValue(Object.assign({
           'sbId': key,
-          'sbName': row.sbName
+          'sbName': row.name
         }))
       })
     },

+ 18 - 0
src/views/sb/info/modules/BaseForm.vue

@@ -275,6 +275,22 @@
             </a-tree-select>
           </a-form-item>
         </a-col>
+        <a-col :lg="12" :md="24" :sm="24">
+          <a-form-item
+            label="电力线路"
+            :labelCol="BaseTool.Constant.labelCol"
+            :wrapperCol="BaseTool.Constant.wrapperCol"
+          >
+            <a-select @change="handleChange" v-decorator="['zjm', {rules: [{required: false, message: '自定义类型不能为空'}]}]" placeholder="请选择">
+              <a-select-option
+                v-for="(label,value) in lineMap"
+                :key="value"
+                :label="label"
+                :value="parseInt(value)">{{ label }}
+              </a-select-option>
+            </a-select>
+          </a-form-item>
+        </a-col>
         <!--        <a-col :lg="12" :md="24" :sm="24">
           <a-form-item
             label="是否显示"
@@ -943,6 +959,7 @@ export default {
       statusMap: {},
       isChildMap: {},
       isShowMap: {},
+      lineMap: {},
       treeData: [],
       isFinancingMap: {},
       producerList: {},
@@ -994,6 +1011,7 @@ export default {
     this.isShowMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_IS_SHOW)
     this.isFinancingMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_IS_FINANCING)
     this.repairDeptMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REPAIR_DEPT_CATEGORY)
+    this.lineMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REMOTE_LINE)
     queryFirmProducer({}).then(res => {
       this.producerList = res.data
     })