From e2e3881fcaa2cfacf5d3290bb0ff5969482e6c48 Mon Sep 17 00:00:00 2001 From: fangyuan <527392886@qq.com> Date: 星期二, 29 十一月 2022 16:29:48 +0800 Subject: [PATCH] 案卷查询查询框样式调整 --- src/views/operate/disposal/casepool/pool/createUser/ill/index.vue | 591 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 435 insertions(+), 156 deletions(-) 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..2dfa4c7 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,91 @@ <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-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 class="optionItems" label="杩濆缓绫诲埆:" prop="status"> - <el-select v-model="role.big" 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> + <div class="user-item"> + <!-- 闂绫诲瀷 --> + <el-form-item class="optionItem" label="闂绫诲瀷:" prop="category"> + <el-select v-model="ill.type" placeholder="杩濆缓" disabled> + <el-option v-for="item in communityList" :key="item.name" :label="item.name" + :value="item.value" :disabled="item.disabled"> + </el-option> + </el-select> + </el-form-item> + <!-- 杩濆缓绫诲埆 --> + <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> + </div> <!-- 褰撲簨浜哄鍚� --> - <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="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿" maxlength="18" 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" maxlength="11" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input> </el-form-item> - <!-- 杩濆缓鍦扮偣 --> - <el-form-item class="optionItems" label="杩濆缓鍦扮偣:" prop="status"> - <el-input placeholder="璇峰~鍐欒繚寤哄湴鐐�"></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-option> - </el-select> - </el-form-item> + <div class="user-item"> + <!-- 杩濆缓鍦扮偣 --> + <el-form-item class="optionItems" label="杩濆缓鍦扮偣:" prop="site"> + <el-input placeholder="璇峰~鍐欒繚寤哄湴鐐�" v-model="ill.site"></el-input> + </el-form-item> + </div> + <div class="user-item"> + <!-- 鎵�灞炶閬� --> + <el-form-item class="optionItems" label="鎵�灞炶閬�:" prop="streetId"> + <el-select v-model="ill.streetId" placeholder="璇烽�夋嫨鎵�灞炶閬�" @change="handleStreet"> + <el-option v-for="item in streetList" :key="item.id" :label="item.regionName" :value="item.id" + > + </el-option> + </el-select> + </el-form-item> + <!-- 鎵�灞炵ぞ鍖� --> + <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="communityId"> + <el-select v-model="ill.communityId" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�"> + <el-option v-for="item in communityList" :key="item.id" :label="item.regionName" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> + </div> <!-- 韬唤璇佹鍙嶉潰鐓х墖 --> - <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="/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="/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,26 +98,33 @@ <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> + <div class="area"> + <el-form-item class="optionItems" label="杩濇硶寤鸿闀裤�佸銆侀珮:" prop="buildingLength"> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingLength"></el-input> + </el-form-item> + <el-form-item class="optionItems" label-width='0px' prop="buildingWidth"> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingWidth"></el-input> + </el-form-item> + <el-form-item class="optionItems" label-width='0px' prop="buildingHigh"> + <el-input placeholder="鍗曚綅绫�" v-model="ill.buildingHigh"></el-input> + </el-form-item> + </div> + <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 class="back">杩斿洖</el-button> + <el-button type="primary" class="confirm" @click="handleUser">纭畾</el-button> + <el-button class="back" @click="handleBack">杩斿洖</el-button> </div> </div> <div class="map-area"> @@ -106,86 +134,279 @@ </template> <script> import MyMap from '@/components/map' +import {parseTime} from '@/utils/index' +import { validateName, validatePhone, validateCardId, validateNum } from '@/utils/validate' export default { components: { MyMap }, data() { - const validateNickname = (rule, value, callback) => { - if (!value) { - callback(new Error("璇峰~鍐欓棶棰樼被鍨�")); + const checkArea = (rule, value, callback) => { + if (value) { + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿闈㈢Н')) } else { - callback(); + callback(new Error('杩濇硶寤鸿闈㈢Н涓嶈兘涓虹┖')) } - }; - const validatePass = (rule, value, callback) => { - if (!value) { - callback(); + } + const checkHigh = (rule, value, callback) => { + if (value) { + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿楂樺害')) } else { - // const rep = /^\w+$/; - // if (!rep.test(value)) { - // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆")); - // } - callback(); + callback(new Error('杩濇硶寤鸿楂樺害涓嶈兘涓虹┖')); + } - }; - const validateTruename = (rule, value, callback) => { + } + const checkWidth = (rule, value, callback) => { + if (value) { + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿瀹藉害')) + } else { + callback(new Error('杩濇硶寤鸿瀹藉害涓嶈兘涓虹┖')); + + } + } + const checkLength = (rule, value, callback) => { + if (value) { + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿闀垮害')) + } else { + callback(new Error('杩濇硶寤鸿闀垮害涓嶈兘涓虹┖')); + + } + } + const checkCategoryId = (rule, value, callback) => { if (value) { callback(); } else { - // const rep = /^[\u4E00-\u9FA5]{2,4}$/; - // if (!rep.test(value)) { - // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕"); - // } - callback(); + 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) { + validateCardId(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�')) + } else { + callback(new Error('褰撲簨浜鸿韩浠借瘉鍙风爜涓嶈兘涓虹┖')); + } + } + const checkName = (rule, value, callback) => { + if (value) { + validateName(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑褰撲簨浜轰俊鎭�')) + } else { + callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�')); + } + } + const checkPhone = (rule, value, callback) => { + if (value) { + validatePhone(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙风爜')) + } 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('鎶ヨ鏃堕棿涓嶈兘涓虹┖')) + } + } + const checkStreet=(rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎵�灞炶閬撲笉鑳戒负绌�')) + } + } return { - role: { - name: '', - type: '', - description: '', + ill: { + buildingArea: '', + buildingHigh: '', + buildingLength: '', + buildingWidth: '', + // category: '', + categoryId: '', + communityId: '', + materials: "", + partyIdCard: "", + partyName: "", + partyPhone: "", + position: "", + positive: "", + negative: "", + site: "", + alarmTime: '', }, - createRoleRules: { - name: [ - { required: true, trigger: "blur", validator: validateNickname }, + createillRules: { + buildingArea: [ + { + required: true, trigger: 'blur', 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 + } + ], + streetId: [ + { + required: true, trigger: 'change', validator: checkStreet + } ], }, bigKindList: [], - typeList: [], + communityList: [ + ], + streetList: [], } }, created() { - const { getBigKind, getEventLevel, getSmallKind } = this; + const { getBigKind, getCommityList,getStreetList } = this; + getStreetList(0); + + // this.ill.category = this.mytype + 1; getBigKind(); + getCommityList(); }, methods: { handleUser() { - this.$refs['user'].validate((valid) => { - console.log(valid); + const that = this; + this.$refs.user.validate((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) => { + 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); + that.$axios({ + method: 'post', + url: 'sccg/base_case/addition_illegal_building', + data: { + ...ill, + alarmTime:parseTime(ill.alarmTime) + }, + }) + .then(res => { + if (res.code === 200) { + this.$message({ + type: 'success', + message: res.message + }) + this.$emit('changeDialog', { flag: false }); + this.refresh(); + } else { + this.$message({ + type: 'warning', + message: res.message, + }) + } + }) + } else { + return false; } }) } else { return false; } }) - }, - handleStop() { - this.refresh(); }, // 鑾峰彇澶х被鍒楄〃 getBigKind() { @@ -194,10 +415,8 @@ url: 'sccg/illegal_building/query/type_second' }).then(res => { this.bigKindList = res.data; - // console.log(res); }) }, - // 鑾峰彇琛屾斂鍖哄煙 // 鑾峰彇token getToken() { const token = sessionStorage.getItem('token'); @@ -205,16 +424,89 @@ if (token && tokenHead) { return { Authorization: tokenHead + token }; } + }, + handleSuccess(res, file, filelist) { + const baseUrl = 'http://140.143.152.226:8410/'; + this.ill.positive = baseUrl + res.data.url1; + + }, + handleSuccess2(res, file, filelist) { + const baseUrl = 'http://140.143.152.226:8410/'; + this.ill.negative = baseUrl + res.data.url1; + }, + // 鏌ヨ绀惧尯 + getCommityList() { + this.$axios({ + method: 'get', + url: 'sccg/dict/query_type?level=1&typeCode=' + '10' + }) + .then(res => { + }) + }, + // 鑾峰彇琛楅亾淇℃伅 + async getStreetList(id) { + let arr + await this.$axios({ + method:'get', + url:`sccg/sccg_region/getChildren/${id}`, + }) + .then(res=>{ + if(res.code === 200){ + arr = res.data; + } + }) + this.streetList = arr; + }, + // 琛楅亾鏇存敼 + handleStreet(id) { + console.log(id); + this.ill.communityId = ''; + // this.communityList = getcommunityList(1,'11') + this.$axios({ + method: 'get', + url: `sccg/sccg_region/getChildren/${id}` + }) + .then(res => { + console.log(res.data) + this.communityList = res.data; + }) + }, + handleBack(){ + this.$emit('changeDialog', { flag: false }); } - } + }, + watch: { + 'ill.buildingLength': { + handler(newVal, oldVal) { + if (newVal) { + this.ill.buildingWidth !== '' && validateNum(newVal) && validateNum(this.ill.buildingWidth) ? this.ill.buildingArea = newVal * this.ill.buildingWidth : ''; + } + }, + deep: true, + }, + 'ill.buildingWidth': { + handler(newVal, oldVal) { + if (newVal) { + this.ill.buildingLength !== '' && validateNum(newVal) && validateNum(this.ill.buildingLength) ? this.ill.buildingArea = newVal * this.ill.buildingLength : ''; + } + }, + deep: true, + } + }, + props: ['mytype', 'changeDialog', 'refresh'] } </script> <style lang="scss" scoped> .ill { display: flex; + padding: 20px 10px 50px; + + .user-item { + display: flex; + } .input-area { - flex: 1; + flex: 3; padding: 10px 20px; .input-header { @@ -230,26 +522,34 @@ line-height: 40px; } } + .el-form { + &::v-deep .el-form-item__label { + color: #4b9bb7; + } + &::v-deep .el-input__inner { + background-color: #09152f; + border: 1px solid #17324c; + } + + &::v-deep .el-textarea__inner { + background-color: #09152f; + border: 1px solid #17324c; + } + } .input-form { - &::v-deep .el-input__inner { - background-color: #09152f; - border: 1px solid #17324c; - } - - &::v-deep .el-textarea__inner { - background-color: #09152f; - border: 1px solid #17324c; - } - .upload-demo{ + + .upload-demo { position: relative; - .text{ + margin-right: 20px; + .text { position: absolute; top: 22%; left: 20%; } } + .idcard { display: flex; } @@ -266,38 +566,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: 2; } } </style> \ No newline at end of file -- Gitblit v1.8.0