ソースを参照

chore[litemall-admin, litemall-admin-api]: 管理后台不支持管理员添加用户、编辑用户和删除用户操作。

Junling Bu 7 年 前
コミット
08bf8e0c18

+ 0 - 82
litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/web/AdminUserController.java

@@ -49,86 +49,4 @@ public class AdminUserController {
 
         return ResponseUtil.ok(data);
     }
-
-    @GetMapping("/username")
-    public Object username(@NotEmpty String username) {
-        boolean exist = userService.checkByUsername(username);
-        if (exist) {
-            return ResponseUtil.ok("已存在");
-        }
-        return ResponseUtil.ok("不存在");
-    }
-
-    private Object validate(LitemallUser user) {
-        String username = user.getUsername();
-        if (StringUtils.isEmpty(user)) {
-            return ResponseUtil.badArgument();
-        }
-        if (!RegexUtil.isUsername(username)) {
-            return ResponseUtil.fail(USER_INVALID_NAME, "用户名不符合规定");
-        }
-        String password = user.getPassword();
-        if (StringUtils.isEmpty(password) || password.length() < 6) {
-            return ResponseUtil.fail(USER_INVALID_PASSWORD, "用户密码长度不能小于6");
-        }
-        String mobile = user.getMobile();
-        if (StringUtils.isEmpty(mobile)) {
-            return ResponseUtil.badArgument();
-        }
-        if (!RegexUtil.isMobileExact(mobile)) {
-            return ResponseUtil.fail(USER_INVALID_MOBILE, "用户手机号码格式不正确");
-        }
-        return null;
-    }
-
-    @RequiresPermissions("admin:user:create")
-    @RequiresPermissionsDesc(menu={"用户管理" , "会员管理"}, button="添加")
-    @PostMapping("/create")
-    public Object create(@RequestBody LitemallUser user) {
-        Object error = validate(user);
-        if (error != null) {
-            return error;
-        }
-        String username = user.getUsername();
-        String mobile = user.getMobile();
-        List<LitemallUser> userList = userService.queryByUsername(username);
-        if (userList.size() > 0) {
-            return ResponseUtil.fail(USER_NAME_EXIST, "用户名已注册");
-        }
-        userList = userService.queryByMobile(mobile);
-        if (userList.size() > 0) {
-            return ResponseUtil.fail(USER_MOBILE_EXIST, "手机号已注册");
-        }
-        if (!RegexUtil.isMobileExact(mobile)) {
-            return ResponseUtil.fail(USER_INVALID_MOBILE, "手机号格式不正确");
-        }
-
-        String password = user.getPassword();
-        BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
-        String encodedPassword = encoder.encode(password);
-        user.setPassword(encodedPassword);
-
-        userService.add(user);
-        return ResponseUtil.ok(user);
-    }
-
-    @RequiresPermissions("admin:user:update")
-    @RequiresPermissionsDesc(menu={"用户管理" , "会员管理"}, button="编辑")
-    @PostMapping("/update")
-    public Object update(@RequestBody LitemallUser user) {
-        Object error = validate(user);
-        if (error != null) {
-            return error;
-        }
-        // 用户密码加密存储
-        String password = user.getPassword();
-        BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
-        String encodedPassword = encoder.encode(password);
-        user.setPassword(encodedPassword);
-
-        if (userService.updateById(user) == 0) {
-            return ResponseUtil.updatedDataFailed();
-        }
-        return ResponseUtil.ok(user);
-    }
 }

+ 0 - 24
litemall-admin/src/api/user.js

@@ -8,30 +8,6 @@ export function fetchList(query) {
   })
 }
 
