diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json
new file mode 100644
index 0000000..ee5be77
--- /dev/null
+++ b/.hbuilderx/launch.json
@@ -0,0 +1,20 @@
+{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
+ // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
+ "version": "0.0",
+ "configurations": [{
+ "app-plus" :
+ {
+ "launchtype" : "local"
+ },
+ "default" :
+ {
+ "launchtype" : "local"
+ },
+ "mp-weixin" :
+ {
+ "launchtype" : "local"
+ },
+ "type" : "uniCloud"
+ }
+ ]
+}
diff --git a/App.vue b/App.vue
index d56115e..5c6e1f3 100644
--- a/App.vue
+++ b/App.vue
@@ -47,9 +47,9 @@
diff --git a/common/api.js b/common/api.js
index 90af985..331b02b 100644
--- a/common/api.js
+++ b/common/api.js
@@ -4,11 +4,38 @@ import {
post
} from '@/config/api.js'
-export const aiList = () => {
- return get('/api/ai/list')
+export const code = (data) => {
+ return post('/watch/captcha/getCaptcha', data)
+}
+
+export const dologin = (data) => {
+ return post('/watch/login/dologin', data)
+}
+
+export const sendSms = (data) => {
+ return post('watch/sms/sendSms', data)
+}
+
+export const register = (data) => {
+ return post('watch/login/register', data)
+}
+
+// 获取已经绑定的设备id
+export const getBindUserDeviceId = (data) => {
+ return post('watch/device/getBindUserDeviceId', data)
+}
+
+// 获取当日最新数据
+export const getDayInfo = (data) => {
+ return post('watch/device/getDayInfo', data)
}
export default {
- aiList
+ code,
+ dologin,
+ sendSms,
+ register,
+ getBindUserDeviceId,
+ getDayInfo
}
\ No newline at end of file
diff --git a/components/watch-login/watch-input.vue b/components/watch-login/watch-input.vue
index 12a2f4e..82e513a 100644
--- a/components/watch-login/watch-input.vue
+++ b/components/watch-login/watch-input.vue
@@ -34,7 +34,6 @@
:class="['vercode',{'vercode-run': second>0}]"
@click="setCode"
>{{ getVerCodeSecond }}
-
@@ -70,6 +69,10 @@
codeText:{
type: String,
default: "获取验证码",
+ },
+ imgText: {
+ type: String,
+ default: "获取验证码",
},
setTime:{
//倒计时时间设置
@@ -147,6 +150,10 @@
_isShowCode() {
//处理值
return String(this.isShowCode) !== 'false'
+ },
+ _isImgCode() {
+ //处理值
+ return String(this.isImgCode) !== 'false'
},
_setTime() {
//处理值
diff --git a/config/api.js b/config/api.js
index 137f77a..e2e31b7 100644
--- a/config/api.js
+++ b/config/api.js
@@ -4,5 +4,4 @@ export const post = (url,params, config = {}) => uni.$u.http.post(url, params, c
// get请求,获取菜单,注意:get请求的配置等,都在第二个参数中,详见前面解释
export const get = (url,data,toast,responseType = '') => uni.$u.http.get(url, {params: data,custom:{toast:toast||false},responseType:responseType})
-// export const baseUrl = 'http://103.39.230.169:8085' // APP测试
-export const baseUrl = 'http://bmsc.baimajingxuan.com'; // APP线上
+export const baseUrl = 'http://test.sc2.agrimedia.cn'; // APP线上
diff --git a/config/request.js b/config/request.js
index ec470f6..849ebce 100644
--- a/config/request.js
+++ b/config/request.js
@@ -1,9 +1,8 @@
import store from "../store/index.js";
+import utils from "../utils/utils.js";
+
import { baseUrl } from "./api.js";
-import {
- doLogin
-} from '@/common/api/login.js'
const HOST = location && location.origin
export default () => {
@@ -13,34 +12,28 @@ export default () => {
config.baseURL = baseUrl; // 测试地址
// #endif
- // #ifdef H5
- config.baseURL = location.origin; /* 根域名 */
- // #endif
return config
});
+
// 请求拦截
uni.$u.http.interceptors.request.use((config) => { // 可使用async await 做异步操作
config.data = config.data || {};
- config.baseURL = 'http://103.39.230.169:8085'; // 不使用请求代理 上线记得注释掉 ***********************************************************
+ // config.baseURL = 'http://test.sc2.agrimedia.cn'; // 不使用请求代理 上线记得注释掉 ***********************************************************
let apiToken = store.getters['api/getApiToken']
-
let serverTime = (parseInt(Date.now() /1000) - store.getters['api/getServerTime'])
+ config.header.systemType = 0;
config.header.ApiToken = apiToken
config.header.timestamp = serverTime
- config.header.validate = store.getters['api/getValidate'] || ''
- config.header.safeverify = store.getters['api/getSafeCode'] || ''
- let ob = (config.method == 'GET'?config.params:config.data)
+ let ob = (config.method == 'GET'? config.params : config.data)
- // config.header.token = utils.makeSign(ob,serverTime)
- store.commit('api/setToken', config.header.token);
uni.showLoading({
mask: true,
title:"加载中..."
- })
+ });
return config
}, config => { // 可使用async await 做异步操作
return Promise.reject(config)
@@ -48,76 +41,24 @@ export default () => {
// 响应拦截
uni.$u.http.interceptors.response.use((response) => {
- // 判断高防接口第一次被拉拦截
- if (response.data.data == undefined) {
- uni.showToast({
- mask: true,
- title: '太火爆了,请点击右上角刷新重试',
- icon: 'none'
- })
- }
uni.hideLoading({});
- if (response.config.responseType == "arrayBuffer") {
- let base64 = "data:image/png;base64," + uni.arrayBufferToBase64(response.data)
- return base64
- }
-
/* 对响应成功做点什么 可使用async await 做异步操作*/
const data = response.data
const custom = response.config?.custom
+
if (data.code !== 200) {
- // 机器验证
- if (data.code === 8888) {
- // 0 页内跳转 1 页外跳转
- if (data.type == 0) {
- uni.navigateTo({
- url: `/pages/user/robot`
- });
- } else {
- // #ifdef APP-PLUS
- uni.navigateTo({
- url: `/pages/user/pay_webview/pay_webview?title=跳转页&urlLink=${encodeURIComponent(data.path)}`
- })
- // #endif
-
- // #ifdef H5
- window.location.href = data.path;
- // #endif
- };
- };
-
- if (data.code === 401) {
- let routes = getCurrentPages(); // 获取当前打开过的页面路由数组
- let curRoute = routes[routes.length - 1].route //获取当前页面路由
- // 在微信小程序或是app中,通过curPage.options
- // 如果是H5,则需要curPage.$route.query(H5中的curPage.options为undefined)
- let curParam = routes[routes.length - 1].options || routes[routes.length - 1].$route.query; //获取路由参数
- // 拼接参数
- let param = ''
- let yqCode = ''
- for (let key in curParam) {
- param += '&' + key + '=' + curParam[key]
- if (key == 'yq_code') {
- yqCode = curParam[key]
- }
- }
- let _thisUrl = ''
- if (curRoute.indexOf('?') == -1) {
- _thisUrl = curRoute + (param ? ('?' + param) : '')
- } else {
- _thisUrl = curRoute + (param ? ('&' + param) : '')
- }
-
+ if (data.code === 401 || data.code === 1005) {
uni.showToast({
mask: true,
title:data.msg,
icon:'none'
- })
- setTimeout(e => {
- utils.goPath('/pages/login/login');
- },1000)
+ });
+
+ // setTimeout(e => {
+ // utils.goPath('/pages/login/login');
+ // },1000)
} else if (data.code === 400) {
uni.showToast({
mask: true,
@@ -136,10 +77,22 @@ export default () => {
uni.$u.toast(data.msg)
}
+ if (data.code == 1005) {
+ uni.showToast({
+ mask: true,
+ title: '请重新登录',
+ icon: 'none'
+ })
+ setTimeout(() => {
+ uni.reLaunch({
+ url: '/pages/login/login'
+ })
+ }, 1000)
+ }
+
console.log(response.config.url)
return Promise.reject(data)
}
-
return data.data === undefined ? {} : data.data;
}, (response) => {
uni.showToast({
diff --git a/main.js b/main.js
index a764acf..0f49971 100644
--- a/main.js
+++ b/main.js
@@ -2,23 +2,33 @@ import App from './App'
// #ifndef VUE3
import Vue from 'vue'
-import './uni.promisify.adaptor'
+import utils from '@/utils/utils.js'
+import uView from '@/uni_modules/uview-ui'
import store from '@/store'
+import request from '@/config/request.js'
+Vue.use(uView)
+Vue.use(request)
+
+Vue.prototype.$utils = utils;
Vue.prototype.$store = store;
+
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
- ...App
+ ...App
})
app.$mount()
+
// #endif
// #ifdef VUE3
import { createSSRApp } from 'vue'
export function createApp() {
const app = createSSRApp(App)
+ app.use(utils)
app.use(store)
+ app.use(uView)
return {
app
}
diff --git a/manifest.json b/manifest.json
index 4a317b7..f4f7332 100644
--- a/manifest.json
+++ b/manifest.json
@@ -68,5 +68,36 @@
"uniStatistics" : {
"enable" : false
},
- "vueVersion" : "2"
+ "vueVersion" : "2",
+ "h5" : {
+ "async" : {
+ "delay" : "10000" // 这个时间内页面js已经加载了,所以不展示默认的loading
+ },
+ "router" : {
+ "base" : "./"
+ },
+ "devServer" : {
+ "disableHostCheck" : true, // 开启可以用自己的域名
+ "proxy": {
+ "/watch": {
+ "target": "http://test.sc2.agrimedia.cn",
+ "changeOrigin": true,
+ "secure": false
+ // "pathRewrite": { //重写url
+ // "^/watch": ""
+ // }
+ }
+ }
+ },
+ "title" : "智能终端",
+ "optimization" : {
+ "treeShaking" : {
+ "enable" : false
+ }
+ },
+ "template" : "template.h5.html",
+ "uniStatistics" : {
+ "enable" : true
+ }
+ }
}
diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json
index c58f964..b7b8ba8 100644
--- a/node_modules/.package-lock.json
+++ b/node_modules/.package-lock.json
@@ -235,6 +235,14 @@
"node": ">=0.10.0"
}
},
+ "node_modules/uview-ui": {
+ "version": "2.0.36",
+ "resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.36.tgz",
+ "integrity": "sha512-ASSZT6M8w3GTO1eFPbsgEFV0U5UujK+8pTNr+MSUbRNcRMC1u63DDTLJVeArV91kWM0bfAexK3SK9pnTqF9TtA==",
+ "engines": {
+ "HBuilderX": "^3.1.0"
+ }
+ },
"node_modules/vue": {
"version": "3.4.31",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.4.31.tgz",
diff --git a/package-lock.json b/package-lock.json
index 5b6871d..2bed887 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5,6 +5,7 @@
"packages": {
"": {
"dependencies": {
+ "uview-ui": "^2.0.36",
"vuex-persistedstate": "^4.1.0"
}
},
@@ -240,6 +241,14 @@
"node": ">=0.10.0"
}
},
+ "node_modules/uview-ui": {
+ "version": "2.0.36",
+ "resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.36.tgz",
+ "integrity": "sha512-ASSZT6M8w3GTO1eFPbsgEFV0U5UujK+8pTNr+MSUbRNcRMC1u63DDTLJVeArV91kWM0bfAexK3SK9pnTqF9TtA==",
+ "engines": {
+ "HBuilderX": "^3.1.0"
+ }
+ },
"node_modules/vue": {
"version": "3.4.31",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.4.31.tgz",
@@ -469,6 +478,11 @@
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
"peer": true
},
+ "uview-ui": {
+ "version": "2.0.36",
+ "resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.36.tgz",
+ "integrity": "sha512-ASSZT6M8w3GTO1eFPbsgEFV0U5UujK+8pTNr+MSUbRNcRMC1u63DDTLJVeArV91kWM0bfAexK3SK9pnTqF9TtA=="
+ },
"vue": {
"version": "3.4.31",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.4.31.tgz",
diff --git a/package.json b/package.json
index 0cf18b9..1fc10c4 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,6 @@
{
"dependencies": {
+ "uview-ui": "^2.0.36",
"vuex-persistedstate": "^4.1.0"
}
}
diff --git a/pages.json b/pages.json
index 420b687..d1d8946 100644
--- a/pages.json
+++ b/pages.json
@@ -20,10 +20,10 @@
"path": "pages/device/device",
"style": {}
},
- {
- "path": "pages/device/adddevice",
- "style": {}
- },
+ // {
+ // "path": "pages/device/adddevice",
+ // "style": {}
+ // },
{
"path": "pages/my/my",
"style": {}
diff --git a/pages/device/device.vue b/pages/device/device.vue
index 801a27c..c59491b 100644
--- a/pages/device/device.vue
+++ b/pages/device/device.vue
@@ -4,24 +4,16 @@