|
|
@@ -24,7 +24,9 @@
|
|
|
<el-table-column label="手机号" prop="userMobile" min-width="120" show-tooltip-when-overflow/>
|
|
|
<el-table-column label="会员名称" prop="membershipName" min-width="120">
|
|
|
<template #default="scope">
|
|
|
- <span><img :src="scope.row.membershipIcon" style="width: 20px;display: inline-block;margin-right:3px;"/>{{ scope.row.membershipName }}</span>
|
|
|
+ <span><img :src="scope.row.membershipIcon" style="width: 20px;display: inline-block;margin-right:3px;"/>{{
|
|
|
+ scope.row.membershipName
|
|
|
+ }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="会员编号" prop="membershipNo" min-width="100"/>
|
|
|
@@ -36,8 +38,8 @@
|
|
|
<el-table-column label="入会时间" prop="time" min-width="120"/>
|
|
|
<el-table-column label="操作" min-width="180" fixed="right">
|
|
|
<template #default="{ row }">
|
|
|
-<!-- <el-button type="primary" link @click="updateBalance(row)">修改余额</el-button>-->
|
|
|
- <el-button type="primary" link @click="showChargeConsumeRecord(row)">余额变动记录</el-button>
|
|
|
+ <el-button type="primary" link @click="updateBalance(row)">修改余额</el-button>
|
|
|
+ <el-button type="primary" link @click="showChargeConsumeRecord(row)">收支记录</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
@@ -47,83 +49,40 @@
|
|
|
</el-card>
|
|
|
</div>
|
|
|
<ChargeConsumeRecord @init="init()" ref="chargeConsumeRecordRef"></ChargeConsumeRecord>
|
|
|
+ <balance-edit v-if="showEdit" ref="balanceEditRef" @success="getLists" @close="showEdit = false"/>
|
|
|
</template>
|
|
|
<script lang="ts" setup>
|
|
|
-import { useElabPaging } from '@/hooks/useElabPaging'
|
|
|
-import feedback from '@/utils/feedback'
|
|
|
-import {queryMemberUser} from "@/api/membership";
|
|
|
+import {useElabPaging} from '@/hooks/useElabPaging'
|
|
|
+import {queryMemberUser} from "@/api/membership"
|
|
|
import ChargeConsumeRecord from './chargeConsumeRecord.vue'
|
|
|
+import balanceEdit from "./balanceEdit.vue"
|
|
|
+import {ref, reactive, shallowRef} from 'vue'
|
|
|
|
|
|
-const router = useRouter()
|
|
|
+const showEdit = ref(false)
|
|
|
const chargeConsumeRecordRef = ref<InstanceType<typeof ChargeConsumeRecord>>()
|
|
|
+const balanceEditRef = shallowRef<InstanceType<typeof balanceEdit>>()
|
|
|
|
|
|
const queryParams = reactive({
|
|
|
mobile: ''
|
|
|
})
|
|
|
-const { pager, getLists, resetPage, resetParams } = useElabPaging({
|
|
|
+const {pager, getLists, resetPage, resetParams} = useElabPaging({
|
|
|
fetchFun: queryMemberUser,
|
|
|
params: queryParams
|
|
|
})
|
|
|
-const editRef = shallowRef<InstanceType<typeof EditPopup>>()
|
|
|
-const showEdit = ref(false)
|
|
|
// 示例:添加千分位分隔符并保留两位小数
|
|
|
const formatAmount = (amount: string) => {
|
|
|
return Number(amount).toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
|
|
}
|
|
|
-const handleAdd = async () => {
|
|
|
- showEdit.value = true
|
|
|
- await nextTick()
|
|
|
- editRef.value?.open('add')
|
|
|
-}
|
|
|
-
|
|
|
-const handleEdit = async (data: any) => {
|
|
|
- showEdit.value = true
|
|
|
- await nextTick()
|
|
|
- editRef.value?.open('edit')
|
|
|
- editRef.value?.getDetail(data)
|
|
|
-}
|
|
|
-
|
|
|
-const useMethodFormatter = (row: any) => {
|
|
|
- return row.useMethod == 0 ? '仅展示': ''
|
|
|
-}
|
|
|
-const volumeFormatter = (row: any) => {
|
|
|
- if (row.volume == 0) {
|
|
|
- return '大'
|
|
|
- } else if (row.volume == 1) {
|
|
|
- return '中'
|
|
|
- } else if (row.volume == 2) {
|
|
|
- return '小'
|
|
|
- } else if (row.volume == 3) {
|
|
|
- return '关闭'
|
|
|
- } else {
|
|
|
- return '大'
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-const handleDelete = async (id: number) => {
|
|
|
- await feedback.confirm('确定要删除?')
|
|
|
- // await articleCateDelete({id})
|
|
|
- await delPrinter({id})
|
|
|
- feedback.msgSuccess('删除成功')
|
|
|
- getLists()
|
|
|
-}
|
|
|
-
|
|
|
-const changeStatus = async (id: number, status: any) => {
|
|
|
- try {
|
|
|
- await editPrinter({id, status})
|
|
|
- feedback.msgSuccess('修改成功')
|
|
|
- getLists()
|
|
|
- } catch (error) {
|
|
|
- getLists()
|
|
|
- }
|
|
|
-}
|
|
|
|
|
|
const showChargeConsumeRecord = async (row: any) => {
|
|
|
chargeConsumeRecordRef.value?.open(row)
|
|
|
}
|
|
|
|
|
|
const updateBalance = async (data: any) => {
|
|
|
-
|
|
|
+ showEdit.value = true
|
|
|
+ await nextTick()
|
|
|
+ balanceEditRef.value?.open()
|
|
|
+ balanceEditRef.value?.getDetail(data)
|
|
|
}
|
|
|
getLists()
|
|
|
</script>
|