Browse Source

1. fix 修复修改文件夹名称时,输入字符超出10个字符的问题
2. fix 用户页面,下拉选择广场 功能修复:暂时使用固定的几个广场

yunxing 4 years ago
parent
commit
af60b3582e
4 changed files with 91 additions and 79 deletions
  1. 65 65
      src/api/httputils.ts
  2. 1 0
      src/components/homeView/leftFolder.vue
  3. 5 1
      src/store/index.ts
  4. 20 13
      src/views/home.vue

+ 65 - 65
src/api/httputils.ts

@@ -1,9 +1,9 @@
-import axios from "axios"
-import store from "@/store"
-import { MessageBox } from "element-ui"
+import axios from "axios";
+import store from "@/store";
+import { MessageBox } from "element-ui";
 
-const CancelToken = axios.CancelToken
-let cancel
+const CancelToken = axios.CancelToken;
+let cancel;
 
 // 创建axios实例
 const axiosservice = axios.create({
@@ -13,31 +13,31 @@ const axiosservice = axios.create({
     credentials: true, // 接口每次请求会跨域携带cookie
     cancelToken: new CancelToken(function executor(c) {
         // executor 函数接收一个 cancel 函数作为参数
-        cancel = c
+        cancel = c;
     }),
-})
+});
 
 axiosservice.interceptors.request.use(
     (config) => {
-        config.withCredentials = true // 允许携带token ,这个是解决跨域产生的相关问题
+        config.withCredentials = true; // 允许携带token ,这个是解决跨域产生的相关问题
         config.headers = {
-            projectId: 'Pj1101050029',//项目id
+            projectId: store.state.projectId, // 'Pj1101050029',//项目id
             // projectId: 'Pj4403070003',// 深圳龙岗万达广场
-        }
-        return config
+        };
+        return config;
     },
     (error) => {
-        return Promise.reject(error)
+        return Promise.reject(error);
     }
-)
+);
 
 axiosservice.interceptors.response.use(
-    function (res) {
+    function(res) {
         //在这里对返回的数据进行处理
         //console.log('axios interceptors res = ', res.status, res)
-        const resp = res.data
+        const resp = res.data;
         if (resp.result === "unauthc") {
-            store.commit("logined", false)
+            store.commit("logined", false);
             MessageBox.confirm("未登陆或登陆信息已失效, 是否重新登陆?", "提示", {
                 confirmButtonText: "确定",
                 cancelButtonText: "取消",
@@ -46,40 +46,40 @@ axiosservice.interceptors.response.use(
                 .then((resp) => {
                     //console.log('--------------------------- confirm', resp)
                     //router.push('/login')
-                    window.location.reload()
+                    window.location.reload();
                 })
                 .catch((error) => {
                     //console.log('--------------------------- cancel', error)
-                    console.log("")
-                })
+                    console.log("");
+                });
         } else if (resp.result == "unauthorization") {
-            MessageBox.alert("无权操作", { title: "警告", type: "error" })
+            MessageBox.alert("无权操作", { title: "警告", type: "error" });
         }
         //console.log('axios interceptors resp2 = ', resp.success, resp.errorCode, resp.errorMessage, res)
-        return res
+        return res;
     },
-    function (err) {
+    function(err) {
         //Do something with response error
-        console.log("axios interceptors err = ", err)
-        return Promise.reject(err)
+        console.log("axios interceptors err = ", err);
+        return Promise.reject(err);
     }
-)
+);
 
 /* 下载方法 */
 function downFile(blob, fileName) {
     // 非IE下载
     if ("download" in document.createElement("a")) {
-        const link = document.createElement("a")
-        link.href = window.URL.createObjectURL(blob) // 创建下载的链接
-        link.download = fileName // 下载后文件名
-        link.style.display = "none"
-        document.body.appendChild(link)
-        link.click() // 点击下载
-        window.URL.revokeObjectURL(link.href) // 释放掉blob对象
-        document.body.removeChild(link) // 下载完成移除元素
+        const link = document.createElement("a");
+        link.href = window.URL.createObjectURL(blob); // 创建下载的链接
+        link.download = fileName; // 下载后文件名
+        link.style.display = "none";
+        document.body.appendChild(link);
+        link.click(); // 点击下载
+        window.URL.revokeObjectURL(link.href); // 释放掉blob对象
+        document.body.removeChild(link); // 下载完成移除元素
     } else {
         // IE10+下载
-        window.navigator.msSaveBlob(blob, fileName)
+        window.navigator.msSaveBlob(blob, fileName);
     }
 }
 
@@ -87,12 +87,12 @@ export default {
     //获取cookie
     getCookie(name) {
         let arr,
-            reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)")
+            reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
         if ((arr = document.cookie.match(reg))) {
-            return unescape(arr[2])
+            return unescape(arr[2]);
         } else {
             /* 如果没有参数,那么就获取本域下的所有cookie */
-            return document.cookie
+            return document.cookie;
         }
     },
 
@@ -102,10 +102,10 @@ export default {
                 url,
                 params,
                 method: "get",
-            })
-            return response.data
+            });
+            return response.data;
         } catch (err) {
-            throw err
+            throw err;
         }
     },
     async postJson(url, data) {
@@ -114,10 +114,10 @@ export default {
                 url,
                 data,
                 method: "post",
-            })
-            return response.data
+            });
+            return response.data;
         } catch (err) {
-            throw err
+            throw err;
         }
     },
     async fetchJson(url, params, data) {
@@ -127,10 +127,10 @@ export default {
                 params,
                 data,
                 method: "post",
-            })
-            return response
+            });
+            return response;
         } catch (err) {
-            throw err
+            throw err;
         }
     },
     async postupload(url, data) {
@@ -142,10 +142,10 @@ export default {
                 headers: {
                     "Content-Type": "multipart/form-data",
                 },
-            })
-            return response.data
+            });
+            return response.data;
         } catch (err) {
-            throw err
+            throw err;
         }
     },
     download(url, requestData) {
@@ -153,29 +153,29 @@ export default {
         axiosservice
             .post(url, requestData, { responseType: "blob" })
             .then((resp) => {
-                const headers = resp.headers
-                const contentType = headers["content-type"]
+                const headers = resp.headers;
+                const contentType = headers["content-type"];
 
-                console.log("响应头信息", headers)
+                console.log("响应头信息", headers);
                 if (!resp.data) {
-                    console.error("响应异常:", resp)
-                    return false
+                    console.error("响应异常:", resp);
+                    return false;
                 } else {
-                    console.log("下载文件:", resp)
-                    const blob = new Blob([resp.data], { type: contentType })
+                    console.log("下载文件:", resp);
+                    const blob = new Blob([resp.data], { type: contentType });
 
-                    const contentDisposition = resp.headers["content-disposition"]
-                    let fileName = "unknown"
+                    const contentDisposition = resp.headers["content-disposition"];
+                    let fileName = "unknown";
                     if (contentDisposition) {
-                        fileName = window.decodeURI(resp.headers["content-disposition"].split("=")[1])
+                        fileName = window.decodeURI(resp.headers["content-disposition"].split("=")[1]);
                     }
-                    console.log("文件名称:", fileName)
-                    downFile(blob, fileName)
+                    console.log("文件名称:", fileName);
+                    downFile(blob, fileName);
                 }
             })
-            .catch(function (error) {
-                console.log(error)
-            })
+            .catch(function(error) {
+                console.log(error);
+            });
     },
     axios: axiosservice,
-}
+};

