From bf83dce33b684ba07774d74a9460c2768f848b44 Mon Sep 17 00:00:00 2001 From: “dzb” <2632970487@qq.com> Date: 星期五, 30 九月 2022 16:29:46 +0800 Subject: [PATCH] 案件池违规、违建注册接口调试,审核页面构建 --- src/views/operate/disposal/casepool/pool/index.vue | 116 +++++-- src/views/operate/disposal/casepool/pool/createUser/ill/index.vue | 446 +++++++++++++++++++++-------- src/views/systemSetting/baseSetting/user/components/main/index.vue | 2 src/views/operate/disposal/casepool/pool/createUser/vio/index.vue | 245 +++++++++++---- src/views/operate/management/myIndex/index.vue | 39 ++ src/utils/helper.js | 4 6 files changed, 608 insertions(+), 244 deletions(-) diff --git a/src/utils/helper.js b/src/utils/helper.js index 3b6dda5..d3865cc 100644 --- a/src/utils/helper.js +++ b/src/utils/helper.js @@ -13,5 +13,5 @@ } } return objClone; -} -export {deepClone}; \ No newline at end of file +} +export {deepClone}; diff --git a/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue b/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue index 848d2bf..786db34 100644 --- a/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue +++ b/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue @@ -6,70 +6,76 @@ <div class="input-header__tip">濉啓浜嬩欢鍩虹淇℃伅</div> </div> <div class="input-form"> - <el-form ref="user" label-width="160px" autoComplete="on" :model="role" :rules="createRoleRules" + <el-form ref="user" label-width="160px" autoComplete="on" :model="ill" :rules="createillRules" label-position="right"> - <!-- 闂绫诲瀷 --> - <el-form-item class="optionItem" label="闂绫诲瀷:" prop="name"> - <el-select v-model="role.type" placeholder="杩濆缓"> + <!-- 闂绫诲瀷 + <el-form-item class="optionItem" label="闂绫诲瀷:" prop="category"> + <el-select v-model="ill.type" 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> + </el-form-item> --> <!-- 杩濆缓绫诲埆 --> - <el-form-item class="optionItems" label="杩濆缓绫诲埆:" prop="status"> - <el-select v-model="role.big" placeholder="璇烽�夋嫨杩濆缓绫诲埆" size="small"> + <el-form-item class="optionItems" label="杩濆缓绫诲埆:" prop="categoryId"> + <el-select v-model="ill.categoryId" placeholder="璇烽�夋嫨杩濆缓绫诲埆" size="small"> <el-option v-for="item in bigKindList" :key="item.id" :label="item.name" :value="item.id" :disabled="item.disabled"> </el-option> </el-select> </el-form-item> <!-- 褰撲簨浜哄鍚� --> - <el-form-item class="optionItems" label="褰撲簨浜哄鍚�:" prop="status"> - <el-input placeholder="璇峰~鍐欏綋浜嬩汉濮撳悕"></el-input> + <el-form-item class="optionItems" label="褰撲簨浜哄鍚�:" prop="partyName"> + <el-input placeholder="璇峰~鍐欏綋浜嬩汉濮撳悕" v-model="ill.partyName"></el-input> </el-form-item> <!-- 褰撲簨浜鸿韩浠借瘉鍙� --> - <el-form-item class="optionItems" label="褰撲簨浜鸿韩浠借瘉鍙�:" prop="status"> - <el-input placeholder="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿"></el-input> + <el-form-item class="optionItems" label="褰撲簨浜鸿韩浠借瘉鍙�:" prop="partyIdCard"> + <el-input placeholder="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿" v-model="ill.partyIdCard"></el-input> </el-form-item> <!-- 褰撲簨浜鸿仈绯荤數璇� --> - <el-form-item class="optionItem" label="褰撲簨浜鸿仈绯荤數璇�:" prop="description"> - <el-input v-model="role.description" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input> + <el-form-item class="optionItem" label="褰撲簨浜鸿仈绯荤數璇�:" prop="partyPhone"> + <el-input v-model="ill.partyPhone" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input> </el-form-item> <!-- 杩濆缓鍦扮偣 --> - <el-form-item class="optionItems" label="杩濆缓鍦扮偣:" prop="status"> - <el-input placeholder="璇峰~鍐欒繚寤哄湴鐐�"></el-input> + <el-form-item class="optionItems" label="杩濆缓鍦扮偣:" prop="site"> + <el-input placeholder="璇峰~鍐欒繚寤哄湴鐐�" v-model="ill.site"></el-input> </el-form-item> <!-- 鎵�灞炵ぞ鍖� --> - <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="status"> - <el-select v-model="role.type" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�"> - <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value" - :disabled="item.disabled"> + <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="communityId"> + <el-select v-model="ill.communityId" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�"> + <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"> </el-option> </el-select> </el-form-item> <!-- 韬唤璇佹鍙嶉潰鐓х墖 --> - <el-form-item class="optionItems" label="韬唤璇佹鍙嶉潰鐓х墖:" prop="status"> + <el-form-item class="optionItems" label="韬唤璇佹鍙嶉潰鐓х墖:" prop="positive"> <template> <div class="idcard"> - <el-upload class="upload-demo" - :show-file-list = "false" - action="http://42.193.1.25:8082/sccg/file/medias" - :headers="getToken()" multiple :limit="50"> - <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg" + <el-upload class="upload-demo" :show-file-list="false" + action="http://42.193.1.25:8082/sccg/file/medias" :headers="getToken()" multiple + :limit="50" :on-success="handleSuccess"> + <img v-if="ill.positive === ''" + src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg" alt=""> - <span class="text">韬唤璇佹闈�</span> + <span class="text" v-if="ill.positive === ''">韬唤璇佹闈�</span> + <img :src="ill.positive" alt="" class="img" v-else> </el-upload> - <el-upload class="upload-demo" - :show-file-list = "false" - action="http://42.193.1.25:8082/sccg/file/medias" - :headers="getToken()" multiple :limit="50"> - <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg" + <el-upload class="upload-demo" :show-file-list="false" + action="http://42.193.1.25:8082/sccg/file/medias" :headers="getToken()" multiple + :limit="50" :on-success="handleSuccess2"> + <img v-if="ill.negative === '' " + src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg" alt=""> - <span class="text">韬唤璇佸弽闈�</span> + <span class="text" v-if="ill.negative === ''">韬唤璇佸弽闈�</span> + <img :src="ill.negative" alt="" class="img" v-else /> </el-upload> </div> </template> + </el-form-item> + <!-- 鎶ヨ鏃堕棿 --> + <el-form-item class="optionItems" label="鎶ヨ鏃堕棿:" prop="alarmTime"> + <el-date-picker v-model="ill.alarmTime" type="datetime" placeholder="閫夋嫨鎶ヨ鏃堕棿"> + </el-date-picker> </el-form-item> </el-form> </div> @@ -77,25 +83,28 @@ <div class="not-need__header"> 鎵ф硶杩濆缓鎯呭喌 </div> - <div class="not-need-item"> - <label>杩濆缓鍏蜂綋浣嶇疆:</label> - <input type="text" class="not-need__inner"> - </div> - <div class="not-need-item"> - <label>杩濇硶寤鸿闀裤�佸銆侀珮:</label> - <input type="text" class="not-need__inner"> - </div> - <div class="not-need-item"> - <label>杩濇硶寤鸿闈㈢Н:</label> - <input type="text" class="not-need__inner"> - </div> - <div class="not-need-item"> - <label>杩濇硶寤虹瓚鏉愭枡:</label> - <input type="text" class="not-need__inner"> - </div> + <el-form ref="condition" label-width="160px" autoComplete="on" :model="ill" :rules="createillRules"> + <!-- 杩濆缓鍏蜂綋浣嶇疆 --> + <el-form-item class="optionItems" label="杩濆缓鍏蜂綋浣嶇疆:" prop="position"> + <el-input placeholder="璇峰~鍐欒繚寤哄叿浣撲綅缃�" v-model="ill.position"></el-input> + </el-form-item> + <el-form-item class="optionItems" label="杩濇硶寤鸿闀裤�佸銆侀珮:" prop="buildingLength"> + <div class="area"> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingLength"></el-input> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingWidth"></el-input> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingHigh"></el-input> + </div> + </el-form-item> + <el-form-item class="optionItems" label="杩濇硶寤鸿闈㈢Н:" prop="buildingArea"> + <el-input placeholder="璇峰~鍐欒繚娉曞缓璁鹃潰绉�" v-model="ill.buildingArea"></el-input> + </el-form-item> + <el-form-item class="optionItems" label="杩濇硶寤虹瓚鏉愭枡:" prop="materials"> + <el-input placeholder="璇峰~鍐欒繚娉曞缓绛戞潗鏂�" v-model="ill.materials"></el-input> + </el-form-item> + </el-form> </div> <div class="input-footer"> - <el-button type="primary" class="confirm">纭畾</el-button> + <el-button type="primary" class="confirm" @click="handleUser">纭畾</el-button> <el-button class="back">杩斿洖</el-button> </div> </div> @@ -111,72 +120,258 @@ MyMap }, data() { - const validateNickname = (rule, value, callback) => { - if (!value) { - callback(new Error("璇峰~鍐欓棶棰樼被鍨�")); - } else { - callback(); - } - }; - const validatePass = (rule, value, callback) => { - if (!value) { - callback(); - } else { - // const rep = /^\w+$/; - // if (!rep.test(value)) { - // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆")); - // } - callback(); - } - }; - const validateTruename = (rule, value, callback) => { + const checkArea = (rule, value, callback) => { if (value) { callback(); } else { - // const rep = /^[\u4E00-\u9FA5]{2,4}$/; - // if (!rep.test(value)) { - // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕"); - // } - callback(); + callback(new Error('杩濇硶寤鸿闈㈢Н涓嶈兘涓虹┖')) } - }; + } + const checkHigh = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤鸿楂樺害涓嶈兘涓虹┖')); + + } + } + const checkWidth = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤鸿瀹藉害涓嶈兘涓虹┖')); + + } + } + const checkLength = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤鸿闀垮害涓嶈兘涓虹┖')); + + } + } + const checkCategoryId = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濆缓绫诲埆涓嶈兘涓虹┖')); + } + } + const checkCommunityId = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎵�灞炵ぞ鍖轰笉鑳戒负绌�')); + } + } + const checkMaterials = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤虹瓚鏉愭枡涓嶈兘涓虹┖')); + } + } + const checkIdCard = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('褰撲簨浜鸿韩浠借瘉鍙风爜涓嶈兘涓虹┖')); + } + } + const checkName = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�')); + } + } + const checkPhone = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('褰撲簨浜鸿仈绯荤數璇濅笉鑳戒负绌�')); + } + } + const checkPosition = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤鸿鍏蜂綋浣嶇疆涓嶈兘涓虹┖')); + } + } + const checkPositive = (rule, value, callback) => { + if (value) { + if (this.ill.negative === '') { + callback('韬唤璇佸弽闈笉鑳戒负绌�'); + } else { + callback(); + } + } else { + callback(new Error('韬唤璇佹闈笉鑳戒负绌�')); + + } + } + const checkSite = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('杩濇硶寤鸿鍦扮偣涓嶈兘涓虹┖')); + } + } + const checkDate = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎶ヨ鏃堕棿涓嶈兘涓虹┖')) + } + } return { - role: { - name: '', - type: '', - description: '', + ill: { + buildingArea: 2.0, + buildingHigh: 2.0, + buildingLength: 2.0, + buildingWidth: 1.0, + // category: '', + categoryId: '', + communityId: '', + materials: "閽㈢瓔", + partyIdCard: "511025184612310213", + partyName: "鍗曟暟澶�", + partyPhone: "17844631885", + position: "鏂板湴鏂规柊浣庣偣", + positive: "", + negative: "", + site: "鏂板湴鏂�", + alarmTime: '', }, - createRoleRules: { - name: [ - { required: true, trigger: "blur", validator: validateNickname }, + createillRules: { + buildingArea: [ + { + required: true, trigger: 'change', validator: checkArea + } ], - type: [ - { required: false, trigger: "blur", validator: validatePass }, + buildingHigh: [ + { + required: true, trigger: 'blur', validator: checkHigh + } ], - description: [ - { required: false, trigger: "blur", validator: validateTruename }, + buildingLength: [ + { + required: true, trigger: 'blur', validator: checkLength + } ], + buildingWidth: [ + { + required: true, trigger: 'blur', validator: checkWidth + } + ], + categoryId: [ + { + required: true, trigger: 'change', validator: checkCategoryId + } + ], + communityId: [ + { + required: true, trigger: 'change', validator: checkCommunityId + } + ], + materials: [ + { + required: true, trigger: 'blur', validator: checkMaterials + } + ], + partyIdCard: [ + { + required: true, trigger: 'blur', validator: checkIdCard + } + ], + partyName: [ + { + required: true, trigger: 'blur', validator: checkName + } + ], + partyPhone: [ + { + required: true, trigger: 'blur', validator: checkPhone + } + ], + position: [ + { + required: true, trigger: 'blur', validator: checkPosition + } + ], + positive: [ + { + required: true, trigger: 'change', validator: checkPositive + } + ], + site: [ + { + required: true, trigger: 'blur', validator: checkSite + } + ], + alarmTime: [ + { + required: true, trigger: 'change', validator: checkDate + } + ] }, bigKindList: [], - typeList: [], + typeList: [ + { + name: '绀惧尯1', + value: 1, + }, + { + name: '绀惧尯2', + value: 2, + } + ], } }, created() { - const { getBigKind, getEventLevel, getSmallKind } = this; + const { getBigKind } = this; + // this.ill.category = this.mytype + 1; getBigKind(); }, methods: { handleUser() { - this.$refs['user'].validate((valid) => { - console.log(valid); + const that = this; + // console.log(this.$refs); + this.$refs.user.validate((valid) => { + console.log(valid) if (valid) { - const { role } = this; - console.log(role); - this.$axios.post('sccg/role/create', { - description: role.description, name: role.name, type: role.type - }).then(res => { - if (res.code === 200) { - this.refresh(); + that.$refs.condition.validate((flag) => { + console.log(flag); + if (flag) { + const { ill } = this; + ill.buildingLength = parseFloat(ill.buildingLength); + ill.buildingHigh = parseFloat(ill.buildingHigh); + ill.buildingWidth = parseFloat(ill.buildingWidth); + ill.buildingArea = parseFloat(ill.buildingArea); + console.log(ill); + that.$axios({ + method: 'post', + url: 'sccg/base-case/addition_illegal_building', + data: ill, + }) + .then(res => { + if (res.code === 200) { + this.$message({ + type: 'success', + message: res.message + }) + this.$emit('changeDialog', { dialogView: false }); + } else { + this.$message({ + type: 'warning', + message: res.message, + }) + } + }) + } else { + return false; } }) } else { @@ -205,13 +400,26 @@ if (token && tokenHead) { return { Authorization: tokenHead + token }; } + }, + handleSuccess(res, file, filelist) { + const baseUrl = 'http://140.143.152.226:8410/'; + console.log(res); + this.ill.positive = baseUrl + res.data.url1; + + }, + handleSuccess2(res, file, filelist) { + const baseUrl = 'http://140.143.152.226:8410/'; + console.log(res); + this.ill.negative = baseUrl + res.data.url1; } - } + }, + props: ['mytype', 'changeDialog'] } </script> <style lang="scss" scoped> .ill { display: flex; + padding: 20px 50px; .input-area { flex: 1; @@ -242,14 +450,17 @@ background-color: #09152f; border: 1px solid #17324c; } - .upload-demo{ + + .upload-demo { position: relative; - .text{ + + .text { position: absolute; top: 22%; left: 20%; } } + .idcard { display: flex; } @@ -266,38 +477,17 @@ } } - .map-area { - flex: 1; + .img { + width: 125px; + height: 80px; } - .not-need { - .not-need__header { - line-height: 40px; - } + .area { + display: flex; + } - .not-need-item { - line-height: 40px; - margin-bottom: 22px; - display: flex; - - label { - width: 160px; - padding-right: 12px; - text-align: right; - } - - .not-need__inner { - flex: 1; - line-height: 40px; - padding: 0 15px; - border-radius: 4px; - color: #fff; - // outline: #409eff solid 1px; - outline: none; - background-color: #09152f; - border: 1px solid #17324c; - } - } + .map-area { + flex: 1; } } </style> \ No newline at end of file diff --git a/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue b/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue index 01a50f9..767ab4c 100644 --- a/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue +++ b/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue @@ -52,21 +52,21 @@ </el-select> </el-form-item> --> <!-- 鎵�灞炵ぞ鍖� --> - <!-- <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="status"> - <el-select v-model="vio.type" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�"> + <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="communityId"> + <el-select v-model="vio.communityId" 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> --> + </el-form-item> <!-- 鎵�灞炶閬� --> - <!-- <el-form-item class="optionItems" label="鎵�灞炶閬�:" prop="status"> - <el-select v-model="vio.type" placeholder="璇烽�夋嫨鎵�灞炶閬�"> + <el-form-item class="optionItems" label="鎵�灞炶閬�:" prop="streetId"> + <el-select v-model="vio.streetId" 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> --> + </el-form-item> <!-- 浜嬪彂鍦扮偣 --> <el-form-item class="optionItems" label="浜嬪彂鍦扮偣:" prop="site"> <el-input placeholder="璇疯緭鍏ヤ簨鍙戝湴璇︾粏浣嶇疆" v-model="vio.site"></el-input> @@ -80,7 +80,8 @@ </el-form-item> <!-- 鍏宠仈鍟嗛摵鍚嶇О --> <el-form-item class="optionItems" label="鍏宠仈鍟嗛摵鍚嶇О:" prop="shopName"> - <el-input placeholder="璇峰~鍐欏叧鑱斿晢閾哄悕绉�" v-model="vio.shopName" :disabled="vio.linkShop === 1 ?false : true"></el-input> + <el-input placeholder="璇峰~鍐欏叧鑱斿晢閾哄悕绉�" v-model="vio.shopName" + :disabled="vio.linkShop === 1 ?false : true"></el-input> </el-form-item> <!-- 濉啓杞︾墝鍙� --> <el-form-item class="optionItems" label="濉啓杞︾墝鍙�:" prop="carNumber"> @@ -89,6 +90,11 @@ <!-- 闂鎻忚堪 --> <el-form-item class="optionItems" label="闂鎻忚堪:" prop="description"> <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�200瀛椾互鍐�" v-model="vio.description"></el-input> + </el-form-item> + <!-- 鎶ヨ鏃堕棿 --> + <el-form-item class="optionItems" label="鎶ヨ鏃堕棿:" prop="alarmTime"> + <el-date-picker v-model="vio.alarmTime" type="datetime" placeholder="閫夋嫨鎶ヨ鏃堕棿"> + </el-date-picker> </el-form-item> </el-form> </div> @@ -115,7 +121,7 @@ </div> </div> <div class="map-area"> - <!-- <MyMap /> --> + <MyMap /> </div> </div> </template> @@ -126,63 +132,154 @@ MyMap }, data() { - const validateNickname = (rule, value, callback) => { - if (!value) { - callback(new Error("璇峰~鍐欓棶棰樼被鍨�")); - } else { - callback(); - } - }; - const validatePass = (rule, value, callback) => { - if (!value) { - callback(); - } else { - // const rep = /^\w+$/; - // if (!rep.test(value)) { - // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆")); - // } - callback(); - } - }; - const validateTruename = (rule, value, callback) => { + const checkCause = (rule, value, callback) => { if (value) { callback(); } else { - // const rep = /^[\u4E00-\u9FA5]{2,4}$/; - // if (!rep.test(value)) { - // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕"); - // } - callback(); + callback(new Error('妗堢敱涓嶈兘涓虹┖')) } - }; + } + const checkCategory = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('澶х被鍚嶇О涓嶈兘涓虹┖')) + } + } + const checkCommunity = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎵�灞炵ぞ鍖轰笉鑳戒负绌�')); + } + } + const checkDesc = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('闂鎻忚堪涓嶈兘涓虹┖')) + } + } + const checkSite = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('浜嬪彂鍦扮偣涓嶈兘涓虹┖')) + } + } + const checkStreet = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎵�灞炶閬撲笉鑳戒负绌�')) + } + } + const checkType = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('灏忕被涓嶈兘涓虹┖')) + } + } + const checkGrade = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('浜嬩欢绛夌骇涓嶈兘涓虹┖')) + } + } + const checkDate = (rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎶ヨ鏃堕棿涓嶈兘涓虹┖')) + } + } return { vio: { - actionCause:"dasdas",//妗堢敱 - carNumber:"宸漦123456",//杞︾墝鍙� + actionCause: "",//妗堢敱 + carNumber: "",//杞︾墝鍙� // category:1,//1:杩濊2:杩濆缓 - categoryId:0,//澶х被 - communityId:0,//鎵�灞炵ぞ鍖� - description:"澶ф拻澶ф拻",//闂鎻忚堪 - informant:"澶ц嫃鎵�",//鍙嶆槧浜� - informantIdCard:"51102519910082831",//韬唤璇佸彿鐮� - informantPhoneCode:"17844631885",//鍙嶆槧浜鸿仈绯绘柟寮� - linkShop:0,//鏄惁鍏宠仈鍟嗛摵(0鍚�1鏄�) - shopName:"",//鍏宠仈鍟嗛摵鍚嶇О - site:'鏂板湴鏂�',//浜嬪彂鍦扮偣 - streetId:0,//鎵�灞炶閬� - typeId:0,//灏忕被 - gradeId:'' + categoryId: '',//澶х被 + communityId: '',//鎵�灞炵ぞ鍖� + description: '',//闂鎻忚堪 + informant: '',//鍙嶆槧浜� + informantIdCard: '',//韬唤璇佸彿鐮� + informantPhoneCode: "",//鍙嶆槧浜鸿仈绯绘柟寮� + linkShop: 0,//鏄惁鍏宠仈鍟嗛摵(0鍚�1鏄�) + shopName: "",//鍏宠仈鍟嗛摵鍚嶇О + site: '',//浜嬪彂鍦扮偣 + streetId: '',//鎵�灞炶閬� + typeId: '',//灏忕被 + gradeId: '',//妗堜欢绛夌骇 + alarmTime: '' }, createRoleRules: { - name: [ - { required: true, trigger: "blur", validator: validateNickname }, + //妗堢敱 + actionCause: [ + { + required: true, trigger: 'blur', validator: checkCause, + } ], - type: [ - { required: false, trigger: "blur", validator: validatePass }, + //杞︾墝鍙� + carNumber: [ + { + required: false, + } ], + //澶х被 + categoryId: [ + { + required: true, trigger: 'change', validator: checkCategory + } + ], + //鎵�灞炵ぞ鍖� + communityId: [ + { + required: true, trigger: 'change', validator: checkCommunity + } + ], + //闂鎻忚堪 description: [ - { required: false, trigger: "blur", validator: validateTruename }, + { + required: true, trigger: 'blur', validator: checkDesc + } ], + // informant:"澶ц嫃鎵�",//鍙嶆槧浜� + // informantIdCard:"51102519910082831",//韬唤璇佸彿鐮� + // informantPhoneCode:"17844631885",//鍙嶆槧浜鸿仈绯绘柟寮� + // linkShop:0,//鏄惁鍏宠仈鍟嗛摵(0鍚�1鏄�) + // shopName:"",//鍏宠仈鍟嗛摵鍚嶇О + //浜嬪彂鍦扮偣 + site: [ + { + required: true, trigger: 'blur', validator: checkSite + } + ], + //鎵�灞炶閬� + streetId: [ + { + required: true, trigger: 'change', validator: checkStreet + } + ], + //灏忕被 + typeId: [ + { + required: true, trigger: 'change', validator: checkType + } + ], + //妗堜欢绛夌骇 + gradeId: [ + { + required: true, trigger: 'change', validator: checkGrade + } + ], + alarmTime: [ + { + required: true, trigger: 'change', validator: checkDate + } + ] + }, bigKindList: [], smallKindList: [], @@ -256,34 +353,42 @@ }, // 鎻愪氦娉ㄥ唽淇℃伅 handleSubmit() { - const { vio } = this; - this.$axios({ - method:'post', - url:'sccg/base-case/addition_violation', - data:vio - }) - .then(res=>{ - if(res.code === 200){ - this.$message({ - type:'success', - message:res.message + this.$refs.user.validate((valid) => { + if (valid) { + const { vio } = this; + console.log(vio); + this.$axios({ + method: 'post', + url: 'sccg/base-case/addition_violation', + data: vio }) - this.$emit('changeDialog',{dialogView:false}); - }else{ - this.$message({ - type:'warning', - message:res.message, - }) + .then(res => { + if (res.code === 200) { + this.$message({ + type: 'success', + message: res.message + }) + this.$emit('changeDialog', { dialogView: false }); + } else { + this.$message({ + type: 'warning', + message: res.message, + }) + } + }) + } else { + return false; } }) } }, - props: ['mytype','changeDialog'] + props: ['mytype', 'changeDialog'] } </script> <style lang="scss" scoped> .vio { display: flex; + padding: 20px 10px 50px; .input-area { flex: 1; diff --git a/src/views/operate/disposal/casepool/pool/index.vue b/src/views/operate/disposal/casepool/pool/index.vue index d7593f3..3fc9de5 100644 --- a/src/views/operate/disposal/casepool/pool/index.vue +++ b/src/views/operate/disposal/casepool/pool/index.vue @@ -4,19 +4,27 @@ <div class="headerContent"> <div class="search"> <span>鏉ユ簮鏌ヨ:</span> - <el-input placeholder="璇疯緭鍏ラ棶棰樻潵婧�" v-model="context"></el-input> + <div class="option"> + <el-select v-model="mystatus" placeholder="杩濊" @change="setMystatus" > + <el-option v-for="item in typeList" :key="item.label" :label="item.name" + :value="item.value"> + </el-option> + </el-select> + </div> <div class="findBtn"> <el-button type="primary" @click="getUserList">鏌ヨ</el-button> </div> </div> <div class="addUser"> <el-button class="addBtn" type="primary" @click="dialogCreate = true">娣诲姞</el-button> - <el-dialog :before-close="handleClose" :visible.sync="dialogCreate" title="璇烽�夋嫨涓婃姤浜嬩欢绫诲瀷" width="45%" v-if="dialogCreate"> + <el-dialog :before-close="handleClose" :visible.sync="dialogCreate" title="璇烽�夋嫨涓婃姤浜嬩欢绫诲瀷" width="45%" + v-if="dialogCreate"> <createUser @getPageProp=setDialog /> </el-dialog> - <el-dialog :before-close="handleClose" :visible.sync="dialogNewAdd" :title="newAddType === 0 ? '杩濊浜嬩欢鐧昏' : '杩濆缓浜嬩欢鐧昏' " width="45%" v-if="dialogNewAdd"> + <el-dialog :before-close="handleClose" :visible.sync="dialogNewAdd" + :title="newAddType === 0 ? '杩濊浜嬩欢鐧昏' : '杩濆缓浜嬩欢鐧昏' " width="60%" v-if="dialogNewAdd"> <MyIll v-if="newAddType === 1" :mytype=newAddType @changeDialog=changeDialog /> - <myVio v-else :mytype=newAddType @changeDialog=changeDialog /> + <myVio v-else :mytype=newAddType @changeDialog=changeDialog /> </el-dialog> </div> </div> @@ -75,11 +83,11 @@ </el-table-column> </el-table> <!-- 璇︽儏椤靛睍绀� --> - <el-dialog :visible.sync="dialogView" width="80%" title="鍩虹淇℃伅(浜哄伐)" - v-if="dialogView" :before-close="handleClose"> + <el-dialog :visible.sync="dialogView" width="80%" title="鍩虹淇℃伅(浜哄伐)" v-if="dialogView" + :before-close="handleClose"> <!-- <updateUser :updateFlag="updateFlag" :userInfo=userInfo :getUserList=" context ? getUserList : getUserList" @changeDialog="changeDialog" /> --> - <MyDetail :info=info ></MyDetail> + <MyDetail :info=info></MyDetail> </el-dialog> <!-- tools --> <div class="tools"> @@ -118,7 +126,7 @@ export default { components: { // updateUser - createUser,MyIll,MyVio,MyDetail + createUser, MyIll, MyVio, MyDetail }, data() { return { @@ -138,15 +146,16 @@ context: "", dialogCreate: false, dialogView: false, - dialogNewAdd:false, - newAddType:0, + dialogNewAdd: false, + newAddType: 0, totalNum: null, pageSize: 10, currentPage: 1, all: false, unsame: false, myIdx: 0, - info:{}, + preMyIdx: 0, + info: {}, options: [ { value: 0, @@ -206,8 +215,8 @@ checked: false, }, ], - mystatus:0, - statusArr:[], + mystatus: '', + statusArr: [], } }, @@ -225,7 +234,13 @@ this.getUserList(); }, methods: { - setDialog({flag,type}){ + setMystatus(value){ + console.log(value); + this.statusArr[1] = value; + this.changeTypeChecked(value-1); + this.getUserList(); + }, + setDialog({ flag, type }) { this.dialogCreate = flag; this.dialogNewAdd = true; this.newAddType = type; @@ -245,25 +260,27 @@ // }) }, // 鎵ц涓嬫媺妗嗘搷浣� - selectChange(val) { - let ids = []; - this.tempList.forEach(item => { - ids.push(item.number); - }) - if (ids.length !== 0) { - if (val === 3) { - this.mulDelete(ids); + selectChange(list) { + console.log(this.tempList); + if (this.tempList.length !== 0) { + if (list === 3) { + this.preMyIdx = list; + this.mulDelete(this.tempList); } } else { + this.myIdx = this.preMyIdx; this.$message({ type: 'warning', message: '鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁', }) } }, - // 鐩戝惉琛ㄦ牸閫変腑鐘舵�� + // 鐩戝惉琛ㄦ牸 tableChange(list) { - this.tempList = list; + this.tempList = []; + list.forEach(item => { + this.tempList.push(item.id); + }) if (list.length === this.tableData.length) { this.all = true; } else { @@ -308,7 +325,7 @@ console.log(statusArr); this.$axios({ method: 'get', - url: `sccg/base-case/query/${statusArr[1]}?state=${statusArr[0]}¤t=${currentPage}&size=${pageSize}&resource=2` + url: `sccg/base-case/query?state=${statusArr[0]}¤t=${currentPage}&size=${pageSize}&resource=2&type=${statusArr[1]}` }).then(res => { this.totalNum = res.data.total; this.tableData = res.data.records; @@ -371,6 +388,9 @@ }) this.typeList[0].checked = true; this.typeList[1].checked = false; + this.statusArr[0] = this.tagList[idx].value; + this.statusArr[1] = 1; + this.getUserList(); }, // 鏇存敼杩濊/杩濆缓 changeTypeChecked(idx) { @@ -381,20 +401,23 @@ item.checked = false; } }) + this.mystatus = idx+1; + this.statusArr[1] = this.typeList[idx].value; + this.getUserList(); }, - async JumpView(data){ + async JumpView(data) { await this.getEventInfo(data.code); - this.dialogView = true; }, // 鑾峰彇妗堜欢淇℃伅 - getEventInfo(code){ + getEventInfo(code) { this.$axios({ - method:'get', - url:`sccg/base-case/baseCaseDetail/${code}` + method: 'get', + url: `sccg/base-case/baseCaseDetail/${code}` }) - .then(res=>{ - this.info = res.data; - }) + .then(res => { + this.info = res.data; + this.dialogView = true; + }) } } } @@ -424,13 +447,23 @@ flex: 1; } - .el-input { - flex: 2; - color: #1d3f57; + .option { + line-height: 100px; + display: flex; + align-items: center; - &::v-deep .el-input__inner { - background-color: #09152f; - border: 1px solid #17324c; + // ::v-deep .el-select { + // background-color: #09152f; + // border: 1px solid #17324c; + // } + + .el-select { + line-height: 40px; + + .el-input { + flex: 2; + color: #1d3f57; + } } } @@ -458,6 +491,11 @@ } } + &::v-deep .el-input__inner { + background-color: #09152f; + border: 1px solid #17324c; + } + main { background-color: #09152f; margin-top: 20px; diff --git a/src/views/operate/management/myIndex/index.vue b/src/views/operate/management/myIndex/index.vue index 15dc7d5..ff2f68a 100644 --- a/src/views/operate/management/myIndex/index.vue +++ b/src/views/operate/management/myIndex/index.vue @@ -2,12 +2,27 @@ <div class="userList"> <header> <div class="problem"> - <el-radio-group v-model="radio"> + <div class="problem-title">闂绫诲瀷</div> + <el-radio-group v-model="myproblem"> <el-radio :label="1">杩濊</el-radio> <el-radio :label="2">杩濆缓</el-radio> </el-radio-group> </div> + <div class="status"> + <div class="status-title">瀹℃牳鐘舵��</div> + <el-radio-group v-model="mystatus"> + <el-radio :label="1">寰呭鏍�</el-radio> + <el-radio :label="2">宸插鏍�</el-radio> + <el-radio :label="3">宸茬粨妗�</el-radio> + </el-radio-group> + </div> </header> + <!-- <el-button @click="dialogCreate = true">鎵撳紑</el-button> + <div class="dialog"> + <el-dialog title="瀹℃牳璇︽儏椤甸潰" v-if="dialogCreate" :visible.sync="dialogCreate" width="80%" :before-close="handleClose"> + <MyDetail /> + </el-dialog> + </div> --> <main> <div class="mainContent"> <!-- 鏁版嵁灞曠ず --> @@ -72,7 +87,11 @@ </template> <script> import helper from "@/utils/mydate.js" +import MyDetail from "@/components/detail" export default { + components:{ + MyDetail, + }, data() { return { tableData: [], @@ -104,7 +123,8 @@ } ], tempList: [], - radio:1, + myproblem: 0, + mystatus: 0, } }, created() { @@ -275,7 +295,6 @@ handleClose(done) { this.$confirm('纭鍏抽棴锛�') .then(_ => { - this.dialogUpdate = false; this.dialogCreate = false; done(); }) @@ -292,7 +311,19 @@ header { background-color: #09152f; - border: 1pox solid #fff; + padding: 10px 20px; + + .problem, + .status { + display: flex; + align-items: center; + line-height: 40px; + } + + .problem-title, + .status-title { + margin-right: 20px; + } } main { diff --git a/src/views/systemSetting/baseSetting/user/components/main/index.vue b/src/views/systemSetting/baseSetting/user/components/main/index.vue index 3fd30ce..cfc5c00 100644 --- a/src/views/systemSetting/baseSetting/user/components/main/index.vue +++ b/src/views/systemSetting/baseSetting/user/components/main/index.vue @@ -233,7 +233,7 @@ const that = this; const { currentPage, pageSize, search } = this; // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�佺敤鎴锋煡璇�(鏆傛椂鏀寔鐢佃瘽鍙风爜) - this.$axios.get(`sccg/admin/list?mobile=${search}¤t=${currentPage}&pageSize=${pageSize}`).then(res => { + this.$axios.get(`sccg/admin/list?keyword=${search}¤t=${currentPage}&pageSize=${pageSize}`).then(res => { if (res.code === 200) { res.data.records.forEach(item => { // item.createTime = helper(item.createTime); -- Gitblit v1.8.0