package com.zjgsu.server;
import com.zjgsu.entity.Result;
import com.zjgsu.entity.User;
import com.zjgsu.repository.UserReponsitory;
import com.zjgsu.utils.Md5;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Service
public class UserService {
@Autowired
private UserReponsitory userReponsitory;
@Autowired
private JavaMailSender javaMailSender;
public void sendEmail(String address, String code) {
SimpleMailMessage message = new SimpleMailMessage();
message.setSubject("验证码");
message.setFrom("kepadedaidai@163.com");
message.setTo(address);
message.setSentDate(new Date());
message.setText("您的验证码是" + code + ",验证码10分钟内有效,如果这不是您的操作,请忽略这封邮件");
javaMailSender.send(message);
}
boolean findByEmail(String email){
return userReponsitory.existsUserByEmail(email);
}
public List<User> saveUser(User user) {
List<User> list = new ArrayList<>();
list.add(userReponsitory.save(user));
return list;
}
public Result<List<User>> reg(String email, String pass, String tmpcode){
if(!userReponsitory.existsUserByEmail(email)){
return new Result<>("用户未发注册邮件", -1);
}
User user = userReponsitory.findUsersByEmail(email).get(0);
long now = new Date().getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date ned = sdf.parse(user.getRepasstime());
long need = ned.getTime();
if (now > need) {
return new Result<>("验证码已过期", -2);
}
} catch (ParseException e) {
e.printStackTrace();
}
if(!tmpcode.equals(user.getRepass())){
return new Result<>("验证码错误", -3);
}
user.setUpass(Md5.md5(pass));
return new Result<>(saveUser(user));
}
public Result<List<User>> log(String email, String pass){
if(!findByEmail(email)){
return new Result<>("用户不存在", -1);
}
List<User> list = userReponsitory.findUsersByEmail(email);
String nowpass = Md5.md5(pass);
if(list.get(0).getUpass().equals(nowpass)){
return new Result<>(list);
}
else return new Result<>("密码错误",-2);
}
public Result<List<User>> sentEmail(String email) {
if(!findByEmail(email)){
User user = new User();
user.setEmail(email);
userReponsitory.save(user);
}
List<User> list = userReponsitory.findUsersByEmail(email);
User user = list.get(0);
int code = (int)((Math.random()*9+1)*100000);
user.setRepass(Integer.toString(code));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
user.setRepasstime(sdf.format(new Date(now.getTime()+600000)));
userReponsitory.save(user);
sendEmail(email, user.getRepass());
return new Result<>("success", 1);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!!
资源推荐
资源详情
资源评论
收起资源包目录
基于SpringCloud微服务架构的餐馆系统.zip (191个子文件)
ResultCode.class 5KB
ResultCode.class 5KB
OrderController.class 5KB
IncludeController.class 4KB
User.class 4KB
DishController.class 4KB
DishController.class 4KB
OrderServiceImpl.class 4KB
Result.class 3KB
LoginController.class 3KB
IncludeServiceImpl.class 3KB
UserHandler.class 3KB
Usertemp.class 3KB
Dish.class 3KB
Dish.class 3KB
OrderController.class 3KB
UserAddRequest.class 3KB
UserAddRequest.class 3KB
DishVo.class 2KB
DishVo.class 2KB
IncludeController.class 2KB
Order_dish.class 2KB
CorsConfig.class 2KB
CorsConfig.class 2KB
DishServiceImpl.class 2KB
Order_dish.class 2KB
Order_include.class 2KB
Order_include.class 2KB
JsonResult.class 2KB
JsonResult.class 2KB
Order_include.class 2KB
Result.class 2KB
Md5.class 1KB
ComsumerLoginApplication.class 972B
ComsumerDishApplication.class 969B
Order_includeApplication.class 898B
EruekaApplication.class 894B
UserReponsitory.class 885B
OrderApplication.class 874B
LoginApplication.class 874B
DishApplication.class 871B
RestTemplateConfig.class 720B
RestTemplateConfig.class 720B
checkInt.class 617B
DishMapper.class 607B
UsertempRepository.class 593B
ResultCode.class 590B
DishService.class 583B
OrderService.class 514B
IncludeService.class 454B
Order_includeMapper.class 446B
Order_includeMapper.class 446B
Order_DishMapper.class 437B
.gitignore 189B
.gitignore 57B
erueka-0.0.1-SNAPSHOT.jar 66.98MB
comsumer-dish-0.0.1-SNAPSHOT.jar 64.4MB
comsumer-login-0.0.1-SNAPSHOT.jar 64.39MB
order-0.0.1-SNAPSHOT.jar 62.3MB
Order_include-0.0.1-SNAPSHOT.jar 62.3MB
login-0.0.1-SNAPSHOT.jar 62.1MB
dish-0.0.1-SNAPSHOT.jar 61.45MB
UserService.java 3KB
ResultCode.java 3KB
ResultCode.java 3KB
OrderController.java 3KB
IncludeController.java 3KB
OrderServiceImpl.java 3KB
DishController.java 2KB
DishController.java 2KB
IncludeServiceImpl.java 2KB
OrderController.java 2KB
CorsConfig.java 2KB
CorsConfig.java 2KB
LoginController.java 2KB
UserHandler.java 2KB
IncludeController.java 2KB
JsonResult.java 1KB
JsonResult.java 1KB
DishServiceImpl.java 1KB
Result.java 1KB
Result.java 717B
User.java 691B
DishMapper.java 666B
ComsumerLoginApplication.java 620B
ComsumerDishApplication.java 618B
UserReponsitory.java 557B
EruekaApplication.java 534B
Md5.java 526B
Order_includeApplication.java 495B
OrderApplication.java 479B
LoginApplication.java 479B
DishApplication.java 477B
Order_dish.java 453B
RestTemplateConfig.java 423B
RestTemplateConfig.java 423B
OrderService.java 413B
Usertemp.java 400B
IncludeService.java 363B
Order_includeMapper.java 350B
共 191 条
- 1
- 2
资源评论
毕业小助手
- 粉丝: 1813
- 资源: 1712
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功