|
|
@ -335,11 +335,12 @@ |
|
|
</template> |
|
|
</template> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</template> |
|
|
</template> |
|
|
|
|
|
|
|
|
<script setup> |
|
|
<script setup> |
|
|
import { ref, onMounted, computed } from 'vue' |
|
|
import { ref, onMounted, computed } from 'vue' |
|
|
import { ElMessage } from 'element-plus' |
|
|
import { ElMessage } from 'element-plus' |
|
|
import API from '@/util/http.js' |
|
|
import API from '@/util/http.js' |
|
|
const uploadUrl = 'https://api.homilychart.com/hljw/api/aws/upload' |
|
|
|
|
|
|
|
|
const uploadUrl = 'https://api.homilychart.com/hljw/api/aws/upload ' |
|
|
import { useAdminStore } from "@/store/index.js" |
|
|
import { useAdminStore } from "@/store/index.js" |
|
|
import { storeToRefs } from "pinia" |
|
|
import { storeToRefs } from "pinia" |
|
|
import dayjs from 'dayjs' |
|
|
import dayjs from 'dayjs' |
|
|
@ -355,8 +356,8 @@ const { t } = useI18n() |
|
|
|
|
|
|
|
|
const currentStep = ref(0)// 进度图 |
|
|
const currentStep = ref(0)// 进度图 |
|
|
const searchForm = ref({ |
|
|
const searchForm = ref({ |
|
|
jwcode: '', |
|
|
|
|
|
markets: [] |
|
|
|
|
|
|
|
|
jwcode: '', |
|
|
|
|
|
markets: [] |
|
|
}) |
|
|
}) |
|
|
const isHeadquarters = computed(() => { |
|
|
const isHeadquarters = computed(() => { |
|
|
const m = adminData.value.markets |
|
|
const m = adminData.value.markets |
|
|
@ -364,17 +365,17 @@ const isHeadquarters = computed(() => { |
|
|
}) |
|
|
}) |
|
|
const dateRange = ref([]) |
|
|
const dateRange = ref([]) |
|
|
const addForm = ref({ |
|
|
const addForm = ref({ |
|
|
remark: '' |
|
|
|
|
|
|
|
|
remark: '' |
|
|
}) |
|
|
}) |
|
|
const auditForm = ref({ |
|
|
const auditForm = ref({ |
|
|
refundType: '' |
|
|
|
|
|
|
|
|
refundType: '' |
|
|
}) |
|
|
}) |
|
|
const isReject = ref(false)// 进度图有没有驳回状态 |
|
|
const isReject = ref(false)// 进度图有没有驳回状态 |
|
|
const showReject = ref(false) |
|
|
const showReject = ref(false) |
|
|
const pagination = ref({ |
|
|
const pagination = ref({ |
|
|
pageNum: 1, |
|
|
|
|
|
pageSize: 50, |
|
|
|
|
|
total: 0 |
|
|
|
|
|
|
|
|
pageNum: 1, |
|
|
|
|
|
pageSize: 50, |
|
|
|
|
|
total: 0 |
|
|
}) |
|
|
}) |
|
|
const market = ref([]) |
|
|
const market = ref([]) |
|
|
const tableData = ref([]) |
|
|
const tableData = ref([]) |
|
|
@ -392,14 +393,14 @@ const exportList = ref([]) |
|
|
// 导出列表加载状态 |
|
|
// 导出列表加载状态 |
|
|
const exportListLoading = ref(false) |
|
|
const exportListLoading = ref(false) |
|
|
const statusStepMap = { |
|
|
const statusStepMap = { |
|
|
10: [1, false], |
|
|
|
|
|
12: [2, true], |
|
|
|
|
|
20: [3, false], |
|
|
|
|
|
22: [4, true], |
|
|
|
|
|
30: [5, false], |
|
|
|
|
|
32: [6, true], |
|
|
|
|
|
40: [7, false], |
|
|
|
|
|
41: [8, false] |
|
|
|
|
|
|
|
|
10: [1, false], |
|
|
|
|
|
12: [2, true], |
|
|
|
|
|
20: [3, false], |
|
|
|
|
|
22: [4, true], |
|
|
|
|
|
30: [5, false], |
|
|
|
|
|
32: [6, true], |
|
|
|
|
|
40: [7, false], |
|
|
|
|
|
41: [8, false] |
|
|
} |
|
|
} |
|
|
const currencies = computed(() => [ |
|
|
const currencies = computed(() => [ |
|
|
t('cash.currency.usd'), |
|
|
t('cash.currency.usd'), |
|
|
@ -450,8 +451,8 @@ const getRefund = async function () { |
|
|
statusParam.value = [10, 20, 22, 30, 32, 40, 41] |
|
|
statusParam.value = [10, 20, 22, 30, 32, 40, 41] |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const goodsName = searchForm.value.goodsName && searchForm.value.goodsName.length > 0 |
|
|
|
|
|
? searchForm.value.goodsName[searchForm.value.goodsName.length - 1] : '' |
|
|
|
|
|
|
|
|
const goodsName = searchForm.value.goodsName && searchForm.value.goodsName.length > 0 |
|
|
|
|
|
? searchForm.value.goodsName[searchForm.value.goodsName.length - 1] : '' |
|
|
|
|
|
|
|
|
if (searchForm.value.jwcode) { |
|
|
if (searchForm.value.jwcode) { |
|
|
const isPositiveInteger = /^[1-9]\d*$/.test(searchForm.value.jwcode); |
|
|
const isPositiveInteger = /^[1-9]\d*$/.test(searchForm.value.jwcode); |
|
|
@ -466,31 +467,28 @@ const getRefund = async function () { |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const params = { |
|
|
|
|
|
pageNum: pagination.value.pageNum, |
|
|
|
|
|
pageSize: pagination.value.pageSize, |
|
|
|
|
|
cashRecordDTO: { |
|
|
|
|
|
jwcode: searchForm.value.jwcode,//精网号 |
|
|
|
|
|
name: searchForm.value.name,//姓名 |
|
|
|
|
|
markets: searchForm.value.markets && searchForm.value.markets.length > 0 ? [searchForm.value.markets[searchForm.value.markets.length - 1]] : [], |
|
|
|
|
|
goodsName: goodsName,//商品名 |
|
|
|
|
|
statuses: statusParam.value,//10:地区财务待审核;12:地区财务驳回; |
|
|
|
|
|
// 20:地区负责人待审核;22:地区负责人驳回; |
|
|
|
|
|
// 30:总部财务待审核;32:总部财务驳回; |
|
|
|
|
|
// 40:执行人待处理;41:执行人已处理,退款完成; |
|
|
|
|
|
paymentCurrency: CurrencyForId(searchForm.value.paymentCurrency),//付款币种 |
|
|
|
|
|
payType: searchForm.value.payType,//支付方式 |
|
|
|
|
|
startTime: dateRange.value && dateRange.value[0] ? dayjs(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
endTime: dateRange.value && dateRange.value[1] ? dayjs(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
adminId: adminData.value.id |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
const params = { |
|
|
|
|
|
pageNum: pagination.value.pageNum, |
|
|
|
|
|
pageSize: pagination.value.pageSize, |
|
|
|
|
|
cashRecordDTO: { |
|
|
|
|
|
jwcode: searchForm.value.jwcode, |
|
|
|
|
|
name: searchForm.value.name, |
|
|
|
|
|
markets: searchForm.value.markets && searchForm.value.markets.length > 0 ? [searchForm.value.markets[searchForm.value.markets.length - 1]] : [], |
|
|
|
|
|
goodsName: goodsName, |
|
|
|
|
|
statuses: statusParam.value, |
|
|
|
|
|
paymentCurrency: CurrencyForId(searchForm.value.paymentCurrency), |
|
|
|
|
|
payType: searchForm.value.payType, |
|
|
|
|
|
startTime: dateRange.value && dateRange.value[0] ? dayjs(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
endTime: dateRange.value && dateRange.value[1] ? dayjs(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
adminId: adminData.value.id |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
const result = await API({ |
|
|
|
|
|
url: '/Money/select', |
|
|
|
|
|
method: 'POST', |
|
|
|
|
|
data: params |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
const result = await API({ |
|
|
|
|
|
url: '/Money/select', |
|
|
|
|
|
method: 'POST', |
|
|
|
|
|
data: params |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
tableData.value = result.data.list || [] |
|
|
tableData.value = result.data.list || [] |
|
|
pagination.value.total = result.data.total || 0 |
|
|
pagination.value.total = result.data.total || 0 |
|
|
@ -498,6 +496,7 @@ const getRefund = async function () { |
|
|
ElMessage.error(error.message || t('elmessage.searchFailed')) |
|
|
ElMessage.error(error.message || t('elmessage.searchFailed')) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 审核通过 |
|
|
// 审核通过 |
|
|
const handlePass = async function () { |
|
|
const handlePass = async function () { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.audit_area_finance_refund)) { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.audit_area_finance_refund)) { |
|
|
@ -525,6 +524,7 @@ const handlePass = async function () { |
|
|
ElMessage.error(error.message || t('elmessage.approveFailed')) |
|
|
ElMessage.error(error.message || t('elmessage.approveFailed')) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 审核驳回 |
|
|
// 审核驳回 |
|
|
const handleReject = async function () { |
|
|
const handleReject = async function () { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.audit_area_finance_refund)) { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.audit_area_finance_refund)) { |
|
|
@ -558,58 +558,53 @@ const handleReject = async function () { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const getMarket = async function () { |
|
|
const getMarket = async function () { |
|
|
try { |
|
|
|
|
|
const result = await API({ |
|
|
|
|
|
|
|
|
|
|
|
url: '/market/selectMarket', |
|
|
|
|
|
}) |
|
|
|
|
|
console.log('看看地区树', result) |
|
|
|
|
|
|
|
|
|
|
|
const transformTree = (nodes) => { |
|
|
|
|
|
const allChildren = nodes.flatMap(node => node.children || []); |
|
|
|
|
|
|
|
|
|
|
|
return allChildren.map(child => { |
|
|
|
|
|
const grandchildren = child.children && child.children.length |
|
|
|
|
|
? transformTree([child]) |
|
|
|
|
|
: null; |
|
|
|
|
|
|
|
|
|
|
|
return { |
|
|
|
|
|
value: child.id, |
|
|
|
|
|
label: child.name, |
|
|
|
|
|
children: grandchildren |
|
|
|
|
|
}; |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
const result = await API({ |
|
|
|
|
|
url: '/market/selectMarket', |
|
|
|
|
|
}) |
|
|
|
|
|
const transformTree = (nodes) => { |
|
|
|
|
|
const allChildren = nodes.flatMap(node => node.children || []); |
|
|
|
|
|
return allChildren.map(child => { |
|
|
|
|
|
const grandchildren = child.children && child.children.length |
|
|
|
|
|
? transformTree([child]) |
|
|
|
|
|
: null; |
|
|
|
|
|
return { |
|
|
|
|
|
value: child.id, |
|
|
|
|
|
label: child.name, |
|
|
|
|
|
children: grandchildren |
|
|
}; |
|
|
}; |
|
|
market.value = transformTree(result.data) |
|
|
|
|
|
console.log('转换后的地区树==============', market.value) |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
console.log('请求失败', error) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
}; |
|
|
|
|
|
market.value = transformTree(result.data) |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
console.log('请求失败', error) |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const showStep = function (row) { |
|
|
const showStep = function (row) { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.track_area_finance_refund_progress)) { |
|
|
if (!hasMenuPermission(menuTree.value, permissionMapping.track_area_finance_refund_progress)) { |
|
|
ElMessage.error(t('elmessage.noPermission')) |
|
|
ElMessage.error(t('elmessage.noPermission')) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
isReject.value = false |
|
|
|
|
|
submitter.value = row.submitter || '' |
|
|
|
|
|
areaFinance.value = row.areaFinance || '' |
|
|
|
|
|
areaCharge.value = row.areaCharge || '' |
|
|
|
|
|
headFinance.value = row.headFinance || '' |
|
|
|
|
|
executor.value = row.executorName || '' |
|
|
|
|
|
currentStep.value = 1 |
|
|
|
|
|
|
|
|
|
|
|
const status = row.status |
|
|
|
|
|
if (statusStepMap[status]) { |
|
|
|
|
|
const [step, reject] = statusStepMap[status] |
|
|
|
|
|
currentStep.value = step |
|
|
|
|
|
isReject.value = reject |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
console.log('步骤条状态', currentStep.value) |
|
|
|
|
|
showSteps.value = true |
|
|
|
|
|
|
|
|
isReject.value = false |
|
|
|
|
|
submitter.value = row.submitter || '' |
|
|
|
|
|
areaFinance.value = row.areaFinance || '' |
|
|
|
|
|
areaCharge.value = row.areaCharge || '' |
|
|
|
|
|
headFinance.value = row.headFinance || '' |
|
|
|
|
|
executor.value = row.executorName || '' |
|
|
|
|
|
currentStep.value = 1 |
|
|
|
|
|
|
|
|
|
|
|
const status = row.status |
|
|
|
|
|
if (statusStepMap[status]) { |
|
|
|
|
|
const [step, reject] = statusStepMap[status] |
|
|
|
|
|
currentStep.value = step |
|
|
|
|
|
isReject.value = reject |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
showSteps.value = true |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const exportExcel = async function () { |
|
|
const exportExcel = async function () { |
|
|
const statusParam = ref([10, 20, 22, 30, 32, 40, 41]) |
|
|
const statusParam = ref([10, 20, 22, 30, 32, 40, 41]) |
|
|
if (searchForm.value.statuses === t('cash.statusList.passed')) { |
|
|
if (searchForm.value.statuses === t('cash.statusList.passed')) { |
|
|
@ -624,8 +619,8 @@ const exportExcel = async function () { |
|
|
statusParam.value = [10, 20, 22, 30, 32, 40, 41] |
|
|
statusParam.value = [10, 20, 22, 30, 32, 40, 41] |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const goodsName = searchForm.value.goodsName && searchForm.value.goodsName.length > 0 |
|
|
|
|
|
? searchForm.value.goodsName[searchForm.value.goodsName.length - 1] : ''; |
|
|
|
|
|
|
|
|
const goodsName = searchForm.value.goodsName && searchForm.value.goodsName.length > 0 |
|
|
|
|
|
? searchForm.value.goodsName[searchForm.value.goodsName.length - 1] : ''; |
|
|
|
|
|
|
|
|
if (searchForm.value.jwcode) { |
|
|
if (searchForm.value.jwcode) { |
|
|
const isPositiveInteger = /^[1-9]\d*$/.test(searchForm.value.jwcode); |
|
|
const isPositiveInteger = /^[1-9]\d*$/.test(searchForm.value.jwcode); |
|
|
@ -640,25 +635,22 @@ const exportExcel = async function () { |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const params = { |
|
|
|
|
|
pageNum: pagination.value.pageNum, |
|
|
|
|
|
pageSize: pagination.value.pageSize, |
|
|
|
|
|
cashRecordDTO: { |
|
|
|
|
|
jwcode: searchForm.value.jwcode,//精网号 |
|
|
|
|
|
name: searchForm.value.name,//姓名 |
|
|
|
|
|
markets: searchForm.value.markets && searchForm.value.markets.length > 0 ? [searchForm.value.markets[searchForm.value.markets.length - 1]] : [], |
|
|
|
|
|
goodsName: goodsName,//商品名 |
|
|
|
|
|
statuses: statusParam.value,//10:地区财务待审核;12:地区财务驳回; |
|
|
|
|
|
// 20:地区负责人待审核;22:地区负责人驳回; |
|
|
|
|
|
// 30:总部财务待审核;32:总部财务驳回; |
|
|
|
|
|
// 40:执行人待处理;41:执行人已处理,退款完成; |
|
|
|
|
|
paymentCurrency: CurrencyForId(searchForm.value.paymentCurrency),//付款币种 |
|
|
|
|
|
payType: searchForm.value.payType,//支付方式 |
|
|
|
|
|
startTime: dateRange.value && dateRange.value[0] ? dayjs(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
endTime: dateRange.value && dateRange.value[1] ? dayjs(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
adminId: adminData.value.id |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
const params = { |
|
|
|
|
|
pageNum: pagination.value.pageNum, |
|
|
|
|
|
pageSize: pagination.value.pageSize, |
|
|
|
|
|
cashRecordDTO: { |
|
|
|
|
|
jwcode: searchForm.value.jwcode, |
|
|
|
|
|
name: searchForm.value.name, |
|
|
|
|
|
markets: searchForm.value.markets && searchForm.value.markets.length > 0 ? [searchForm.value.markets[searchForm.value.markets.length - 1]] : [], |
|
|
|
|
|
goodsName: goodsName, |
|
|
|
|
|
statuses: statusParam.value, |
|
|
|
|
|
paymentCurrency: CurrencyForId(searchForm.value.paymentCurrency), |
|
|
|
|
|
payType: searchForm.value.payType, |
|
|
|
|
|
startTime: dateRange.value && dateRange.value[0] ? dayjs(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
endTime: dateRange.value && dateRange.value[1] ? dayjs(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss') : "", |
|
|
|
|
|
adminId: adminData.value.id |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
const res = await API({ url: '/export/exportFinance', data: params }) |
|
|
const res = await API({ url: '/export/exportFinance', data: params }) |
|
|
if (res.code === 200) { |
|
|
if (res.code === 200) { |
|
|
@ -667,10 +659,12 @@ const exportExcel = async function () { |
|
|
ElMessage.error(res.msg || t('elmessage.exportFailed')) |
|
|
ElMessage.error(res.msg || t('elmessage.exportFailed')) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const openExportList = () => { |
|
|
const openExportList = () => { |
|
|
getExportList() |
|
|
|
|
|
exportListVisible.value = true |
|
|
|
|
|
|
|
|
getExportList() |
|
|
|
|
|
exportListVisible.value = true |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const getExportList = async () => { |
|
|
const getExportList = async () => { |
|
|
exportListLoading.value = true |
|
|
exportListLoading.value = true |
|
|
try { |
|
|
try { |
|
|
@ -690,6 +684,7 @@ const getExportList = async () => { |
|
|
exportListLoading.value = false |
|
|
exportListLoading.value = false |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const downloadExportFile = (item) => { |
|
|
const downloadExportFile = (item) => { |
|
|
if (item.state === 2) { |
|
|
if (item.state === 2) { |
|
|
const link = document.createElement('a') |
|
|
const link = document.createElement('a') |
|
|
@ -700,22 +695,17 @@ const downloadExportFile = (item) => { |
|
|
ElMessage.warning(t('elmessage.exportingInProgress')) |
|
|
ElMessage.warning(t('elmessage.exportingInProgress')) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
//根据状态返回对应的标签类型 |
|
|
|
|
|
|
|
|
|
|
|
const getTagType = (state) => { |
|
|
const getTagType = (state) => { |
|
|
switch (state) { |
|
|
|
|
|
case 0: |
|
|
|
|
|
return 'info'; |
|
|
|
|
|
case 1: |
|
|
|
|
|
return 'primary'; |
|
|
|
|
|
case 2: |
|
|
|
|
|
return 'success'; |
|
|
|
|
|
case 3: |
|
|
|
|
|
return 'danger'; |
|
|
|
|
|
default: |
|
|
|
|
|
return 'info'; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
switch (state) { |
|
|
|
|
|
case 0: return 'info'; |
|
|
|
|
|
case 1: return 'primary'; |
|
|
|
|
|
case 2: return 'success'; |
|
|
|
|
|
case 3: return 'danger'; |
|
|
|
|
|
default: return 'info'; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
//根据状态返回对应的标签文案 |
|
|
|
|
|
|
|
|
|
|
|
const getTagText = (state) => { |
|
|
const getTagText = (state) => { |
|
|
switch (state) { |
|
|
switch (state) { |
|
|
case 0: |
|
|
case 0: |
|
|
@ -730,178 +720,190 @@ const getTagText = (state) => { |
|
|
return t('elmessage.unknownStatus'); |
|
|
return t('elmessage.unknownStatus'); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const showAudit2 = function (row) { |
|
|
const showAudit2 = function (row) { |
|
|
auditRow.value = row |
|
|
|
|
|
showAudit.value = true |
|
|
|
|
|
|
|
|
auditRow.value = row |
|
|
|
|
|
showAudit.value = true |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const reset = function () { |
|
|
const reset = function () { |
|
|
searchForm.value = { |
|
|
|
|
|
jwcode: '', |
|
|
|
|
|
markets: [], |
|
|
|
|
|
statuses: [] |
|
|
|
|
|
} |
|
|
|
|
|
// 重置页码 |
|
|
|
|
|
pagination.value.pageNum = 1 |
|
|
|
|
|
dateRange.value = [] |
|
|
|
|
|
getRefund() |
|
|
|
|
|
|
|
|
searchForm.value = { |
|
|
|
|
|
jwcode: '', |
|
|
|
|
|
markets: [], |
|
|
|
|
|
statuses: [] |
|
|
|
|
|
} |
|
|
|
|
|
pagination.value.pageNum = 1 |
|
|
|
|
|
dateRange.value = [] |
|
|
|
|
|
getRefund() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const hideReject = function () { |
|
|
const hideReject = function () { |
|
|
showReject.value = false |
|
|
|
|
|
addForm.value.remark = '' |
|
|
|
|
|
|
|
|
showReject.value = false |
|
|
|
|
|
addForm.value.remark = '' |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const defaultTime = [ |
|
|
const defaultTime = [ |
|
|
new Date(2000, 1, 1, 0, 0, 0), |
|
|
|
|
|
new Date(2000, 2, 1, 23, 59, 59), |
|
|
|
|
|
|
|
|
new Date(2000, 1, 1, 0, 0, 0), |
|
|
|
|
|
new Date(2000, 2, 1, 23, 59, 59), |
|
|
] |
|
|
] |
|
|
|
|
|
|
|
|
const disabledDate = (time) => { |
|
|
const disabledDate = (time) => { |
|
|
const limitDate = new Date(2025, 0, 1); |
|
|
|
|
|
return time.getTime() < limitDate.getTime(); |
|
|
|
|
|
|
|
|
const limitDate = new Date(2025, 0, 1); |
|
|
|
|
|
return time.getTime() < limitDate.getTime(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const handlePageSizeChange = function (val) { |
|
|
const handlePageSizeChange = function (val) { |
|
|
pagination.value.pageSize = val |
|
|
|
|
|
getRefund() |
|
|
|
|
|
|
|
|
pagination.value.pageSize = val |
|
|
|
|
|
getRefund() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const handleCurrentChange = function (val) { |
|
|
const handleCurrentChange = function (val) { |
|
|
pagination.value.pageNum = val |
|
|
|
|
|
getRefund() |
|
|
|
|
|
|
|
|
pagination.value.pageNum = val |
|
|
|
|
|
getRefund() |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const handleDatePickerChange = () => { |
|
|
|
|
|
// 可选:若需清除其他时间快捷按钮状态 |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
onMounted(() => { |
|
|
onMounted(() => { |
|
|
console.log('???????????????????', adminData.value) |
|
|
|
|
|
getRefund() |
|
|
|
|
|
getMarket() |
|
|
|
|
|
|
|
|
getRefund() |
|
|
|
|
|
getMarket() |
|
|
}) |
|
|
}) |
|
|
</script> |
|
|
</script> |
|
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
<style scoped lang="scss"> |
|
|
|
|
|
/* 样式完全保留,仅注释微调 */ |
|
|
:deep(.el-table__header-wrapper), |
|
|
:deep(.el-table__header-wrapper), |
|
|
:deep(.el-table__body-wrapper), |
|
|
:deep(.el-table__body-wrapper), |
|
|
:deep(.el-table__cell), |
|
|
:deep(.el-table__cell), |
|
|
:deep(.el-table__body td) { |
|
|
:deep(.el-table__body td) { |
|
|
background-color: #F3FAFE !important; |
|
|
|
|
|
|
|
|
background-color: #F3FAFE !important; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
:deep(.el-table__header th) { |
|
|
:deep(.el-table__header th) { |
|
|
background-color: #F3FAFE !important; |
|
|
|
|
|
|
|
|
background-color: #F3FAFE !important; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.condition { |
|
|
.condition { |
|
|
width: 82vw; |
|
|
|
|
|
|
|
|
width: 82vw; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
height: 4vh; |
|
|
|
|
|
|
|
|
|
|
|
.item1 { |
|
|
|
|
|
width: 18%; |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
height: 4vh; |
|
|
|
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
margin-right: 0.5vw; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.item1 { |
|
|
|
|
|
width: 18%; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
margin-right: 0.5vw; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.item2 { |
|
|
|
|
|
width: 18%; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-right: 0.5vw; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.item2 { |
|
|
|
|
|
width: 18%; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-right: 0.5vw; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.audit { |
|
|
.audit { |
|
|
display: flex; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
height: auto; |
|
|
|
|
|
min-height: 40vh; |
|
|
|
|
|
|
|
|
|
|
|
.top { |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: 22vh; |
|
|
|
|
|
|
|
|
|
|
|
.top-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
display: flex; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
height: auto; |
|
|
|
|
|
min-height: 40vh; |
|
|
|
|
|
|
|
|
|
|
|
.top { |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: 22vh; |
|
|
|
|
|
|
|
|
|
|
|
.top-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.smallTitle { |
|
|
|
|
|
background-color: white; |
|
|
|
|
|
color: rgb(64, 158, 255); |
|
|
|
|
|
border-color: rgb(64, 158, 255); |
|
|
|
|
|
margin-bottom: 0.5vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.smallTitle { |
|
|
|
|
|
background-color: white; |
|
|
|
|
|
color: rgb(64, 158, 255); |
|
|
|
|
|
border-color: rgb(64, 158, 255); |
|
|
|
|
|
margin-bottom: 0.5vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.center { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.center { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.dialog-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.dialog-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.center-left { |
|
|
|
|
|
width: 60%; |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.center-left { |
|
|
|
|
|
width: 60%; |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.image { |
|
|
|
|
|
width: 4vw !important; |
|
|
|
|
|
height: 4vw !important; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.image { |
|
|
|
|
|
width: 4vw !important; |
|
|
|
|
|
height: 4vw !important; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
:deep(.el-upload--picture-card) { |
|
|
|
|
|
width: 4vw !important; |
|
|
|
|
|
height: 4vw !important; |
|
|
|
|
|
padding: 0 !important; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
:deep(.el-upload--picture-card) { |
|
|
|
|
|
width: 4vw !important; |
|
|
|
|
|
height: 4vw !important; |
|
|
|
|
|
padding: 0 !important; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.center-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.center-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.center-right { |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.center-right { |
|
|
|
|
|
height: 35vh; |
|
|
|
|
|
|
|
|
.right-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.right-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.bottom { |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: auto; |
|
|
|
|
|
padding-bottom: 1vh; |
|
|
|
|
|
|
|
|
.bottom { |
|
|
|
|
|
width: 30vw; |
|
|
|
|
|
height: auto; |
|
|
|
|
|
padding-bottom: 1vh; |
|
|
|
|
|
|
|
|
.bottom-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.bottom-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
margin-bottom: 1vh; |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.steps { |
|
|
.steps { |
|
|
.steps-content { |
|
|
|
|
|
padding-top: 15vw; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.steps-content { |
|
|
|
|
|
padding-top: 15vw; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.steps-status { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.steps-status { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.steps-btn { |
|
|
|
|
|
height: 15vh; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.steps-btn { |
|
|
|
|
|
height: 15vh; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
</style> |
|
|
</style> |