7 Commits

  1. 1
      src/components/locales/lang/en.js
  2. 4
      src/components/locales/lang/zh-CN.js
  3. 21
      src/views/moneyManage/financialAccount/cashFlow.vue
  4. 26
      src/views/moneyManage/financialAccount/performanceAttribution.vue

1
src/components/locales/lang/en.js

@ -204,6 +204,7 @@ export default {
refreshFailed: 'Refresh failed: {msg}',
unknownError: 'Unknown error',
refreshError: 'Refresh error, try again',
refundagain:'Refund submitted. Please do not submit again',
logoutSuccess: 'Logged out',
staffHidden: 'Staff data hidden',
staffShown: 'Staff data shown',

4
src/components/locales/lang/zh-CN.js

@ -4,6 +4,8 @@ export default {
// 通用组 (筛选,按钮,币种计量)
common: {
// 筛选
market:'所属地区',
marketPlaceholder:'请选择所属地区',
name: "姓名",
none: "无",
selectedValue: "当前选中",
@ -211,6 +213,7 @@ export default {
jumpSuccess: "跳转成功",
jumpFailed: "跳转失败",
refundFailed: "退款失败",
refundagain:"已提交退款,请勿重复提交",
oldPasswordError: "原密码错误,请重新输入",
addSuccess: "添加成功", // 大写是添加成功,小写是新增
addsuccess: "新增成功",
@ -1353,6 +1356,7 @@ export default {
bankHandlingFeePlaceholder:"请输入银行手续费",
remarks:"备注",
remarksPlaceholder:"请输入备注 (选填,限制100字)",
remarkPlaceholderDate:"需填写手续费结算周期(如“2026年3月12日iPay88手续费”)",
cancel: "取消",
submit: "提交",
ipay88: "iPay88",

21
src/views/moneyManage/financialAccount/cashFlow.vue

@ -273,7 +273,6 @@ const openRefundConfirm = () => {
permanentGold: null,
freeGold: null,
}
}
const openRefundDialog = () => {
refundDialog.value = true
@ -297,6 +296,10 @@ const resetRefund = () => {
}
const handleRefund = async () => {
try {
if(refundFormData.value.status == 6){
ElMessage.error(t('elmessage.refundagain'))
return
}
if (refundFormData.value.refundModel == 1) {
if (Number(refundFormData.value.permanentGold || 0) > Number(refundFormData.value.oldpermanentGold || 0)) {
ElMessage.error(t('elmessage.limitRefundGoldNotExceedOriginal'))
@ -593,9 +596,9 @@ const handleOther=async ()=>{
goodNum:String(addOtherForm.value.goodNum),
payType:addOtherForm.value.payType,
paymentCurrency:String(CurrencyForId(addOtherForm.value.paymentCurrency)),
paymentAmount:addOtherForm.value.paymentAmount,
paymentAmount:addOtherForm.value.paymentAmount*100,
payTime:addOtherForm.value.payTime,
handlingCharge:addOtherForm.value.handlingCharge,
handlingCharge:addOtherForm.value.handlingCharge*100,
remark:addOtherForm.value.remark,
isPerformance:addOtherForm.value.isPerformance,
submitterId: addOtherForm.value.submitterId,
@ -634,7 +637,7 @@ const ipay88Rules = {
handlingCharge: [
{ required: true, message: t("common_add.feePlaceholder"),trigger: 'change'},
{ pattern: /^[0-9]+(\.[0-9]{1,2})?$/, message: t('cash.cashFlow.invalidFormat'),trigger: 'change' } ],
remark: [{ max: 100, message: t('cash.cashFlow.remarksexceed'), trigger: 'change' }]
remark: [ {required: true, max: 100, message: t('cash.cashFlow.remarksexceed'), trigger: 'change' }]
};
const handleIpay88 =async () =>{
if (!ipay88FormRef.value) return;
@ -644,8 +647,8 @@ const handleIpay88 =async () =>{
performanceMarket:String(MarketNameForId(addIpay88Form.value.performanceMarket)),
payType:addIpay88Form.value.payType,
paymentCurrency:String(CurrencyForId(addIpay88Form.value.paymentCurrency)),
handlingCharge:addIpay88Form.value.handlingCharge,
remark:addIpay88Form.value.remark,
handlingCharge:addIpay88Form.value.handlingCharge*100,
remark:addIpay88Form.value.remark,
submitterId: addIpay88Form.value.submitterId,
submitterMarket: addIpay88Form.value.submitterMarket,
}
@ -788,7 +791,7 @@ onMounted(async () => {
<el-table-column prop="paymentAmount" :label="t('common_list.payAmount')" width="150" align="right">
</el-table-column>
<el-table-column prop="handlingCharge" :label="t('common_list.fee')" width="100" align="right" >
<template #default="{ row }">{{ row.paymentAmount || 0 }}</template>
<template #default="{ row }">{{ row.handlingCharge || 0 }}</template>
</el-table-column>
<el-table-column prop="receivedAmount" :label="t('common_list.receiveAmount')" width="150" align="right">
</el-table-column>
@ -907,7 +910,7 @@ onMounted(async () => {
</el-form>
<div style="display:flex;justify-content: center;margin-top: 5vh;" class="btnDiv">
<el-button type="default" style="background-color: #7E91FF;" @click="showDetail = false">{{t('common.cancel')}}</el-button>
<el-button type="primary" style="background-color: #2741DE; margin-left: 2.5vw;" @click="openRefundConfirm">{{ t('common.refund') }}</el-button>
<el-button v-show="formDataRow.orderCode.slice(0, 4) == 'GOLD' && formDataRow.status === 4 " type="primary" style="background-color: #2741DE; margin-left: 2.5vw;" @click="openRefundConfirm">{{ t('common.refund') }}</el-button>
</div>
</el-dialog>
@ -1014,7 +1017,6 @@ onMounted(async () => {
</div>
</div>
</el-dialog>
<!-- 导出列表弹窗 -->
<el-dialog v-model="exportListVisible" :title="t('common_export.exportList')" width="80%">
<el-table :data="exportList" style="width: 100% ;height: 60vh;" :loading="exportListLoading">
@ -1333,6 +1335,7 @@ onMounted(async () => {
}
.newAdd {
margin-left: auto;
display: flex;
width: 240px;
justify-content: flex-end;

26
src/views/moneyManage/financialAccount/performanceAttribution.vue

@ -103,6 +103,28 @@ const getMarket = async () => {
const fetchData = async () => {
loading.value = true
try {
// adminData ID
const adminMarketNames = adminData.value.marketName?.split(',').map(item => item.trim()).filter(Boolean) || [];
const adminMarketIds = [];
// ID
const findIdsByNames = (nodes, names, resultIds) => {
if (!nodes || nodes.length === 0) return;
nodes.forEach(node => {
if (names.includes(node.label)) {
resultIds.push(node.value);
}
if (node.children) {
findIdsByNames(node.children, names, resultIds);
}
});
};
findIdsByNames(marketOptions.value, adminMarketNames, adminMarketIds);
console.log('adminMarketNames:', adminMarketNames)
console.log('adminMarketIds:', adminMarketIds)
console.log('adminMarketIds:', queryParams.adminMarketIds)
//
console.log('adminData.value.markets:', adminData.value.markets)
const params = {
@ -110,7 +132,7 @@ const fetchData = async () => {
pageSize: queryParams.pageSize,
performanceDTO: {
jwcode: queryParams.jwcode,
adminMarket: adminData.value.marketName.split(',').filter(item => item.trim() !== '') || [],
adminMarket: adminMarketIds,
customerMarket: queryParams.customerMarket,
startTime: queryParams.timeRange?.[0] ? dayjs(queryParams.timeRange[0]).format('YYYY-MM-DD HH:mm:ss') : '',
endTime: queryParams.timeRange?.[1] ? dayjs(queryParams.timeRange[1]).format('YYYY-MM-DD HH:mm:ss') : '',
@ -386,7 +408,7 @@ const submitAdjustment = async () => {
onMounted(async () => {
await initPermissions()
await handleAdminInfo()
getMarket()
await getMarket()
await fetchData()
})
</script>

Loading…
Cancel
Save