• 微服务项目:尚融宝(31)(前端搭建:会员列表搭建(2))


    二、前端整合

    1、创建vue组件

    core/user-info/list.vue

    1. <template>
    2. <div class="app-container">
    3. user list
    4. div>
    5. template>

    2、配置路由 

    1. {
    2. path: '/core/user-info',
    3. component: Layout,
    4. redirect: '/core/user-info/list',
    5. name: 'coreUserInfo',
    6. meta: { title: '会员管理', icon: 'user' },
    7. alwaysShow: true,
    8. children: [
    9. {
    10. path: 'list',
    11. name: 'coreUserInfoList',
    12. component: () => import('@/views/core/user-info/list'),
    13. meta: { title: '会员列表' }
    14. }
    15. ]
    16. },

    3、定义api模块

    创建文件 src/api/core/user-info.js

    1. import request from '@/utils/request'
    2. export default {
    3. getPageList(page, limit, searchObj) {
    4. return request({
    5. url: `/admin/core/userInfo/list/${page}/${limit}`,
    6. method: 'get',
    7. params: searchObj
    8. })
    9. }
    10. }

    4、定义页面组件脚本

    src/views/core/user-info/list.vue

    5、定义页面组件模板

    src/views/core/user-info/list.vue

     锁定和解锁

    一、后端接口实现

    1、Service

    接口:UserInfoService

    void lock(Long id, Integer status);

    实现:UserInfoServiceImpl 

    1. @Override
    2. public void lock(Long id, Integer status) {
    3. // UserInfo userInfo = this.getById(id);//select
    4. // userInfo.setStatus(1);
    5. // this.updateById(userInfo);//update
    6. UserInfo userInfo = new UserInfo();
    7. userInfo.setId(id);
    8. userInfo.setStatus(status);
    9. baseMapper.updateById(userInfo);
    10. }

    2、Controller

    AdminUserInfoController

    1. @ApiOperation("锁定和解锁")
    2. @PutMapping("/lock/{id}/{status}")
    3. public R lock(
    4. @ApiParam(value = "用户id", required = true)
    5. @PathVariable("id") Long id,
    6. @ApiParam(value = "锁定状态(0:锁定 1:解锁)", required = true)
    7. @PathVariable("status") Integer status){
    8. userInfoService.lock(id, status);
    9. return R.ok().message(status==1?"解锁成功":"锁定成功");
    10. }

    二、前端整合

    1、定义api

    src/api/core/user-info.js

    1. lock(id, status) {
    2. return request({
    3. url: `/admin/core/userInfo/lock/${id}/${status}`,
    4. method: 'put'
    5. })
    6. }

    2、定义页面组件脚本

    src/views/core/user-info/list.vue

    1. // 锁定和解锁
    2. lock(id, status) {
    3. userInfoApi.lock(id, status).then(response => {
    4. this.$message.success(response.message)
    5. this.fetchData()
    6. })
    7. }

    3、定义页面组件模板

    src/views/core/user-info/list.vue: 

    1. "操作" align="center" width="200">
    2. <template slot-scope="scope">
    3. <el-button
    4. v-if="scope.row.status == 1"
    5. type="primary"
    6. size="mini"
    7. @click="lock(scope.row.id, 0)"
    8. >
    9. 锁定
    10. el-button>
    11. <el-button
    12. v-else
    13. type="danger"
    14. size="mini"
    15. @click="lock(scope.row.id, 1)"
    16. >
    17. 解锁
    18. el-button>
    19. template>

     

     

     

     

  • 相关阅读:
    安装 laravel 遇到的错误和解决方案
    基于鹦鹉优化算法(Parrot optimizer,PO)的无人机三维路径规划(提供MATLAB代码)
    Android - Navigation组件
    22-07-19 西安 RabbitMQ(03) 消息可靠投递、消费端限流、死信队列、延迟队列、集群搭建
    HashMap与HashSet
    Android键盘监听
    BI数据分析
    JVM介绍
    一种基于柔性事务的分布式事务解决方案设计探究
    [附源码]java毕业设计医院档案管理系统
  • 原文地址:https://blog.csdn.net/m0_62436868/article/details/126812662