diff --git a/dist.rar b/dist.rar index 7f6c875..dabd233 100644 Binary files a/dist.rar and b/dist.rar differ diff --git a/src/api/super/commissionList.js b/src/api/super/commissionList.js index 730178e..f816c21 100644 --- a/src/api/super/commissionList.js +++ b/src/api/super/commissionList.js @@ -32,5 +32,12 @@ export function superAgentCommissionSum(query) { params: query }) } + //审计 + export function superAgentQuotaAudit(data) { + return request({ + url: '/super/agent/quota/flow/audit/audit', + method: 'post', + data: data + }) + } - \ No newline at end of file diff --git a/src/api/super/tenant.js b/src/api/super/tenant.js index bacd623..d304460 100644 --- a/src/api/super/tenant.js +++ b/src/api/super/tenant.js @@ -189,3 +189,46 @@ export function getSuperTenantWhiteList(query) { method: 'delete', }) } +// 审计 +export function superTenantQuotaAudit(data) { + return request({ + url: '/super/tenant/quota/audit', + method: 'post', + data: data + }) +} +//流水列表 +export function getSuperTenantQuotaFlowAuditList(query) { + return request({ + url: '/super/tenant/quota/flow/audit/list', + method: 'get', + params: query + }) +} +//流水操作类型 +export function getSuperCommonOperationType(query) { + return request({ + url: '/super/common/operation/type', + method: 'get', + params: query + }) +} + +//代理审计流水列表 +export function getSuperAgentQuotaFlowAuditList(query) { + return request({ + url: '/super/agent/quota/flow/audit/list', + method: 'get', + params: query + }) +} +//佣金类型 +export function getSuperCommonAgentCommissionType(query) { + return request({ + url: '/super/common/agent/commission/type', + method: 'get', + params: query + }) +} + + diff --git a/src/components/DictText/index.vue b/src/components/DictText/index.vue new file mode 100644 index 0000000..3e2ea39 --- /dev/null +++ b/src/components/DictText/index.vue @@ -0,0 +1,102 @@ + + + + + diff --git a/src/views/cashFlowAudit/agentFlow/index.vue b/src/views/cashFlowAudit/agentFlow/index.vue new file mode 100644 index 0000000..e10384e --- /dev/null +++ b/src/views/cashFlowAudit/agentFlow/index.vue @@ -0,0 +1,189 @@ + + + + + diff --git a/src/views/cashFlowAudit/merchantFlow/index.vue b/src/views/cashFlowAudit/merchantFlow/index.vue new file mode 100644 index 0000000..ff13a44 --- /dev/null +++ b/src/views/cashFlowAudit/merchantFlow/index.vue @@ -0,0 +1,204 @@ + + + + + + \ No newline at end of file diff --git a/src/views/commissionList/abnormalOrders/index.vue b/src/views/commissionList/abnormalOrders/index.vue index 0a1e671..2d23878 100644 --- a/src/views/commissionList/abnormalOrders/index.vue +++ b/src/views/commissionList/abnormalOrders/index.vue @@ -61,6 +61,17 @@ + + + import { listCommission,getCommissionInfo,updateAgentCommission } from "@/api/commission"; -import { superAgentCommissionList,superAgentCommissionSum } from "@/api/super/commissionList"; +import { superAgentCommissionList,superAgentCommissionSum,superAgentQuotaAudit } from "@/api/super/commissionList"; import TableSearchDate from '@/components/TableSearchDate' import Crontab from '@/components/Crontab' import { parseTime } from '@/utils/ruoyi'; // 时间格式化 @@ -263,6 +274,20 @@ function queryCode(type) { return item }) } +//审计 +const handleAudit = (row) => { + proxy.$modal.confirm(proxy.t('是否审计?')).then(() => { + + loading.value = true; + superAgentQuotaAudit({id:row.id}).then(res => { + loading.value = false; + proxy.$modal.msgSuccess(proxy.t('审计成功!')); + handleQuery(); + }).catch(() => { + loading.value = false; + }); + }).catch(() => { }); +} /** 提交按钮 */ function submitForm() { proxy.$refs["agentRef"].validate(valid => { diff --git a/src/views/components/DashboardCard.vue b/src/views/components/DashboardCard.vue index 2ba510a..c6c18bc 100644 --- a/src/views/components/DashboardCard.vue +++ b/src/views/components/DashboardCard.vue @@ -66,35 +66,35 @@ title: proxy.t('总商户统计'), value: props?.cardData?.totalTenants||0, percentage: '', - subtitle: proxy.t('会员总数')+`${(props?.cardData?.totalMembers||0)}`+proxy.t('人') - +' '+proxy.t('商户总数')+`${(props?.cardData?.totalTenants||0)}` - +' '+proxy.t('代理总数')+`${props?.cardData?.totalAgents||0}`, + subtitle: proxy.t('会员总数')+`${(props?.cardData?.totalMembers||0)}`+proxy.t('人') + +' '+proxy.t('商户总数')+`${(props?.cardData?.totalTenants||0)}` + +' '+proxy.t('代理总数')+`${props?.cardData?.totalAgents||0}`, cardClass: 'blue', }, { title: proxy.t('商户充值总额'), value: `${props?.cardData?.totalRecharge ||0}(U)`, percentage: '', - subtitle: proxy.t('今日充值总额')+`${(props?.cardData?.totalRecharge||0)}` - +' '+proxy.t('今日充值人数')+`${(props?.cardData?.totalRechargeUsers||0)}`+proxy.t('人') - +' '+proxy.t('今日提现总额')+`${(props?.cardData?.totalWithdrawal||0)}` - +' '+proxy.t('今日提现人数')+`${(props?.cardData?.totalWithdrawalUsers||0)}`+proxy.t('人'), + subtitle: proxy.t('今日充值总额')+`${(props?.cardData?.totalRecharge||0)}` + +' '+proxy.t('今日充值人数')+`${(props?.cardData?.totalRechargeUsers||0)}`+proxy.t('人') + +' '+proxy.t('今日提现总额')+`${(props?.cardData?.totalWithdrawal||0)}` + +' '+proxy.t('今日提现人数')+`${(props?.cardData?.totalWithdrawalUsers||0)}`+proxy.t('人'), cardClass: 'pink', }, { title: proxy.t('投注金额/输赢金额'), value: `${props?.cardData?.totalBetAmount ||0}(U)/${props?.cardData?.totalProfitLoss ||0}(U)`, percentage:'', - subtitle: proxy.t('今日注单总数')+`${(props?.cardData?.totalBets||0)}` - +' '+proxy.t('今日杀率')+`${(props?.cardData?.killRate||0)}%`, + subtitle: proxy.t('今日注单总数')+`${(props?.cardData?.totalBets||0)}` + +' '+proxy.t('今日杀率')+`${(props?.cardData?.killRate||0)}%`, cardClass: 'yellow', }, { title: proxy.t('商户可用余额'), value: `${Number(props?.cardData?.currentBalance+props?.cardData?.platformBalance).toFixed(4) ||0}(U)`, percentage: '', - subtitle: proxy.t('当前商户可用余额')+`${(props?.cardData?.currentBalance||0)}`+'(U)' - +' '+ proxy.t('当前商户平台余额')+`${(props?.cardData?.platformBalance||0)}`+'(U)', + subtitle: proxy.t('当前商户可用余额')+`${(props?.cardData?.currentBalance||0)}`+'(U)' + +' '+ proxy.t('当前商户平台余额')+`${(props?.cardData?.platformBalance||0)}`+'(U)', cardClass: 'green', }, { @@ -117,7 +117,28 @@ path = '/Merchant/businessInformation'; }else if (type == 'bigR') { path = '/Agents/agentInformation'; + }else if (type == 'totalCharge') { + path = '/member'; + }else if (type == 'totalAgent'){ + path = '/Merchant/businessInformation'; + }else if (type == 'totalBigR'){ + path = '/Agents/agentInformation'; + }else if (type == 'differenceRecharge'){ + path = '/Finance/prepaymentRecord'; + }else if (type == 'differenceWithdrawal1'){ + path = '/Finance/prepaymentRecord'; + }else if (type == 'differenceWithdrawal2'){ + path = '/CommissionList/agentCommissionReport'; + }else if (type == 'differenceWithdrawal3') { + path = '/CommissionList/agentCommissionReport'; + }else if (type == 'betOnNoteOrder'){ + path = '/gameRecords'; + }else if (type == 'betOnKillRate'){ + path = '/gameRecords'; + }else if (type == 'profitStock'){ + path = '/Merchant/businessInformation'; } + proxy.$router.push({ path: path, query: { diff --git a/src/views/components/EchartSearchDate/index.vue b/src/views/components/EchartSearchDate/index.vue index 124ba1d..1da5666 100644 --- a/src/views/components/EchartSearchDate/index.vue +++ b/src/views/components/EchartSearchDate/index.vue @@ -10,7 +10,7 @@ @@ -31,7 +31,7 @@ const props = defineProps({ }); const operateTimeType = defineModel('operateTimeType'), dateRange = defineModel('dateRange'); -const formatType = 'YYYY-MM-DD HH:mm:ss'; // 时间格式 +const formatType = 'YYYY-MM-DD'; // 时间格式 const emits = defineEmits(['dateChange']); const isFirst = ref(true); // 是否第一次加载 @@ -54,8 +54,8 @@ const timeTypeChange = (val) => { break case 'week': dateRange.value = [ - dayjs().subtract(6, 'day').startOf('day').format('YYYY-MM-DD HH:mm:ss'), - dayjs().endOf('day').format('YYYY-MM-DD HH:mm:ss.SSS') + dayjs().subtract(6, 'day').startOf('day').format('YYYY-MM-DD'), + dayjs().endOf('day').format('YYYY-MM-DD') ] break case 'month': @@ -151,8 +151,8 @@ const dateRangeChange = (dataValue) => { start.setHours(0, 0, 0); // 设置开始时间为当天的00:00:00点 end.setHours(23, 59, 59,999); // 设置结束时间为当天的23:59:59 - dateRange.value[0] = dayjs(start).format('YYYY-MM-DD HH:mm:ss'); - dateRange.value[1] = dayjs(end).format('YYYY-MM-DD HH:mm:ss.SSS'); + dateRange.value[0] = dayjs(start).format('YYYY-MM-DD'); + dateRange.value[1] = dayjs(end).format('YYYY-MM-DD'); } // 初始化时不触发父组件的查询 @@ -163,7 +163,7 @@ const dateRangeChange = (dataValue) => { // 生成日期区间 const getTimeFn = (startTime) => { - return [startTime.format('YYYY-MM-DD HH:mm:ss'), dayjs().endOf('day').format('YYYY-MM-DD HH:mm:ss.SSS')]; + return [startTime.format('YYYY-MM-DD'), dayjs().endOf('day').format('YYYY-MM-DD')]; } // 父组件重置 diff --git a/src/views/components/OperationCard.vue b/src/views/components/OperationCard.vue index 41707fb..502a21f 100644 --- a/src/views/components/OperationCard.vue +++ b/src/views/components/OperationCard.vue @@ -236,10 +236,10 @@ import { el } from 'element-plus/es/locales.mjs'; loadings.value = false; let obj = { operationType:tabPosition.value, - timeZone:timeZones, - currencyCodes:props.currencyType, - startTime:finalTimestamp(dateRange.value[0]), - endTime:finalTimestamp(dateRange.value[1]), + // timeZone:timeZones, + // currencyCodes:props.currencyType, + startTime:dateRange.value[0], + endTime:dateRange.value[1], } homeOperationList(obj).then(res => { loadings.value = true; diff --git a/src/views/finance/prepaymentRecord/index.vue b/src/views/finance/prepaymentRecord/index.vue index bd242d3..db18548 100644 --- a/src/views/finance/prepaymentRecord/index.vue +++ b/src/views/finance/prepaymentRecord/index.vue @@ -26,10 +26,10 @@ - + - + - +
+
商户ID:
{{ formAll.id }}
@@ -106,6 +107,7 @@
+ - + + +