From 01e7ef087db7d15cb04b823672a9e937384c85c2 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 05 Jul 2024 11:13:40 +0800
Subject: [PATCH] 无诈代码优化

---
 src/api/permit/permit.js                   |   14 ++++
 src/components/cardPopup/cardPopuponce.vue |   71 ++++++++++++++++++-----
 src/components/cardPopup/cardPopup.vue     |   86 ++++++++++++++++++++++------
 3 files changed, 135 insertions(+), 36 deletions(-)

diff --git a/src/api/permit/permit.js b/src/api/permit/permit.js
index 719fa21..99a6d0c 100644
--- a/src/api/permit/permit.js
+++ b/src/api/permit/permit.js
@@ -12,6 +12,18 @@
   })
 }
 
+export const getDoorplateAddressList = (current, size, params) => {
+  return request({
+    url: '/api/blade-doorplateAddress/doorplateAddress/page',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
 export const getListre = (current, size, params) => {
   return request({
     url: '/api/record/list',
@@ -111,4 +123,4 @@
     method: 'post',
     data: row
   })
-}
+}
\ No newline at end of file
diff --git a/src/components/cardPopup/cardPopup.vue b/src/components/cardPopup/cardPopup.vue
index 0a9ef92..1d7d95a 100644
--- a/src/components/cardPopup/cardPopup.vue
+++ b/src/components/cardPopup/cardPopup.vue
@@ -9,7 +9,18 @@
           <div class="f-b-o-in">
             <el-collapse v-model="activeNames" @change="handleChange">
               <el-collapse-item title="基本信息" name="1">
-                <avue-form ref="form1" v-model="obj0" :option="option" @submit="submit" class="cardButs"></avue-form>
+                <avue-form ref="form1" v-model="obj0" :option="option" @submit="submit" class="cardButs">
+
+                  <template slot-scope="{size}" slot="houseCode">
+                    <el-select v-model="obj0.addressName" clearable filterable remote :remote-method="onRemoteMethod"
+                      @change="onSelectChange" placeholder="请输入与门牌地址二维码地址一致" reserve-keyword>
+                      <el-option v-for="item in standardAddressList" :key="item.addressCode" :label="item.addressName"
+                        :value="item">
+                      </el-option>
+                    </el-select>
+                  </template>
+
+                </avue-form>
               </el-collapse-item>
               <el-collapse-item title="附件上传" name="2">
                 <div v-for="(item, index) in patrolGroup">
@@ -65,7 +76,8 @@
     getListre,
     getListrek,
     getListrev,
-    getListrel
+    getListrel,
+    getDoorplateAddressList
   } from "@/api/permit/permit";
   export default {
     components: {
@@ -74,6 +86,7 @@
     props: ["data", "together"],
     data() {
       return {
+        standardAddressList: [], //标准地址数据
         htmls: "",
         see: false,
         name: "",
@@ -98,7 +111,6 @@
               labelWidth: 100,
               label: "场所名称",
               prop: "placeName",
-              // span: 24,
               rules: [{
                 required: true,
                 message: "请输入场所名称",
@@ -108,7 +120,6 @@
               labelWidth: 100,
               label: "负责人名称",
               prop: "principal",
-              // span: 24,
               rules: [{
                 required: true,
                 message: "请输入场所负责人姓名",
@@ -119,7 +130,6 @@
               labelWidth: 100,
               label: "负责人电话",
               prop: "principalPhone",
-              // span: 24,
               rules: [{
                 required: true,
                 message: "请输入场所负责人联系方式",
@@ -128,17 +138,13 @@
             },
             {
               labelWidth: 100,
-              // width: 160,
               overHidden: true,
               slot: true,
               label: "位置",
               prop: "location",
               type: "map",
               dataType: "string",
-              // labelWidth: 120,
-              // span: 24,
               value: [117.96646, 28.431002, ""],
-              // cascader: ['houseCodeBinds'],
               mapChange: (params) => {
                 console.log('高德回调参数', params)
               },
@@ -155,15 +161,11 @@
               }, ],
             },
             {
-              // labelWidth: 100,
-              // label: "派出所名称",
-              // prop: "pcsName",
               labelWidth: 100,
               overHidden: true,
               label: "派出所名称",
               parent: false,
               prop: "pcsCode",
-              // search: true,
               searchSpan: 4,
               searchType: 'input',
               type: "tree",
@@ -175,7 +177,6 @@
               nodeClick: (data, node, nodeComp) => {
                 this.obj0.pcsName = data.name
               },
-              // span: 24,
               rules: [{
                 required: true,
                 message: "请输入派出所名称",
@@ -183,13 +184,11 @@
               }]
             },
             {
-              // width: 156,
               labelWidth: 100,
               overHidden: true,
               label: "社区名称",
               parent: false,
               prop: "communityCode",
-              // search: true,
               searchSpan: 4,
               searchType: 'input',
               type: "tree",
@@ -211,8 +210,6 @@
             {
               labelWidth: 100,
               disabled: true,
-              // label: "无诈类型",
-              // prop: "noFraudType",
               label: "无诈类别",
               prop: "noFraudType",
               align: 'center',
@@ -226,6 +223,41 @@
               searchSpan: 4,
               searchLabelWidth: 96,
               align: 'center'
+            },
+            {
+              labelWidth: 110,
+              prop: "houseCode",
+              slot: true,
+              label: "场所标准地址",
+              rules: [{
+                required: true,
+                message: "请选择场所标准地址",
+                trigger: "blur",
+              }, ],
+            },
+            {
+              labelWidth: 110,
+              label: '二维码图片',
+              type: 'upload',
+              listType: 'picture-img',
+              propsHttp: {
+                res: 'data',
+                url: 'link',
+              },
+              canvasOption: {
+                text: ' ',
+                ratio: 0.1
+              },
+              action: '/api/blade-resource/oss/endpoint/put-file',
+              tip: '只能上传jpg/png图片',
+              span: 12,
+              row: true,
+              prop: 'qrImg',
+              rules: [{
+                required: true,
+                message: "请上传二维码图片",
+                trigger: "blur",
+              }, ],
             },
           ]
         },
@@ -337,6 +369,24 @@
       }
     },
     methods: {
+      onSelectChange(e) {
+        console.log("selectChange===>", e);
+        this.obj0.addressName = e.addressName
+        this.obj0.houseCode = e.addressCode
+        // this.getPlaceAddressListRequest()
+      },
+      onRemoteMethod(query) {
+        console.log("remote===>", query)
+        this.getPlaceAddressListRequest(query)
+      },
+      getPlaceAddressListRequest(query) {
+        getDoorplateAddressList(1, 50, {
+          addressName: query
+        }).then(res => {
+          this.standardAddressList = res.data.data.records;
+        })
+
+      },
       uploadFile(param) {
         console.log("自定义上传", param);
         const formData = new FormData()
diff --git a/src/components/cardPopup/cardPopuponce.vue b/src/components/cardPopup/cardPopuponce.vue
index fc26e80..f0e8dee 100644
--- a/src/components/cardPopup/cardPopuponce.vue
+++ b/src/components/cardPopup/cardPopuponce.vue
@@ -199,6 +199,43 @@
               searchLabelWidth: 96,
               align: 'center'
             },
+            {
+              labelWidth: 110,
+              disabled: true,
+              prop: "addressName",
+              // slot: true,
+              label: "场所标准地址",
+              rules: [{
+                required: true,
+                message: "请选择场所标准地址",
+                trigger: "blur",
+              }, ],
+            },
+            {
+              disabled: true,
+              labelWidth: 110,
+              label: '二维码图片',
+              type: 'upload',
+              listType: 'picture-img',
+              propsHttp: {
+                res: 'data',
+                url: 'link',
+              },
+              canvasOption: {
+                text: ' ',
+                ratio: 0.1
+              },
+              // action: '/api/blade-resource/oss/endpoint/put-file',
+              // tip: '只能上传jpg/png图片',
+              span: 12,
+              row: true,
+              prop: 'qrImg',
+              rules: [{
+                required: true,
+                message: "请上传二维码图片",
+                trigger: "blur",
+              }, ],
+            },
           ]
         },
       };
@@ -298,24 +335,24 @@
   }
 
   .attach_row {
-  display: flex;
-  border: 0.2px solid rgba(221, 223, 229, 0.5);
-  height: 54px;
-
-  .attach_row_title {
-    width: 85%;
-    border-right: 0.2px solid rgba(221, 223, 229, 0.5);
     display: flex;
-    justify-content: left;
-    align-items: center;
-    margin-left: 12px;
-  }
+    border: 0.2px solid rgba(221, 223, 229, 0.5);
+    height: 54px;
 
-  .attach_row_btn {
-    width: 15%;
-    margin: 10px;
-    display: flex;
-    justify-content: center;
+    .attach_row_title {
+      width: 85%;
+      border-right: 0.2px solid rgba(221, 223, 229, 0.5);
+      display: flex;
+      justify-content: left;
+      align-items: center;
+      margin-left: 12px;
+    }
+
+    .attach_row_btn {
+      width: 15%;
+      margin: 10px;
+      display: flex;
+      justify-content: center;
+    }
   }
-}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3