Browse Source

场地管理增加区域字段

devilhell 2 years ago
parent
commit
92d29b40ca

+ 1 - 0
imcs-bt-fe/imcs-bt-fe/imcs-ui/src/lang/zh/place.js

@@ -2,6 +2,7 @@ export default {
   place: {
     id: 'ID',
     plcName: '场地名称',
+    area:'所属区域',
     plcPid: '省',
     plcCid: '市',
     plcAid: '县/区',

+ 6 - 0
imcs-bt-fe/imcs-bt-fe/imcs-ui/src/views/zuihou/place/Index.vue

@@ -66,6 +66,12 @@
           <span>{{ scope.row.plcName }}</span>
         </template>
       </el-table-column>
+      <el-table-column :label="$t('place.area')" :show-overflow-tooltip="true" align="center" prop="regionId"
+                       width="">
+        <template slot-scope="scope">
+          <span>{{ scope.row.regionId }}</span>
+        </template>
+      </el-table-column>
       <el-table-column :label="$t('place.plcPid')" :show-overflow-tooltip="true" align="center" prop="plcPid"
                        width="">
         <template slot-scope="scope">

+ 50 - 8
imcs-bt-fe/imcs-bt-fe/imcs-ui/src/views/zuihou/place/components/Edit.vue

@@ -1,3 +1,11 @@
+<!--
+ * @Author: wangj
+ * @Date: 2023-02-19 13:54:14
+ * @LastEditors: @EXtreeDesigner
+ * @LastEditTime: 2023-02-26 00:02:20
+ * @FilePath: \imcs-ui\src\views\zuihou\place\components\Edit.vue
+ * @Description: 
+-->
 <template>
   <el-dialog :close-on-click-modal="false" :close-on-press-escape="true" :title="title" :type="type"
              :visible.sync="isVisible" :width="width" top="50px" v-el-drag-dialog>
@@ -5,7 +13,19 @@
       <el-form-item :label="$t('place.plcName')" prop="plcName">
         <el-input v-model.trim="place.plcName" placeholder="场地名称"/>
       </el-form-item>
-
+      <el-form-item :label="$t('place.area')" prop="regionId">
+                <!-- <el-select class="from-item" v-model="org.regionId" placeholder="请选择">
+                <el-option
+                  v-for="item in areaList"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.id">
+                </el-option>
+              </el-select> -->
+          <el-checkbox-group v-model="place.regionId" size="mini">
+            <el-checkbox-button v-for="item in areaList" :label="item.name" :key="item.id">{{item.name}}</el-checkbox-button>
+          </el-checkbox-group>
+          </el-form-item>
       <el-form-item :label="$t('place.add')" prop="selectedOptions">
         <el-cascader
           v-model="place.selectedOptions"
@@ -82,6 +102,7 @@
 <script>
 import elDragDialog from '@/directive/el-drag-dialog'
 import placeApi from "@/api/Place.js";
+import orgApi from '@/api/Org.js'
 import {regionData, CodeToText, TextToCode} from 'element-china-area-data'
 
 export default {
@@ -127,13 +148,20 @@ export default {
         ],
         plcNum: [
           {required: true, message: this.$t("rules.require"), trigger: 'blur'}
-        ]
+        ],
+        regionId: [
+            {required: true, message: this.$t('rules.require'), trigger: 'change'}
+          ]
       },
       // 枚举
       enums: {},
       // 字典
       dicts: {},
-      areaTree:[]
+      areaTree:[],
+      areaList:[
+        {name:'北坡',id:'babai'}
+      ]
+
     };
   },
   computed: {
@@ -148,7 +176,12 @@ export default {
     },
     title() {
       return this.$t("common." + this.type);
-    }
+    },
+    res:function(){
+        const r = this.place
+        r.regionId = this.place.regionId.join()
+        return r
+      }
   },
   watch: {},
   mounted() {
@@ -157,6 +190,12 @@ export default {
         this.width = this.initWidth();
       })();
     };
+    // 所属区域列表
+    orgApi.getAreaList().then(e=>{
+      if (e.code === 0){
+        this.areaList = e.data
+      }
+    })
   },
   methods: {
     initPlace() {
@@ -181,6 +220,7 @@ export default {
         plcRemark: '',
         plcLng: '',
         plcLat: '',
+        regionId:[]
       };
     },
 
@@ -249,7 +289,9 @@ export default {
 
       if (val['row']) {
         console.log("编辑,row=" + JSON.stringify(val['row']))
-        vm.place = {...val['row']};
+        const data = JSON.parse(JSON.stringify(val['row']))
+        data.regionId = data.regionId.split(',')
+        vm.place = data;
       }
     },
     close() {
@@ -285,9 +327,9 @@ export default {
       // this.place.plcPid = vm.form.pCode;
       // this.place.plcCid = vm.form.cCode;
       // this.place.plcAid = vm.form.aCode;
-      console.log("保存前数据" + JSON.stringify(this.place))
+      console.log("保存前数据" + JSON.stringify(this.res))
       vm.confirmDisabled = true;
-      placeApi.save(this.place).then(response => {
+      placeApi.save(this.res).then(response => {
         const res = response.data;
         if (res.isSuccess) {
           vm.isVisible = false;
@@ -302,7 +344,7 @@ export default {
     update() {
       const vm = this;
       vm.confirmDisabled = true;
-      placeApi.update(this.place).then(response => {
+      placeApi.update(this.res).then(response => {
         const res = response.data;
         if (res.isSuccess) {
           vm.isVisible = false;