package com.sandu.ximon.admin.controller; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.sandu.common.domain.ResponseVO; import com.sandu.common.security.annotation.AnonymousAccess; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.AdminLoginParam; import com.sandu.ximon.admin.service.AdminService; import com.sandu.ximon.admin.service.ClientService; import com.sandu.ximon.dao.domain.Admin; import com.sandu.ximon.dao.domain.Client; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; /** * @author LiuHaoNan * @date 2022/10/21 */ @Slf4j @RestController @AllArgsConstructor @RequestMapping("/v1/userLogin") public class UserLoginController { private final AdminController adminController; private final AdminService adminService; private final ClientController clientController; private final ClientService clientService; @AnonymousAccess @PostMapping(value = "/login") public ResponseVO login(HttpServletRequest request, @RequestBody AdminLoginParam loginParam) { Admin admin = adminService.getOne(Wrappers.lambdaQuery(Admin.class).eq(Admin::getUsername, loginParam.getUsername())); Client client = clientService.getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getClientName, loginParam.getUsername())); if (admin != null) { return ResponseUtil.success(adminController.login(request, loginParam)); } else if (client != null) { return ResponseUtil.success(clientController.login(request, loginParam)); } else { return ResponseUtil.fail("用户信息不存在"); } } }