|
|
|
@ -16,7 +16,7 @@ |
|
|
|
</div> |
|
|
|
<div class="item1"> |
|
|
|
<el-text size="large" style="width:4vw;">产品名称</el-text> |
|
|
|
<el-input v-model="searchForm.goodsName" placeholder="请输入产品名称" style="width:9vw;" clearable /> |
|
|
|
<el-cascader v-model="searchForm.goodsName" :options="productList" style="width: 10vw;" /> |
|
|
|
</div> |
|
|
|
<div class="item1"> |
|
|
|
<el-text size="large" style="width:4vw;">订单状态</el-text> |
|
|
|
@ -35,7 +35,8 @@ |
|
|
|
<div class="item2"> |
|
|
|
<el-text size="large" style="width:4vw;">支付方式</el-text> |
|
|
|
<el-select v-model="searchForm.payType" style="width:9vw;"> |
|
|
|
<el-option v-for="item in channelOptions" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
<el-option v-for="item in channelOptions" :key="item.value" :label="item.label" |
|
|
|
:value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
<div class="item2" style="width: 28.5vw;"> |
|
|
|
@ -58,7 +59,7 @@ |
|
|
|
<el-table-column type="index" label="序号" width="60" fixed="left" /> |
|
|
|
<el-table-column prop="name" label="Homily ID" width="120" fixed="left" /> |
|
|
|
<el-table-column prop="jwcode" label="姓名" width="120" fixed="left" show-overflow-tooltip /> |
|
|
|
<el-table-column prop="marketName" label="所属地区" width="120" /> |
|
|
|
<el-table-column prop="market" label="所属地区" width="120" /> |
|
|
|
<el-table-column prop="goodsName" label="产品名称" width="120" /> |
|
|
|
<el-table-column prop="goodNum" label="产品数量" width="120" /> |
|
|
|
<el-table-column prop="refundType" label="退款方式" width="120"> |
|
|
|
@ -66,22 +67,22 @@ |
|
|
|
{{ scope.row.refundType === 1 ? '部分退款' : '全部退款' }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="submitterName" label="提交人" width="120" /> |
|
|
|
<el-table-column prop="areaServise" label="提交人" width="120" /> |
|
|
|
<el-table-column prop="refundReason" label="退款理由" width="120" /> |
|
|
|
<el-table-column prop="remark" label="备注" width="150" show-overflow-tooltip /> |
|
|
|
<el-table-column prop="status" label="订单状态" width="120"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ |
|
|
|
[20,30, 40].includes(scope.row.status) ? '审核中' : |
|
|
|
[22,32].includes(scope.row.status) ? '审核驳回' : |
|
|
|
scope.row.status === 41 ? '退款完成' : scope.row.status |
|
|
|
[20, 30, 40].includes(scope.row.status) ? '审核中' : |
|
|
|
[22, 32].includes(scope.row.status) ? '审核驳回' : |
|
|
|
scope.row.status === 41 ? '退款完成' : scope.row.status |
|
|
|
}} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="operation" label="操作" fixed="right" width="100px" > |
|
|
|
<el-table-column prop="operation" label="操作" fixed="right" width="100px"> |
|
|
|
<template #default="scope"> |
|
|
|
<div class="operation"> |
|
|
|
<el-button v-if="scope.row.status === 20" type="primary" text @click="showAudit(scope.row)"> |
|
|
|
<el-button v-if="scope.row.status === 20" type="primary" text @click="showAudit(scope.row)"> |
|
|
|
审核 |
|
|
|
</el-button> |
|
|
|
<el-button v-else type="primary" text @click="showStep(scope.row)"> |
|
|
|
@ -145,7 +146,8 @@ |
|
|
|
</div> |
|
|
|
<div class="center-item"> |
|
|
|
<el-text style="width:4vw;">转账凭证</el-text> |
|
|
|
<img v-if="auditRow.voucher" :src="auditRow.voucher" style="width: 100%; height: 100%; object-fit: cover;"> |
|
|
|
<img v-if="auditRow.voucher" :src="auditRow.voucher" |
|
|
|
style="width: 100%; height: 100%; object-fit: cover;"> |
|
|
|
<div v-else> |
|
|
|
无转账凭证 |
|
|
|
</div> |
|
|
|
@ -220,7 +222,7 @@ |
|
|
|
|
|
|
|
<el-step title="提交人"> |
|
|
|
<template #title> |
|
|
|
<div>提交人<br>你是死的</div> |
|
|
|
<div>提交人<br>{{ submitterName }}</div> |
|
|
|
</template> |
|
|
|
<template #icon> |
|
|
|
<img v-if="currentStep === 1" src="@/assets/images/待审核.png" alt="步骤图标" |
|
|
|
@ -230,7 +232,10 @@ |
|
|
|
</template> |
|
|
|
</el-step> |
|
|
|
|
|
|
|
<el-step title="地区财务"> |
|
|
|
<el-step> |
|
|
|
<template #title> |
|
|
|
<div>地区财务<br>{{ areaFinance }}</div> |
|
|
|
</template> |
|
|
|
<template #icon> |
|
|
|
<img v-if="currentStep < 2" src="@/assets/images/还没传到.png" alt="步骤图标" |
|
|
|
style="width: 30px; height: 30px;"> |
|
|
|
@ -241,7 +246,10 @@ |
|
|
|
</template> |
|
|
|
</el-step> |
|
|
|
|
|
|
|
<el-step title="地区负责人"> |
|
|
|
<el-step> |
|
|
|
<template #title> |
|
|
|
<div>地区负责人<br>{{ areaCharge }}</div> |
|
|
|
</template> |
|
|
|
<template #icon> |
|
|
|
<img v-if="currentStep < 3" src="@/assets/images/还没传到.png" alt="步骤图标" |
|
|
|
style="width: 30px; height: 30px;"> |
|
|
|
@ -252,7 +260,10 @@ |
|
|
|
</template> |
|
|
|
</el-step> |
|
|
|
|
|
|
|
<el-step title="总部财务"> |
|
|
|
<el-step> |
|
|
|
<template #title> |
|
|
|
<div>总部财务<br>{{ headFinance }}</div> |
|
|
|
</template> |
|
|
|
<template #icon> |
|
|
|
<img v-if="currentStep < 4" src="@/assets/images/还没传到.png" alt="步骤图标" |
|
|
|
style="width: 30px; height: 30px;"> |
|
|
|
@ -263,7 +274,10 @@ |
|
|
|
</template> |
|
|
|
</el-step> |
|
|
|
|
|
|
|
<el-step title="指定执行人"> |
|
|
|
<el-step> |
|
|
|
<template #title> |
|
|
|
<div>指定执行人<br>{{ executor }}</div> |
|
|
|
</template> |
|
|
|
<template #icon> |
|
|
|
<img v-if="currentStep < 5" src="@/assets/images/还没传到.png" alt="步骤图标" |
|
|
|
style="width: 30px; height: 30px;"> |
|
|
|
@ -294,7 +308,7 @@ import { permissionMapping, findMenuById, hasMenuPermission } from "@/utils/menu |
|
|
|
const currentStep = ref(0)// 进度图 |
|
|
|
const searchForm = ref({ |
|
|
|
jwcode: '', |
|
|
|
markets:[] |
|
|
|
markets: [] |
|
|
|
}) |
|
|
|
const addForm = ref({ |
|
|
|
remark: '' |
|
|
|
@ -310,6 +324,11 @@ const pagination = ref({ |
|
|
|
const showAudit2 = ref(false) |
|
|
|
const tableData = ref([]) |
|
|
|
const showSteps = ref(false) |
|
|
|
const submitterName = ref('')// 提交人 |
|
|
|
const areaFinance = ref('')// 地区财务 |
|
|
|
const areaCharge = ref('')// 地区负责人 |
|
|
|
const headFinance = ref('')// 总部财务 |
|
|
|
const executor = ref('')// 指定执行人 |
|
|
|
const uploadRef = ref(null) |
|
|
|
const currencies = ref([ |
|
|
|
{ |
|
|
|
@ -399,22 +418,22 @@ const channelOptions = ref([{ |
|
|
|
} |
|
|
|
]) |
|
|
|
const statusList = ref([ |
|
|
|
{ |
|
|
|
value: 20, |
|
|
|
label: '待审核', |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: '审核通过', |
|
|
|
label: '审核通过' |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: '审核驳回', |
|
|
|
label: '审核驳回' |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: 41, |
|
|
|
label: '退款完成' |
|
|
|
} |
|
|
|
{ |
|
|
|
value: 20, |
|
|
|
label: '待审核', |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: '审核通过', |
|
|
|
label: '审核通过' |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: '审核驳回', |
|
|
|
label: '审核驳回' |
|
|
|
}, |
|
|
|
{ |
|
|
|
value: 41, |
|
|
|
label: '退款完成' |
|
|
|
} |
|
|
|
]) |
|
|
|
// 查全部 |
|
|
|
const getRefund = async function () { |
|
|
|
@ -423,11 +442,11 @@ const getRefund = async function () { |
|
|
|
return |
|
|
|
} |
|
|
|
try { |
|
|
|
searchForm.value.statuses = [20,22,30,32,40,41] // 看不到进度没到这里的 |
|
|
|
if(searchForm.value.statuses === '审核通过'){ |
|
|
|
statuses = [30,40] |
|
|
|
}else if(searchForm.value.statuses === '审核驳回'){ |
|
|
|
statuses = [22,32] |
|
|
|
searchForm.value.statuses = [20, 22, 30, 32, 40, 41] // 看不到进度没到这里的 |
|
|
|
if (searchForm.value.statuses === '审核通过') { |
|
|
|
statuses = [30, 40] |
|
|
|
} else if (searchForm.value.statuses === '审核驳回') { |
|
|
|
statuses = [22, 32] |
|
|
|
} |
|
|
|
const params = { |
|
|
|
pageNum: pagination.value.pageNum, |
|
|
|
@ -471,7 +490,8 @@ const handlePass = async function () { |
|
|
|
id: auditRow.value.id, |
|
|
|
status: 30, |
|
|
|
rejectReason: addForm.value.remark, |
|
|
|
adminId: adminData.value.id |
|
|
|
areaCharge: adminData.value.adminName, |
|
|
|
auditId: auditRow.value.auditId |
|
|
|
} |
|
|
|
const result = await API({ |
|
|
|
url: '/Money/review', |
|
|
|
@ -497,7 +517,8 @@ const handleReject = async function () { |
|
|
|
id: auditRow.value.id, |
|
|
|
status: 22, |
|
|
|
rejectReason: addForm.value.remark, |
|
|
|
adminId: adminData.value.id |
|
|
|
areaCharge: adminData.value.adminName, |
|
|
|
auditId: auditRow.value.auditId |
|
|
|
} |
|
|
|
const result = await API({ |
|
|
|
url: '/Money/review', |
|
|
|
@ -514,24 +535,168 @@ const handleReject = async function () { |
|
|
|
} |
|
|
|
const showStep = function (row) { |
|
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.refundChargeProgShow)) { |
|
|
|
ElMessage.error('无此权限') |
|
|
|
return |
|
|
|
} |
|
|
|
if (row.areaService !== null || row.areaService !== '') { |
|
|
|
currentStep.value = 1 |
|
|
|
} |
|
|
|
if (row.areaFinance !== null || row.areaFinance !== '') { |
|
|
|
currentStep.value = 2 |
|
|
|
} |
|
|
|
if (row.areaCharge !== null || row.areaCharge !== '') { |
|
|
|
currentStep.value = 3 |
|
|
|
ElMessage.error('无此权限'); |
|
|
|
return; |
|
|
|
} |
|
|
|
if (row.headFinance !== null || row.headFinance !== '') { |
|
|
|
currentStep.value = 4 |
|
|
|
console.log("row", row) |
|
|
|
currentStep.value = 1; |
|
|
|
if (row.status === 41) { |
|
|
|
executor.value = row.executorName |
|
|
|
currentStep.value = 6; |
|
|
|
} else { |
|
|
|
if (row.areaServise !== null && row.areaServise !== '') { |
|
|
|
submitterName.value = row.areaServise |
|
|
|
console.log(submitterName.value) |
|
|
|
currentStep.value = 2; |
|
|
|
} |
|
|
|
if (row.areaFinance !== null && row.areaFinance !== '') { |
|
|
|
areaFinance.value = row.areaFinance |
|
|
|
console.log(areaFinance.value) |
|
|
|
currentStep.value = 3; |
|
|
|
} |
|
|
|
if (row.areaCharge !== null && row.areaCharge !== '') { |
|
|
|
areaCharge.value = row.areaCharge |
|
|
|
console.log(areaCharge.value) |
|
|
|
currentStep.value = 4; |
|
|
|
} |
|
|
|
if (row.headFinance !== null && row.headFinance !== '') { |
|
|
|
headFinance.value = row.headFinance |
|
|
|
console.log(headFinance.value) |
|
|
|
currentStep.value = 5; |
|
|
|
} |
|
|
|
} |
|
|
|
console.log("看看顺序到哪了",currentStep.value) |
|
|
|
showSteps.value = true |
|
|
|
console.log("当前步骤:", currentStep.value); |
|
|
|
showSteps.value = true; |
|
|
|
} |
|
|
|
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 hideReject = function () { |
|
|
|
showReject.value = false |
|
|
|
addForm.value.remark = '' |
|
|
|
@ -563,6 +728,7 @@ onMounted(() => { |
|
|
|
:deep(.el-table__header th) { |
|
|
|
background-color: #F3FAFE !important; |
|
|
|
} |
|
|
|
|
|
|
|
.condition { |
|
|
|
width: 82vw; |
|
|
|
display: flex; |
|
|
|
|