diff --git a/web/src/api/backend/embed.ts b/web/src/api/backend/embed.ts new file mode 100644 index 0000000..8f9d617 --- /dev/null +++ b/web/src/api/backend/embed.ts @@ -0,0 +1,94 @@ +import createAxios from '/@/utils/axios' + +export interface GameRtpParams { + provider: string + game_name: string + page: number +} + +export function gameRtp(params: GameRtpParams) { + return createAxios({ + url: '/admin/embed.Embed/gameRtp', + method: 'get', + params, + }) +} + +export interface AddGamePayload { + provider_site: string + game_name: string + image_url: string + rtp: number + status: 0 | 1 +} + +export function addGame(data: AddGamePayload) { + return createAxios( + { + url: '/admin/embed.Embed/addGame', + method: 'post', + data, + }, + { + showSuccessMessage: true, + } + ) +} + +export interface EditGamePayload extends AddGamePayload { + id: number | string +} + +export function editGame(data: EditGamePayload) { + return createAxios( + { + url: '/admin/embed.Embed/editGame', + method: 'post', + data, + }, + { + showSuccessMessage: true, + } + ) +} + +export function del(data: { ids: (number | string)[] }) { + return createAxios( + { + url: '/admin/embed.Embed/del', + method: 'post', + data, + }, + { + showSuccessMessage: true, + } + ) +} + +export interface SaveGameRtpPayload { + auto_game_rtp: 0 | 1 + auto_rtp_amount: Record + auto_frequency: number + provider_display: string + custom_config: string + header_image_url: string + text_color: string + button_text_color: string + base_color: string + button_bg_color: string + outline_color: string + progress_bar_bg_color: string +} + +export function saveGameRtp(data: SaveGameRtpPayload) { + return createAxios( + { + url: '/admin/embed.Embed/saveGameRtp', + method: 'post', + data, + }, + { + showSuccessMessage: true, + } + ) +} diff --git a/web/src/lang/backend/en/embed/gameRtp.ts b/web/src/lang/backend/en/embed/gameRtp.ts index 01afce8..09561ac 100644 --- a/web/src/lang/backend/en/embed/gameRtp.ts +++ b/web/src/lang/backend/en/embed/gameRtp.ts @@ -45,6 +45,7 @@ export default { nameRequired: 'Please enter the game name', urlRequired: 'Please enter the game image URL', saved: 'Settings saved', + invalidAutoAmount: 'Auto RTP Amount must be a valid JSON object', copied: 'Embed code copied', copyFailed: 'Unable to copy the embed code', operationSuccess: 'Operation completed', diff --git a/web/src/lang/backend/zh-cn/embed/gameRtp.ts b/web/src/lang/backend/zh-cn/embed/gameRtp.ts index 4d75b3f..54238c8 100644 --- a/web/src/lang/backend/zh-cn/embed/gameRtp.ts +++ b/web/src/lang/backend/zh-cn/embed/gameRtp.ts @@ -45,6 +45,7 @@ export default { nameRequired: '请输入游戏名称', urlRequired: '请输入游戏图片 URL', saved: '设置已保存', + invalidAutoAmount: '自动 RTP 范围必须是有效的 JSON 对象', copied: '嵌入代码已复制', copyFailed: '无法复制嵌入代码', operationSuccess: '操作成功', diff --git a/web/src/views/backend/embed/gameRtp.vue b/web/src/views/backend/embed/gameRtp.vue index ff8f1e4..265689b 100644 --- a/web/src/views/backend/embed/gameRtp.vue +++ b/web/src/views/backend/embed/gameRtp.vue @@ -52,7 +52,7 @@ {{ settings[item.key] }} - + {{ t('embed.gameRtp.save') }} @@ -87,8 +87,8 @@ -
- +
+ @@ -115,13 +115,13 @@
@@ -153,13 +153,13 @@ - +
@@ -168,8 +168,9 @@