|
|
|
@ -19,12 +19,19 @@ |
|
|
|
<el-option v-for="item in marketList" :key="item" :label="item" :value="item" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
<div class="rowItem"> |
|
|
|
<div v-if="kefu" class="rowItem"> |
|
|
|
<el-text style="width: 4vw;">订单状态</el-text> |
|
|
|
<el-select v-model="searchData.status" placeholder="请选择订单状态" style="width: 10vw;" clearable> |
|
|
|
<el-option v-for="item in statusList" :key="item.name" :label="item.name" |
|
|
|
:value="item.value" /></el-select> |
|
|
|
</div> |
|
|
|
<div v-if="!kefu" class="rowItem"> |
|
|
|
<el-text style="width: 4vw;">付款币种</el-text> |
|
|
|
<el-select v-model="searchData.paymentCurrency" placeholder="请选择付款币种" style="width: 10vw;" |
|
|
|
clearable> |
|
|
|
<el-option v-for="item in customOptions" :key="item" :label="item" |
|
|
|
:value="item" /></el-select> |
|
|
|
</div> |
|
|
|
<div class="rowItem"> |
|
|
|
<el-text style="width: 4vw;">支付方式</el-text> |
|
|
|
<el-select v-model="searchData.payType" placeholder="请选择支付方式" style="width: 10vw;" clearable> |
|
|
|
@ -41,7 +48,7 @@ |
|
|
|
</div> |
|
|
|
<div class="rowItem"> |
|
|
|
<el-text style="width: 4vw;">产品名称</el-text> |
|
|
|
<ProductSelect style="width: 190px;" v-model="searchData.goodsName"></ProductSelect> |
|
|
|
<el-cascader v-model="searchData.goodsName" :options="productList" style="width: 10vw;" /> |
|
|
|
</div> |
|
|
|
<div class="rowItem" style="width: 30vw"> |
|
|
|
<el-text style="width: 4vw; margin-left: 0.5vw;">付款时间</el-text> |
|
|
|
@ -50,13 +57,19 @@ |
|
|
|
@change="handleDatePickerChange" :default-time="defaultTime" |
|
|
|
:disabled-date="disabledDate" /> |
|
|
|
</div> |
|
|
|
<div v-if="!superAdmin" class="buttons"> |
|
|
|
<el-button type="primary" @click="search">查询</el-button> |
|
|
|
<el-button type="success" @click="reset">重置</el-button> |
|
|
|
<!-- <el-button type="primary">导出excel</el-button> |
|
|
|
<el-button type="primary" style="background-color: #5870FF;">导出列表</el-button> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="row" style="margin-top: 10px;"> |
|
|
|
<div v-if="superAdmin" class="row" style="margin-top: 10px;"> |
|
|
|
<div class="buttons"> |
|
|
|
<el-button type="primary" @click="search">查询</el-button> |
|
|
|
<el-button type="success" @click="reset">重置</el-button> |
|
|
|
<el-button type="primary">导出excel</el-button> |
|
|
|
<el-button type="primary" style="background-color: #5870FF;">导出列表</el-button> |
|
|
|
<!-- <el-button type="primary">导出excel</el-button> |
|
|
|
<el-button type="primary" style="background-color: #5870FF;">导出列表</el-button> --> |
|
|
|
<el-button v-if="superAdmin" type="primary" @click="checkKefu">切换客服</el-button> |
|
|
|
<el-button v-if="superAdmin" type="success" @click="checkCaiwu">切换地区财务</el-button> |
|
|
|
<el-button v-if="superAdmin" type="success" @click="checkHqCaiwu">切换总部财务</el-button> |
|
|
|
@ -132,7 +145,7 @@ |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="payType" label="支付方式" width="110px"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="payTime" label="付款时间" width="100px" /> |
|
|
|
<el-table-column prop="payTime" label="付款时间" width="180px" /> |
|
|
|
<el-table-column prop="voucher" label="转账凭证" width="110px"> |
|
|
|
<template #default="scope"> |
|
|
|
<div v-if="scope.row.voucher" |
|
|
|
@ -146,8 +159,8 @@ |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="bankCode" label="银行流水订单号" v-if="caiwu && activeTab == 'pass'" |
|
|
|
width="150px" show-overflow-tooltip></el-table-column> |
|
|
|
<!-- <el-table-column prop="bankCode" label="银行流水订单号" v-if="caiwu && activeTab == 'pass'" |
|
|
|
width="150px" show-overflow-tooltip></el-table-column> --> |
|
|
|
<el-table-column prop="submitterName" label="提交人" width="150px" |
|
|
|
show-overflow-tooltip></el-table-column> |
|
|
|
<el-table-column prop="auditName" label="审核人" |
|
|
|
@ -439,14 +452,11 @@ |
|
|
|
clearable></el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款币种"> |
|
|
|
<el-select disabled="true" v-model="editFormData.paymentCurrency" placeholder="请选择付款币种" |
|
|
|
clearable> |
|
|
|
<el-option v-for="item in payModel" :key="item.value" :label="item.label" |
|
|
|
:value="item.value" /> |
|
|
|
</el-select> |
|
|
|
<CurrencySelect :disabled="!isOnline" v-model="editFormData.paymentCurrency" :items="customOptions" |
|
|
|
placeholder="请选择付款币种"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款金额"> |
|
|
|
<el-input disabled="true" v-model="editFormData.paymentAmount" placeholder="请输入付款金额" /> |
|
|
|
<el-input :disabled="!isOnline" v-model="editFormData.paymentAmount" placeholder="请输入付款金额" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="支付方式"> |
|
|
|
<el-select disabled="true" v-model="editFormData.payType" placeholder="请选择支付方式" |
|
|
|
@ -473,7 +483,7 @@ |
|
|
|
</el-text> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="驳回理由"> |
|
|
|
<el-form-item label="备注"> |
|
|
|
<el-input disabled="true" v-model="editFormData.remark" type="textarea" :rows="4" |
|
|
|
placeholder="请输入驳回理由" maxlength="100" show-word-limit /> |
|
|
|
</el-form-item> |
|
|
|
@ -497,10 +507,6 @@ |
|
|
|
<el-form-item label="到账时间"> |
|
|
|
<el-date-picker type="datetime" v-model="editFormData.receivedTime" placeholder="请输入到账时间" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="收款备注"> |
|
|
|
<el-input v-model="editFormData.receivedRemark" type="textarea" :rows="4" |
|
|
|
placeholder="请输入备注" maxlength="100" show-word-limit /> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<span class="editBtns"> |
|
|
|
<button class="editBtn1" @click="closeEditForm"> |
|
|
|
@ -621,6 +627,7 @@ import request from '@/util/http.js' |
|
|
|
import moment from 'moment' |
|
|
|
import { useAdminStore } from '@/store/index.js' |
|
|
|
import { hasMenuPermission } from '@/utils/menuTreePermission.js' |
|
|
|
import { isNode } from 'mathjs'; |
|
|
|
const adminStore = useAdminStore(); |
|
|
|
const { menuTree } = storeToRefs(adminStore); |
|
|
|
console.log('menutree', menuTree.value); |
|
|
|
@ -630,10 +637,7 @@ const searchData = ref({ |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
const getTime = ref({ |
|
|
|
startTime: '', |
|
|
|
endTime: '' |
|
|
|
}) |
|
|
|
const getTime = ref([]) |
|
|
|
|
|
|
|
const search = () => { |
|
|
|
getlist() |
|
|
|
@ -641,10 +645,27 @@ const search = () => { |
|
|
|
} |
|
|
|
const reset = () => { |
|
|
|
searchData.value = {} |
|
|
|
getTime.value = [] |
|
|
|
} |
|
|
|
//获得表格数据接口 |
|
|
|
const getlist = async () => { |
|
|
|
try { |
|
|
|
let payCurrencySelect = '' |
|
|
|
if (getTime.value && getTime.value.length === 2) { |
|
|
|
searchData.value.startTime = moment(getTime.value[0]).format('YYYY-MM-DD HH:mm:ss') |
|
|
|
searchData.value.endTime = moment(getTime.value[1]).format('YYYY-MM-DD HH:mm:ss') |
|
|
|
} |
|
|
|
else { |
|
|
|
searchData.value.startTime = '' |
|
|
|
searchData.value.endTime = '' |
|
|
|
} |
|
|
|
|
|
|
|
if (searchData.value.goodsName) { |
|
|
|
searchData.value.goodsName = searchData.value.goodsName[searchData.value.goodsName.length - 1] |
|
|
|
} |
|
|
|
if (searchData.value.paymentCurrency) { |
|
|
|
payCurrencySelect = CurrencyForId(searchData.value.paymentCurrency) |
|
|
|
} |
|
|
|
//角色id 0:客服 1:地方财务 2:总部财务 |
|
|
|
let cashRoleId = '' |
|
|
|
let receivedMarket = adminData.value.markets |
|
|
|
@ -672,7 +693,8 @@ const getlist = async () => { |
|
|
|
...getTime.value, |
|
|
|
submitterId: adminData.value.id, |
|
|
|
receivedMarket: receivedMarket, |
|
|
|
cashRoleId: cashRoleId |
|
|
|
cashRoleId: cashRoleId, |
|
|
|
paymentCurrency: payCurrencySelect |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -963,7 +985,7 @@ const submitRefund = async () => { |
|
|
|
payType: refundFormData.value.payType, // 支付方式(必填) |
|
|
|
payTime: refundFormData.value.payTime, // 付款时间,格式:yyyy-MM-dd HH:mm:ss(可选) |
|
|
|
receivedTime: refundFormData.value.receivedTime, // 到账时间,格式:yyyy-MM-dd HH:mm:ss(可选) |
|
|
|
submitterId: refundFormData.value.submitterId, // 提交人ID(可选) |
|
|
|
areaServise: adminData.value.adminName, // 提交人(可选) |
|
|
|
voucher: refundFormData.value.voucher, // 转账凭证URL(可选) |
|
|
|
remark: refundFormData.value.remark, // 备注信息(可选) |
|
|
|
refundReason: refundFormData.value.refundReason, // 退款备注-客服填写(可选) |
|
|
|
@ -1013,10 +1035,17 @@ const closeConfirmRefund = () => { |
|
|
|
const editFormData = ref({ |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
const ifOnline = ref(false) |
|
|
|
const editFormisible = ref(false) |
|
|
|
const openEditForm = (row) => { |
|
|
|
console.log('编辑时该行数据:', row); |
|
|
|
editFormData.value = row |
|
|
|
if(row.status == 3){ |
|
|
|
ifOnline.value = true |
|
|
|
}else{ |
|
|
|
ifOnline.value = false |
|
|
|
} |
|
|
|
editFormisible.value = true |
|
|
|
} |
|
|
|
const closeEditForm = () => { |
|
|
|
@ -1034,7 +1063,7 @@ const submitEditForm = async () => { |
|
|
|
data: { |
|
|
|
orderCode: editFormData.value.orderCode, |
|
|
|
handlingCharge: editFormData.value.handlingCharge * 100, |
|
|
|
paymentCurrency: editFormData.value.paymentCurrency, |
|
|
|
paymentCurrency: CurrencyForId(editFormData.value.paymentCurrency), |
|
|
|
paymentAmount: editFormData.value.paymentAmount, |
|
|
|
receivedCurrency: CurrencyForId(editFormData.value.receivedCurrency), |
|
|
|
receivedAmount: editFormData.value.receivedAmount * 100, |
|
|
|
@ -1230,6 +1259,135 @@ const statusList = [ |
|
|
|
const paytypeList = ["Stripe-链接收款", "PaymentAsia-链接收款", "Ipay88-链接收款", "银行转账", "刷卡", "现金", "支票", "Grabpay", "Nets", "E-Transfer", "Paypal"] |
|
|
|
const activityList = ref([]) |
|
|
|
const marketList = ['马来西亚', '香港', '新加坡', '泰国', '越南HCM', '加拿大'] |
|
|
|
const productList = [ |
|
|
|
{ |
|
|
|
"value": "金币产品", |
|
|
|
"label": "金币产品", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "金币充值", |
|
|
|
"label": "金币充值", |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "软件产品", |
|
|
|
"label": "软件产品", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "美股", |
|
|
|
"label": "美股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "美股软件", |
|
|
|
"label": "美股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "港股", |
|
|
|
"label": "港股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "港股软件", |
|
|
|
"label": "港股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "A股", |
|
|
|
"label": "A股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "A股软件", |
|
|
|
"label": "A股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "新加坡股", |
|
|
|
"label": "新加坡股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "新加坡股软件", |
|
|
|
"label": "新加坡股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "马股", |
|
|
|
"label": "马股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "马股软件", |
|
|
|
"label": "马股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "日本股", |
|
|
|
"label": "日本股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "日本股软件", |
|
|
|
"label": "日本股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "泰股", |
|
|
|
"label": "泰股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "泰股软件", |
|
|
|
"label": "泰股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "越南股", |
|
|
|
"label": "越南股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "越南股软件", |
|
|
|
"label": "越南股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "印尼股", |
|
|
|
"label": "印尼股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "印尼股软件", |
|
|
|
"label": "印尼股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "韩国股", |
|
|
|
"label": "韩国股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "韩国股软件", |
|
|
|
"label": "韩国股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
{ |
|
|
|
"value": "台湾股", |
|
|
|
"label": "台湾股", |
|
|
|
"children": [ |
|
|
|
{ |
|
|
|
"value": "台湾股软件", |
|
|
|
"label": "台湾股软件" |
|
|
|
} |
|
|
|
] |
|
|
|
} |
|
|
|
] |
|
|
|
}, |
|
|
|
|
|
|
|
] |
|
|
|
// 获取活动信息 |
|
|
|
const getActivitys = async function () { |
|
|
|
try { |
|
|
|
@ -1294,6 +1452,7 @@ onMounted(async function () { |
|
|
|
await getActivitys() |
|
|
|
if (hasMenuPermission(menuTree.value, 77) && hasMenuPermission(menuTree.value, 78) && hasMenuPermission(menuTree.value, 79)) { |
|
|
|
superAdmin.value = true |
|
|
|
getlist() |
|
|
|
} |
|
|
|
else if (hasMenuPermission(menuTree.value, 77)) { |
|
|
|
checkKefu() |
|
|
|
|