ADD file via upload

main
pjhmizn49 1 year ago
parent 77bcb17e8e
commit b4516ec5d9

@ -0,0 +1,386 @@
package com.example.flower.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.example.flower.entity.User;
import com.example.flower.service.UserService;
import com.example.flower.unit.JWTUtil;
import io.jsonwebtoken.Claims;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.text.ParseException;
import java.util.List;
@RestController
@RequestMapping("/user")
public class UserController {
@Resource
private UserService userService;
//后台
@PostMapping("/list") //userList获取所有用户信息列表
public JSONObject userList(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
JSONObject jsonObject1 = new JSONObject();
int page=param.getIntValue("page");
int page_size=param.getIntValue("page_size");
List<User> userList = userService.userList(page,page_size).getList();
jsonObject1.put("page_number",userService.userList(page,page_size).getPages());
jsonObject1.put("total",userService.userList(page,page_size).getTotal());
int size=userList.size();
JSONObject[] objects = new JSONObject[size];
for(int i = 0;i<size;i++){
objects[i]=new JSONObject();
objects[i].put("user_id", userList.get(i).getUser_id());
objects[i].put("user_name", userList.get(i).getUser_name());
objects[i].put("user_pwd", userList.get(i).getUser_pwd());
objects[i].put("user_phone", userList.get(i).getUser_phone());
objects[i].put("user_state", userList.get(i).getUser_state());
objects[i].put("user_role", userList.get(i).getUser_role());
if(userList.get(i).getUser_role() == 1) //是会员则返回会员日期
objects[i].put("member_time",userList.get(i).getMember_end_time());
else
objects[i].put("member_time","--");
objects[i].put("user_pic",userList.get(i).getUser_pic());
}
jsonObject.put("code",200 );
jsonObject.put("msg","token认证成功!" );
jsonObject1.put("users",objects);
jsonObject.put("data",jsonObject1);
return jsonObject;
}
@PostMapping("/query") //userListByQuery查询用户信息列表
public JSONObject userListByQuery(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
JSONObject jsonObject1 = new JSONObject();
int page=param.getIntValue("page");
int page_size=param.getIntValue("page_size");
String user_name = param.getString("user_name");
List<User> userList = userService.userListByQuery(page,page_size,user_name).getList();
int page_number=userService.userListByQuery(page,page_size,user_name).getPages();
jsonObject1.put("page_number",page_number);
jsonObject1.put("total",userService.userListByQuery(page,page_size,user_name).getTotal());
int size=userList.size();
JSONObject[] objects = new JSONObject[size];
for(int i = 0;i<size;i++){
objects[i]=new JSONObject();
objects[i].put("user_id", userList.get(i).getUser_id());
objects[i].put("user_name", userList.get(i).getUser_name());
objects[i].put("user_pwd", userList.get(i).getUser_pwd());
objects[i].put("user_phone", userList.get(i).getUser_phone());
objects[i].put("user_state", userList.get(i).getUser_state());
objects[i].put("user_role", userList.get(i).getUser_role());
if(userList.get(i).getUser_role() == 1) //是会员则返回会员日期
objects[i].put("member_time",userList.get(i).getMember_end_time());
else
objects[i].put("member_time","--");
objects[i].put("user_pic",userList.get(i).getUser_pic());
}
jsonObject.put("code",200 );
jsonObject.put("msg","成功" );
jsonObject1.put("users",objects);
jsonObject.put("data",jsonObject1);
return jsonObject;
}
@PostMapping("/deletePer") //userDeletePer删除单个用户
public JSONObject userDeletePer(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
int flag = userService.userDeletePer(param.getIntValue("user_id"));
if(flag==1){
jsonObject.put("code",200 );
jsonObject.put("msg","成功" );
}
else{
jsonObject.put("code",403 );
jsonObject.put("msg","删除失败" );
}
return jsonObject;
}
@PostMapping("/deleteMul") //userDeleteMul批量删除用户
public JSONObject userDeleteMul(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
//获取请求参数
JSONArray user_ids = param.getJSONArray("user_ids");
int [] ids = new int[user_ids.size()];
//把userid中的数据进行类型转换并存入到int数组中
for (int i = 0; i < user_ids.size(); i++) {
ids[i] = Integer.parseInt(user_ids.getString(i));
}
int result = userService.userDeleteMul(ids);
if(result == ids.length){
jsonObject.put("code",200);
jsonObject.put("msg","批量删除成功,删除了"+result+"条用户数据");
}else{
jsonObject.put("code",403);
jsonObject.put("msg","批量删除失败,删除了"+result+"条用户数据");
}
return jsonObject;
}
@PostMapping("/modifyState") //userModifyState修改单个用户状态
public JSONObject userModifyState(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
int user_id = param.getIntValue("user_id");
User user = userService.userInfo(user_id);
if(user==null){
jsonObject.put("code",403 );
jsonObject.put("msg","用户不存在" );
return jsonObject;
}
int user_state = user.getUser_state();
int state_modify = -1;
if(user_state==0) state_modify=1;
else if (user_state==1) state_modify=0;
if(state_modify==-1){
jsonObject.put("code",403 );
jsonObject.put("msg","用户状态错误" );
return jsonObject;
}
int flag = userService.userModifyState(user_id,state_modify);
if(flag==1){
jsonObject.put("code",200 );
jsonObject.put("msg","状态修改成功" );
}
else{
jsonObject.put("code",403 );
jsonObject.put("msg","状态修改失败" );
}
return jsonObject;
}
//前台
@PostMapping("/getByToken") //通过token获取用户账号信息
public JSONObject getStaffByToken(@RequestHeader String Authorization){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
Claims claims = JWTUtil.getBodyByToken(Authorization);
int user_id = (int) claims.get("id");
User user = userService.userInfo(user_id);
if(user!=null){
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("user_id",user.getUser_id());
jsonObject1.put("user_name",user.getUser_name());
jsonObject1.put("user_role",user.getUser_role());
jsonObject1.put("user_pic",user.getUser_pic());
jsonObject1.put("member_point",user.getMember_point());
jsonObject.put("code",200);
jsonObject.put("msg","成功");
jsonObject.put("data",jsonObject1);
}
else{
jsonObject.put("code",403);
jsonObject.put("msg","获取用户信息失败");
jsonObject.put("data",null);
}
return jsonObject;
}
@PostMapping("/login") //userLogin用户登录
public JSONObject staffLogin(@RequestBody JSONObject param) throws ParseException {
JSONObject jsonObject = new JSONObject();
User user = userService.userLogin(param.getString("user_name"));
//根据用户名没有查到用户
if(user==null){
jsonObject.put("code",403 );
jsonObject.put("msg"," 用户名不存在" );
jsonObject.put("token",null);
}
else if (user.getUser_state()==0) { //账号为禁用状态
jsonObject.put("code",403);
jsonObject.put("msg","账号禁用,请联系客服" );
jsonObject.put("token",null);
}
//密码验证,创建token
else if(user.getUser_pwd().equals(param.getString("user_pwd"))){
// 验证用户会员身份是否过期
if(user.getUser_role() == 1){
System.out.println(user.getUser_role());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 格式化
Date date = new Date();
String date_now = sdf.format(date); //当前时间
Date date1 = sdf.parse(user.getMember_end_time());
Date date2 = sdf.parse(date_now);
boolean before = date1.before(date2);
if(before) { //当前用户会员过期
user.setUser_role(0);
userService.userModify(user);
System.out.println(user.getUser_role());
}
}
String token = JWTUtil.createToken(user.getUser_id(),user.getUser_role());
jsonObject.put("code",200 );
jsonObject.put("msg"," 登录成功,欢迎来到好花!" );
jsonObject.put("token",token);
}
else{
jsonObject.put("code",403 );
jsonObject.put("msg"," 密码错误" );
jsonObject.put("token",null);
}
return jsonObject;
}
@PostMapping("/register") //userRegister用户注册
public JSONObject userAdd(@RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(userService.findByName(param.getString("user_name")) != null){
jsonObject.put("code",403 );
jsonObject.put("msg","该用户名已被占用" );
return jsonObject;
}
User user = new User();
user.setUser_name(param.getString("user_name"));
user.setUser_pwd(param.getString("user_pwd"));
user.setUser_role(0);
user.setUser_state(1);
user.setUser_phone("");
user.setUser_pic("");
userService.userRegister(user);
jsonObject.put("code",200 );
jsonObject.put("msg","注册成功!" );
jsonObject.put("user_id",user.getUser_id());
return jsonObject;
}
@PostMapping("/info") //useInfo获取用户信息
public JSONObject useInfo(@RequestHeader String Authorization){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
Claims claims = JWTUtil.getBodyByToken(Authorization);
int user_id = (int) claims.get("id");
User user = userService.userInfo(user_id);
if(user!=null){
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("user_id",user.getUser_id());
jsonObject1.put("user_name",user.getUser_name());
jsonObject1.put("user_pwd",user.getUser_pwd());
jsonObject1.put("user_role",user.getUser_role());
jsonObject1.put("user_phone",user.getUser_phone());
jsonObject1.put("user_pic",user.getUser_pic());
jsonObject1.put("member_end_time",user.getMember_end_time());
jsonObject1.put("member_point",user.getMember_point());
jsonObject.put("code",200 );
jsonObject.put("msg","成功" );
jsonObject.put("data",jsonObject1);
}
else{
jsonObject.put("code",403 );
jsonObject.put("msg","获取用户信息失败" );
jsonObject.put("data",null);
}
return jsonObject;
}
@PostMapping("/modify") //userModify修改用户信息
public JSONObject userModify(@RequestHeader String Authorization, @RequestBody JSONObject param){
JSONObject jsonObject = new JSONObject();
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
JWTUtil.checkTokenFailed(jsonObject);
return jsonObject;
}
Claims claims = JWTUtil.getBodyByToken(Authorization);
int user_id = (int) claims.get("id");
User user = new User();
user.setUser_id(user_id);
user.setUser_name(param.getString("user_name"));
user.setUser_pwd(param.getString("user_pwd"));
user.setUser_phone(param.getString("user_phone"));
user.setUser_pic(param.getString("user_pic"));
user.setUser_state(1);
int flag = userService.userModify(user);
if(flag==1){
jsonObject.put("code",200 );
jsonObject.put("msg","修改成功" );
}
else{
jsonObject.put("code",403 );
jsonObject.put("msg","修改失败" );
}
return jsonObject;
}
}
Loading…
Cancel
Save