From 2cc2f4f83a90aac000792a3b65aac9c1aeedbdf1 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 13 十一月 2023 17:33:24 +0800 Subject: [PATCH] +1 --- src/views/operate/disposal/casepool/pool/createUser/ill/index.vue | 358 +++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 247 insertions(+), 111 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 786db34..24fbbdc 100644 --- a/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue +++ b/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue @@ -8,64 +8,91 @@ <div class="input-form"> <el-form ref="user" label-width="160px" autoComplete="on" :model="ill" :rules="createillRules" label-position="right"> - <!-- 闂绫诲瀷 - <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 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 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="partyName"> <el-input placeholder="璇峰~鍐欏綋浜嬩汉濮撳悕" v-model="ill.partyName"></el-input> </el-form-item> <!-- 褰撲簨浜鸿韩浠借瘉鍙� --> <el-form-item class="optionItems" label="褰撲簨浜鸿韩浠借瘉鍙�:" prop="partyIdCard"> - <el-input placeholder="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿" v-model="ill.partyIdCard"></el-input> + <el-input placeholder="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿" maxlength="18" v-model="ill.partyIdCard"></el-input> </el-form-item> <!-- 褰撲簨浜鸿仈绯荤數璇� --> <el-form-item class="optionItem" label="褰撲簨浜鸿仈绯荤數璇�:" prop="partyPhone"> - <el-input v-model="ill.partyPhone" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input> + <el-input v-model="ill.partyPhone" maxlength="11" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input> </el-form-item> - <!-- 杩濆缓鍦扮偣 --> - <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="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> + <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="positive"> + <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 +<!-- <el-upload--> +<!-- action="/sccg/file/medias"--> +<!-- list-type="picture-card"--> +<!-- :show-file-list="false"--> +<!-- :headers="getToken()" multiple--> +<!-- :limit="50" :on-success="handleSuccess">--> +<!-- <i class="el-icon-plus"></i>--> +<!-- <span class="text" v-if="ill.positive === ''">韬唤璇佹闈�</span>--> +<!-- <img :src="ill.positive" alt="" class="img" v-else>--> +<!-- </el-upload>--> + <el-upload list-type="picture-card" 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=""> +<!-- <img v-if="ill.positive === ''"--> +<!-- src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg"--> +<!-- alt="">--> + <i v-if="ill.positive === ''" class="el-icon-plus"></i> <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 + <el-upload list-type="picture-card" 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=""> +<!-- <img v-if="ill.negative === '' "--> +<!-- src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg"--> +<!-- alt="">--> + <i v-if="ill.negative === ''" class="el-icon-plus"></i> <span class="text" v-if="ill.negative === ''">韬唤璇佸弽闈�</span> <img :src="ill.negative" alt="" class="img" v-else /> </el-upload> @@ -88,13 +115,17 @@ <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"> + <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> - </div> - </el-form-item> + </el-form-item> + </div> <el-form-item class="optionItems" label="杩濇硶寤鸿闈㈢Н:" prop="buildingArea"> <el-input placeholder="璇峰~鍐欒繚娉曞缓璁鹃潰绉�" v-model="ill.buildingArea"></el-input> </el-form-item> @@ -105,7 +136,7 @@ </div> <div class="input-footer"> <el-button type="primary" class="confirm" @click="handleUser">纭畾</el-button> - <el-button class="back">杩斿洖</el-button> + <el-button class="back" @click="handleBack">杩斿洖</el-button> </div> </div> <div class="map-area"> @@ -114,7 +145,10 @@ </div> </template> <script> -import MyMap from '@/components/map' +// import MyMap from "@/components/map"; +import MyMap from "@/components/map/leafletMap.vue"; +import {parseTime} from '@/utils/index' +import { validateName, validatePhone, validateCardId, validateNum } from '@/utils/validate' export default { components: { MyMap @@ -122,14 +156,14 @@ data() { const checkArea = (rule, value, callback) => { if (value) { - callback(); + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿闈㈢Н')) } else { callback(new Error('杩濇硶寤鸿闈㈢Н涓嶈兘涓虹┖')) } } const checkHigh = (rule, value, callback) => { if (value) { - callback(); + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿楂樺害')) } else { callback(new Error('杩濇硶寤鸿楂樺害涓嶈兘涓虹┖')); @@ -137,7 +171,7 @@ } const checkWidth = (rule, value, callback) => { if (value) { - callback(); + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿瀹藉害')) } else { callback(new Error('杩濇硶寤鸿瀹藉害涓嶈兘涓虹┖')); @@ -145,7 +179,7 @@ } const checkLength = (rule, value, callback) => { if (value) { - callback(); + validateNum(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑杩濇硶寤鸿闀垮害')) } else { callback(new Error('杩濇硶寤鸿闀垮害涓嶈兘涓虹┖')); @@ -174,21 +208,21 @@ } const checkIdCard = (rule, value, callback) => { if (value) { - callback(); + validateCardId(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�')) } else { callback(new Error('褰撲簨浜鸿韩浠借瘉鍙风爜涓嶈兘涓虹┖')); } } const checkName = (rule, value, callback) => { if (value) { - callback(); + validateName(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑褰撲簨浜轰俊鎭�')) } else { callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�')); } } const checkPhone = (rule, value, callback) => { if (value) { - callback(); + validatePhone(value) ? callback() : callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙风爜')) } else { callback(new Error('褰撲簨浜鸿仈绯荤數璇濅笉鑳戒负绌�')); } @@ -226,29 +260,36 @@ callback(new Error('鎶ヨ鏃堕棿涓嶈兘涓虹┖')) } } + const checkStreet=(rule, value, callback) => { + if (value) { + callback(); + } else { + callback(new Error('鎵�灞炶閬撲笉鑳戒负绌�')) + } + } return { ill: { - buildingArea: 2.0, - buildingHigh: 2.0, - buildingLength: 2.0, - buildingWidth: 1.0, + buildingArea: '', + buildingHigh: '', + buildingLength: '', + buildingWidth: '', // category: '', categoryId: '', communityId: '', - materials: "閽㈢瓔", - partyIdCard: "511025184612310213", - partyName: "鍗曟暟澶�", - partyPhone: "17844631885", - position: "鏂板湴鏂规柊浣庣偣", + materials: "", + partyIdCard: "", + partyName: "", + partyPhone: "", + position: "", positive: "", negative: "", - site: "鏂板湴鏂�", + site: "", alarmTime: '', }, createillRules: { buildingArea: [ { - required: true, trigger: 'change', validator: checkArea + required: true, trigger: 'blur', validator: checkArea } ], buildingHigh: [ @@ -315,46 +356,46 @@ { required: true, trigger: 'change', validator: checkDate } - ] + ], + streetId: [ + { + required: true, trigger: 'change', validator: checkStreet + } + ], }, bigKindList: [], - typeList: [ - { - name: '绀惧尯1', - value: 1, - }, - { - name: '绀惧尯2', - value: 2, - } + communityList: [ ], + streetList: [], } }, created() { - const { getBigKind } = this; + const { getBigKind, getCommityList,getStreetList } = this; + getStreetList(0); + // this.ill.category = this.mytype + 1; getBigKind(); + getCommityList(); }, methods: { handleUser() { const that = this; - // console.log(this.$refs); this.$refs.user.validate((valid) => { - console.log(valid) if (valid) { 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, + url: 'sccg/base_case/addition_illegal_building', + data: { + ...ill, + alarmTime:parseTime(ill.alarmTime) + }, }) .then(res => { if (res.code === 200) { @@ -362,7 +403,8 @@ type: 'success', message: res.message }) - this.$emit('changeDialog', { dialogView: false }); + this.$emit('changeDialog', { flag: false }); + this.refresh(); } else { this.$message({ type: 'warning', @@ -379,9 +421,6 @@ } }) }, - handleStop() { - this.refresh(); - }, // 鑾峰彇澶х被鍒楄〃 getBigKind() { this.$axios({ @@ -389,10 +428,8 @@ url: 'sccg/illegal_building/query/type_second' }).then(res => { this.bigKindList = res.data; - // console.log(res); }) }, - // 鑾峰彇琛屾斂鍖哄煙 // 鑾峰彇token getToken() { const token = sessionStorage.getItem('token'); @@ -402,27 +439,121 @@ } }, handleSuccess(res, file, filelist) { - const baseUrl = 'http://140.143.152.226:8410/'; - console.log(res); - this.ill.positive = baseUrl + res.data.url1; + + // const baseUrl = 'http://140.143.152.226:8410/'; + // this.ill.positive = baseUrl + res.data.url1; + // this.ill.positive = res.data + // let oll =this.ill.positive + let that=this + this.$axios({ + url:'sccg/API/img?fileUrl='+res.data, + method:"get", + responseType: 'blob' + }).then(res=>{ + + const blob = new Blob([res]) + var reader = new window.FileReader(); + reader.readAsDataURL(blob); + reader.onloadend = function () { + + that.ill.positive= reader.result + } + + }) }, handleSuccess2(res, file, filelist) { - const baseUrl = 'http://140.143.152.226:8410/'; - console.log(res); - this.ill.negative = baseUrl + res.data.url1; + // const baseUrl = 'http://140.143.152.226:8410/'; + // this.ill.negative = baseUrl + res.data.url1; + // this.ill.negative = res.data + let that=this + this.$axios({ + url:'sccg/API/img?fileUrl='+res.data, + method:"get", + responseType: 'blob' + }).then(res=>{ + + const blob = new Blob([res]) + var reader = new window.FileReader(); + reader.readAsDataURL(blob); + reader.onloadend = function () { + console.log(reader.result) + that.ill.negative= reader.result + } + + }) + }, + + // 鏌ヨ绀惧尯 + 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) { + this.ill.communityId = ''; + this.$axios({ + method: 'get', + url: `sccg/sccg_region/getChildren/${id}` + }) + .then(res => { + this.communityList = res.data; + }) + }, + handleBack(){ + this.$emit('changeDialog', { flag: false }); } }, - props: ['mytype', 'changeDialog'] + 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 50px; + padding: 20px 10px 50px; + + .user-item { + display: flex; + } .input-area { - flex: 1; + flex: 3; padding: 10px 20px; .input-header { @@ -438,26 +569,31 @@ 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 { position: relative; - + margin-right: 20px; .text { position: absolute; top: 22%; - left: 20%; + left: 26%; } } @@ -478,8 +614,8 @@ } .img { - width: 125px; - height: 80px; + width: 100%; + height: 100%; } .area { @@ -487,7 +623,7 @@ } .map-area { - flex: 1; + flex: 2; } } -</style> \ No newline at end of file +</style> -- Gitblit v1.8.0