Browse Source

对接接口,差app跳转

milestone-20250820-金币兑换Token
no99 3 days ago
parent
commit
90f61e6552
  1. 2
      .env.development
  2. 1
      .env.production
  3. 40
      src/api/AIxiaocaishen.js
  4. 1
      src/store/chat.js
  5. 21
      src/store/dataList.js
  6. 5
      src/views/Selectmodel.vue
  7. 87
      src/views/homePage.vue

2
.env.development

@ -10,6 +10,8 @@ VITE_APP_API_BASE_URL = "http://39.101.133.168:8828/link"
VITE_APP_API_BASE_CAZE_URL = "http://39.101.133.168:8828/link"
# VITE_APP_API_BASE_CAZE_URL = "https://api.homilychart.com/link"
VITE_APP_API_BASE_HW_URL = "http://39.101.133.168:8828/hljw"
VITE_APP_IMG_API_BASE_URL = "http://39.101.133.168:8828/hljw/api/aws/upload"
#MJ API
VITE_APP_MJ_API_BASE_URL = "http://192.168.9.19:8080/api"

1
.env.production

@ -14,6 +14,7 @@ VITE_APP_API_BASE_URL = https://api.homilychart.com/link
VITE_APP_API_BASE_CAZE_URL = "https://api.homilychart.com/link"
# VITE_APP_API_BASE_CAZE_URL = "http://39.101.133.168:8828/link"
VITE_APP_API_BASE_HW_URL = "https://api.homilychart.com/hljw"
VITE_APP_IMG_API_BASE_URL = "https://api.homilychart.com/hljw/api/aws/upload"
#MJ API

40
src/api/AIxiaocaishen.js

