From 2bb0e066fdc522beb51dd13f6a72cd67bd5d6a58 Mon Sep 17 00:00:00 2001 From: “dzb” <2632970487@qq.com> Date: 星期日, 09 十月 2022 18:06:46 +0800 Subject: [PATCH] 修改bug,店铺管理新增、查询 --- src/views/operate/fivepack/shop/components/createUser/index.vue | 153 ++++++++++++++++++++++++++++++-------------------- 1 files changed, 92 insertions(+), 61 deletions(-) diff --git a/src/views/operate/fivepack/shop/components/createUser/index.vue b/src/views/operate/fivepack/shop/components/createUser/index.vue index f6b3f2c..dbf7350 100644 --- a/src/views/operate/fivepack/shop/components/createUser/index.vue +++ b/src/views/operate/fivepack/shop/components/createUser/index.vue @@ -2,46 +2,43 @@ <div class="createUser"> <main> <div class="mainContent"> - <el-form ref="user" label-width="140px" autoComplete="on" :model="user" :rules="createUserRules" + <el-form ref="user" label-width="140px" autoComplete="on" :model="store" :rules="createUserRules" label-position="right"> <!-- 搴楅摵绫诲瀷 --> <el-form-item class="optionItem" label="搴楅摵绫诲瀷:" prop="storetype"> - <el-select v-model="user.storetype" placeholder="閫夋嫨搴楅摵/闂ㄥ簵绫诲瀷"> - <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value" - :disabled="item.disabled"> + <el-select v-model="store.storetype" placeholder="閫夋嫨搴楅摵/闂ㄥ簵绫诲瀷"> + <el-option v-for="item in shopTypeList" :key="item.name" :label="item.name" :value="item.value"> </el-option> </el-select> </el-form-item> <!-- 搴楅摵鍚嶇О --> <el-form-item class="optionItems" label="搴楅摵鍚嶇О:" prop="storename"> - <el-input v-model="user.password" type="password" placeholder="璇峰~鍐欏簵閾哄悕绉�"></el-input> + <el-input v-model="store.storename" placeholder="璇峰~鍐欏簵閾哄悕绉�"></el-input> </el-form-item> <!-- 璐熻矗浜� --> - <el-form-item class="optionItem" label="璐熻矗浜�:" prop="username"> - <el-input v-model="user.username" placeholder="璇峰~鍐欑敤鎴峰鍚�"></el-input> + <el-form-item class="optionItem" label="璐熻矗浜�:" prop="owner"> + <el-input v-model="store.owner" placeholder="璇峰~鍐欏簵閾鸿礋璐d汉鍚嶅瓧"></el-input> </el-form-item> <!-- 搴楅摵鎻忚堪 --> - <el-form-item class="optionItem" label="搴楅摵鎻忚堪:" prop="mobile"> - <el-input type="textarea" v-model="user.mobile" placeholder="杈撳叆閮ㄩ棬鎻忚堪"></el-input> + <el-form-item class="optionItem" label="搴楅摵鎻忚堪:" prop="storedesc"> + <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="300" show-word-limit + v-model="store.storedesc" placeholder="杈撳叆閮ㄩ棬鎻忚堪"></el-input> + <!-- <el-input type="textarea" v-model="user.storedesc" placeholder="杈撳叆閮ㄩ棬鎻忚堪"></el-input> --> </el-form-item> <!-- 鑱旂郴鏂瑰紡 --> - <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="email"> - <el-input v-model="user.email" placeholder="璇峰~鍐欏簵閾鸿仈绯绘柟寮�"></el-input> + <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact"> + <el-input v-model="store.contact" placeholder="璇峰~鍐欏簵閾鸿仈绯绘柟寮�"></el-input> </el-form-item> <!-- 搴楅摵鍦板潃 --> - <el-form-item class="optionItem" label="搴楅摵鍦板潃:" prop="userType"> - <el-select v-model="user.userType" placeholder="璇峰~鍐欏簵閾鸿缁嗗湴鍧�"> - <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value" - :disabled="item.disabled"> - </el-option> - </el-select> + <el-form-item class="optionItem" label="搴楅摵鍦板潃:" prop="storeaddr"> + <el-input v-model="store.storeaddr" placeholder="璇峰~鍐欏簵閾鸿缁嗗湴鍧�"></el-input> </el-form-item> </el-form> </div> </main> <footer> <div class="optionBtn"> - <el-button class="btn reset">鍙栨秷</el-button> + <el-button class="btn reset" @click="handleBack">鍙栨秷</el-button> <el-button type="primary" class="btn submit" @click="handleUser">纭畾</el-button> </div> </footer> @@ -53,7 +50,7 @@ const validateNickname = (rule, value, callback) => { if (!value) { callback(new Error("璐熻矗浜轰笉鑳戒负绌�")); - }else{ + } else { callback(); } }; @@ -66,9 +63,9 @@ }; const validateTruename = (rule, value, callback) => { if (!value) { - callback(); + callback(new Error('搴楅摵鍦板潃涓嶈兘涓虹┖')); } else { - callback(new Error('搴楅摵鍦板潃涓嶈兘涓虹┖')) + callback() } }; const validatePhone = (rule, value, callback) => { @@ -78,17 +75,26 @@ const rep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/ if (!rep.test(value)) { callback("璇疯緭鍏ユ纭殑鎵嬫満鍙风爜"); + }else{ + callback(); } } }; const validateMail = (rule, value, callback) => { if (value) { callback(); - }else{ + } else { callback(new Error('搴楅摵鍚嶇О涓嶈兘涓虹┖')) } }; const validateType = (rule, value, callback) => { + if (!value) { + callback(new Error('闂ㄥ簵绫诲瀷涓嶈兘涓虹┖')); + } else { + callback(); + } + }; + const validateDesc = (rule, value, callback) => { if (!value) { callback(); } else { @@ -96,18 +102,23 @@ } }; return { - user: { - contact:'', - idcardinfo:'', - owner:'', - storeaddr:'', - storename:'', - storedesc:'', - storetype:'', + store: { + contact: '', + idcardinfo: '', + owner: '', + storeaddr: '', + storename: '', + storedesc: '', + storetype: '', }, createUserRules: { owner: [ { required: true, trigger: "blur", validator: validateNickname }, + ], + storetype:[ + { + required:true,trigger:'change', validator:validateType, + } ], idcardinfo: [ { required: true, trigger: "blur", validator: validatePass }, @@ -119,51 +130,61 @@ { required: true, trigger: "blur", validator: validatePhone }, ], storename: [ - { required: false, trigger: "blur", validator: validateMail }, + { required: true, trigger: "blur", validator: validateMail }, ], storedesc: [ - { required: true, trigger: "blur", validator: validateType }, + { required: false, trigger: "blur", validator: validateDesc }, ], }, - roleList: [ - { name: '瑙掕壊1', value: 1 }, { name: '瑙掕壊2', value: 2 } + shopTypeList: [ + { name: '绫诲瀷1', value: 1 }, { name: '绫诲瀷2', value: 2 } ], - typeList: [] } }, created() { const that = this; - // 鑾峰彇瑙掕壊鍒楄〃 - // this.$axios.get('') - // 鑾峰彇鐢ㄦ埛绫诲瀷鍒楄〃 - // this.$axios.get('sccg/admin/list',{userType:0}).then(res=>{ - // console.log(res); - // }) - // 鑾峰彇鍏ㄩ儴閮ㄩ棬鍒楄〃 - this.$axios.get('sccg/depart/page').then(res => { - that.typeList = res.data.records; - }) }, methods: { handleUser() { - const { user } = this; - this.$axios.post('sccg/store/storeinfo/add',{ - contact:'18728108911', - idcardinfo:'511025199910028213', - owner:'娴嬭瘯浜哄憳', - storeaddr:'鍥涘窛鐪�', - storename:'娴嬭瘯搴椾竴', - storephoto:'111', - storescore:0, - }) - .then(res => { - console.log(res); - // if (res.code === 200) { - // console.log(1); - // this.$emit('sendDialog', { flag: false }); - // } + const { store } = this; + console.log('in'); + this.$refs.user.validate((valid)=>{ + console.log(valid); + if(valid){ + this.$axios({ + method:'post', + url:'sccg/store/storeinfo/add', + data:{ + contact:store.contact, + idcardinfo:'511025184612310215', + owner:store.owner, + storeaddr:store.storeaddr, + storename:store.storename, + } + }) + .then(res=>{ + console.log(res); + if(res.code===200){ + this.$message({ + type:'success', + message:'娣诲姞鎴愬姛', + }) + this.$emit('sendDialog',{flag:false}); + }else{ + this.$message({ + type:'error', + message:res.message, + }) + } + }) + }else{ + return false; + } }) }, + handleBack(){ + this.$emit('sendDialog',{flag:false}) + } }, props: ['sendDialog'] } @@ -228,6 +249,7 @@ display: flex; justify-content: flex-end; padding: 0 20px; + .optionBtn { display: flex; margin-top: 20px; @@ -237,5 +259,14 @@ } } } + + ::v-deep .el-textarea__inner { + background-color: #09152f; + border: 1px solid #17324c; + } + + ::v-deep .el-input__count { + background-color: #09152f; + } } </style> \ No newline at end of file -- Gitblit v1.8.0