zoo-backend/src/main/java/com/zoo/controller/LoginController.java
2024-05-17 23:27:45 +08:00

64 lines
2.3 KiB
Java

package com.zoo.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zoo.common.R;
import com.zoo.dto.AdminDto;
import com.zoo.dto.KeeperDto;
import com.zoo.dto.VeterinaryDto;
import com.zoo.entity.Account;
import com.zoo.entity.Admin;
import com.zoo.entity.Keeper;
import com.zoo.entity.Veterinary;
import com.zoo.service.IAccountService;
import com.zoo.service.IAdminService;
import com.zoo.service.IKeeperService;
import com.zoo.service.IVeterinaryService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/zoo/login")
public class LoginController {
@Autowired
IAccountService iAccountService;
@Autowired
IAdminService iAdminService;
@Autowired
IKeeperService iKeeperService;
@Autowired
IVeterinaryService iVeterinaryService;
@PostMapping("/login")
public R login(String username,String password){
QueryWrapper<Account> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("username",username);
queryWrapper.eq("password",password);
Account one = iAccountService.getOne(queryWrapper);
if (one == null){
return R.error("账号密码错误");
}
if (one.getPermissions()==0){
Admin admin = iAdminService.selectById(one.getRoleid());
AdminDto adminDto = new AdminDto();
BeanUtils.copyProperties(admin,adminDto);
adminDto.setPermissions(0);
return R.success(adminDto);
}else if (one.getPermissions()==1){
Keeper keeper = iKeeperService.selectById(one.getRoleid());
KeeperDto keeperDto = new KeeperDto();
BeanUtils.copyProperties(keeper,keeperDto);
keeperDto.setPermissions(1);
return R.success(keeperDto);
}else {
Veterinary veterinary = iVeterinaryService.selectById(one.getRoleid());
VeterinaryDto veterinaryDto = new VeterinaryDto();
BeanUtils.copyProperties(veterinary,veterinaryDto);
veterinaryDto.setPermissions(2);
return R.success(veterinaryDto);
}
}
}