更新工作台页面,优化交易数据展示,修复核销订单金额等数据展示错误,并调整相关API接口路径
This commit is contained in:
parent
8df6961a45
commit
6e701759dc
|
@ -22,3 +22,16 @@ export function apiStoreRefundOrderDetail(params: any) {
|
|||
return request.get({ url: '/store_order/storeRefundOrder/detail', params })
|
||||
}
|
||||
|
||||
|
||||
|
||||
export function apiStoreFinanceBillLists(params: any) {
|
||||
return request.get({ url: '/store_cash_finance_flow/storecashfinanceflow/lists', params })
|
||||
}
|
||||
|
||||
export function apiStoreFinanceBillEdit(params: any) {
|
||||
return request.post({ url: '/store_cash_finance_flow/storecashfinanceflow/edit', params })
|
||||
}
|
||||
|
||||
export function apiStoreFinanceBillDetail(params: any) {
|
||||
return request.get({ url: '/store_cash_finance_flow/storecashfinanceflow/detail', params })
|
||||
}
|
|
@ -35,15 +35,15 @@
|
|||
<div>{{ detailData.pay_time }}</div>
|
||||
</li>
|
||||
|
||||
<li v-if="!orderType">
|
||||
<!-- <li v-if="!orderType">
|
||||
<div>退款件数</div>
|
||||
<!-- <div>{{ detailData.pay_time }}</div> -->
|
||||
<div>{{ detailData.pay_time }}</div>
|
||||
</li>
|
||||
|
||||
<li v-if="!orderType">
|
||||
<div>退款时间</div>
|
||||
<!-- <div>{{ detailData.pay_time }}</div> -->
|
||||
</li>
|
||||
<div>{{ detailData.pay_time }}</div>
|
||||
</li> -->
|
||||
</ul>
|
||||
|
||||
<!-- content -->
|
||||
|
|
|
@ -0,0 +1,95 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-card class="!border-none mb-4" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="随便搜">
|
||||
<el-select class="flex-1" v-model="queryParams.status" clearable placeholder="请选择商品状态">
|
||||
<el-option label="销售中" :value="0" />
|
||||
<el-option label="仓库中" :value="0" />
|
||||
<el-option label="已售罄" :value="0" />
|
||||
<el-option label="库存预警" :value="0" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="随便搜" prop="nature">
|
||||
<el-input v-model="queryParams.status" clearable placeholder="请输入商品名称" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="resetPage">查询</el-button>
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
|
||||
<el-table-column label="入账门店" prop="progress" show-overflow-tooltip />
|
||||
<el-table-column label="入账时间" prop="progress" show-overflow-tooltip />
|
||||
<el-table-column label="应入帐金额" prop="progress" show-overflow-tooltip />
|
||||
<el-table-column label="已入账金额" prop="progress" show-overflow-tooltip />
|
||||
<el-table-column label="未入账金额" prop="progress" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="170" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<el-button type="primary" link @click="handleEdit(row)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button type="primary" link @click="handleEdit(row)">
|
||||
起码子
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="flex mt-4 justify-end">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
</el-card>
|
||||
<!-- <detailPopup ref="editRef" /> -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="manageProjectLists">
|
||||
import { ref, reactive } from "vue"
|
||||
import { usePaging } from '@/hooks/usePaging'
|
||||
// import { apiGoodsListLists, apiStatus, apiGoodsTypeLists } from '@/api/goodsList'
|
||||
// import detailPopup from './detail.vue'
|
||||
|
||||
// const editRef = shallowRef<InstanceType<typeof EditPopup>>()
|
||||
// 是否显示编辑框
|
||||
// const showDetail = ref(false)
|
||||
|
||||
|
||||
// 查询条件
|
||||
const queryParams = reactive({
|
||||
status: ""
|
||||
})
|
||||
|
||||
// 选中数据
|
||||
const selectData = ref<any[]>([])
|
||||
|
||||
// 表格选择后回调事件
|
||||
const handleSelectionChange = (val: any[]) => {
|
||||
selectData.value = val.map(({ id }) => id)
|
||||
}
|
||||
|
||||
|
||||
// 分页相关
|
||||
const { pager, getLists, resetParams, resetPage } = usePaging({
|
||||
// fetchFun: apiGoodsListLists,
|
||||
params: queryParams
|
||||
})
|
||||
|
||||
// 详情
|
||||
const handleEdit = async (data: any) => {
|
||||
// editRef.value?.open()
|
||||
}
|
||||
|
||||
// getLists()
|
||||
</script>
|
|
@ -0,0 +1,91 @@
|
|||
<template>
|
||||
<div class="edit-popup">
|
||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" :show-footer="false">
|
||||
<el-descriptions :column="1" border>
|
||||
<el-descriptions-item label="开户账号" label-class-name="my-label">
|
||||
<span>{{ formData.bank_code }}</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="开户银行" label-class-name="my-label">
|
||||
<span>{{ formData.bank_name }}</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="开户网点" label-class-name="my-label">
|
||||
<span>{{ formData.bank_address }}</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="应付金额" label-class-name="my-label">
|
||||
<span class="text-3xl"> ¥{{ formData.receivable }}</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="备注" label-class-name="my-label">
|
||||
<span>{{ formData.remark }}</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="收款码" label-class-name="my-label">
|
||||
<el-image class="w-[100px] h-[100px] mr-2" :src="formData.image" :preview-src-list="[formData.image]" />
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
<div class="flex mt-4 justify-end">
|
||||
<el-button @click="close">取消</el-button>
|
||||
<el-button type="primary" @click="confirm">确认已支付</el-button>
|
||||
</div>
|
||||
</popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="manageProjectEdit">
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
import { apiStoreFinanceBillEdit, apiStoreFinanceBillDetail } from '@/api/store_order'
|
||||
|
||||
const emit = defineEmits(['success', 'close'])
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
|
||||
|
||||
// 弹窗标题
|
||||
const popupTitle = computed(() => {
|
||||
return '支付详情'
|
||||
})
|
||||
|
||||
|
||||
const formData = ref({
|
||||
"cash_price": "",
|
||||
"receivable": "",
|
||||
"receipts": "",
|
||||
"file": "",
|
||||
"remark": null,
|
||||
"create_time": "",
|
||||
"update_time": "",
|
||||
"delete_time": null,
|
||||
"image": "",
|
||||
"bank_code": "",
|
||||
"bank_name": "",
|
||||
"bank_address": ""
|
||||
|
||||
})
|
||||
|
||||
let rowId;
|
||||
|
||||
//打开弹窗
|
||||
const open = async (id: any) => {
|
||||
rowId = id
|
||||
let res = await apiStoreFinanceBillDetail({ id })
|
||||
formData.value = res
|
||||
console.log(formData.value)
|
||||
popupRef.value?.open()
|
||||
}
|
||||
|
||||
const confirm = async () => {
|
||||
await apiStoreFinanceBillEdit({ id: rowId })
|
||||
popupRef.value?.close()
|
||||
}
|
||||
|
||||
const close = (data: any) => {
|
||||
popupRef.value?.close()
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
defineExpose({
|
||||
open
|
||||
})
|
||||
|
||||
|
||||
</script>
|
|
@ -0,0 +1,121 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-card class="!border-none mb-4" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="时间筛选">
|
||||
<el-date-picker v-model="date" type="daterange" range-separator="-" start-placeholder="开始时间"
|
||||
end-placeholder="结束时间" value-format="YYYY-MM-DD" :clearable="false" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleResetPage">查询</el-button>
|
||||
<el-button @click="handleResetParams">重置</el-button>
|
||||
<!-- <el-button @click="showDialog = true">重置</el-button> -->
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
|
||||
<el-table-column label="ID" prop="id" show-overflow-tooltip />
|
||||
<el-table-column label="门店" prop="store_id" show-overflow-tooltip />
|
||||
<el-table-column label="交易金额" prop="cash_price" show-overflow-tooltip />
|
||||
<el-table-column label="应收金额" prop="receivable" show-overflow-tooltip />
|
||||
<el-table-column label="实收金额" prop="receipts" show-overflow-tooltip />
|
||||
<el-table-column label="操作人员" prop="admin_id" show-overflow-tooltip />
|
||||
<el-table-column label="图片" prop="file">
|
||||
<template #default="{ row }">
|
||||
<el-image style="width:50px;height:50px;" :src="row.file" :preview-src-list="[row.file]" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
|
||||
<el-table-column label="状态" prop="status" show-overflow-tooltip>
|
||||
<template #default="{ row }">
|
||||
<span v-if="row.status == 0" style="color: #FEE082;">未完成收缴</span>
|
||||
<span style="color: #78E23F;" v-else>已完成</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="170" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<el-button @click="showPoupop(row.id)" link type="primary">详情</el-button>
|
||||
<!-- <el-button @click="handleDownlon(row)" link type="primary">下载</el-button> -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="flex mt-4 justify-end">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
</el-card>
|
||||
<detailPopup ref="detailRef" @handleClose="closePop" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="manageProjectLists">
|
||||
import { ref, reactive } from "vue"
|
||||
import { usePaging } from '@/hooks/usePaging'
|
||||
import { apiStoreFinanceBillLists, apiStoreFinanceBillDetail } from '@/api/store_order'
|
||||
import detailPopup from './detail.vue'
|
||||
import { useRoute } from "vue-router"
|
||||
import useUserStore from "@/stores/modules/user";
|
||||
|
||||
|
||||
const date = ref(null)
|
||||
const detailRef = ref(null)
|
||||
|
||||
// 查询条件
|
||||
const queryParams = reactive({
|
||||
store_id: useUserStore().userInfo.store_id,
|
||||
start_time: "",
|
||||
end_time: ""
|
||||
})
|
||||
|
||||
// 选中数据
|
||||
const selectData = ref<any[]>([])
|
||||
|
||||
// 表格选择后回调事件
|
||||
const handleSelectionChange = (val: any[]) => {
|
||||
selectData.value = val.map(({ id }) => id)
|
||||
}
|
||||
|
||||
|
||||
const handleResetPage = () => {
|
||||
if (date.value?.length) {
|
||||
queryParams.start_time = date.value[0] + ' 00:00:00'
|
||||
queryParams.end_time = date.value[1] + ' 23:59:59'
|
||||
} else {
|
||||
queryParams.start_time = ''
|
||||
queryParams.end_time = ''
|
||||
}
|
||||
resetPage()
|
||||
}
|
||||
|
||||
const handleResetParams = () => {
|
||||
date.value = []
|
||||
resetParams()
|
||||
}
|
||||
|
||||
// 分页相关
|
||||
const { pager, getLists, resetParams, resetPage } = usePaging({
|
||||
fetchFun: apiStoreFinanceBillLists,
|
||||
params: queryParams
|
||||
})
|
||||
|
||||
// 详情
|
||||
const showPoupop = async (id: any) => {
|
||||
|
||||
detailRef.value?.open(id)
|
||||
}
|
||||
const closePop = () => {
|
||||
detailRef.value?.close()
|
||||
|
||||
}
|
||||
|
||||
getLists()
|
||||
</script>
|
|
@ -9,6 +9,7 @@
|
|||
<div>
|
||||
<div class="text-info">{{ item.title }}</div>
|
||||
<div class="text-6xl">{{ item.value() }}</div>
|
||||
<el-link v-if="item.title == '现金收银金额'" type="primary" @click="showCollectionCode">入账</el-link>
|
||||
</div>
|
||||
</div>
|
||||
</el-row>
|
||||
|
@ -42,7 +43,10 @@
|
|||
import { ref, reactive, onMounted } from "vue"
|
||||
import { apidbusinessStatistics } from '@/api/statistics'
|
||||
import vCharts from 'vue-echarts'
|
||||
import { useRouter } from "vue-router";
|
||||
|
||||
|
||||
const router = useRouter();
|
||||
const month = ref()
|
||||
const loading = ref(true)
|
||||
|
||||
|
@ -192,6 +196,10 @@ const monthChange = () => {
|
|||
getData()
|
||||
}
|
||||
|
||||
const showCollectionCode = () => {
|
||||
router.push('/finance/store_finance_bill?showPop=1')
|
||||
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
getData()
|
||||
|
|
Loading…
Reference in New Issue