diff --git a/src/apis.js b/src/apis.js
index d40a2d3..ccdc929 100644
--- a/src/apis.js
+++ b/src/apis.js
@@ -1,332 +1,130 @@
const BASE_URL = "http://120.79.241.5:8000/api/shoot";
-function getAuthHeader() {
+function request(method, url, data = {}) {
const token = uni.getStorageSync("token");
- return {
- Authorization: `Bearer ${token}`,
- };
+ return new Promise((resolve, reject) => {
+ uni.request({
+ url: `${BASE_URL}${url}`,
+ method,
+ header: {
+ Authorization: `Bearer ${token || ""}`,
+ },
+ data,
+ success: (res) => {
+ if (res.data.code === 0) resolve(res.data.data);
+ },
+ fail: (err) => {
+ reject(err);
+ uni.showToast({
+ title: "接口调用失败",
+ icon: "none",
+ });
+ },
+ });
+ });
}
// 获取全局配置
export const getAppConfig = () => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/index/appConfig`,
- method: "GET",
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
- });
+ return request("GET", "/index/appConfig");
};
export const getHomeData = () => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/myHome`,
- method: "GET",
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
- });
+ return request("GET", "/user/myHome");
};
// 获取省份及下属城市列表
export const getProvinceData = () => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/index/provinces/list`,
- method: "GET",
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
- });
+ return request("GET", "/index/provinces/list");
};
// 获取省份及下属城市列表
export const loginAPI = (nickName, avatarUrl, code) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/index/code`,
- method: "POST",
- data: {
- appName: "shoot",
- appId: "wxa8f5989dcd45cc23",
- nickName,
- avatarUrl,
- code,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) {
- uni.setStorageSync("token", data.token);
- uni.setStorageSync("tokenExpire", data.expires + Date.now());
- resolve(data);
- }
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/index/code", {
+ appName: "shoot",
+ appId: "wxa8f5989dcd45cc23",
+ nickName,
+ avatarUrl,
+ code,
});
};
export const bindDeviceAPI = (device) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/device/bindDevice`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- device,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/device/bindDevice", {
+ device,
});
};
export const unbindDeviceAPI = (deviceId) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/device/unbindDevice`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- deviceId,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/device/unbindDevice", {
+ deviceId,
});
};
export const getMyDevicesAPI = () => {
- return new Promise((resolve, reject) => {
- uni.request({
- // url: `${BASE_URL}/user/device/getBinding?deviceId=9ZF9oVXs`,
- url: `${BASE_URL}/user/device/getBindings`,
- method: "GET",
- header: getAuthHeader(),
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ // "/user/device/getBinding?deviceId=9ZF9oVXs"
+ return request("GET", "/user/device/getBindings", {
+ deviceId,
});
};
export const createPractiseAPI = (arrows) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/practice/create`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- arrows,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/practice/create", {
+ arrows,
});
};
export const createRoomAPI = (gameType, teamSize) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/createroom`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- gameType,
- teamSize,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/createroom", {
+ gameType,
+ teamSize,
});
};
export const getRoomAPI = (number) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/room?number=${number}`,
- method: "GET",
- header: getAuthHeader(),
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
- });
+ return request("GET", `/user/room?number=${number}`);
};
export const destroyRoomAPI = (roomNumber) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/room/destroyRoom`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- roomNumber,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/room/destroyRoom", {
+ roomNumber,
});
};
export const exitRoomAPI = (number) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/room/exitRoom`,
- method: "POST",
- header: getAuthHeader(),
- data: {
- number,
- },
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request("POST", "/user/room/exitRoom", {
+ number,
});
};
export const startRoomAPI = (number) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/room/start?number=${number}`,
- method: "GET",
- header: getAuthHeader(),
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
- });
+ return request("GET", `/user/room/start?number=${number}`);
};
export const getPractiseResultListAPI = (page = 1, page_size = 10) => {
- return new Promise((resolve, reject) => {
- uni.request({
- url: `${BASE_URL}/user/practice/list?page=${page}&page_size=${page_size}`,
- method: "GET",
- header: getAuthHeader(),
- success: (res) => {
- const { code, data } = res.data;
- if (code === 0) resolve(data);
- },
- fail: (err) => {
- reject(err);
- uni.showToast({
- title: "获取数据失败",
- icon: "none",
- });
- },
- });
+ return request(
+ "GET",
+ `/user/practice/list?page=${page}&page_size=${page_size}`
+ );
+};
+
+export const matchGameAPI = (match, gameType, teamSize) => {
+ return request("POST", "/user/game/match", {
+ match,
+ gameType,
+ teamSize,
+ });
+};
+
+export const readyGameAPI = (battleId) => {
+ return request("POST", "/user/game/prepare", {
+ battleId,
+ });
+};
+
+export const finishGameAPI = (battleId, arrow) => {
+ return request("POST", "/user/game/shoot", {
+ battleId,
+ arrow,
});
};
diff --git a/src/components/BowTarget.vue b/src/components/BowTarget.vue
index 50c0563..b8454b8 100644
--- a/src/components/BowTarget.vue
+++ b/src/components/BowTarget.vue
@@ -50,7 +50,7 @@ function calcRealY(num) {
"/" +
totalRound
}}
-
+
{
-
+
diff --git a/src/pages/match-room.vue b/src/pages/match-room.vue
index 5c22f0b..60eb1af 100644
--- a/src/pages/match-room.vue
+++ b/src/pages/match-room.vue
@@ -19,7 +19,7 @@ const teams = [
-
+
{