From 7a0c7de021aebbef3ec137f2f94ff73ab41014d7 Mon Sep 17 00:00:00 2001 From: 王旭 <1377869194@qq.com> Date: 星期三, 10 五月 2023 14:44:47 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.20.39:8989/r/LFWEB_NEW --- src/components/mapsdk.vue | 189 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 186 insertions(+), 3 deletions(-) diff --git a/src/components/mapsdk.vue b/src/components/mapsdk.vue index 7723b34..c8a7364 100644 --- a/src/components/mapsdk.vue +++ b/src/components/mapsdk.vue @@ -1,5 +1,10 @@ <template> - <div class="mapBox"> + <div + class="mapBox" + v-loading="loading" + :element-loading-text="loadingText" + element-loading-background="rgba(0, 0, 0, 0.8)" + > <div id="mapdiv"> <div class="menu_Top box_divm" @@ -646,6 +651,72 @@ </div> </el-dialog> + <el-dialog + title="鐡︾墖涓嬭浇" + :append-to-body="false" + :visible.sync="downTitleFlag" + :close-on-click-modal="false" + :show-close="false" + width="30%" + > + <el-form + :model="ruleForm" + status-icon + :rules="rules" + ref="ruleForm" + label-width="100px" + class="demo-ruleForm" + > + <el-form-item + label="鍚嶇О" + prop="title" + > + <el-input + v-model="ruleForm.title" + size="small" + placeholder="璇疯緭鍏ユ暟鎹悕绉�..." + ></el-input> + </el-form-item> + <el-form-item + label="瀵嗙爜" + prop="pass" + > + <el-input + show-password + type="password" + v-model="ruleForm.pass" + autocomplete="off" + size="small" + placeholder="璇疯緭鍏ュ瘑鐮�..." + ></el-input> + </el-form-item> + <el-form-item + label="纭瀵嗙爜" + prop="checkPass" + > + <el-input + show-password + type="password" + v-model="ruleForm.checkPass" + autocomplete="off" + size="small" + placeholder="纭瀵嗙爜..." + ></el-input> + </el-form-item> + + <el-form-item> + <el-button + type="primary" + size="small" + @click='submitTitleDown("ruleForm")' + >鎻愪氦</el-button> + <el-button + size="small" + @click='cannelTitleDown("ruleForm")' + >鍙栨秷</el-button> + </el-form-item> + </el-form> + </el-dialog> <!-- <div--> <!-- @click="changeMenulayer"--> <!-- class="center CenDiv"--> @@ -659,6 +730,11 @@ </div> <model-property ref='modelProperty'></model-property> + <iframe + id="downFrame" + src="" + style="display: none; border: 0; padding: 0; height: 0; width: 0" + ></iframe> </div> </template> @@ -673,7 +749,8 @@ comprehensive_selectRoute, dataLib_selectFiles, dataQuery_selectFields, dataQuery_selectDomains, dataQuery_selectByPage, - comprehensive_selectPubById, comprehensive_selectModelByGuid + comprehensive_selectPubById, comprehensive_selectModelByGuid, decr, + encr, inquiry_downloadTiles, sign_getPublicKey } from '../api/api' import { getToken } from '@/utils/auth' @@ -701,6 +778,35 @@ } } } + callback(); + } + }; + var checkAge = (rule, value, callback) => { + if (!value) { + return callback(new Error('鏁版嵁鍚嶇О涓嶈兘涓虹┖')); + } + callback(); + + }; + var validatePass = (rule, value, callback) => { + if (value === '') { + callback(new Error('璇疯緭鍏ュ瘑鐮�')); + } else { + var passwordreg = + /^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![a-z0-9]+$)(?![a-z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![0-9\W!@#$%^&*`~()\\-_+=,.?;<>]+$)[a-zA-Z0-9\W!@#$%^&*`~()\\-_+=,.?;<>]{12,20}$/ + + if (!passwordreg.test(value)) { + callback(new Error("瀵嗙爜蹇呴』鐢辨暟瀛椼�佸瓧姣嶃�佺壒娈婂瓧绗︾粍鍚�,璇疯緭鍏�13-20浣�")) + } + callback(); + } + }; + var validatePass2 = (rule, value, callback) => { + if (value === '') { + callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�')); + } else if (value !== this.ruleForm.pass) { + callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!')); + } else { callback(); } }; @@ -733,6 +839,15 @@ message: "鍧愭爣鐐圭粡绾害閿欒,鍧愭爣搴斿湪[116.xxx, 39.yyy]鑼冨洿", }, ], + pass: [ + { validator: validatePass, trigger: 'blur' } + ], + checkPass: [ + { validator: validatePass2, trigger: 'blur' } + ], + title: [ + { validator: checkAge, trigger: 'blur' } + ] }, bufFrom: { val: 50, @@ -786,6 +901,15 @@ valueX: 0, valueY: 0, terrainflag: false, + downTitleFlag: false, + downTitleData: null, + ruleForm: { + pass: '', + checkPass: '', + title: '' + }, + loadingText: '', + loading: false, }; }, mounted() { @@ -812,13 +936,72 @@ }); //妯″瀷鎹曟崏 this.catchmodel() - + this.$bus.$on("titleDown", res => { + this.setDownLoadTitle(res); + }) window.localStorage.setItem('slider_x', this.valueX); window.localStorage.setItem('slider_y', this.valueY); window.localStorage.setItem('slider_z', this.valueZ); }, methods: { + setDownLoadTitle(res) { + this.signGetPublicKey() + this.downTitleFlag = true; + this.downTitleData = res; + }, + async signGetPublicKey() { + const res = await sign_getPublicKey() + if (res && res.code == 200) { + window.encrypt = new JSEncrypt() + encrypt.setPublicKey(res.result) + } + }, + submitTitleDown(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + + this.downTitleData.title = this.ruleForm.title + // this.downTitleData.pwd = encr(this.ruleForm.pass) + this.downTitleData.pwd = encrypt.encrypt(this.ruleForm.pass) + this.getDownLoadTile(this.downTitleData); + this.cannelTitleDown(); + } else { + + console.log('error submit!!'); + return false; + } + }); + }, + async getDownLoadTile(res) { + this.loading = true; + this.loadingText = "鏁版嵁涓嬭浇涓�,璇风◢绛�..." + $.ajax({ + url: BASE_URL + "/inquiry/downloadTiles?token=" + getToken(), + type: "POST", + data: JSON.stringify(res), + dataType: 'json', // html銆乯son銆乯sonp銆乻cript銆乼ext + contentType: "application/json", // "application/x-www-form-urlencoded" + success: (data) => { + var token = getToken() + var url = BASE_URL + "/dataLib/downloadFile?token=" + token + "&guid=" + data.result + "&pwd=" + res.pwd; + $("#downFrame").attr("src", url).click(); + this.loading = false; + this.loadingText = "" + }, + error: function (e) { + } + }); + }, + cannelTitleDown(formName) { + this.downTitleFlag = false; + // this.$refs[formName].resetFields(); + this.ruleForm = { + pass: '', + checkPass: '', + title: '' + } + }, catchmodel() { var that = this; window.pickedFeature; -- Gitblit v1.9.3