package cc.mrbird.febs.dapp.controller; import cc.mrbird.febs.common.annotation.ControllerEndpoint; import cc.mrbird.febs.common.controller.BaseController; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.common.utils.FebsUtil; import cc.mrbird.febs.dapp.dto.SimulateDataDto; import cc.mrbird.febs.dapp.service.DappSimulateDataService; import cc.mrbird.febs.dapp.service.DappUserService; import cc.mrbird.febs.system.entity.User; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; /** * @author * @date 2022-03-24 **/ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "dappUser") public class DappUserController extends BaseController { private final DappUserService dappUserService; private final DappSimulateDataService dappSimulateDataService; @RequiresPermissions("admin:view") @GetMapping(value = "/list") public FebsResponse list(User user, QueryRequest request) { User currentUser = FebsUtil.getCurrentUser(); if (currentUser.getDeptId() == null) { user.setCreateBy(currentUser.getUserId()); } return new FebsResponse().success().data(getDataTable(dappUserService.findInPage(user, request))); } @RequiresPermissions("admin:add") @PostMapping(value = "/add") @ControllerEndpoint(operation = "新增用户", exceptionMessage = "新增用户失败") public FebsResponse add(User user) { dappUserService.add(user); return new FebsResponse().success(); } @RequiresPermissions("admin:update") @PostMapping(value = "/update") @ControllerEndpoint(operation = "编辑用户", exceptionMessage = "编辑用户失败") public FebsResponse update(User user) { return null; } @RequiresPermissions("admin:delete") @PostMapping(value = "/delete/{ids}") @ControllerEndpoint(operation = "删除用户", exceptionMessage = "删除用户失败") public FebsResponse delete(@PathVariable("ids") String ids) { dappUserService.delete(ids); return new FebsResponse().success(); } @RequiresPermissions("admin:simulate") @PostMapping(value = "/simulateData") @ControllerEndpoint(operation = "生成虚拟收益", exceptionMessage = "生成虚拟收益失败") public FebsResponse simulateData(@Valid SimulateDataDto simulateDataDto) { String batchNo = dappSimulateDataService.generateSimulateData(simulateDataDto); return new FebsResponse().success().data(batchNo); } }