一、功能描述
运营会根据用户的消费程度对用户进行等级划分,不同等级的用户推送不一样的消费内容
二、源码
关注+私信获取
如需远程支撑部署运行,问题答疑请关注+私信
三、界面路径
右侧菜单->用户管理
四、数据库存储表结构
CREATE TABLE `yx_system_user_level` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`mer_id` int(11) NOT NULL DEFAULT '0' COMMENT '商户id',
`name` varchar(255) NOT NULL DEFAULT '' COMMENT '会员名称',
`money` decimal(8,2) NOT NULL DEFAULT '0.00' COMMENT '购买金额',
`valid_date` int(11) NOT NULL DEFAULT '0' COMMENT '有效时间',
`is_forever` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否为永久会员',
`is_pay` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否购买,1=购买,0=不购买',
`is_show` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否显示 1=显示,0=隐藏',
`grade` int(11) NOT NULL DEFAULT '0' COMMENT '会员等级',
`discount` decimal(8,2) NOT NULL DEFAULT '0.00' COMMENT '享受折扣',
`image` varchar(255) NOT NULL DEFAULT '' COMMENT '会员卡背景',
`icon` varchar(255) NOT NULL DEFAULT '' COMMENT '会员图标',
`explain` text NOT NULL COMMENT '说明',
`create_time` datetime NOT NULL COMMENT '添加时间',
`update_time` datetime DEFAULT NULL,
`is_del` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否删除.1=删除,0=未删除',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='设置用户等级表';
如上述第2行,mer_id是关联用户基础表
五、前端界面逻辑
<div class="head-container">
<!-- 新增 -->
<div style="display: inline-block;margin: 0px 2px;">
<el-button
v-permission="['admin','YXSYSTEMUSERLEVEL_ALL','YXSYSTEMUSERLEVEL_CREATE']"
class="filter-item"
size="mini"
type="primary"
icon="el-icon-plus"
@click="add"
>新增</el-button>
</div>
</div>
如上述为新增按钮,绑定事件函数是add
beforeInit() {
this.url = 'api/yxSystemUserLevel'
const sort = 'id,desc'
this.params = { page: this.page, size: this.size, sort: sort }
return true
},
页面加载初始化函数,查询url地址是this.url = 'api/yxSystemUserLevel'
六、后端增删改查代码
@Log("查询")
@ApiOperation(value = "查询")
@GetMapping(value = "/yxSystemUserLevel")
@PreAuthorize("hasAnyRole('admin','YXSYSTEMUSERLEVEL_ALL','YXSYSTEMUSERLEVEL_SELECT')")
public ResponseEntity getYxSystemUserLevels(YxSystemUserLevelQueryCriteria criteria, Pageable pageable){
return new ResponseEntity<>(yxSystemUserLevelService.queryAll(criteria,pageable),HttpStatus.OK);
}
@ForbidSubmit
@Log("新增")
@ApiOperation(value = "新增")
@PostMapping(value = "/yxSystemUserLevel")
@PreAuthorize("hasAnyRole('admin','YXSYSTEMUSERLEVEL_ALL','YXSYSTEMUSERLEVEL_CREATE')")
public ResponseEntity create(@Validated @RequestBody YxSystemUserLevel resources){
return new ResponseEntity<>(yxSystemUserLevelService.save(resources),HttpStatus.CREATED);
}
@ForbidSubmit
@Log("修改")
@ApiOperation(value = "修改")
@PutMapping(value = "/yxSystemUserLevel")
@PreAuthorize("hasAnyRole('admin','YXSYSTEMUSERLEVEL_ALL','YXSYSTEMUSERLEVEL_EDIT')")
public ResponseEntity update(@Validated @RequestBody YxSystemUserLevel resources){
yxSystemUserLevelService.saveOrUpdate(resources);
return new ResponseEntity(HttpStatus.NO_CONTENT);
}
@ForbidSubmit
@Log("删除")
@ApiOperation(value = "删除")
@DeleteMapping(value = "/yxSystemUserLevel/{id}")
@PreAuthorize("hasAnyRole('admin','YXSYSTEMUSERLEVEL_ALL','YXSYSTEMUSERLEVEL_DELETE')")
public ResponseEntity delete(@PathVariable Integer id){
yxSystemUserLevelService.removeById(id);
return new ResponseEntity(HttpStatus.OK);
}