会员:后台调整会员等级

This commit is contained in:
owen
2023-08-21 21:31:15 +08:00
parent f1735a4010
commit 7bef240926
4 changed files with 86 additions and 13 deletions

View File

@ -60,6 +60,22 @@
<el-form-item label="用户标签" prop="tagIds">
<MemberTagSelect v-model="formData.tagIds" show-add />
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="用户等级" prop="levelId">
<MemberLevelSelect v-model="formData.levelId" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="修改原因"
prop="levelReason"
v-if="formData.levelId != originLevelId"
>
<el-input type="text" v-model="formData.levelReason" placeholder="请输入修改原因" />
</el-form-item>
</el-col>
</el-row>
<el-form-item label="会员备注" prop="mark">
<el-input type="textarea" v-model="formData.mark" placeholder="请输入会员备注" />
</el-form-item>
@ -76,6 +92,7 @@ import * as UserApi from '@/api/member/user'
import * as AreaApi from '@/api/system/area'
import { defaultProps } from '@/utils/tree'
import MemberTagSelect from '@/views/member/tag/components/MemberTagSelect.vue'
import MemberLevelSelect from '@/views/member/level/components/MemberLevelSelect.vue'
const { t } = useI18n() // 国际化
const message = useMessage() // 消息弹窗
@ -87,6 +104,7 @@ const formType = ref('') // 表单的类型create - 新增update - 修改
const formData = ref({
id: undefined,
mobile: undefined,
password: undefined,
status: undefined,
nickname: undefined,
avatar: undefined,
@ -95,14 +113,18 @@ const formData = ref({
areaId: undefined,
birthday: undefined,
mark: undefined,
tagIds: []
tagIds: [],
levelId: undefined,
levelReason: undefined
})
const formRules = reactive({
mobile: [{ required: true, message: '手机号不能为空', trigger: 'blur' }],
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }]
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }],
levelReason: [{ required: true, message: '修改原因不能为空', trigger: 'blur' }]
})
const formRef = ref() // 表单 Ref
const areaList = ref([]) // 地区列表
const originLevelId = ref() // 修改前的会员等级
/** 打开弹窗 */
const open = async (type: string, id?: number) => {
@ -115,6 +137,7 @@ const open = async (type: string, id?: number) => {
formLoading.value = true
try {
formData.value = await UserApi.getUser(id)
originLevelId.value = formData.value.levelId
} finally {
formLoading.value = false
}
@ -158,9 +181,6 @@ const resetForm = () => {
mobile: undefined,
password: undefined,
status: undefined,
registerIp: undefined,
loginIp: undefined,
loginDate: undefined,
nickname: undefined,
avatar: undefined,
name: undefined,
@ -168,8 +188,9 @@ const resetForm = () => {
areaId: undefined,
birthday: undefined,
mark: undefined,
createTime: undefined,
tagIds: []
tagIds: [],
levelId: undefined,
levelReason: undefined
}
formRef.value?.resetFields()
}