Selaa lähdekoodia

完善页面配置页面

yuanrf 2 vuotta sitten
vanhempi
commit
6b53658f2b
1 muutettua tiedostoa jossa 109 lisäystä ja 18 poistoa
  1. 109 18
      src/components/child/PageConfig.vue

+ 109 - 18
src/components/child/PageConfig.vue

@@ -16,12 +16,13 @@
                 </div>
             </div>
            <div>
-            <el-button type="primary" @click="addPage"  >添 加</el-button>
+                <el-button type="primary" @click="pageload()"  >刷 新</el-button>
+                <el-button type="primary" @click="addPage"  >添 加</el-button>
            </div>
         </div>
         <div class="pageConfig-table">
                 <el-table :data="pageList.slice((currentPage - 1) * pageSize, currentPage * pageSize)" border style="width: 100%">
-                    <el-table-column prop="pageName" label="页面名称" width="180">
+                    <el-table-column prop="pageName" label="页面名称" width="150">
                     </el-table-column>
                     <el-table-column prop="systemMenuCode" label="页面Code" width="100">
                     </el-table-column>
@@ -40,7 +41,7 @@
                     </el-table-column>
                     <el-table-column prop="pagePhoneIsEnable" label="手机端是否启用" width="150">
                         <template slot-scope="scope">
-                            <el-checkbox  :true-label="1" disabled :false-label="0"  v-model="pageList[scope.$index].PagePhoneIsEnable" ></el-checkbox>
+                            <el-checkbox  :true-label="1" disabled :false-label="0"  v-model="pageList[scope.$index].pagePhoneIsEnable" ></el-checkbox>
                         </template>
                     </el-table-column>
                     <el-table-column label="操作" >
@@ -72,10 +73,10 @@
         <Modal :title="dialogTitle" :height="350" :width="700" :show.sync="showModal" restrict-to=".is-vertical" @close="showModal = false" >
             <template v-slot:content>
                 <div style="    padding: 10px;">
-                    <el-form label-position="left" label-width="70px" :model="pageBind">
+                    <el-form label-position="left" label-width="80px" :model="pageBind" :rules="rules" ref="pageBind">
                         <el-row :gutter="20">
                             <el-col :span="8">
-                                <el-form-item label="页面模块" >  <!--style="width: 48%;" -->
+                                <el-form-item label="页面模块"  prop="modulid">  <!--style="width: 48%;" -->
                                     <el-select v-model="pageBind.modulid" placeholder="请选择">
                                         <el-option 
                                         v-for="item in Modulfiltr"
@@ -87,19 +88,19 @@
                                 </el-form-item>
                             </el-col>
                             <el-col :span="8">
-                                <el-form-item label="页面名称" >  <!--style="width: 48%;" -->
+                                <el-form-item label="页面名称"  prop="pageName">  <!--style="width: 48%;" -->
                                     <el-input v-model="pageBind.pageName"></el-input>
                                 </el-form-item>
                             </el-col>
                             <el-col :span="8">
-                                <el-form-item label="页面代码" > 
+                                <el-form-item label="页面代码"  prop="systemMenuCode" > 
                                     <el-input v-model="pageBind.systemMenuCode"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
                         <el-row :gutter="20">
                             <el-col :span="8">
-                                <el-form-item label="webUrl">
+                                <el-form-item label="webUrl" prop="webUrl" >
                                     <el-input v-model="pageBind.webUrl"></el-input>
                                 </el-form-item>
                             </el-col>
@@ -139,7 +140,7 @@
             <template v-slot:footer>
                 <div>
                     <el-button @click="showModal = false" type="danger">取 消</el-button>
-                    <el-button type="primary" >保 存</el-button>
+                    <el-button type="primary" @click="PageSave">保 存</el-button>
                 </div>
             </template>
         </Modal>
@@ -150,6 +151,7 @@
 
 <script>
 import { cw } from '@fullcalendar/core/internal-common';
