后端加了一点成功的返回消息

pull/2/head
zhong-hongye12355 2 months ago
parent be45d15226
commit 5c148bb642

@ -39,6 +39,10 @@ public class Result<T>{
return new Result<>(200, "success", null);
}
public static <T> Result<T> success(T data, String message) {
return new Result<>(200, message, null);
}
/**
*
* @param code
@ -48,4 +52,8 @@ public class Result<T>{
public static <T> Result<T> error(Integer code, String message) {
return new Result<>(code, message, null);
}
public static <T> Result<T> error(T data,String message){
return new Result<>(200,message,null);
}
}

@ -1,6 +1,7 @@
package com.unilife.controller;
import com.unilife.common.result.Result;
import com.unilife.model.dto.LogDTO;
import com.unilife.model.dto.LoginDTO;
import com.unilife.service.UserService;
import io.swagger.annotations.Api;
@ -24,4 +25,8 @@ public class UserController {
public Result register(@RequestBody LoginDTO loginDTO) {
return userService.register(loginDTO);
}
@ApiOperation(value = "用户登录")
@PostMapping("login")
public Result login(@RequestBody LogDTO logDTO) { return userService.login(logDTO); }
}

@ -2,8 +2,10 @@ package com.unilife.mapper;
import com.unilife.model.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface UserMapper {
public void insert(User user) ;
void insert(User user);
User FindByEmail(@Param("email") String email, @Param("password") String password);
}

@ -0,0 +1,14 @@
package com.unilife.model.dto;
//这个才是登录的DTO
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class LogDTO {
private String email;
private String password;
}

@ -1,5 +1,5 @@
package com.unilife.model.dto;
//这个是注册的DTO
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@ -0,0 +1,27 @@
package com.unilife.model.vo;
import com.unilife.model.entity.User;
import lombok.Data;
@Data
public class LogVO {
private Integer id;
private String username;
private String nickname;
private String avatar;
private Byte role;
private Byte isVerified;
private Byte status;
public LogVO(Integer id,String username,String nickname,String avatar,Byte role,Byte isVerified,Byte status)
{
this.id = id;
this.username = username;
this.nickname = nickname;
this.avatar = avatar;
this.role = role;
this.isVerified = isVerified;
}
}

@ -7,4 +7,11 @@ public class LoginVO {
private Integer id;
private String username;
private String nickname;
public LoginVO(Integer id, String username, String nickname)
{
this.id = id;
this.username = username;
this.nickname = nickname;
}
}

@ -1,9 +1,12 @@
package com.unilife.service;
import com.unilife.common.result.Result;
import com.unilife.model.dto.LogDTO;
import com.unilife.model.dto.LoginDTO;
import com.unilife.model.entity.User;
public interface UserService {
Result register(LoginDTO loginDTO);
Result login(LogDTO logDTO);
}

@ -3,13 +3,19 @@ package com.unilife.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.unilife.common.result.Result;
import com.unilife.mapper.UserMapper;
import com.unilife.model.dto.LogDTO;
import com.unilife.model.dto.LoginDTO;
import com.unilife.model.entity.User;
import com.unilife.model.vo.LogVO;
import com.unilife.model.vo.LoginVO;
import com.unilife.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
@Slf4j
@Component
@Service
public class UserServiceImpl implements UserService {
@ -21,7 +27,25 @@ public class UserServiceImpl implements UserService {
User user = new User();
BeanUtil.copyProperties(loginDTO,user);
userMapper.insert(user);
LoginVO loginVO = new LoginVO();
LoginVO loginVO = new LoginVO(Math.toIntExact(user.getId()),user.getUsername(),user.getNickname());
return Result.success(loginVO);
}
@Override
public Result login(LogDTO logDTO) {
User user = new User();
BeanUtil.copyProperties(logDTO,user);//将登录的前端传来的消息拷贝给这个user
User getuser = userMapper.FindByEmail(user.getEmail(),user.getPassword());
if(getuser == null)
{
return Result.error(logDTO,"用户不存在,登录失败!");
}
if(!user.getPassword().equals(getuser.getPassword()))
{
return Result.error(logDTO,"密码错误,登录失败!");
}
LogVO logVO = new LogVO(Math.toIntExact(getuser.getId()), getuser.getUsername(), getuser.getNickname(),
getuser.getAvatar(), getuser.getRole(), getuser.getIsVerified(), getuser.getStatus());
return Result.success(logVO);
}
}

@ -1,10 +1,10 @@
server:
port: 8080
port: 8087
spring:
datasource:
url: jdbc:mysql://localhost:3306/UniLife?useSSL=false&serverTimezone=UTC&characterEncoding=UTF-8
username: root
password: 123456
password: zhong20050428
driver-class-name: com.mysql.cj.jdbc.Driver
knife4j:
enable: true

@ -1,6 +1,17 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.unilife.mapper.UserMapper">
<resultMap id="userResultMap" type="com.unilife.model.entity.User">
<id column="id" property="id"/>
<result column="email" property="email"/>
<result column="password" property="password"/>
<result column="username" property="username"/>
<result column="nickname" property="nickname"/>
<result column="avatar" property="avatar"/>
<result column="role" property="role"/>
<result column="is_verified" property="isVerified"/>
<result column="status" property="status"/>
</resultMap>
<insert id="insert" parameterType="com.unilife.model.entity.User" useGeneratedKeys="true" keyProperty="id">
INSERT INTO users (
username,
@ -40,4 +51,10 @@
#{loginTime}
)
</insert>
<select id="FindByEmail" resultMap="userResultMap">
SELECT id, email, password, username, nickname, avatar, role, is_verified, status
FROM users
WHERE email = #{email} AND password = #{password}
</select>
</mapper>
Loading…
Cancel
Save