MerchantSubaccountController.java 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package com.ruoyi.app.user;
  2. import com.ruoyi.app.user.dto.MerchantSubaccountCreateRequest;
  3. import com.ruoyi.app.user.dto.MerchantSubaccountPasswordRequest;
  4. import com.ruoyi.app.user.dto.MerchantSubaccountStatusRequest;
  5. import com.ruoyi.app.user.dto.MerchantSubaccountUpdateRequest;
  6. import com.ruoyi.common.annotation.Anonymous;
  7. import com.ruoyi.common.core.controller.BaseController;
  8. import com.ruoyi.common.core.domain.AjaxResult;
  9. import com.ruoyi.system.utils.Auth;
  10. import com.ruoyi.system.utils.AuthContext;
  11. import org.springframework.web.bind.annotation.GetMapping;
  12. import org.springframework.web.bind.annotation.PathVariable;
  13. import org.springframework.web.bind.annotation.PostMapping;
  14. import org.springframework.web.bind.annotation.PutMapping;
  15. import org.springframework.web.bind.annotation.RequestBody;
  16. import org.springframework.web.bind.annotation.RequestHeader;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RestController;
  19. @RestController
  20. @RequestMapping("/merchant/subaccounts")
  21. public class MerchantSubaccountController extends BaseController {
  22. private final MerchantSubaccountApplicationService applicationService;
  23. public MerchantSubaccountController(MerchantSubaccountApplicationService applicationService) {
  24. this.applicationService = applicationService;
  25. }
  26. @Anonymous
  27. @Auth
  28. @GetMapping
  29. public AjaxResult list(@RequestHeader String token) {
  30. return success(applicationService.listForOwner(AuthContext.requireUserId()));
  31. }
  32. @Anonymous
  33. @Auth
  34. @PostMapping
  35. public AjaxResult create(@RequestHeader String token,
  36. @RequestBody MerchantSubaccountCreateRequest request) {
  37. return success(applicationService.create(AuthContext.requireUserId(), request));
  38. }
  39. @Anonymous
  40. @Auth
  41. @PutMapping("/{subaccountUserId}")
  42. public AjaxResult update(@RequestHeader String token,
  43. @PathVariable Long subaccountUserId,
  44. @RequestBody MerchantSubaccountUpdateRequest request) {
  45. return success(applicationService.update(AuthContext.requireUserId(),
  46. subaccountUserId, request));
  47. }
  48. @Anonymous
  49. @Auth
  50. @PutMapping("/{subaccountUserId}/password")
  51. public AjaxResult updatePassword(@RequestHeader String token,
  52. @PathVariable Long subaccountUserId,
  53. @RequestBody MerchantSubaccountPasswordRequest request) {
  54. applicationService.updatePassword(AuthContext.requireUserId(),
  55. subaccountUserId, request);
  56. return success();
  57. }
  58. @Anonymous
  59. @Auth
  60. @PutMapping("/{subaccountUserId}/status")
  61. public AjaxResult updateStatus(@RequestHeader String token,
  62. @PathVariable Long subaccountUserId,
  63. @RequestBody MerchantSubaccountStatusRequest request) {
  64. applicationService.updateOwnerStatus(AuthContext.requireUserId(),
  65. subaccountUserId, request);
  66. return success();
  67. }
  68. }