فهرست منبع

存取数据用 android 存取数据

gongyan 4 سال پیش
والد
کامیت
cb5644c8fb

+ 14 - 1
README.md

@@ -108,6 +108,19 @@ appid
 
 ## 2021.7.14
 
+-   [ ] 支付回调地址有 bug, 现在指定了支付需要的参数, 但是其他参数没有指定
 -   [x] x-token 不存在的时候, 传空或者不传, 不要传 null
--   [ ] 登录页面, android存取数据
 -   [x] 激活码 跟公众号一样
+-   [x] http.js x-token 存取数据
+-   [x] App.vue, android 存取数据
+-   [x] Login 页面, android 存取数据
+-   [x] visitor 页面, android 存取数据
+-   [x] utils.js android 存取数据
+-   [x] Reg 页面, android 存取数据
+-   [x] Home 页, android 存取数据
+-   [x] GamePay 页, android 存取数据
+-   [x] Forget 页, android 存取数据
+-   [x] Counter 页, android 存取数据
+-   [x] compontent, android 存取数据
+-   [ ] router.js 路由守卫, android 存取数据
+-   [ ] 收银台页面, 进入收银台 调 queryOrder 接口, 如果用户点了关闭, queryOrder 没有返回值, 最多等两秒关闭, 如果有返回值, 即时关闭, (如果有多个订单查询, 也是这样, 最多等两秒, 只要有一个没有返回, 就最多等两秒)

+ 24 - 6
src/App.vue

@@ -86,7 +86,8 @@ export default {
           return;
         }
         // 成功
-        localStorage.setItem("userInfo", JSON.stringify(data));
+        // localStorage.setItem("userInfo", JSON.stringify(data));
+        this.$utils.writeStorage("", "userInfo", JSON.stringify(data));
         this.userInfoAction(data);
       });
     },
@@ -191,10 +192,24 @@ export default {
           const orderItem = {
             order_id: data.order_id,
             time,
+            server_id: "",
+            server_name: "",
+            cp_order_id: "",
+            app_id: appid,
+            role_name: "",
+            role_id: "",
+            goods_id: "",
+            goods_name,
+            amount,
+            pay_type,
           };
-          let orderList = JSON.parse(localStorage.getItem("orderList")) || [];
+          //   let orderList = JSON.parse(localStorage.getItem("orderList")) || [];
+          let orderList = this.$utils.readStorage("", "orderList");
+          orderList = JSON.parse(orderList) || [];
           orderList.push(orderItem);
-          localStorage.setItem("orderList", JSON.stringify(orderList));
+
+          //   localStorage.setItem("orderList", JSON.stringify(orderList));
+          this.$utils.writeStorage("", "orderList", JSON.stringify(orderList));
 
           window.location.href = data.url;
           return res;
@@ -225,11 +240,13 @@ export default {
         const { code } = res.data;
         // 错误
         if (code) {
-          localStorage.removeItem("userInfo");
+          // localStorage.removeItem("userInfo");
+          this.$utils.deleteStorage("", "userInfo");
           return;
         }
 
-        const userInfo = localStorage.getItem("userInfo");
+        // const userInfo = localStorage.getItem("userInfo");
+        const userInfo = this.$utils.readStorage("", "userInfo");
         this.userInfoAction(JSON.parse(userInfo));
       });
     },
@@ -243,7 +260,8 @@ export default {
       switch (code) {
         // 2 未登录
         case 2:
-          localStorage.removeItem("userInfo");
+          //   localStorage.removeItem("userInfo");
+          this.$utils.deleteStorage("", "userInfo");
           this.userInfoAction({});
           // 跳转登录
           this.routeLink("Login");

+ 2 - 1
src/components/Menu/MenuLoginOut.vue

@@ -46,7 +46,8 @@ export default {
         }
         // 成功
         this.showInnerControl("");
-        localStorage.removeItem("userInfo");
+        // localStorage.removeItem("userInfo");
+        this.$utils.deleteStorage("", "userInfo");
         this.userInfoAction({});
         this.routeLink("Login");
       });

+ 0 - 34
src/components/Menu/MenuPay/MenuPayH5.vue

