feat:钱包、设备权限

This commit is contained in:
dzc committed 2025-01-19 11:54:56 +08:00
1 parent 611f1d634d
commit ef3dea40fa
19 files changed
+484 -361

No files matched your search

@@ -1,91 +1,107 @@
<template>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form ref="dataFormRef" :model="form" :rules="dataRules" formDialogRef label-width="180px"
v-loading="loading">
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="钱包二维码自动刷新" prop="refreshQrCodeEnable">
<el-switch active-value="1" inactive-value="0" v-model="form.refreshQrCodeEnable"
active-text="开启" inactive-text="关闭" inline-prompt />
</el-form-item>
</el-col>
<el-col :span="24" class="mb20">
<el-form-item label="钱包二维码自动刷新间隔" prop="refreshQrCodeFre">
<el-input style="width: 300px;" type="number" v-model="form.refreshQrCodeFre"
placeholder="请输入钱包二维码自动刷新间隔">
<template #append>秒</template>
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<div class="flex items-center">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form
ref="dataFormRef"
:model="form"
:rules="dataRules"
formDialogRef
label-width="180px"
v-loading="loading"
>
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="钱包二维码自动刷新" prop="refreshQrCodeEnable">
<el-switch
active-value="1"
inactive-value="0"
v-model="form.refreshQrCodeEnable"
active-text="开启"
inactive-text="关闭"
inline-prompt
/>
</el-form-item>
</el-col>
<el-col :span="24" class="mb20">
<el-form-item label="钱包二维码自动刷新间隔" prop="refreshQrCodeFre">
<el-input
style="width: 300px"
type="number"
v-model="form.refreshQrCodeFre"
placeholder="请输入钱包二维码自动刷新间隔"
>
<template #append>秒</template>
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<div class="flex items-center" v-auth="'wallet_setting_edit'">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
</template>
<script setup lang="ts" name="code">
import { useDict } from '/@/hooks/dict'
import { useDict } from "/@/hooks/dict"
import { storePrice } from "/@/utils/formatMoney"
import { useMessage } from "/@/hooks/message"
import { getObj, putObj } from "/@/api/wallet/wallet-setting"
// 定义变量内容
const dataFormRef = ref();
const dataFormRef = ref()
const loading = ref(false)
// 提交表单数据
const form = reactive({
id: undefined,
refreshQrCodeEnable: undefined,
refreshQrCodeFre: undefined,
});
id: undefined,
refreshQrCodeEnable: undefined,
refreshQrCodeFre: undefined,
})
// 定义校验规则
const dataRules = ref({
refreshQrCodeEnable: [{ required: true, message: '是否开启钱包二维码自动刷新', trigger: 'change' }],
refreshQrCodeFre: [{ required: true, message: '钱包二维码自动刷新间隔', trigger: 'blur' }],
refreshQrCodeEnable: [{ required: true, message: "是否开启钱包二维码自动刷新", trigger: "change" }],
refreshQrCodeFre: [{ required: true, message: "钱包二维码自动刷新间隔", trigger: "blur" }],
})
onMounted(() => {
getwalletRechargePackageData('1')
getwalletRechargePackageData("1")
})
// 提交
const onSubmit = async () => {
const valid = await dataFormRef.value.validate().catch(() => { });
if (!valid) return false;
try {
loading.value = true;
const pa = {
...form,
payPrice: storePrice(form.payPrice),
bonusPrice: storePrice(form.bonusPrice),
}
await putObj(pa)
useMessage().success('修改成功');
} catch (err: any) {
useMessage().error(err.msg);
} finally {
loading.value = false;
}
};
const valid = await dataFormRef.value.validate().catch(() => {})
if (!valid) return false
try {
loading.value = true
const pa = {
...form,
payPrice: storePrice(form.payPrice),
bonusPrice: storePrice(form.bonusPrice),
}
await putObj(pa)
useMessage().success("修改成功")
} catch (err: any) {
useMessage().error(err.msg)
} finally {
loading.value = false
}
}
// 初始化表单数据
const getwalletRechargePackageData = (id: string) => {
// 获取数据
loading.value = true
getObj(id).then((res: any) => {
Object.assign(form, res.data)
}).finally(() => {
loading.value = false
})
};
</script>
// 获取数据
loading.value = true
getObj(id)
.then((res: any) => {
Object.assign(form, res.data)
})
.finally(() => {
loading.value = false
})
}
</script>
@@ -50,7 +50,7 @@
</el-col>
</el-row>
</el-form>
<div class="flex items-center">
<div class="flex items-center" v-auth="'wallet_setting_edit'">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
@@ -1,80 +1,91 @@
<template>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form ref="dataFormRef" :model="form" :rules="dataRules" formDialogRef label-width="180px"
v-loading="loading">
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="离线订单是否需要审批" prop="offLineOrderApplyEnable">
<el-switch active-value="1" inactive-value="0"
v-model="form.offLineOrderApplyEnable" active-text="开启" inactive-text="关闭"
inline-prompt />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="flex items-center">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
</div>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form
ref="dataFormRef"
:model="form"
:rules="dataRules"
formDialogRef
label-width="180px"
v-loading="loading"
>
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="离线订单是否需要审批" prop="offLineOrderApplyEnable">
<el-switch
active-value="1"
inactive-value="0"
v-model="form.offLineOrderApplyEnable"
active-text="开启"
inactive-text="关闭"
inline-prompt
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="flex items-center" v-auth="'wallet_setting_edit'">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
</div>
</template>
<script setup lang="ts" name="code">
import { useDict } from '/@/hooks/dict'
import { useDict } from "/@/hooks/dict"
import { storePrice } from "/@/utils/formatMoney"
import { useMessage } from "/@/hooks/message"
import { getObj, putObj } from "/@/api/wallet/wallet-setting"
// 定义变量内容
const dataFormRef = ref();
const dataFormRef = ref()
const loading = ref(false)
// 提交表单数据
const form = reactive({
id: '',
offLineOrderApplyEnable: '',
});
id: "",
offLineOrderApplyEnable: "",
})
// 定义校验规则
const dataRules = ref({
offLineOrderApplyEnable: [{ required: true, message: '离线订单是否需要审批', trigger: 'change' }],
offLineOrderApplyEnable: [{ required: true, message: "离线订单是否需要审批", trigger: "change" }],
})
onMounted(() => {
getwalletRechargePackageData('1')
getwalletRechargePackageData("1")
})
// 提交
const onSubmit = async () => {
const valid = await dataFormRef.value.validate().catch(() => { });
if (!valid) return false;
try {
loading.value = true;
const pa = {
...form,
}
await putObj(pa)
useMessage().success('修改成功');
} catch (err: any) {
useMessage().error(err.msg);
} finally {
loading.value = false;
}
};
const valid = await dataFormRef.value.validate().catch(() => {})
if (!valid) return false
try {
loading.value = true
const pa = {
...form,
}
await putObj(pa)
useMessage().success("修改成功")
} catch (err: any) {
useMessage().error(err.msg)
} finally {
loading.value = false
}
}
// 初始化表单数据
const getwalletRechargePackageData = (id: string) => {
// 获取数据
loading.value = true
getObj(id).then((res: any) => {
Object.assign(form, res.data)
}).finally(() => {
loading.value = false
})
};
</script>
// 获取数据
loading.value = true
getObj(id)
.then((res: any) => {
Object.assign(form, res.data)
})
.finally(() => {
loading.value = false
})
}
</script>
@@ -1,38 +1,64 @@
<template>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form ref="dataFormRef" :model="form" :rules="dataRules" formDialogRef label-width="90px"
v-loading="loading">
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="退款理由" prop="afterSaleRefundReasons">
<el-select style="width: 500px;" v-model="form.afterSaleRefundReasons" allow-create
filterable multiple placeholder="请输入退款理由">
<el-option v-for="reason in form.afterSaleRefundReasons" :key="reason"
:label="reason" :value="reason" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="24" class="mb20">
<el-form-item label="退货理由" prop="afterSaleReturnReasons">
<el-select style="width: 500px;" v-model="form.afterSaleReturnReasons" allow-create
filterable multiple placeholder="请输入退货理由">
<el-option v-for="reason in form.afterSaleReturnReasons" :key="reason"
:label="reason" :value="reason" />
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div class="flex items-center">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
</div>
</div>
<div class="w100">
<div class="layout-padding-auto layout-padding-view">
<div class="flex justify-center flex-col">
<div>
<el-form
ref="dataFormRef"
:model="form"
:rules="dataRules"
formDialogRef
label-width="90px"
v-loading="loading"
>
<el-row :gutter="24">
<el-col :span="24" class="mb20">
<el-form-item label="退款理由" prop="afterSaleRefundReasons">
<el-select
style="width: 500px"
v-model="form.afterSaleRefundReasons"
allow-create
filterable
multiple
placeholder="请输入退款理由"
>
<el-option
v-for="reason in form.afterSaleRefundReasons"
:key="reason"
:label="reason"
:value="reason"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24" class="mb20">
<el-form-item label="退货理由" prop="afterSaleReturnReasons">
<el-select
style="width: 500px"
v-model="form.afterSaleReturnReasons"
allow-create
filterable
multiple
placeholder="请输入退货理由"
>
<el-option
v-for="reason in form.afterSaleReturnReasons"
:key="reason"
:label="reason"
:value="reason"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div class="flex items-center" v-auth="'wallet_setting_edit'">
<el-button type="primary" @click="onSubmit" :disabled="loading">确认</el-button>
</div>
</div>
</div>
</div>
</div>
</template>
<script setup lang="ts" name="refund">
@@ -40,61 +66,61 @@ import { storePrice } from "/@/utils/formatMoney"
import { useMessage } from "/@/hooks/message"
import { getObj, putObj } from "/@/api/wallet/wallet-setting"
// 定义变量内容
const dataFormRef = ref();
const dataFormRef = ref()
const loading = ref(false)
// 提交表单数据
const form = reactive<any>({
id: undefined,
afterSaleRefundReasons: undefined,
afterSaleReturnReasons: undefined,
});
id: undefined,
afterSaleRefundReasons: undefined,
afterSaleReturnReasons: undefined,
})
// 定义校验规则
const dataRules = ref({
afterSaleRefundReasons: [{ required: true, message: '请输入退款理由', trigger: 'blur' }],
afterSaleReturnReasons: [{ required: true, message: '请输入退货理由', trigger: 'blur' }],
afterSaleRefundReasons: [{ required: true, message: "请输入退款理由", trigger: "blur" }],
afterSaleReturnReasons: [{ required: true, message: "请输入退货理由", trigger: "blur" }],
})
onMounted(() => {
getwalletRechargePackageData('1')
getwalletRechargePackageData("1")
})
// 提交
const onSubmit = async () => {
const valid = await dataFormRef.value.validate().catch(() => { });
if (!valid) return false;
try {
loading.value = true;
const pa = {
...form,
afterSaleRefundReasons: form.afterSaleRefundReasons?.join(","),
afterSaleReturnReasons: form.afterSaleReturnReasons?.join(",")
}
await putObj(pa)
useMessage().success('修改成功');
} catch (err: any) {
useMessage().error(err.msg);
} finally {
loading.value = false;
}
};
const valid = await dataFormRef.value.validate().catch(() => {})
if (!valid) return false
try {
loading.value = true
const pa = {
...form,
afterSaleRefundReasons: form.afterSaleRefundReasons?.join(","),
afterSaleReturnReasons: form.afterSaleReturnReasons?.join(","),
}
await putObj(pa)
useMessage().success("修改成功")
} catch (err: any) {
useMessage().error(err.msg)
} finally {
loading.value = false
}
}
// 初始化表单数据
const getwalletRechargePackageData = (id: string) => {
// 获取数据
loading.value = true
getObj(id).then((res: any) => {
const data: any = res.data;
if (data.afterSaleRefundReasons) {
data.afterSaleRefundReasons = data.afterSaleRefundReasons?.split(",")
}
if (data.afterSaleReturnReasons) {
data.afterSaleReturnReasons = data.afterSaleReturnReasons?.split(",")
}
Object.assign(form, data)
}).finally(() => {
loading.value = false
})
};
</script>
// 获取数据
loading.value = true
getObj(id)
.then((res: any) => {
const data: any = res.data
if (data.afterSaleRefundReasons) {
data.afterSaleRefundReasons = data.afterSaleRefundReasons?.split(",")
}
if (data.afterSaleReturnReasons) {
data.afterSaleReturnReasons = data.afterSaleReturnReasons?.split(",")
}
Object.assign(form, data)
})
.finally(() => {
loading.value = false
})
}
</script>