-export function createUser(data) {
-  return request({
-    url: '/user/create',
-    method: 'post',
-    data
-  })
-}
-
-export function readUser(data) {
-  return request({
-    url: '/user/detail',
-    method: 'get',
-    data
-  })
-}
-
-export function updateUser(data) {
-  return request({
-    url: '/user/update',
-    method: 'post',
-    data
-  })
-}
-
 export function listAddress(query) {
   return request({
     url: '/address/list',

+ 1 - 1
litemall-admin/src/router/index.js

@@ -94,7 +94,7 @@ export const asyncRouterMap = [
         component: () => import('@/views/user/user'),
         name: 'user',
         meta: {
-          perms: ['GET /admin/user/list', 'POST /admin/user/create', 'POST /admin/user/update'],
+          perms: ['GET /admin/user/list'],
           title: '会员管理',
           noCache: true
         }

+ 1 - 152
litemall-admin/src/views/user/user.vue

@@ -6,7 +6,6 @@
       <el-input v-model="listQuery.username" clearable class="filter-item" style="width: 200px;" placeholder="请输入用户名"/>
       <el-input v-model="listQuery.mobile" clearable class="filter-item" style="width: 200px;" placeholder="请输入手机号"/>
       <el-button class="filter-item" type="primary" icon="el-icon-search" @click="handleFilter">查找</el-button>
-      <el-button class="filter-item" type="primary" icon="el-icon-edit" @click="handleCreate">添加</el-button>
       <el-button :loading="downloadLoading" class="filter-item" type="primary" icon="el-icon-download" @click="handleDownload">导出</el-button>
     </div>
 
@@ -38,65 +37,15 @@
         </template>
       </el-table-column>
 
-      <el-table-column align="center" label="操作" width="200" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
-          <el-button type="primary" size="mini" @click="handleUpdate(scope.row)">编辑</el-button>
-          <el-button type="danger" size="mini" @click="handleDelete(scope.row)">删除</el-button>
-        </template>
-      </el-table-column>
     </el-table>
 
     <pagination v-show="total>0" :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList" />
 
-    <!-- 添加或修改对话框 -->
-    <el-dialog :title="textMap[dialogStatus]" :visible.sync="dialogFormVisible">
-      <el-form ref="dataForm" :rules="rules" :model="dataForm" status-icon label-position="left" label-width="100px" style="width: 400px; margin-left:50px;">
-        <el-form-item label="用户名" prop="username">
-          <el-input v-model="dataForm.username"/>
-        </el-form-item>
-        <el-form-item label="手机号码" prop="mobile">
-          <el-input v-model="dataForm.mobile"/>
-        </el-form-item>
-        <el-form-item label="密码" prop="password">
-          <el-input v-model="dataForm.password" type="password" auto-complete="off"/>
-        </el-form-item>
-        <el-form-item label="性别" prop="gender">
-          <el-select v-model="dataForm.gender">
-            <el-option :value="0" label="未知"/>
-            <el-option :value="1" label="男"/>
-            <el-option :value="2" label="女"/>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="生日" prop="birthday">
-          <el-date-picker v-model="dataForm.birthday" type="date" value-format="yyyy-MM-dd"/>
-        </el-form-item>
-        <el-form-item label="用户等级" prop="userLevel">
-          <el-select v-model="dataForm.userLevel">
-            <el-option :value="0" label="普通用户"/>
-            <el-option :value="1" label="VIP用户"/>
-            <el-option :value="2" label="高级VIP用户"/>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="状态" prop="status">
-          <el-select v-model="dataForm.status">
-            <el-option :value="0" label="可用"/>
-            <el-option :value="1" label="禁用"/>
-            <el-option :value="2" label="注销"/>
-          </el-select>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="dialogFormVisible = false">取消</el-button>
-        <el-button v-if="dialogStatus=='create'" type="primary" @click="createData">确定</el-button>
-        <el-button v-else type="primary" @click="updateData">确定</el-button>
-      </div>
-    </el-dialog>
-
   </div>
 </template>
 
 <script>
-import { fetchList, createUser, updateUser } from '@/api/user'
+import { fetchList } from '@/api/user'
 import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
 
 export default {
@@ -115,27 +64,6 @@ export default {
         sort: 'add_time',
         order: 'desc'
       },
-      dataForm: {
-        id: undefined,
-        username: '',
-        mobile: '',
-        password: undefined,
-        gender: 0,
-        userLevel: 0,
-        birthday: undefined,
-        status: 0
-      },
-      dialogFormVisible: false,
-      dialogStatus: '',
-      textMap: {
-        update: '编辑',
-        create: '创建'
-      },
-      rules: {
-        username: [{ required: true, message: '用户名不能为空', trigger: 'blur' }],
-        mobile: [{ required: true, message: '手机号码不能为空', trigger: 'blur' }],
-        password: [{ required: true, message: '密码不能为空', trigger: 'blur' }]
-      },
       downloadLoading: false,
       genderDic: ['未知', '男', '女'],
       levelDic: ['普通用户', 'VIP用户', '高级VIP用户'],
@@ -162,85 +90,6 @@ export default {
       this.listQuery.page = 1
       this.getList()
     },
-    resetForm() {
-      this.dataForm = {
-        id: undefined,
-        username: '',
-        mobile: '',
-        pass: undefined,
-        checkPass: undefined,
-        gender: 0,
-        userLevel: 0,
-        birthday: undefined,
-        status: 0
-      }
-    },
-    handleCreate() {
-      this.resetForm()
-      this.dialogStatus = 'create'
-      this.dialogFormVisible = true
-      this.$nextTick(() => {
-        this.$refs['dataForm'].clearValidate()
-      })
-    },
-    createData() {
-      this.$refs['dataForm'].validate((valid) => {
-        if (valid) {
-          createUser(this.dataForm).then(response => {
-            this.list.unshift(response.data.data)
-            this.dialogFormVisible = false
-            this.$notify.success({
-              title: '成功',
-              message: '添加用户成功'
-            })
-          }).catch(response => {
-            this.$notify.error({
-              title: '失败',
-              message: response.data.errmsg
-            })
-          })
-        }
-      })
-    },
-    handleUpdate(row) {
-      this.dataForm = Object.assign({}, row)
-      this.dialogStatus = 'update'
-      this.dialogFormVisible = true
-      this.$nextTick(() => {
-        this.$refs['dataForm'].clearValidate()
-      })
-    },
-    updateData() {
-      this.$refs['dataForm'].validate((valid) => {
-        if (valid) {
-          updateUser(this.dataForm).then(() => {
-            for (const v of this.list) {
-              if (v.id === this.dataForm.id) {
-                const index = this.list.indexOf(v)
-                this.list.splice(index, 1, this.dataForm)
-                break
-              }
-            }
-            this.dialogFormVisible = false
-            this.$notify.success({
-              title: '成功',
-              message: '更新成功'
-            })
-          }).catch(response => {
-            this.$notify.error({
-              title: '失败',
-              message: response.data.errmsg
-            })
-          })
-        }
-      })
-    },
-    handleDelete(row) {
-      this.$notify.error({
-        title: '警告',
-        message: '用户删除操作不支持!'
-      })
-    },
     handleDownload() {
       this.downloadLoading = true
       import('@/vendor/Export2Excel').then(excel => {