mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-21 11:43:56 +00:00
feat: sharechat message;fix: user balance
This commit is contained in:
@@ -79,9 +79,6 @@ services:
|
|||||||
- GPT4KEY=sk-xxx
|
- GPT4KEY=sk-xxx
|
||||||
- OPENAI_BASE_URL=https://api.openai.com/v1
|
- OPENAI_BASE_URL=https://api.openai.com/v1
|
||||||
- OPENAI_BASE_URL_AUTH=可选的安全凭证
|
- OPENAI_BASE_URL_AUTH=可选的安全凭证
|
||||||
# claude
|
|
||||||
- CLAUDE_BASE_URL=calude模型请求地址
|
|
||||||
- CLAUDE_KEY=CLAUDE_KEY
|
|
||||||
nginx:
|
nginx:
|
||||||
image: nginx:alpine3.17
|
image: nginx:alpine3.17
|
||||||
container_name: nginx
|
container_name: nginx
|
||||||
|
32
docs/dev/.env.template
Normal file
32
docs/dev/.env.template
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# 运行端口,如果不是 3000 口运行,需要改成其他的。注意:不是改了这个变量就会变成其他端口,而是因为改成其他端口,才用这个变量。
|
||||||
|
PORT=3000
|
||||||
|
# 代理
|
||||||
|
# AXIOS_PROXY_HOST=127.0.0.1
|
||||||
|
# AXIOS_PROXY_PORT=7890
|
||||||
|
# email
|
||||||
|
MY_MAIL=xxx@qq.com
|
||||||
|
MAILE_CODE=xxx
|
||||||
|
# ali ems
|
||||||
|
aliAccessKeyId=xxx
|
||||||
|
aliAccessKeySecret=xxx
|
||||||
|
aliSignName=xxx
|
||||||
|
aliTemplateCode=SMS_xxx
|
||||||
|
# token
|
||||||
|
TOKEN_KEY=xxx
|
||||||
|
# root key, 最高权限
|
||||||
|
ROOT_KEY=xxx
|
||||||
|
# 是否进行安全校验(1: 开启,0: 关闭)
|
||||||
|
SENSITIVE_CHECK=1
|
||||||
|
# openai
|
||||||
|
# OPENAI_BASE_URL=https://api.openai.com/v1
|
||||||
|
# OPENAI_BASE_URL_AUTH=可选的安全凭证(不需要的时候,记得去掉)
|
||||||
|
OPENAIKEY=sk-xxx # 对话用的key
|
||||||
|
OPENAI_TRAINING_KEY=sk-xxx # 训练用的key
|
||||||
|
GPT4KEY=sk-xxx
|
||||||
|
# db
|
||||||
|
MONGODB_URI=mongodb://username:password@0.0.0.0:27017/test?authSource=admin
|
||||||
|
PG_HOST=0.0.0.0
|
||||||
|
PG_PORT=8100
|
||||||
|
PG_USER=xxx
|
||||||
|
PG_PASSWORD=xxx
|
||||||
|
PG_DB_NAME=xxx
|
@@ -229,9 +229,11 @@ const Chat = ({ modelId, chatId }: { modelId: string; chatId: string }) => {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// refresh data
|
// refresh data
|
||||||
generatingMessage();
|
setTimeout(() => {
|
||||||
loadHistory({ pageNum: 1, init: true });
|
generatingMessage();
|
||||||
loadMyModels(true);
|
loadHistory({ pageNum: 1, init: true });
|
||||||
|
loadMyModels(true);
|
||||||
|
}, 100);
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
chatId,
|
chatId,
|
||||||
|
@@ -231,6 +231,16 @@ const Chat = ({ shareId, historyId }: { shareId: string; historyId: string }) =>
|
|||||||
chats: responseHistory
|
chats: responseHistory
|
||||||
});
|
});
|
||||||
|
|
||||||
|
window.top?.postMessage(
|
||||||
|
{
|
||||||
|
type: 'shareChatFinish',
|
||||||
|
data: {
|
||||||
|
responseText
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'*'
|
||||||
|
);
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
generatingMessage();
|
generatingMessage();
|
||||||
}, 100);
|
}, 100);
|
||||||
|
@@ -141,7 +141,11 @@ const NumberSetting = ({ tableType }: { tableType: `${TableEnum}` }) => {
|
|||||||
router.replace('/login');
|
router.replace('/login');
|
||||||
}, [router, setUserInfo]);
|
}, [router, setUserInfo]);
|
||||||
|
|
||||||
useQuery(['init'], initUserInfo);
|
useQuery(['init'], initUserInfo, {
|
||||||
|
onSuccess(res) {
|
||||||
|
reset(res);
|
||||||
|
}
|
||||||
|
});
|
||||||
const { data: { invitedAmount = 0, historyAmount = 0, residueAmount = 0 } = {} } = useQuery(
|
const { data: { invitedAmount = 0, historyAmount = 0, residueAmount = 0 } = {} } = useQuery(
|
||||||
['getPromotionInitData'],
|
['getPromotionInitData'],
|
||||||
getPromotionInitData
|
getPromotionInitData
|
||||||
|
@@ -14,7 +14,7 @@ import type { ModelSchema } from '@/types/mongoSchema';
|
|||||||
|
|
||||||
type State = {
|
type State = {
|
||||||
userInfo: UserType | null;
|
userInfo: UserType | null;
|
||||||
initUserInfo: () => Promise<null>;
|
initUserInfo: () => Promise<UserType>;
|
||||||
setUserInfo: (user: UserType | null) => void;
|
setUserInfo: (user: UserType | null) => void;
|
||||||
updateUserInfo: (user: UserUpdateParams) => void;
|
updateUserInfo: (user: UserUpdateParams) => void;
|
||||||
// model
|
// model
|
||||||
@@ -47,7 +47,7 @@ export const useUserStore = create<State>()(
|
|||||||
async initUserInfo() {
|
async initUserInfo() {
|
||||||
const res = await getTokenLogin();
|
const res = await getTokenLogin();
|
||||||
get().setUserInfo(res);
|
get().setUserInfo(res);
|
||||||
return null;
|
return res;
|
||||||
},
|
},
|
||||||
setUserInfo(user: UserType | null) {
|
setUserInfo(user: UserType | null) {
|
||||||
set((state) => {
|
set((state) => {
|
||||||
|
Reference in New Issue
Block a user