+import { promised, reject, resolve } from 'q';
 import Modal from '../template/dialog.vue';
 
 export default {
@@ -182,6 +184,20 @@ export default {
             sTid:5,
             pageRemark:'',
         },//数据绑定对象
+        rules: {
+            pageName: [
+                { required: true, message: '请输入页面名称', trigger: 'blur' },
+            ],
+            modulid:[
+            { required: true, message: '请选中模块', trigger: 'blur' },
+            ],
+            systemMenuCode:[
+            { required: true, message: '请输入页面代码', trigger: 'blur' },
+            ]
+            ,webUrl:[
+            { required: true, message: '请输入WebUrl', trigger: 'blur' },
+            ]
+        }
       };
     },
     methods: {
@@ -257,23 +273,98 @@ export default {
             };
         },
         Edit(page){
-            console.log();
             //this.dialogVisible = true;
             this.showModal = true;
             this.dialogTitle='编辑页面';
-            this.pageBind = page;
+            console.log(page);  
+            this.pageBind = {
+                androidUrl:page.androidUrl,
+                iosUrl:page.iosUrl,
+                pageIsEnable:page.pageIsEnable,
+                pageName:page.pageName,
+                pagePhoneIsEnable:page.pagePhoneIsEnable,
+                pageid:page.pageid,
+                systemMenuCode:page.systemMenuCode,
+                webUrl:page.webUrl,
+                modulName:page.modulName,
+                modulid:page.modulid,
+                icon:page.icon,
+                modulRemark:page.modulRemark,
+                sTid:page.sTid,
+                pageRemark:page.pageRemark,
+            };
         },
         PageSave(){
-
+            var that =  this;
             if(this.pageBind.pageid == -1){
-                //新增
-                
-                
+
+                var p = new Promise((resolve,reject)=>{
+                    this.$refs.pageBind.validate((valid) => {
+                        if(valid){
+                            resolve(true);
+                        }else{
+                            reject(false);
+                        }
+                    });
+                })
+
+                p.then(resolve=>{
+                    //新增
+                    this.$axios.post(this.PathUrl + '/api/System/AddPageInfo', this.pageBind, {
+                        headers: {
+                            'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IkZ1dHVyZSIsImV4cCI6MTY3OTU0MjgwNSwiaXNzIjoiT0FTeXN0ZW0uY29tIiwiYXVkIjoiT0FTeXN0ZW0uY29tIn0.iy5SUInq1p3yjZultRPyzCa2ekLeepSdMLxvPwXY6MI',
+                        }
+                    }).then(resp => {
+                        that.showModal = false;
+
+                        if (resp.data.code == 200) {
+                            this.$message({
+                                message: '添加成功',
+                                type: 'success'
+                            });
+                        }else{
+                            this.$message.error(resp.data.msg);
+                        }
+                        that.pageload();
+                    })
+                }).catch(err=>{
+                    console.log("表单验证未通过");
+                })
 
             }else{
                 //修改
+                var p = new Promise((resolve,reject)=>{
+                    this.$refs.pageBind.validate((valid) => {
+                        if(valid){
+                            resolve(true);
+                        }else{
+                            reject(false);
+                        }
+                    });
+                })
 
+                p.then(resolve=>{
+                    //新增
+                    this.$axios.post(this.PathUrl + '/api/System/EditPageInfo', this.pageBind, {
+                        headers: {
+                            'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IkZ1dHVyZSIsImV4cCI6MTY3OTU0MjgwNSwiaXNzIjoiT0FTeXN0ZW0uY29tIiwiYXVkIjoiT0FTeXN0ZW0uY29tIn0.iy5SUInq1p3yjZultRPyzCa2ekLeepSdMLxvPwXY6MI',
+                        }
+                    }).then(resp => {
+                        that.showModal = false;
 
+                        if (resp.data.code == 200) {
+                            this.$message({
+                                message: '添加成功',
+                                type: 'success'
+                            });
+                        }else{
+                            this.$message.error(resp.data.msg);
+                        }
+                        that.pageload();
+                    })
+                }).catch(err=>{
+                    console.log("表单验证未通过");
+                })
             }
         
         }
@@ -287,9 +378,9 @@ export default {
     },
     computed:{
         Modulfiltr(){
-            var arr = this.ModulList;
-            arr.splice(0,1)
-            return arr ;
+            return this.bufferData.modList.data.filter((item,i,arr)=>{
+                return item.id != -1;
+            }); 
         }
     }
 }