| | |
| | | |
| | | import com.tcm.training.admin.common.ApiResponse; |
| | | import com.tcm.training.admin.common.PageResponse; |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import com.tcm.training.admin.member.dto.UserBatchClinicUpdateRequest; |
| | | import com.tcm.training.admin.member.dto.UserResetPasswordRequest; |
| | | import com.tcm.training.admin.member.dto.UserStatusRequest; |
| | |
| | | } |
| | | |
| | | @GetMapping("/users") |
| | | @SaCheckPermission("member:user:view") |
| | | public ApiResponse<PageResponse<UserListItemVO>> page( |
| | | @RequestParam(defaultValue = "1") int page, |
| | | @RequestParam(defaultValue = "10") int pageSize, |
| | |
| | | } |
| | | |
| | | @GetMapping("/users/export") |
| | | @SaCheckPermission("member:user:view") |
| | | public void export( |
| | | HttpServletResponse response, |
| | | @RequestParam(required = false) String nickname, |
| | |
| | | } |
| | | |
| | | @GetMapping("/users/{id}") |
| | | @SaCheckPermission("member:user:view") |
| | | public ApiResponse<UserDetailVO> detail(@PathVariable Long id) { |
| | | return ApiResponse.ok(userAppService.detail(id)); |
| | | } |
| | | |
| | | @PutMapping("/users/batch-clinic") |
| | | @SaCheckPermission("member:user:edit") |
| | | public ApiResponse<Void> batchUpdateClinic(@Valid @RequestBody UserBatchClinicUpdateRequest req) { |
| | | userAppService.batchUpdateClinic(req); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | |
| | | @PutMapping("/users/{id}") |
| | | @SaCheckPermission("member:user:edit") |
| | | public ApiResponse<UserDetailVO> update(@PathVariable Long id, @Valid @RequestBody UserUpdateRequest req) { |
| | | return ApiResponse.ok(userAppService.update(id, req)); |
| | | } |
| | | |
| | | @PatchMapping("/users/{id}/status") |
| | | @SaCheckPermission("member:user:edit") |
| | | public ApiResponse<UserStatusVO> patchStatus(@PathVariable Long id, @Valid @RequestBody UserStatusRequest req) { |
| | | return ApiResponse.ok(userAppService.patchStatus(id, req)); |
| | | } |
| | | |
| | | @PostMapping("/users/{id}/reset-password") |
| | | @SaCheckPermission("member:user:edit") |
| | | public ApiResponse<Void> resetPassword(@PathVariable Long id, @Valid @RequestBody UserResetPasswordRequest req) { |
| | | userAppService.resetPassword(id, req); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | |
| | | @DeleteMapping("/users/{id}") |
| | | @SaCheckPermission("member:user:delete") |
| | | public ApiResponse<Void> delete(@PathVariable Long id) { |
| | | userAppService.delete(id); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | |
| | | @DeleteMapping("/users/{id}/wechat-binding") |
| | | @SaCheckPermission("member:user:edit") |
| | | public ApiResponse<UserDetailVO> unbindWechat(@PathVariable Long id) { |
| | | return ApiResponse.ok(userAppService.unbindWechat(id)); |
| | | } |
| | | |
| | | @GetMapping("/clinics/options") |
| | | @SaCheckPermission("member:user:view") |
| | | public ApiResponse<List<ClinicOptionVO>> clinicOptions() { |
| | | return ApiResponse.ok(userAppService.listClinicOptions()); |
| | | } |