+ 1 - 0
src/components/homeView/leftFolder.vue

@@ -39,6 +39,7 @@
                         size="small"
                         clearable
                         v-model="folder.updateName"
+                        maxlength="10"
                         @keyup.native.enter="handleUpdateFolderName(folder)"
                         placeholder="请输入文件夹名称"
                     ></el-input>

+ 5 - 1
src/store/index.ts

@@ -29,6 +29,10 @@ export default new Vuex.Store({
         showCheckbox: false, // 卡片复选框是否显示
     },
     mutations: {
+        // 修改projectId
+        SETPROJECTID(state, data) {
+            state.projectId = data;
+        },
         // 修改卡片复选框是否显示
         SETCARDSHOWCHECKBOX(state, data) {
             state.showCheckbox = data;
@@ -99,7 +103,7 @@ export default new Vuex.Store({
                 fillColor: "#007cc880",
                 strokeColor: "#007CC8ff",
                 formula: [],
-            }
+            };
             state.styleMap = data;
         },
         // 初始化 equipItemMap, equipItemNum

+ 20 - 13
src/views/home.vue

@@ -2,7 +2,7 @@
     <el-container class="home">
         <!-- 顶部导航栏 -->
         <el-header class="header">
-            <Select width="200" radius @change="testClick" :selectdata="dataSelect3" :placeholder="'请选择'" :hideClear="true" />
+            <Select width="200" radius v-model="projectId" @change="testClick" :selectdata="dataSelect3" :placeholder="'请选择'" :hideClear="true" />
             <DropDownButton
                 @click="createCanvas"
                 type="primary"
@@ -149,16 +149,12 @@ export default {
     },
     data() {
         return {
+            chooseProjectId: this.projectId,
             dataSelect3: [
-                { id: "test1", name: "选择项", sub: "hello111" },
-                { id: "test2", name: "单平米", sub: "hola111" },
-                {
-                    id: "test3",
-                    name: "下级分项",
-                    sub: "bonjour",
-                    divider: true,
-                },
-                { id: "test4", name: "滑动平均滑动平均", sub: "hi" },
+                { id: "Pj1101050029", name: "东坝万达" },
+                { id: "Pj4403070003", name: "龙岗万达" },
+                { id: "Pj5001120003", name: "香港置地" },
+                { id: "Pj4403050019", name: "招商IOC" },
             ], // 项目列表
             dropDownList: [
                 {
@@ -192,12 +188,23 @@ export default {
         };
     },
     computed: {
-        ...mapState(["showCheckbox"]),
+        ...mapState(["showCheckbox",]),
+        projectId: {
+            get() {
+                return this.$store.state.projectId
+            },
+            set(newV, oldV) {
+                console.log(newV)
+                this.SETPROJECTID(newV)
+                this.$refs.leftFolder.getFolderData();
+            }
+        }
     },
     methods: {
-        ...mapMutations(["SETCARDSHOWCHECKBOX"]),
+        ...mapMutations(["SETCARDSHOWCHECKBOX", 'SETPROJECTID']),
         testClick(data) {
-            console.log(data);
+            // console.log(data);
+            // this.SETPROJECTID(data.id)
         },
         // 创建画布
         createCanvas() {