From 7e2c047e4df377cb93956cea1c43cb7929e6d389 Mon Sep 17 00:00:00 2001 From: cun-nan <19819293608@163.com> Date: Tue, 24 Oct 2023 14:00:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=9A=E5=91=98=E7=AE=A1=E7=90=86=20?= =?UTF-8?q?=E5=9B=BA=E5=AE=9A=E7=AD=89=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/staff/user/certifiedmember.js | 8 + fuintAdmin/src/api/staff/user/user.js | 8 + fuintAdmin/src/views/member/fixingLevel.vue | 369 ++++++++++++++++-- fuintAdmin/src/views/staff/list.vue | 96 +++-- .../fuint/business/member/entity/LJStaff.java | 3 + .../member/mapper/xml/LJStaffMapper.xml | 6 +- .../controller/CertifiedMemberController.java | 13 +- .../controller/LJUserController.java | 12 + .../mapper/xml/CertifiedMemberMapper.xml | 2 +- .../service/CertifiedMemberService.java | 7 + .../userManager/service/LJUserService.java | 1 + .../impl/CertifiedMemberServiceImpl.java | 14 + .../service/impl/LJUserServiceImpl.java | 5 +- 13 files changed, 470 insertions(+), 74 deletions(-) diff --git a/fuintAdmin/src/api/staff/user/certifiedmember.js b/fuintAdmin/src/api/staff/user/certifiedmember.js index dfee3b0f3..db2efb17d 100644 --- a/fuintAdmin/src/api/staff/user/certifiedmember.js +++ b/fuintAdmin/src/api/staff/user/certifiedmember.js @@ -17,6 +17,14 @@ export function getCertifiedMember(id) { }) } +// 根据会员id查询固定等级详细 +export function getCertifiedMemberByUserId(userId) { + return request({ + url: '/business/userManager/certifiedMember/userId/' + userId, + method: 'get' + }) +} + // 新增固定等级 export function addCertifiedMember(data) { return request({ diff --git a/fuintAdmin/src/api/staff/user/user.js b/fuintAdmin/src/api/staff/user/user.js index 72bd6b816..994f9d1cb 100644 --- a/fuintAdmin/src/api/staff/user/user.js +++ b/fuintAdmin/src/api/staff/user/user.js @@ -25,6 +25,14 @@ export function getUser(id) { method: 'get' }) } +// 查询会员详细 +export function getUserMobile(data) { + return request({ + url: '/business/userManager/user/mobile' , + method: 'post', + data: data + }) +} // 新增会员 export function addUser(data) { diff --git a/fuintAdmin/src/views/member/fixingLevel.vue b/fuintAdmin/src/views/member/fixingLevel.vue index 98c87a96e..dc9e32400 100644 --- a/fuintAdmin/src/views/member/fixingLevel.vue +++ b/fuintAdmin/src/views/member/fixingLevel.vue @@ -3,33 +3,40 @@ - + - - + + style="width: 300px" + > + + - + style="width: 240px" + > + + - 搜索 + 搜索 - + 新增用户认证 @@ -102,7 +109,11 @@ - + + + @@ -119,14 +130,14 @@ type="text" icon="el-icon-edit" v-hasPermi="['member:add']" - @click="handleUpdate(scope.row)" + @click="handleUpdateMember(scope.row)" >修改 删除 @@ -305,6 +316,137 @@ + + + + + + + +
+
+ 请确保用户手机号已注册为油站会员(在会员列表已显示),否则无法添加认证信息 +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+
+
+ + +
+ + + + + + +
+
+
+ + +
+ + + + + + +
+
+
+
+ + + + + + + + + + + + 启用 + 禁用 + 待审核 + + + + +
+ +
{ + if (response.data==null){ + + } + }) + }, handleClick(tab, event) { // console.log(tab, event); }, @@ -685,6 +895,12 @@ export default { this.queryParams.page = 1; this.getList(); }, + // 搜索按钮操作 + handleQueryMember() { + this.queryParams.page = 1; + this.getListMember(); + }, + // 获取固定等级信息 getList(){ this.loading = true; listFixingLevel(this.addDateRange(this.queryParams, this.dateRange)).then( response => { @@ -694,18 +910,30 @@ export default { this.loading = false; }); }, + // 获取认证会员信息 getListMember(){ this.loading = true; listCertifiedMember(this.addDateRange(this.queryParam, this.dateRange)).then( response => { - console.log(response) this.listMember = response.data.records; this.total = response.data.total; this.loading = false; }); + + }, + // 获取会员信息 + getUserList(){ + listUser(this.addDateRange({mobile:this.mobile1})).then( response => { + this.userList = response.data.records; + }); }, // 表单重置 reset() { - this.form = {}; + this.form = { + id: '', name: '',discountType:'自定义优惠',gasolineDiscount:'无优惠', + dieselDiscount:'无优惠',naturalGasDiscount:'无优惠',promotionGroup:'', + pointRule:'yes',refuelMoneyRule:'yes',growthValueRule:'yes',couponRule:'yes', + storeValue:'yes',process:'bsh',status: 'qy' + }; this.gasolinePreferential=[ { gasolineRule1:1, @@ -729,11 +957,24 @@ export default { ], this.resetForm("form"); }, + // 表单重置 + reset1() { + this.form1 = { + id: '', name: '',mobile:'',carNumber:'',userId:'', + attestationData:'',remark:'',status: 'enable' + }; + this.resetForm("form1"); + }, // 新增按钮操作 handleAdd() { this.open = true; this.title = "新增认证类型"; }, + // 新增按钮操作 + handleAddMember() { + this.openMember = true; + this.title = "新增用户认证"; + }, // 修改按钮操作 handleUpdate(row) { this.reset(); @@ -744,11 +985,28 @@ export default { this.title = "编辑认证类型"; }); }, + // 修改按钮操作 + handleUpdateMember(row) { + this.isEdit = true; + this.reset1(); + const id = row.id || this.ids; + getCertifiedMember(id).then(response => { + this.form1 = response.data; + this.openMember = true; + this.title = "编辑用户认证"; + }); + }, // 取消按钮 cancel() { this.open = false; this.reset(); }, + // 取消按钮 + cancelMember() { + this.openMember = false; + this.reset1(); + this.isEdit = false; + }, // 提交按钮 submitForm: function() { this.$refs["form"].validate(valid => { @@ -772,6 +1030,41 @@ export default { } }); }, + // 提交按钮 + submitFormMember: function() { + this.$refs["form1"].validate(valid => { + if (valid) { + if (this.form1.id) { + updateCertifiedMember(this.form1).then(response => { + this.$modal.msgSuccess("用户认证信息更新成功"); + this.openMember = false; + this.isEdit = false; + this.getListMember(); + }); + } else { + getUserMobile({mobile:this.form1.mobile}).then( response => { + if (response.data==null){ + this.$modal.msgError("用户信息不存在,请检查当前用户是否已注册") + }else { + this.form1.userId = response.data.id + getCertifiedMemberByUserId(this.form1.userId).then( res => { + if(res.data!=null){ + this.$modal.msgError("当前用户已存在认证记录,请检索后编辑对应用户资料处理") + } + if(res.data==null){ + addCertifiedMember(this.form1).then(response => { + this.$modal.msgSuccess("新增用户认证信息成功"); + this.openMember = false; + this.getListMember(); + }); + } + }) + } + }) + } + } + }); + }, // 删除按钮操作 handleDelete(row) { const name = row.name @@ -783,6 +1076,24 @@ export default { this.$modal.msgSuccess("删除成功"); }).catch(() => {}); }, + // 删除按钮操作 + handleDeleteMember(row) { + const name = row.name + this.$modal.confirm('确定删除"' + name + '"的会员信息?').then(function() { + // return deleteMember(row.id); + return delCertifiedMember(row.id); + }).then(() => { + this.getListMember(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + handleRemove(file, fileList) { + // console.log(file, fileList); + }, + handlePictureCardPreview(file) { + this.dialogImageUrl = file.url; + this.dialogVisible = true; + }, // 多选框选中数据 handleSelectionChange(selection) { this.ids = selection.map(item => item.id) diff --git a/fuintAdmin/src/views/staff/list.vue b/fuintAdmin/src/views/staff/list.vue index 8983096e7..ef33753ed 100644 --- a/fuintAdmin/src/views/staff/list.vue +++ b/fuintAdmin/src/views/staff/list.vue @@ -216,7 +216,7 @@ - + - + + 审核权限 + + + + + + + 特殊权限
加油时选择加油员场景使用,选择不显示加油员将无法被指定
(需系统开启加油选择加油员功能)终端支持:(PC、POS、小程序)
- 加油时选择加油员场景使用,选择... + 加油时选择加油员场...
@@ -278,7 +291,7 @@ effect="dark" placement="bottom">
启用后,当前账户登录POS端后油品收银必选加油员才可进行
下步操作(需系统开启加油选择加油员功能)
- 启用后,当前账户登录POS端后油... + 启用后,当前账户登录... @@ -298,7 +311,7 @@ effect="dark" placement="bottom">
交易订单显示信息、终端支持:(PC、
POS、小程序)
- 交易订单显示信息、终端支持:(PC... + 交易订单显示信息... @@ -320,7 +333,7 @@ effect="dark" placement="bottom">
收款成功接收的公众号模板消息通知,需
关注公众号,且本站小程序中会员手机号
信息与当前员工手机号一致
- 收款成功接收的公众号模板消息... + 收款成功接收的... @@ -335,7 +348,13 @@ />
- 多选,已选油枪号的交易将发送模板消息 + +
多选,已选油枪号的交易将发送
模板消息)
+ 多选,已选油枪号... +
@@ -354,7 +373,7 @@ effect="dark" placement="bottom">
当前账户下可查看交易的时间范围(PC、
POS端)
- 当前账户下可查看交易的时间范... + 当前账户下可查看...
@@ -390,7 +409,7 @@ effect="dark" placement="bottom">
若无权限,则无法查看交班统计信息和
进行交班操作
- 若无权限,则无法查看交班统计... + 若无权限,则无法查看... @@ -405,7 +424,13 @@ />
- 进行交班处理后是否退出当前账户 + +
进行交班处理后是否退出当前账户
+ 进行交班处理后是否... +
@@ -426,7 +451,7 @@ effect="dark" placement="bottom">
全部记录:查看所有员工交班记录,名下
记录:员工自己名下记录(需有交班权限才可查看),
禁用权限:无权限查看交班记录,记录为空
- 全部记录:查看所有员工交班记录... + 全部记录:查看所有... @@ -446,7 +471,7 @@ effect="dark" placement="bottom">
交班信息是否显示商户号统计信息,禁
用后当前员工则无商户号统计信息
- 交班信息是否显示商户号统计信... + 交班信息是否显示商... @@ -466,7 +491,7 @@ effect="dark" placement="bottom">
交易信息是否可以筛选员工进行查
询,启用后可筛选、则反之
- 交易信息是否可以筛选员工进行... + 交易信息是否可以... @@ -482,7 +507,13 @@ @change="handleNodeClick1" clearable>
- POS手持机中功能对应操作权限 + +
POS手持机中功能对应操作权限
+ POS手持机中... +
@@ -496,7 +527,13 @@ @change="handleNodeClick2" clearable>
- 小程序管理端功能对应操作权限 + +
小程序管理端功能对应操作权限
+ 小程序管理端功能... +
@@ -516,7 +553,7 @@ effect="dark" placement="bottom">
状态禁用后,当前账户则无法进行
登录和操作
- 状态禁用后,当前账户则无法进行登... + 状态禁用后,当前账户... @@ -545,7 +582,7 @@ import {getDuty, listDuty} from "@/api/staff/duty"; export default { name: "StaffList", dicts: ['ywqx','write_off','display','zhzt','transaction','time_frame','handover','handover_quit', - 'jbjl','official','notice','special_prem','role'], + 'jbjl','official','notice','special_prem','role','shqx'], data() { return { drawer: false, @@ -582,6 +619,7 @@ export default { writeOff:[], write:[], specialPrem:[], + auditPrem:[], special:[], // 总条数 total: 0, @@ -598,7 +636,7 @@ export default { id:'', category:'', userId:'', mobile:'', realName:'', wechat:'', merchantId:'', storeId:'', auditedStatus:'', auditedTime:'', description:'', isRefuel:'yc', handoverMode:'dqmdtyjb', handoverPrem:'yqx', handoverOut:'jbtc', record:'qbjl', merchantStatus:'qy',screen:'qy', posPrem:'', appletPrem:'', notice:'advice_jy', oilGunId:'', timeFrame:'bx', refund:'yqx', - transaction:'qbjy', writeOff:'',specialPrem:'', official:'', status:'qy',pos:'jy',role:'' + transaction:'qbjy', writeOff:'',auditPrem:'',specialPrem:'', official:'', status:'qy',pos:'jy',role:'' }, // 查询参数 queryParams: { @@ -678,6 +716,7 @@ export default { getCheckbox(){ this.form.writeOff = this.writeOff.toString(); this.form.specialPrem = this.specialPrem.toString(); + this.form.auditPrem = this.auditPrem.toString(); }, // 页面跳转 toTarget(url) { @@ -690,20 +729,9 @@ export default { listStaff(this.addDateRange(this.queryParams, this.dateRange)).then(response => { this.list = response.data.records; this.total = response.data.total; - console.log(response) - // response.data.records.forEach(item=>{ - // this.categoryOptions.push(item.category) - // }) this.loading = false; } ); - // getStaffList(this.addDateRange(this.queryParams, this.dateRange)).then( response => { - // this.list = response.data.paginationResponse.content; - // this.total = response.data.paginationResponse.totalElements; - // this.categoryOptions = response.data.categoryList; - // this.loading = false; - // } - // ); }, // 查询角色列表 getDuty(){ @@ -717,10 +745,6 @@ export default { this.storeOptions = response.data.records; } ); - // searchStore().then(response => { - // this.storeOptions = response.data.storeList; - // } - // ); }, // 搜索按钮操作 handleQuery() { @@ -767,12 +791,13 @@ export default { reset() { this.posPrem = ''; this.appletPrem = ''; - this.writeOff = [] + this.writeOff = []; + this.auditPrem = []; this.form = { id:'', category:'', userId:'', mobile:'', realName:'', wechat:'', merchantId:'', storeId:'', auditedStatus:'A', auditedTime:'', description:'', isRefuel:'yc', handoverMode:'dqmdtyjb', handoverPrem:'yqx', handoverOut:'jbtc', record:'qbjl', merchantStatus:'qy',screen:'qy', posPrem:'', appletPrem:'', notice:'advice_jy', oilGunId:'', timeFrame:'bx', refund:'yqx', - transaction:'qbjy', writeOff:'',specialPrem:'', official:'', status:'qy',pos:'jy',role:'' + transaction:'qbjy', writeOff:'',auditPrem:'',specialPrem:'', official:'', status:'qy',pos:'jy',role:'' }; this.resetForm("form"); }, @@ -815,6 +840,7 @@ export default { this.title = "编辑员工信息"; this.writeOff = this.form.writeOff.split(","); this.specialPrem = this.form.specialPrem.split(","); + this.auditPrem = this.form.auditPrem.split(","); this.posPrem = JSON.parse(this.form.posPrem); this.appletPrem = JSON.parse(this.form.appletPrem); }); diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/entity/LJStaff.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/entity/LJStaff.java index db87a3500..3ef2a07cf 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/entity/LJStaff.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/entity/LJStaff.java @@ -107,6 +107,9 @@ public class LJStaff extends BaseEntity implements Serializable { @ApiModelProperty("核销权限,1:洗车卡券;2:兑换券") private String writeOff; + @ApiModelProperty("审核权限") + private String auditPrem; + @ApiModelProperty("特殊权限,1:PC后台管理;2:POS收银系统;3:PC收银权限;4:小程序端报表") private String specialPrem; diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/mapper/xml/LJStaffMapper.xml b/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/mapper/xml/LJStaffMapper.xml index ebefbbf60..42d4f7ce3 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/mapper/xml/LJStaffMapper.xml +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/member/mapper/xml/LJStaffMapper.xml @@ -37,13 +37,11 @@ + - select id, merchant_id, store_id, user_id, category, mobile, real_name, wechat, create_time, update_time, - audited_status, audited_time, description, create_by, update_by, is_refuel, handover_mode, handover_prem, - handover_out, record, merchant_status, screen, pos_prem, applet_prem, notice, oil_gun_id, time_frame, refund, - transaction, write_off, special_prem, official,status,pos,role from mt_staff + select * from mt_staff