package my.ceshi.logindemo.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import my.ceshi.logindemo.mapper.LoginMapper;
import my.ceshi.logindemo.model.entity.TbLoginInfo;
import my.ceshi.logindemo.model.request.LoginRequest;
import my.ceshi.logindemo.model.response.InfoResponse;
import my.ceshi.logindemo.model.response.LoginResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class LoginService {
@Autowired
private LoginMapper loginMapper;
private static final Map<String, String> map = new HashMap<>();
public LoginResponse login(LoginRequest request) {
LambdaQueryWrapper<TbLoginInfo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(TbLoginInfo::getUsername, request.getUsername());
wrapper.eq(TbLoginInfo::getPassword, request.getPassword());
List<TbLoginInfo> infos = loginMapper.selectList(wrapper);
LoginResponse response = new LoginResponse();
if (infos.isEmpty()) {
response.setSuccess(false);
response.setMessage("未查询到用户信息");
return response;
}
response.setSuccess(true);
response.setMessage("登陆成功");
map.put("username",infos.get(0).getUsername());
map.put("name",infos.get(0).getName());
map.put("password",infos.get(0).getPassword());
map.put("email",infos.get(0).getEmail());
return response;
}
public LoginResponse register(LoginRequest request) {
LoginResponse response = new LoginResponse();
LambdaQueryWrapper<TbLoginInfo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(TbLoginInfo::getUsername, request.getUsername());
Integer i = loginMapper.selectCount(wrapper);
if (i>0){
response.setSuccess(false);
response.setMessage("用户已存在");
return response;
}
TbLoginInfo info = new TbLoginInfo();
info.setUsername(request.getUsername());
info.setPassword(request.getPassword());
if (request.getName()!=null){
info.setName(request.getName());
}
if (request.getEmail()!=null){
info.setEmail(request.getEmail());
}
loginMapper.insert(info);
response.setSuccess(true);
response.setMessage("注册成功");
map.put("username",request.getUsername());
map.put("name",request.getName());
map.put("password",request.getPassword());
map.put("email",request.getEmail());
return response;
}
public InfoResponse getInfo() {
InfoResponse response = new InfoResponse();
response.setEmail(map.get("email"));
response.setName(map.get("name"));
response.setUsername(map.get("username"));
response.setPassword(map.get("password"));
return response;
}
public ResponseEntity changeInfo(LoginRequest request) {
LambdaUpdateWrapper<TbLoginInfo> wrapper = new LambdaUpdateWrapper<>();
wrapper.eq(TbLoginInfo::getUsername,request.getOldUsername())
.set(TbLoginInfo::getUsername,request.getUsername())
.set(TbLoginInfo::getPassword,request.getPassword())
.set(TbLoginInfo::getEmail,request.getEmail())
.set(TbLoginInfo::getName,request.getName());
int update = loginMapper.update(null, wrapper);
if (update==0){
return ResponseEntity.ok("失败");
}
map.put("username",request.getUsername());
map.put("name",request.getName());
map.put("password",request.getPassword());
map.put("email",request.getEmail());
return ResponseEntity.ok("成功");
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.根据项目要求,学生分成1-3人的小组,每个小组成员明确分工,合作完成项目。 2.进行详细的需求分析,设计系统的整体架构,包括前端页面设计和后端逻辑实现。 3.选择合适的Java Web框架和技术栈,如Servlet、JSP、Spring MVC、MyBatis等,使用Maven进行项目管理。 4.采用迭代开发的方法,每个迭代周期完成部分功能,并进行测试和调试,确保系统的稳定性和功能的正确性。 5.在项目完成后,撰写详细的技术文档和项目总结,分析项目开发过程中的问题和解决方案,提出改进建议。
资源推荐
资源详情
资源评论
收起资源包目录
【Java期末/课程设计】蛋糕网站(JavaWeb框架\网页设计\MySQL数据库) (178个子文件)
LoginService.class 7KB
LoginRequest.class 3KB
TbLoginInfo.class 3KB
InfoResponse.class 3KB
LoginController.class 2KB
LoginResponse.class 2KB
StartupEventListener.class 2KB
LoginDemoApplication.class 815B
LoginMapper.class 402B
bootstrap.css 196KB
bootstrap.css 196KB
bootstrap.min.css 158KB
bootstrap.min.css 158KB
bootstrap-grid.css 66KB
bootstrap-grid.css 66KB
bootstrap-grid.min.css 49KB
bootstrap-grid.min.css 49KB
bootstrap-reboot.css 5KB
bootstrap-reboot.css 5KB
bootstrap-reboot.min.css 4KB
bootstrap-reboot.min.css 4KB
public.css 2KB
public.css 2KB
index.css 2KB
index.css 2KB
SelfPage.css 2KB
SelfPage.css 2KB
LoginPage.css 2KB
LoginPage.css 2KB
SortPage.css 1KB
SortPage.css 1KB
.gitignore 395B
.gitignore 184B
index.html 12KB
index.html 12KB
SortPage.html 10KB
SortPage.html 10KB
LoginPage.html 2KB
LoginPage.html 2KB
SelfPage.html 2KB
SelfPage.html 2KB
LoginService.java 4KB
LoginController.java 2KB
StartupEventListener.java 962B
LoginRequest.java 512B
LoginDemoApplication.java 416B
DatabaseInitializer.java 416B
TbLoginInfo.java 324B
LoginMapper.java 272B
InfoResponse.java 270B
LoginDemoApplicationTests.java 222B
LoginResponse.java 168B
Carousel_05.jpg 1.71MB
Carousel_05.jpg 1.71MB
new_04.jpg 1.69MB
new_04.jpg 1.69MB
new_01.jpg 1.61MB
new_01.jpg 1.61MB
new_02.jpg 1.58MB
new_02.jpg 1.58MB
new_05.jpg 1.57MB
new_32.jpg 1.57MB
new_05.jpg 1.57MB
new_32.jpg 1.57MB
new_31.jpg 1.49MB
user.jpg 1.49MB
new_31.jpg 1.49MB
user.jpg 1.49MB
new_34.jpg 1.47MB
new_34.jpg 1.47MB
new_15.jpg 1.45MB
new_12.jpg 1.45MB
new_15.jpg 1.45MB
new_12.jpg 1.45MB
new_03.jpg 1.42MB
new_03.jpg 1.42MB
new_14.jpg 1.4MB
new_14.jpg 1.4MB
new_24.jpg 1.37MB
new_24.jpg 1.37MB
new_13.jpg 1.37MB
new_13.jpg 1.37MB
new_11.jpg 1.37MB
new_11.jpg 1.37MB
new_21.jpg 1.36MB
new_21.jpg 1.36MB
new_25.jpg 1.36MB
new_25.jpg 1.36MB
new_35.jpg 1.34MB
new_35.jpg 1.34MB
new_23.jpg 1.29MB
new_23.jpg 1.29MB
Carousel_01.jpg 1.26MB
Carousel_01.jpg 1.26MB
new_22.jpg 1.24MB
new_22.jpg 1.24MB
Carousel_04.jpg 1.13MB
Carousel_04.jpg 1.13MB
Carousel_02.jpg 1.06MB
Carousel_02.jpg 1.06MB
共 178 条
- 1
- 2
资源评论
小辰代写
- 粉丝: 4261
- 资源: 100
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功