PlatformAdminUserController.java 1.89 KB
package com.diligrp.rider.controller;

import com.diligrp.rider.common.result.Result;
import com.diligrp.rider.dto.ChangePasswordDTO;
import com.diligrp.rider.entity.AdminUser;
import com.diligrp.rider.service.AdminUserManageService;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/platform/admin-user")
@RequiredArgsConstructor
public class PlatformAdminUserController {

    private final AdminUserManageService adminUserManageService;

    @GetMapping("/list")
    public Result<List<AdminUser>> list(@RequestParam(required = false) String keyword) {
        return Result.success(adminUserManageService.list(keyword));
    }

    @PostMapping("/add")
    public Result<Void> add(@RequestBody AdminUser adminUser) {
        adminUserManageService.add(adminUser);
        return Result.success();
    }

    @PutMapping("/edit")
    public Result<Void> edit(@RequestBody AdminUser adminUser) {
        adminUserManageService.edit(adminUser);
        return Result.success();
    }

    @PostMapping("/ban")
    public Result<Void> ban(@RequestParam Long id) {
        adminUserManageService.ban(id);
        return Result.success();
    }

    @PostMapping("/cancelBan")
    public Result<Void> cancelBan(@RequestParam Long id) {
        adminUserManageService.cancelBan(id);
        return Result.success();
    }

    @DeleteMapping("/del")
    public Result<Void> del(@RequestParam Long id) {
        adminUserManageService.del(id);
        return Result.success();
    }

    @PostMapping("/changePassword")
    public Result<Void> changePassword(@RequestParam Long id,
                                       @Valid @RequestBody ChangePasswordDTO dto) {
        adminUserManageService.changePassword(id, dto.getOldPassword(), dto.getNewPassword());
        return Result.success();
    }
}