From 0d17285768b21a55b88bbb3ce93020559519c379 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 27 Dec 2023 11:04:03 +0800
Subject: [PATCH] 场所管理页面调整内容展示,与场所维护弹窗页面做校验

---
 src/views/place/components/baseAllInfo.vue |  146 +++++++++++++++++++++++++++---------------------
 1 files changed, 82 insertions(+), 64 deletions(-)

diff --git a/src/views/place/components/baseAllInfo.vue b/src/views/place/components/baseAllInfo.vue
index 24baba6..1e4a6a7 100644
--- a/src/views/place/components/baseAllInfo.vue
+++ b/src/views/place/components/baseAllInfo.vue
@@ -2,10 +2,10 @@
     <div class="cur-container-box">
         <div class="content-box">
             <box-title class="m10" :classVal="9" :title="'基本信息'"></box-title>
-            <avue-form :option="option" v-model="form"></avue-form>
+            <avue-form ref="baseForm" :option="option" v-model="form"></avue-form>
 
             <box-title class="m10" :classVal="9" :title="'其他信息'"></box-title>
-            <avue-form :option="optionDetail" v-model="placeForm"></avue-form>
+            <avue-form ref="restForm" :option="optionDetail" v-model="placeForm"></avue-form>
 
             <box-title class="m10" :classVal="9" :title="'从业人员'"></box-title>
             <avue-crud :option="placeOption" :table-loading="loading" :data="placeExt" ref="crud" v-model="houseHoldForm"
@@ -53,13 +53,67 @@
 
                 column: [
                     {
+                        span: 8,
                         label: "场所名称",
                         prop: "placeName",
+                        rules: [{
+                            required: true,
+                            message: "请输入场所名称",
+                            trigger: "blur",
+                        }],
+                    },
+
+                    {
+                        span: 9,
+                        label: "场所标签",
+                        prop: "label",
+                        type: "cascader",
+                        dicUrl: "/api/blade-category/category/getCategory?level=2",
+                        cascader: ["smallLabel"],
+                        props: {
+                            label: "categoryName",
+                            value: "categoryNo"
+                        },
+                        dataType: "string",
+                        hide: true,
+                        rules: [{
+                            required: true,
+                            message: "请输入场所标签",
+                            trigger: "blur",
+                        },],
+                    },
+                    {
+                        span: 7,
+                        label: "",
+                        labelWidth: 0,
+                        prop: "smallLabel",
+                        type: "cascader",
+                        dicUrl: "/api/blade-category/category/getCategory?parentNo={{label}}",
+                        props: {
+                            label: "categoryName",
+                            value: "categoryNo"
+                        },
+                        dataType: "string",
+                        hide: true,
                     },
 
                     {
                         label: "负责人",
                         prop: "principal",
+                        rules: [{
+                            required: false,
+                            message: "请输入负责人",
+                            trigger: "blur",
+                        }],
+                    },
+
+                    {
+                        width: 110,
+                        label: "电话",
+                        prop: "principalPhone",
+                        search: true,
+                        searchSpan: 4,
+                        slot: true,
                     },
 
                     {
@@ -104,44 +158,7 @@
                             },
                         ],
                     },
-                    {
-                        label: "场所标签",
-                        prop: "label",
-                        type: "cascader",
-                        dicUrl: "/api/blade-category/category/getCategory?level=2",
-                        cascader: ["smallLabel"],
-                        props: {
-                            label: "categoryName",
-                            value: "categoryNo"
-                        },
-                        dataType: "string",
-                        hide: true,
-                        rules: [{
-                            required: true,
-                            message: "请输入场所标签",
-                            trigger: "blur",
-                        },],
-                    },
-                    {
-                        label: "",
-                        prop: "smallLabel",
-                        type: "cascader",
-                        dicUrl: "/api/blade-category/category/getCategory?parentNo={{label}}",
-                        props: {
-                            label: "categoryName",
-                            value: "categoryNo"
-                        },
-                        dataType: "string",
-                        hide: true,
-                    },
-                    {
-                        width: 110,
-                        label: "电话",
-                        prop: "principalPhone",
-                        search: true,
-                        searchSpan: 4,
-                        slot: true,
-                    },
+
                     {
                         label: "场所照片",
                         prop: "imageUrls",
@@ -159,7 +176,7 @@
                         span: 24,
                     },
                     {
-                        label: "位置",
+                        label: "场所位置",
                         prop: "localtion",
                         span: 24,
                         minWidth: 220,
@@ -179,20 +196,12 @@
                 emptyBtn: false,
                 column: [
                     {
-                        label: '场所名称',
-                        prop: 'placeName',
-                    },
-                    {
                         label: '法人信息',
                         prop: 'legalPerson'
                     },
                     {
                         label: '法人电话',
                         prop: 'legalTel'
-                    },
-                    {
-                        label: '场所位置',
-                        prop: 'localtion'
                     },
 
                     {
@@ -446,23 +455,32 @@
                 imageUrls = urls.join(",")
             }
 
-            that.$axios.all([
-                update({
-                    // ...this.placeElement.curRow,
-                    ...this.form,
-                    imageUrls
-                }),
-                updatePlaceExt(this.placeForm)
-            ]).then(that.$axios.spread(function () {
-                that.$message({
-                    type: "success",
-                    message: "操作成功!",
-                })
+            this.$refs.baseForm.validate((valid, done, msg) => {
+                if (valid) {
+                    that.$axios.all([
+                        update({
+                            // ...this.placeElement.curRow,
+                            ...this.form,
+                            imageUrls
+                        }),
+                        updatePlaceExt(this.placeForm)
+                    ]).then(that.$axios.spread(function () {
+                        that.$message({
+                            type: "success",
+                            message: "操作成功!",
+                        })
 
-                that.placeElement.onLoad(that.placeElement.page, that.placeElement.query)
+                        that.closeRowDetails()
 
-                that.closeRowDetails()
-            }))
+                        that.placeElement.onLoad(that.placeElement.page, that.placeElement.query)
+
+                        done()
+                    }))
+                } else {
+                    console.log('error submit!!')
+                    return false
+                }
+            })
         },
 
         closeRowDetails () {

--
Gitblit v1.9.3