@@ -352,7 +352,6 @@ export default {
     // 支付接口
     payFun(extra) {
       const { payPlatform, payCount } = this;
-      const { appid } = this;
       const payType = this.$utils.payType(payPlatform).h5;
 
       this.onRecharge({
@@ -367,39 +366,6 @@ export default {
       });
 
       return;
-      this.$api
-        .recharge({
-          amount: payCount * 100,
-          goods_name: `${payCount}元`,
-          app_id: appid,
-          pay_type: payType,
-          pay_platform: payPlatform,
-          return_url: window.location.href,
-          extra,
-        })
-        .then((res) => {
-          this.canPay = true;
-          this.checkCodeHandler(res);
-          const { data, code } = res.data;
-          // 错误
-          if (code) {
-            return;
-          }
-
-          // 成功
-          // 刷新鸿币
-          const time = new Date().getTime();
-          const orderItem = {
-            order_id: data.order_id,
-            time,
-          };
-          let orderList = JSON.parse(localStorage.getItem("orderList")) || [];
-          orderList.push(orderItem);
-          localStorage.setItem("orderList", JSON.stringify(orderList));
-
-          window.location.href = data.url;
-          this.back();
-        });
     },
 
     // 返回

+ 2 - 1
src/components/UDB/ChangePwd.vue

@@ -105,7 +105,8 @@ export default {
           }
           // 成功
           this.$toast.text("修改密码成功, 请重新登录");
-          localStorage.removeItem("userInfo");
+          //   localStorage.removeItem("userInfo");
+          this.$utils.deleteStorage("", "userInfo");
           this.showInnerControl("");
           this.routeLink("Login");
         });

+ 3 - 1
src/router/index.js

