From 0aaa415e5e32decfad4cc2d7b1a7f02908e86277 Mon Sep 17 00:00:00 2001 From: pjhmizn49 Date: Fri, 13 Dec 2024 14:36:03 +0800 Subject: [PATCH] ADD file via upload --- .../flower/controller/StaffController.java | 381 ++++++++++++++++++ 1 file changed, 381 insertions(+) create mode 100644 flower_back/src/main/java/com/example/flower/controller/StaffController.java diff --git a/flower_back/src/main/java/com/example/flower/controller/StaffController.java b/flower_back/src/main/java/com/example/flower/controller/StaffController.java new file mode 100644 index 0000000..0bceb6a --- /dev/null +++ b/flower_back/src/main/java/com/example/flower/controller/StaffController.java @@ -0,0 +1,381 @@ +package com.example.flower.controller; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.example.flower.entity.Staff; +import com.example.flower.service.StaffService; +import com.example.flower.unit.JWTUtil; +import com.example.flower.unit.MenuList; +import io.jsonwebtoken.Claims; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; + +import java.util.List; + +@RestController +@RequestMapping("/staff") +public class StaffController { + @Resource + private StaffService staffService; + + @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 staff_id = (int) claims.get("id"); + + Staff staff = staffService.staffInfo(staff_id); + + if(staff!=null){ + JSONObject jsonObject1 = new JSONObject(); + jsonObject1.put("staff_id",staff.getStaff_id()); + jsonObject1.put("staff_name",staff.getStaff_name()); + jsonObject1.put("staff_role",staff.getStaff_role()); + jsonObject1.put("staff_pic",staff.getStaff_pic()); + + 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") //staffLogin员工后台登录 + public JSONObject staffLogin(@RequestBody JSONObject param){ + JSONObject jsonObject = new JSONObject(); + + Staff staff = staffService.staffLogin(param.getString("staff_name")); + //根据用户名没有查到用户 + if(staff==null){ + jsonObject.put("code",403 ); + jsonObject.put("msg"," 用户名不存在" ); + jsonObject.put("token",null); + jsonObject.put("data",null); //菜单信息 + } + else if (staff.getStaff_state()==0) { //账号为禁用状态 + jsonObject.put("code",403); + jsonObject.put("msg","账号禁用,请联系管理员" ); + jsonObject.put("token",null); + jsonObject.put("data",null); //菜单信息 + } + //密码验证,创建token + else if(staff.getStaff_pwd().equals(param.getString("staff_pwd"))){ + String token = JWTUtil.createToken(staff.getStaff_id(),staff.getStaff_role()); + + jsonObject.put("code",200 ); + jsonObject.put("msg","登录成功" ); + jsonObject.put("token",token); + + JSONObject jsonObject1 = new JSONObject(); //放menu + JSONObject[] menuList = new JSONObject[0]; + + if(staff.getStaff_role()==1){ //店长可以获得所有菜单的权限 + menuList = new JSONObject[8]; + MenuList.setMenu(menuList, 1); + } + else if(staff.getStaff_role()==0){ //员工菜单 + menuList = new JSONObject[7]; + MenuList.setMenu(menuList, 0); + } + jsonObject1.put("menu",menuList); + jsonObject.put("data",jsonObject1); + + } + else{ + jsonObject.put("code",403 ); + jsonObject.put("msg"," 密码错误" ); + jsonObject.put("token",null); + jsonObject.put("data",null); //菜单信息 + } + + return jsonObject; + } + + @PostMapping("/list") //staffList获取所有用户信息列表 + public JSONObject staffList(@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 staffList = staffService.staffList(page,page_size).getList(); + + jsonObject1.put("page_number",staffService.staffList(page,page_size).getPages()); + jsonObject1.put("total",staffService.staffList(page,page_size).getTotal()); + + int size=staffList.size(); + + JSONObject[] objects = new JSONObject[size]; + for(int i = 0;i staffList = staffService.staffListByQuery(page,page_size,staff_name).getList(); + + jsonObject1.put("page_number",staffService.staffListByQuery(page,page_size,staff_name).getPages()); + jsonObject1.put("total",staffService.staffListByQuery(page,page_size,staff_name).getTotal()); + + int size=staffList.size(); + + JSONObject[] objects = new JSONObject[size]; + for(int i = 0;i