Parcourir la source

提交 await改回调

liyongli il y a 2 ans
Parent
commit
db121b0843

+ 2 - 1
src/api/index.js

@@ -261,9 +261,10 @@ export function deleteAddress(data){
 }
 
 export function listOrder(data){
+    const { page, size} = data;
     return ajax({
         urlType: "coffee",
-        url: `/listOrder?page=${data.page}&size=${data.size}`,
+        url: `/listOrder?page=${page}&size=${size}`,
         method: "GET",
       });
 }

+ 5 - 5
src/main.js

@@ -6,13 +6,13 @@ import "element-ui/lib/theme-chalk/index.css";
 import { getUser } from "./utils/tool";
 
 Vue.use(ElementUI);
-(async function(){
-    const user = await getUser();
-    localStorage.setItem("user", user);
-})()
+
 router.beforeEach((to, from, next) => {
   if (to.meta.title) document.title = to.meta.title;
-  next();
+  if (!localStorage.user && to.name === "Apply") {
+    // apply 必须拿到oa用户数据
+    getUser(function () { return next()})
+  } else next();
 });
 
 new Vue({

+ 13 - 8
src/utils/tool.js

@@ -40,15 +40,20 @@ export function isIOS() {
   return /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase());
 }
 
-export async function getUser() {
+export function getUser(call) {
   let search = urlSearchData();
-  // if (!search.ticket) return;
-  const loginName = await getAPPUser({
+  if (!search.ticket) return;
+  getAPPUser({
     ticket: search.ticket || "-370678896315970136",
+  }).then(r => {
+    getAPPToken("rest/63bada00-7d01-4acc-ab2b-df8061eeeb8f").then(apptoken => {
+      let APPToken = JSON.parse(apptoken || "{}");
+      localStorage.token = APPToken.id || "";
+      getAPPUserDetail({ loginName: r }).then(detail => {
+        const D = JSON.parse(detail || "{}");
+        if (D.success != false) localStorage.setItem("user", detail);
+        call && call();
+      });
+    });
   });
-  let APPToken = await getAPPToken("rest/63bada00-7d01-4acc-ab2b-df8061eeeb8f");
-  let APPUserDetail = await getAPPUserDetail({ loginName });
-  APPToken = JSON.parse(APPToken || "{}");
-  localStorage.token = APPToken.id || "";
-  return APPUserDetail || "{}"
 }

+ 1 - 1
src/views/Apply.vue

@@ -137,7 +137,7 @@ export default {
     };
   },
   mounted() {
-    const userDate = JSON.parse(localStorage.getItem("user"));
+    const userDate = JSON.parse(localStorage.getItem("user") || '{}');
     this.userphone = userDate.telNumber;
     this.username = userDate.name;
     goodsList({

+ 27 - 32
src/views/coffee/contacts/edit_add.vue

@@ -4,7 +4,7 @@
       :show-area="false"
       :show-delete="!!item.id"
       :address-info="item"
-      @save="onSave"
+      @save="e => (item.id ? editAdderss(e) : addAddress(e))"
       @delete="onDelete"
     />
   </div>
@@ -23,52 +23,47 @@ export default {
     };
   },
   mounted() {
-    let p = JSON.parse(this.$route.query.add);
-    p = {
-      ...p,
-      addressDetail: p.address,
+    let u = JSON.parse(localStorage.getItem("user") || "{}");
+    this.item = {
+      tel: u.loginName || "",
     };
-    delete p.address;
+    if (!this.$route.query.add) return;
+    let p = JSON.parse(this.$route.query.add);
+    p.address && (p.addressDetail = p.address);
+    p.address && delete p.address;
     this.item = p;
   },
   computed: {},
   methods: {
-    onSave(e) {
-      // 保存/新增地址
-      !this.item.id &&
-        pushAddress({
-          address_phone: e.tel || "",
-          address_name: e.name || "",
-          address_detail: e.addressDetail || "",
-        }).then(r => {
-          console.log(r);
-          localStorage.setItem("addr", JSON.stringify(r || "{}"));
-          this.$router.go(-2);
-        });
-      this.item.id &&
-        editAddress({
-          address_phone: e.tel || "",
-          address_name: e.name || "",
-          address_detail: e.addressDetail || "",
-          address_id: this.item.id,
-        }).then(r => {
-          console.log(r);
-          this.$router.go(-1);
-        });
-    },
     onDelete() {
       // 删除地址
       let t = JSON.parse(localStorage.getItem("addr") || "{}");
-
       if (!this.item.id) return;
       deleteAddress({
         address_id: this.item.id,
-      }).then(r => {
-        console.log(r);
+      }).then(() => {
         this.item.id == t.id && localStorage.setItem("addr", "{}");
         this.$router.go(-1);
       });
     },
+    addAddress(e) {
+      pushAddress({
+        address_phone: e.tel || "",
+        address_name: e.name || "",
+        address_detail: e.addressDetail || "",
+      }).then(r => {
+        localStorage.setItem("addr", JSON.stringify(r || "{}"));
+        this.$router.go(-2);
+      });
+    },
+    editAdderss(e) {
+      editAddress({
+        address_phone: e.tel || "",
+        address_name: e.name || "",
+        address_detail: e.addressDetail || "",
+        address_id: this.item.id,
+      }).then(() => this.$router.go(-1));
+    },
   },
   beforeUnmount: function () {},
   components: {

+ 8 - 4
src/views/coffee/contacts/list.vue

@@ -40,7 +40,11 @@ export default {
         if (v.address_isDefault == 1) p.idDefault = v.address_isDefault == 1;
         return p;
       });
-      this.chosenAddressId = (addr.address_id || this.list[0].id || "1").toString();
+      this.chosenAddressId = (
+        addr.address_id ||
+        this.list[0].id ||
+        "1"
+      ).toString();
     });
   },
   computed: {},
@@ -59,11 +63,11 @@ export default {
       this.toEdit(e);
     },
     toEdit(item) {
+      let q = undefined;
+      item && (q = { add: JSON.stringify(item) });
       this.$router.push({
         name: "CoffeeEdit",
-        query: {
-          add: JSON.stringify(item || "{}"),
-        },
+        query: q,
       });
     },
   },

+ 1 - 0
src/views/coffee/order/index.vue

@@ -51,6 +51,7 @@ export default {
     !this.list.length &&
       (this.list = JSON.parse(this.$route.query.aselectItem || "[]"));
     this.addr = JSON.parse(localStorage.getItem("addr") || "{}");
+    console.log(this.addr)
   },
   computed: {
     priceTotal() {