@@ -69,7 +69,9 @@ const router = new Router({
 });
 // 全局前置守卫
 router.beforeEach((to, from, next) => {
-    const isLogin = localStorage.getItem("userInfo");
+    // const isLogin = localStorage.getItem("userInfo");
+    const isLogin = this.$utils.readStorage("", "userInfo");
+
     if (to.matched.some(item => item.meta.isLogin)) {
         if (isLogin) {
             next();

+ 4 - 11
src/utils/http.js

@@ -2,6 +2,7 @@
  * 封装axios
  */
 import axios from "axios"
+import utils from "./utils";
 
 const errorHandle = (status, other) => {
     switch (status) {
@@ -37,7 +38,8 @@ const instance = axios.create({
 
 instance.interceptors.request.use(
     config => {
-        const token = localStorage.getItem("x-token")
+        const token = utils.readStorage("", "x-token");
+        // const token = localStorage.getItem("x-token")
         config.data = JSON.stringify(config.data);
         config.headers = {
             'Content-Type': 'application/json',
@@ -53,16 +55,7 @@ instance.interceptors.request.use(
 instance.interceptors.response.use(
     response => {
         if (response.data.code === 0 && response.headers["x-token"]) {
-            localStorage.setItem("x-token", response.headers["x-token"])
-                // 更新游戏的token
-                // api.info().then(res => {
-                //     console.log(res, "res===================")
-                //     store.dispatch("userInfoAction", res.data.data)
-                //     localStorage.setItem("userInfo", JSON.stringify(res.data.data));
-                // })
-                // const token = jwt_decode(response.headers["x-token"])
-                // localStorage.setItem("token", token.jti);
-                // console.log(token.jti, "token.jti", store.state.token, "store", localStorage.getItem("token"), "========")
+            utils.writeStorage("", "x-token", response.headers["x-token"]);
         }
         return response.status === 200 ? Promise.resolve(response) : Promise.reject(response)
     },

+ 58 - 3
src/utils/utils.js

@@ -211,7 +211,10 @@ const utils = {
         const accountEnc = this.encrypt(account);
         const pwdEnc = this.encrypt(password);
         const accountPwd = `${accountEnc}&&${pwdEnc}`;
-        let accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+        // let accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+        let accountLocal = this.readStorage("", "jhremember");
+        accountLocal = JSON.parse(accountLocal);
+
         let accountList = []
 
         // 获取账号密码列表
@@ -235,7 +238,9 @@ const utils = {
                 account,
                 pwd: password,
             });
-            localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+            // localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+            this.writeStorage("", "jhremember", JSON.stringify(accountLocal));
+
             return accountList;
         }
 
@@ -258,8 +263,58 @@ const utils = {
             account,
             pwd: password,
         });
-        localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+        // localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+        this.writeStorage("", "jhremember", JSON.stringify(accountLocal));
+
         return accountList
     },
+
+    // 安卓内 读取数据
+    readStorage(bookName, keyName) {
+        // 安卓内部
+        if (window.android) {
+            window.android.readStorage(bookName, keyName)
+        }
+
+        // 仙侠特制版
+    },
+
+    // 安卓内 存数据
+    writeStorage(bookName, keyName, value) {
+        // 安卓内部
+        if (window.android) {
+            window.android.writeStorage(bookName, keyName, value)
+        }
+
+        // 仙侠特制版
+    },
+
+    // 安卓内 删除数据(keyName)
+    deleteStorage(bookName, keyName) {
+        // 安卓内部
+        if (window.android) {
+            window.android.deleteStorage(bookName, keyName)
+        }
+
+        // 仙侠特制版
+    },
+
+    // 安卓内 销毁数据(bookName)
+    destoryStorage(bookName) {
+        // 安卓内部
+        if (window.android) {
+            window.android.destoryStorage(bookName)
+        }
+        // 仙侠特制版
+    },
+
+    // 获取所有bookName里面的key列表
+    getKeysInStorage(bookName) {
+        // 安卓内部
+        if (window.android) {
+            window.android.getKeysInStorage(bookName)
+        }
+        // 仙侠特制版
+    }
 };
 export default utils;

+ 11 - 4
src/views/Login/Login.vue

@@ -123,7 +123,10 @@ export default {
 
     // 初始化账密列表
     initAccountList() {
-      const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      //   const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      let accountLocal = this.$utils.readStorage("", "jhremember");
+      accountLocal = JSON.parse(accountLocal);
+      
       accountLocal &&
         accountLocal.length &&
         accountLocal.map((ele) => {
@@ -194,7 +197,8 @@ export default {
           this.getFinance();
 
           // 存储信息
-          localStorage.setItem("userInfo", JSON.stringify(data));
+          // localStorage.setItem("userInfo", JSON.stringify(data));
+          this.$utils.writeStorage("", "userInfo", JSON.stringify(data));
           this.userInfoAction(data);
 
           // 1. 记住密码
@@ -221,9 +225,12 @@ export default {
     // 删除账号密码
     deleteAccount(accountIndex) {
       this.accountList.splice(accountIndex, 1);
-      const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      //   const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      let accountLocal = this.$utils.readStorage("", "jhremember");
+      accountLocal = JSON.parse(accountLocal);
       accountLocal.splice(accountIndex, 1);
-      localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+      //   localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+      this.$utils.writeStorage("", "jhremember", JSON.stringify(accountLocal));
     },
 
     // 快速登录

+ 7 - 2
src/views/Login/LoginBox.vue

@@ -46,7 +46,10 @@ export default {
   watch: {},
   created() {},
   mounted() {
-    const jhremember = JSON.parse(localStorage.getItem("jhremember"));
+    // const jhremember = JSON.parse(localStorage.getItem("jhremember"));
+    let jhremember = this.$utils.readStorage("", "jhremember");
+    jhremember = JSON.parse(jhremember);
+
     const isRemember = jhremember && jhremember.length > 0;
     // 没有登录, 并且记住了密码 显示账号/手机号登录页面
     this.showInner = !this.isLogin && isRemember ? "" : "selectLogin";
@@ -84,7 +87,9 @@ export default {
         this.getFinance();
 
         // 存储用户信息
-        localStorage.setItem("userInfo", JSON.stringify(data));
+        // localStorage.setItem("userInfo", JSON.stringify(data));
+        this.$utils.writeStorage("", "userInfo", JSON.stringify(data));
+
         this.userInfoAction(data);
         this.routeLink("Visitor", data);
       });

+ 4 - 41
src/views/Reg/Reg.vue

@@ -361,7 +361,9 @@ export default {
 
     // 初始化账密列表
     initAccountList() {
-      const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      //   const accountLocal = JSON.parse(localStorage.getItem("jhremember"));
+      let accountLocal = this.$utils.readStorage("", "jhremember");
+      accountLocal = JSON.parse(accountLocal);
       accountLocal &&
         accountLocal.length &&
         accountLocal.map((ele) => {
@@ -378,46 +380,7 @@ export default {
 
     // 记住密码
     rememberFun(account, password) {
-      const accountEnc = this.$utils.encrypt(account);
-      const pwdEnc = this.$utils.encrypt(password);
-      const accountPwd = `${accountEnc}&&${pwdEnc}`;
-      let accountLocal = JSON.parse(localStorage.getItem("jhremember"));
-      // 初始状态
-      if (!accountLocal) {
-        accountLocal = [accountPwd];
-        this.accountList.unshift({
-          account,
-          pwd: password,
-        });
-        localStorage.setItem("jhremember", JSON.stringify(accountLocal));
-        return;
-      }
-
-      // 已经存有账密
-      // 1.  判断账号是否存在
-      const reAccount = this.accountList.filter((ele) => {
-        return ele.account === account;
-      });
-      // 1.1 如果账号存在 判断密码是否一致
-      if (reAccount.length > 0) {
-        if (reAccount[0].pwd === password) {
-          return;
-        }
-        // 1.2 不一致  删除原来的账密 存
-        accountLocal = accountLocal.filter((ele) => {
-          const _accountEcv = ele.split("&&")[0];
-          return _accountEcv !== accountEnc;
-        });
-      }
-      // 2. 账号不存在 存
-      accountLocal = accountLocal
-        ? [accountPwd, ...accountLocal]
-        : [accountPwd];
-      this.accountList.unshift({
-        account,
-        pwd: password,
-      });
-      localStorage.setItem("jhremember", JSON.stringify(accountLocal));
+      this.$utils.rememberFun(account, password);
     },
   },
 };