@ -3,6 +3,7 @@ import request from "../utils/request";
const APIurl = import.meta.env.VITE_APP_API_BASE_URL;
const cozeAPIurl = import.meta.env.VITE_APP_API_BASE_CAZE_URL;
const MJAPIurl = import.meta.env.VITE_APP_MJ_API_BASE_URL;
const HWurl = import.meta.env.VITE_APP_API_BASE_HW_URL;
//各个模块权限code接口
export const pessionAPI = function (params) {
return request({
@ -308,7 +309,7 @@ export const clickRecordAPI = function (params) {
export const showExchangeAPI = function (params) {
return request({
url: `http://192.168.1.22:8080/api/showExchange`,
url: `${APIurl}/api/showExchange`,
method: "POST",
data: params,
headers: {
@ -317,4 +318,39 @@ export const showExchangeAPI = function (params) {
});
};
// 8.18金币兑换Token end
export const godExchangeAPI = function (params) {
return request({
url: `${APIurl}/api/godExchange`,
method: "POST",
data: params,
headers: {
token: localStorage.getItem("localToken"),
},
});
};
export const exchangeAPI = function (params) {
return request({
url: `${APIurl}/api/exchange`,
method: "POST",
data: params,
});
};
export const getGoldCoinAPI = function (params) {
return request({
url: `${HWurl}/api/haiwai/user/getGoldCoin`,
method: "POST",
data: params,
});
};
export const getUserInfoAPI = function (params) {
return request({
url: `${HWurl}/api/v2/member/info`,
method: "POST",
data: params,
});
};
// 8.18金币兑换Token end

1
src/store/chat.js

@ -40,6 +40,7 @@ export const useChatStore = defineStore("chat", {
this.kLineData.push(data);
},
},
persist: {
key: "chat_messages",
storage: sessionStorage,

21
src/store/dataList.js

@ -2,7 +2,7 @@ import { defineStore } from "pinia";
import { ref, watch } from "vue";
import { useUserStore } from "./userPessionCode";
import { useLanguage } from "@/utils/languageService";
import { dataListAPI } from "@/api/AIxiaocaishen";
import { dataListAPI, getUserInfoAPI } from "@/api/AIxiaocaishen";
// import { useSkeletonStore } from '@/utils/skeletonLoader'
import { useRoute } from "vue-router";
// const skeletonStore = useSkeletonStore()
@ -25,6 +25,7 @@ export const useDataStore = defineStore("data", () => {
const klineData = ref(null);
const activeTabIndex = ref(null);
const isFeedback = ref(false); // 用于控制是否显示反馈页面的标志
const userInfo = ref({});
const setKlineData = (data) => {
klineData.value = data;
};
@ -64,7 +65,7 @@ export const useDataStore = defineStore("data", () => {
const market = ref(getQueryVariable("market"));
const code = ref(getQueryVariable("code"));
console.log(token.value); // 输出 token 的值,例如 "111"
const fetchChartData = async (market,code) => {
const fetchChartData = async (market, code) => {
const getTokenString = String(localStorage.getItem("localToken"));
// const getMarketString = String(localStorage.getItem("localMarket"));
// const getCodeString = String(localStorage.getItem("localCode"));
@ -155,6 +156,14 @@ export const useDataStore = defineStore("data", () => {
return "";
};
const getUserInfo = async () => {
const getTokenString = String(localStorage.getItem("localToken"));
const res = await getUserInfoAPI({
token: getTokenString || "",
});
userInfo.value = res.data;
};
const isLoading = ref(true);
const initData = async () => {
isLoading.value = true;
@ -182,9 +191,9 @@ export const useDataStore = defineStore("data", () => {
() => window.location.ancestorOrigins,
(newQuery, oldQuery) => {
console.log("newQuery", newQuery);
// if () {
// fetchChartData();
// }
// if () {
// fetchChartData();
// }
}
);
@ -214,5 +223,7 @@ export const useDataStore = defineStore("data", () => {
getQueryVariable,
setActiveTabIndex,
isFeedback,
userInfo,
getUserInfo,
};
});

5
src/views/Selectmodel.vue

@ -34,8 +34,7 @@ import { onMounted, ref } from "vue";
import { useRouter } from "vue-router";
import { setHeight } from "@/utils/setHeight";
import { useDataStore } from "@/store/dataList.js";
const { getQueryVariable, setActiveTabIndex } = useDataStore();
const { getQueryVariable, setActiveTabIndex, getUserInfo } = useDataStore();
import robot from "@/assets/img/Selectmodel/机器人 拷贝.png";
const router = useRouter();
@ -59,6 +58,8 @@ onMounted(() => {
// "localToken",
// "pCtw6AYK0EHAaIexoFHsbZjtsfEAIhcmwkCFm6uKko8VPfMvyDiODL9v9c0veic9fIpQbvT8zN4sH/Si6Q"
// );
getUserInfo();
});
const goToDBQBmodel = () => {

87
src/views/homePage.vue

@ -2,7 +2,13 @@
//
import { ref, computed, onMounted, watch, nextTick, onUnmounted, h } from "vue";
import { setHeight } from "../utils/setHeight";
import { getUserCountAPI, showExchangeAPI } from "../api/AIxiaocaishen";
import {
getUserCountAPI,
showExchangeAPI,
godExchangeAPI,
exchangeAPI,
getGoldCoinAPI,
} from "../api/AIxiaocaishen";
import { ElMessage } from "element-plus";
import AIchat from "./AIchat.vue";
import AIfind from "./AIfind.vue";
@ -45,7 +51,7 @@ const aiEmotionRef = ref(null);
// ref
const historyRecordRef = ref(null);
// import { useUserStore } from "../store/userPessionCode.js";
const { getQueryVariable, setActiveTabIndex } = useDataStore();
const { getQueryVariable, setActiveTabIndex, getUserInfo } = useDataStore();
const dataStore = useDataStore();
const chatStore = useChatStore();
//
@ -894,9 +900,9 @@ const backToHome = () => {
// 8.18Token start
const userInfo = ref({
username: "HomilyLink",
jwcode: "90042088",
img: " https://d31zlh4on95l9h.cloudfront.net/images/403ef762dd2f335df3b0c9e3fe488375.png",
nickname: "",
img: "",
jwcode: "",
});
const changeRule = ref({
gold: 1,
@ -922,13 +928,40 @@ const rechargeDialogVisible = ref(false);
const confirmDialogVisible = ref(false);
const changeSuccessDialogVisible = ref(false);
//
const handleImageError = (event) => {
console.error("图片加载失败:", event.target.src);
//
event.target.src =
"https://cdn.legu168.com/jtzy/Product/pcjingwang/images/userimg.png";
};
//
const showCount = async () => {
try {
const res = await showExchangeAPI();
if (
!dataStore.userInfo.img ||
!dataStore.userInfo.nickname ||
!dataStore.userInfo.jwcode
) {
console.log("缺少用户信息,调用方法");
await getUserInfo();
}
userInfo.value.nickname = dataStore.userInfo.nickname;
userInfo.value.img = dataStore.userInfo.img;
userInfo.value.jwcode = dataStore.userInfo.jwcode;
console.log("userInfo", userInfo.value);
const [res, res2] = await Promise.all([
showExchangeAPI(),
getGoldCoinAPI({
token: String(localStorage.getItem("localToken")),
}),
]);
changeLevelList.value = res.data;
activeLevel.value = changeLevelList.value[0];
changeRule.value.token = res.data[0].ratio;
gold.value = res2.data.total;
//
dialogVisible.value = true;
@ -988,13 +1021,25 @@ const goRecharge = () => {
}
};
const goChange = () => {
confirmDialogVisible.value = false;
dialogVisible.value = false;
changeSuccessDialogVisible.value = true;
setTimeout(() => {
changeSuccessDialogVisible.value = false;
}, 2000);
const goChange = async () => {
try {
await exchangeAPI({
token: String(localStorage.getItem("localToken")),
num: activeLevel.value.position,
});
confirmDialogVisible.value = false;
dialogVisible.value = false;
changeSuccessDialogVisible.value = true;
setTimeout(() => {
changeSuccessDialogVisible.value = false;
}, 2000);
//
await chatStore.getUserCount();
} catch (e) {
console.error("兑换失败", e);
}
};
// 8.18Token end
@ -1028,7 +1073,8 @@ onMounted(async () => {
sessionStorage.getItem("rechargeFlag") == "1" &&
getQueryVariable("successType") == "success"
) {
dialogVisible.value = true;
await godExchangeAPI({ state: 1 });
showCount();
sessionStorage.setItem("rechargeFlag", "0");
}
});
@ -1328,15 +1374,20 @@ onUnmounted(() => {
</el-container>
<!-- 弹窗 -->
<!-- 新增弹窗组件 -->
<el-dialog v-model="dialogVisible" :width="isMobile ? '80%' : '40%'">
<el-dialog v-model="dialogVisible" :width="isMobile ? '80%' : '48%'">
<!-- 中间内容部分 -->
<div class="changeMsg">
<div class="changeInfo">
<div class="changeImg">
<img :src="userInfo.img" alt="头像" class="changeImgClass" />
<img
:src="userInfo.img"
alt="头像"
class="changeImgClass"
@error="handleImageError"
/>
</div>
<div class="changeContent">
<div class="changeUsername">{{ userInfo.username }}</div>
<div class="changeUsername">{{ userInfo.nickname }}</div>
<div class="changeJwcode">精网号{{ userInfo.jwcode }}</div>
</div>
</div>
@ -2020,6 +2071,8 @@ body {
}
.changeImgClass {
width: 50px;
height: auto;
}
.changeContent {

Loading…
Cancel
Save