Browse Source

实现订单派送功能

binguoc 4 năm trước cách đây
mục cha
commit
dd480c0a8d
49 tập tin đã thay đổi với 946 bổ sung422 xóa
  1. 6 1
      pom.xml
  2. 6 1
      src/main/java/com/chuanghai/repair/RepairsApplication.java
  3. 189 87
      src/main/java/com/chuanghai/repair/controller/AutoSendOrderCentroller.java
  4. 44 0
      src/main/java/com/chuanghai/repair/controller/BuildRoomController.java
  5. 39 0
      src/main/java/com/chuanghai/repair/controller/FaultController.java
  6. 18 13
      src/main/java/com/chuanghai/repair/controller/LoginController.java
  7. 134 22
      src/main/java/com/chuanghai/repair/controller/OrderController.java
  8. 11 7
      src/main/java/com/chuanghai/repair/controller/WorkController.java
  9. 12 4
      src/main/java/com/chuanghai/repair/entity/RepairsFault.java
  10. 0 30
      src/main/java/com/chuanghai/repair/entity/RepairsFaultOrder.java
  11. 0 43
      src/main/java/com/chuanghai/repair/entity/RepairsFloor.java
  12. 9 2
      src/main/java/com/chuanghai/repair/entity/RepairsOrder.java
  13. 3 3
      src/main/java/com/chuanghai/repair/entity/RepairsRoom.java
  14. 6 1
      src/main/java/com/chuanghai/repair/entity/RepairsStudent.java
  15. 8 1
      src/main/java/com/chuanghai/repair/entity/RepairsWork.java
  16. 0 8
      src/main/java/com/chuanghai/repair/mapper/RepairsBuildMapper.java
  17. 16 0
      src/main/java/com/chuanghai/repair/mapper/RepairsBuildRoomMapper.java
  18. 8 0
      src/main/java/com/chuanghai/repair/mapper/RepairsFaultMapper.java
  19. 0 8
      src/main/java/com/chuanghai/repair/mapper/RepairsFaultOrderMapper.java
  20. 0 8
      src/main/java/com/chuanghai/repair/mapper/RepairsFloorMapper.java
  21. 40 3
      src/main/java/com/chuanghai/repair/mapper/RepairsOrderMapper.java
  22. 0 8
      src/main/java/com/chuanghai/repair/mapper/RepairsRoomMapper.java
  23. 7 2
      src/main/java/com/chuanghai/repair/mapper/RepairsWorkMapper.java
  24. 20 0
      src/main/java/com/chuanghai/repair/service/RepairsBuildRoomService.java
  25. 0 10
      src/main/java/com/chuanghai/repair/service/RepairsBuildService.java
  26. 10 0
      src/main/java/com/chuanghai/repair/service/RepairsFaultService.java
  27. 0 10
      src/main/java/com/chuanghai/repair/service/RepairsFloorService.java
  28. 40 2
      src/main/java/com/chuanghai/repair/service/RepairsOrderService.java
  29. 0 10
      src/main/java/com/chuanghai/repair/service/RepairsRoomService.java
  30. 7 2
      src/main/java/com/chuanghai/repair/service/RepairsWorkService.java
  31. 32 0
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsBuildRoomServiceImpl.java
  32. 0 21
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsBuildServiceImpl.java
  33. 12 0
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsFaultServiceImpl.java
  34. 0 21
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsFloorServiceImpl.java
  35. 57 5
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsOrderServiceImpl.java
  36. 0 20
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsRoomServiceImpl.java
  37. 9 5
      src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsWorkServiceImpl.java
  38. 78 0
      src/main/java/com/chuanghai/repair/utils/CreateTokenUtil.java
  39. 1 1
      src/main/resources/application.yml
  40. 0 11
      src/main/resources/mapper/RepairsBuildMapper.xml
  41. 21 0
      src/main/resources/mapper/RepairsBuildRoomMapper.xml
  42. 7 0
      src/main/resources/mapper/RepairsFaultMapper.xml
  43. 0 11
      src/main/resources/mapper/RepairsFaultOrderMapper.xml
  44. 0 12
      src/main/resources/mapper/RepairsFloorMapper.xml
  45. 87 9
      src/main/resources/mapper/RepairsOrderMapper.xml
  46. 0 12
      src/main/resources/mapper/RepairsRoomMapper.xml
  47. 1 0
      src/main/resources/mapper/RepairsStudentMapper.xml
  48. 7 6
      src/main/resources/mapper/RepairsWorkMapper.xml
  49. 1 2
      src/test/java/com/chuanghai/RepairsApplicationTests.java

+ 6 - 1
pom.xml

@@ -156,7 +156,12 @@
             <version>RELEASE</version>
             <scope>test</scope>
         </dependency>
-
+<!--导入JWT 生成token-->
+        <dependency>
+            <groupId>com.auth0</groupId>
+            <artifactId>java-jwt</artifactId>
+            <version>3.8.2</version>
+        </dependency>
     </dependencies>
 
     <build>

+ 6 - 1
src/main/java/com/chuanghai/repair/RepairsApplication.java

@@ -6,13 +6,18 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.domain.EntityScan;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
 
 @SpringBootApplication
+//@EnableScheduling 设置定时任务
 public class RepairsApplication {
 
     public static void main(String[] args) {
-        SpringApplication.run(RepairsApplication.class, args);
+
+       SpringApplication.run(RepairsApplication.class, args);
+
     }
 
 }
+

+ 189 - 87
src/main/java/com/chuanghai/repair/controller/AutoSendOrderCentroller.java

@@ -7,150 +7,249 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.context.ApplicationListener;
 import org.springframework.context.event.ContextRefreshedEvent;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Author: bingo
  * @Date: 2022/2/25 星期五 21:33
  * @Description: com.chuanghai.repair.controller
  * @version: 1.0
- *
+ * <p>
  * 该controller类实现了ApplicationListener<ContextRefreshedEvent> 接口
- *      重写了onApplicationEvent方法,使项目启动之后自动执行该方法 实现订单自动分配
+ * 重写了onApplicationEvent方法,使项目启动之后自动执行该方法 实现订单自动分配
  */
+
+/*
 @Api(tags = "自动派单管理")
 @RestController
 @RequestMapping("/auto")
 public class AutoSendOrderCentroller implements ApplicationListener<ContextRefreshedEvent> {
 
+
     @Resource(name = "repairsOrderService")
     private RepairsOrderService repairsOrderService;
 
     @Resource(name = "repairsWorkService")
     private RepairsWorkService repairsWorkService;
 
-    /**
-     *  优化: 在订单表加个字段(订单类型  水电工 木工等)对应维修工的类型       根据未接单  订单类型 将木工订单分配给木工师傅
-     */
+    static HashMap<String, String> orderMap = new HashMap<>();
+
+
+    */
+/**
+     * 优化: 在订单表加个字段(订单类型  水电工 木工等)对应维修工的类型       根据未接单  订单类型 将木工订单分配给木工师傅
+     *//*
+
     @ApiOperation("自动分配订单")
     @PostMapping(value = "/autoSendOrder")
     @Override
     public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
+        autoSends();
+
+    }
+
+    */
+/**
+     * 设置每半小时执行一次
+     *//*
+
+    @Scheduled(cron="0 0/30 * * * ?")
+    public void autoSends(){
+        try {
+            //查询所有未接单的订单实体信息  木工订单
+            List<String> woodOrderList = repairsOrderService.queryOrderByType("2","0");
+            //查询所有在岗维修工  木工师傅
+            List<String> woodWork = repairsWorkService.queryAllWork("2");
+            autoSend(woodOrderList, woodWork);
+            //查询所有未接单的订单实体信息  空调订单
+            List<String> airOrderList = repairsOrderService.queryOrderByType("1","0");
+            //查询所有在岗维修工  空调师傅
+            List<String> airWork = repairsWorkService.queryAllWork("1");
+            autoSend(airOrderList, airWork);
+            //查询所有未接单的订单实体信息  水电订单
+            List<String> waterOrderList = repairsOrderService.queryOrderByType("0","0");
+            //查询所有在岗维修工  水电师傅
+            List<String> waterWork = repairsWorkService.queryAllWork("0");
+            autoSend(waterOrderList, waterWork);
+
+
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
 
+    }
+    */
+/**
+     * 封装的自动派单方法 传入订单列表  和  员工列表
+     *
+     * @param orderLists
+     * @param workLists
+     *//*
+
+    private void autoSend(List<String> orderLists, List<String> workLists) {
         try {
-            //查询所有未接单的订单实体信息       优化:订单进行分类  木工  水电工
-            List<RepairsOrder> orderList = repairsOrderService.queryAllOrderNotReceive();
+
+            //创建任务列表
             List<Task> taskList = new ArrayList<Task>();
-            //将订单实体信息中的订单ID存入任务集合中
-            for (RepairsOrder repairsOrder:orderList ) {
-                String orderId = repairsOrder.getOrderId();
-                taskList.add(new Task(orderId));
+
+
+            //将木工订单实体信息中的订单ID存入任务集合中
+            for (String orderList : orderLists) {
+                taskList.add(new Task(orderList));
+
             }
-            //查询所有在岗维修工   优化: 可将维修工分类  if判断分配同类型的订单   木工订单----木工师傅
-            List<String> workList = repairsWorkService.queryAllWork();
-            //在岗维修工人数
-            int threadCount = workList.size();
-            List[] taskPerThreadCount = distributeTasks(taskList, 2);
+
+            //在岗木工维修工人数
+            int threadCount = workLists.size();
+            List[] taskPerThreadCount = distributeTasks(taskList, threadCount);
             // System.out.println("实际要启动的工作线程:" + taskPerThreadCount.length);
-            for (int i = 0; i < taskPerThreadCount.length; i++) {
-                Thread workThread = new Task.WorkThread(taskPerThreadCount[i], i);
-                workThread.setName(workList.get(i));
-                workThread.start();
+            if (taskPerThreadCount != null) {
+                for (int i = 0; i < taskPerThreadCount.length; i++) {
+                    Thread workThread = new WorkThread(taskPerThreadCount[i], i);
+
+                    workThread.setName(workLists.get(i));
+                    workThread.start();
+
+                }
             }
-        }catch (Exception e){
+
+
+        } catch (Exception e) {
             e.printStackTrace();
         }
 
     }
 
-    /**
+
+    */
+/**
      * 线程分配任务
+     *
      * @param taskList
      * @param threadCount
      * @return
-     */
-    public static List[] distributeTasks(List<Task> taskList, int threadCount) {
+     *//*
+
+    public List[] distributeTasks(List<Task> taskList, int threadCount) {
         // 每个线程至少要执行的任务数,如果不为零,则每个线程都会分到任务;
-        int minTaskCount = taskList.size() / threadCount;
-
-        //  System.out.println(minTaskCount + " minTaskCount");
-        // 剩下的任务数,如果不为零,则依个添加到前面的线程中.
-        int remainTaskCount = taskList.size() % threadCount;
-
-        //  System.out.println(remainTaskCount + " remainTaskCount");
-        // 实际要启动的线程个数,如果工作线程比较任务还多,则只需要启动与任务数相同的工作
-        // 线程,一对一工作,
-        int actualThreadCount = minTaskCount > 0 ? threadCount
-                : remainTaskCount;
-        // System.out.println(actualThreadCount + " actualThreadCount");
-        // 要启动的线程数组,以及每个线程执行的任务列表.
-        List<Task>[] taskListPerThread = new List[actualThreadCount];
-        int taskIndex = 0;
-        int remainIndces = remainTaskCount;
-        for (int i = 0, n = taskListPerThread.length; i < n; i++) {
-            taskListPerThread[i] = new ArrayList();
-            if (minTaskCount > 0) {
-                for (int j = taskIndex; j < minTaskCount + taskIndex; j++) {
-                    taskListPerThread[i].add(taskList.get(j));
+        if (threadCount != 0) {
+            int minTaskCount = taskList.size() / threadCount;
+
+
+            //  System.out.println(minTaskCount + " minTaskCount");
+            // 剩下的任务数,如果不为零,则依个添加到前面的线程中.
+            int remainTaskCount = taskList.size() % threadCount;
+
+            //  System.out.println(remainTaskCount + " remainTaskCount");
+            // 实际要启动的线程个数,如果工作线程比较任务还多,则只需要启动与任务数相同的工作
+            // 线程,一对一工作,
+            int actualThreadCount = minTaskCount > 0 ? threadCount
+                    : remainTaskCount;
+            // System.out.println(actualThreadCount + " actualThreadCount");
+            // 要启动的线程数组,以及每个线程执行的任务列表.
+            List<Task>[] taskListPerThread = new List[actualThreadCount];
+            int taskIndex = 0;
+            int remainIndces = remainTaskCount;
+            for (int i = 0, n = taskListPerThread.length; i < n; i++) {
+                taskListPerThread[i] = new ArrayList();
+                if (minTaskCount > 0) {
+                    for (int j = taskIndex; j < minTaskCount + taskIndex; j++) {
+                        taskListPerThread[i].add(taskList.get(j));
+                    }
+                    taskIndex += minTaskCount;
+                }
+                if (remainIndces > 0) {
+                    taskListPerThread[i].add(taskList.get(taskIndex++));
+                    remainIndces--;
                 }
-                taskIndex += minTaskCount;
             }
-            if (remainIndces > 0) {
-                taskListPerThread[i].add(taskList.get(taskIndex++));
-                remainIndces--;
+            for (int i = 0, n = taskListPerThread.length; i < n; i++) {
+//                System.out.println("线程 "
+//                        + i
+//                        + " 的任务数:"
+//                        + taskListPerThread[i].size()
+//                        + " 区间["
+//                        + taskListPerThread[i].get(0).getTaskId()
+//                        + ","
+//                        + taskListPerThread[i].get(taskListPerThread[i].size() - 1)
+//                        .getTaskId() + "]");
+
             }
+            return taskListPerThread;
         }
-        for (int i = 0, n = taskListPerThread.length; i < n; i++) {
-            System.out.println("线程 "
-                    + i
-                    + " 的任务数:"
-                    + taskListPerThread[i].size()
-                    + " 区间["
-                    + taskListPerThread[i].get(0).getTaskId()
-                    + ","
-                    + taskListPerThread[i].get(taskListPerThread[i].size() - 1)
-                    .getTaskId() + "]");
-        }
-        return taskListPerThread;
-    }
+        return null;
 
+    }
 
 
-    /**
+    */
+/**
      * 订单的任务队列
-     */
-    public static class Task {
+     *//*
+
+    public class Task {
         private static final int READY = 0;
         private static final int RUNNING = 1;
         private static final int FINISHED = 2;
         private int status;
         private String taskId;
 
+
         public Task(String taskid) {
             this.status = READY;
             this.taskId = taskid;
         }
 
+
         public void execute() {
             try {
                 setStatus(RUNNING);
 
-                System.out.println("当前的线程ID是:" + Thread.currentThread().getName()
-                        + "   任务ID是:" + taskId);
-                Thread.sleep(2000);
+
+                orderMap.put("orderId", taskId);
+                orderMap.put("workId", Thread.currentThread().getName());
+                if (orderMap != null) {
+                    // 将map中的所有键去取出来,用迭代器进行读取
+                    Set set = orderMap.keySet();
+                    if (set != null) {
+                        Iterator iterator = set.iterator();
+                        while (iterator.hasNext()) {
+                            // 取出单个的map键
+                            String key = (String) iterator.next();
+                            String value = orderMap.get(key);
+                            System.out.println("key = " + key + "value" + value);
+                        }
+                    }
+
+                }
+
+
+
+                repairsOrderService.updateOrderWorkId(orderMap);
+
+//                System.out.println("当前的线程ID是:" + Thread.currentThread().getName()
+//                        + "   任务ID是:" + taskId);
+                Thread.sleep(3000);
+                //orderMap.put("workId",Thread.currentThread().getName());
+
+
             } catch (InterruptedException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
+            } catch (Exception e) {
+                e.printStackTrace();
             }
             setStatus(FINISHED);
         }
 
+
         public void setStatus(int status) {
             this.status = status;
         }
@@ -160,30 +259,33 @@ public class AutoSendOrderCentroller implements ApplicationListener<ContextRefre
         }
 
 
+    }
 
+    */
+/**
+     * 维修工的任务队列
+     *//*
 
-        /**
-         * 维修工的任务队列
-         */
-        public static class WorkThread extends Thread {
-            private List<Task> taskList = null;
-            private int threadId;
+    public class WorkThread extends Thread {
+        private List<Task> taskList = null;
+        private int threadId;
 
-            public WorkThread(List<Task> taskList, int threadid) {
-                this.taskList = taskList;
-                this.threadId = threadid;
-            }
+        public WorkThread(List<Task> taskList, int threadid) {
+            this.taskList = taskList;
+            this.threadId = threadid;
+        }
 
-            @Override
-            public void run() {
-                // TODO Auto-generated method stub
-                for (Task task : taskList) {
-                    task.execute();
-                }
+        @Override
+        public void run() {
+            // TODO Auto-generated method stub
+            for (Task task : taskList) {
+                task.execute();
             }
+
+
         }
     }
 
 
-
 }
+*/

+ 44 - 0
src/main/java/com/chuanghai/repair/controller/BuildRoomController.java

@@ -0,0 +1,44 @@
+package com.chuanghai.repair.controller;
+
+import com.chuanghai.repair.entity.RepairsRoom;
+import com.chuanghai.repair.mapper.RepairsBuildRoomMapper;
+import com.chuanghai.repair.service.RepairsBuildRoomService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Author: bingo
+ * @Date: 2022/2/27 星期日 10:22
+ * @Description: com.chuanghai.repair.controller
+ * @version: 1.0
+ */
+@Api(tags = "宿舍管理")
+@RestController
+@RequestMapping("/build")
+public class BuildRoomController {
+
+    @Resource(name ="repairsBuildRoomService" )
+    private RepairsBuildRoomService repairsBuildRoomService;
+
+    /**
+     * 查询所有宿舍信息
+     * @return
+     */
+    @ApiOperation("宿舍信息")
+    @PostMapping(value = "/queryAllBuildRoom")
+    public List<RepairsRoom> queryAllBuildRoom(){
+        List<RepairsRoom> roomList = null;
+        try {
+            roomList = repairsBuildRoomService.queryAllBuildRoom();
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return roomList;
+    }
+}

+ 39 - 0
src/main/java/com/chuanghai/repair/controller/FaultController.java

@@ -0,0 +1,39 @@
+package com.chuanghai.repair.controller;
+
+import com.chuanghai.repair.entity.RepairsFault;
+import com.chuanghai.repair.service.RepairsFaultService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Author: bingo
+ * @Date: 2022/2/27 星期日 9:57
+ * @Description: com.chuanghai.repair.controller
+ * @version: 1.0
+ */
+@Api(tags = "故障类型管理")
+@RestController
+@RequestMapping("/fault")
+public class FaultController {
+
+    @Resource(name ="repairsFaultService" )
+    private RepairsFaultService repairsFaultService;
+
+    @ApiOperation("故障类型查询")
+    @PostMapping(value = "/queryAllFaultByStatus")
+    public List<RepairsFault> queryAllFaultByStatus(){
+        List<RepairsFault> faultList = null;
+        try {
+            faultList =  repairsFaultService.queryAllFaultByStatus();
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return faultList;
+    }
+}

+ 18 - 13
src/main/java/com/chuanghai/repair/controller/LoginController.java

@@ -1,23 +1,22 @@
 package com.chuanghai.repair.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.chuanghai.repair.entity.RepairsAdmin;
 import com.chuanghai.repair.entity.RepairsWork;
 import com.chuanghai.repair.service.RepairsAdminService;
 import com.chuanghai.repair.service.RepairsWorkService;
+import com.chuanghai.repair.utils.CreateTokenUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
 
 /**
  * @Author: bingo
@@ -44,17 +43,22 @@ public class LoginController {
      */
     @ApiOperation("管理员登录")
     @PostMapping(value = "/loginAdmin")
-    public RepairsAdmin loginAdmin(@ApiParam("管理员手机号码")String phone,@ApiParam("管理员手机号码") String password) {
-        RepairsAdmin repairsAdmin ;
+    public RepairsAdmin loginAdmin(@ApiParam(name = "管理员手机号码", required = true)String phone,@ApiParam(name = "管理员密码", required = true) String password) {
+        RepairsAdmin repairsAdmin =null;
+
         try {
             repairsAdmin =repairsAdminService.loginAdmin(phone, password);
-            return repairsAdmin;
+            String adminToken = CreateTokenUtil.token(repairsAdmin.getAdminName(), repairsAdmin.getAdminPassword());
+            System.out.println(adminToken);
         }catch (Exception e){
             e.printStackTrace();
         }
-        return null;
+        return repairsAdmin;
     }
 
+
+
+
     /**
      * 维修工登录
      *
@@ -63,15 +67,16 @@ public class LoginController {
      */
     @ApiOperation("维修工登录")
     @PostMapping(value = "/loginWork")
-    public RepairsWork loginWork(@ApiParam("维修工手机号码") String phone,@ApiParam("维修工登录密码") String password) {
-        RepairsWork repairsWork;
+    public RepairsWork loginWork(@ApiParam(name = "维修工手机号码", required = true) String phone,@ApiParam(name = "维修工登录密码", required = true) String password) {
+        RepairsWork repairsWork =null;
         try {
              repairsWork = repairsWorkService.loginWork(phone, password);
-             return repairsWork;
+
+
         }catch (Exception e){
             e.printStackTrace();
         }
-        return null;
+        return repairsWork;
     }
 
    /* @RequestMapping(value = "/loginAdmin")

+ 134 - 22
src/main/java/com/chuanghai/repair/controller/OrderController.java

@@ -1,6 +1,8 @@
 package com.chuanghai.repair.controller;
 
+import com.chuanghai.repair.entity.RepairsFault;
 import com.chuanghai.repair.entity.RepairsOrder;
+import com.chuanghai.repair.entity.RepairsStudent;
 import com.chuanghai.repair.entity.RepairsWork;
 import com.chuanghai.repair.service.RepairsOrderService;
 import com.chuanghai.repair.service.RepairsWorkService;
@@ -14,11 +16,14 @@ import org.springframework.stereotype.Service;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 import org.thymeleaf.util.DateUtils;
 import sun.util.calendar.BaseCalendar;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
 import java.math.BigInteger;
 import java.util.*;
 import java.text.SimpleDateFormat;
@@ -43,35 +48,70 @@ public class OrderController {
     /**
      * 通过学生ID查询订单默认查询当天
      *s学生ID从  sesson中获取
-     * @param studentId
+     * @param time
      * @return
      */
-    @ApiOperation("学生订单查询")
-    @PostMapping(value = "/queryByStudentId")
-    public List<RepairsOrder> queryByStudentIdOrder(@ApiParam("学生ID")String studentId,@ApiParam("查询条件日期 如:2022-02-24 15:30:00") String stringDate){
+    @ApiOperation("PC端订单查询")
+    @PostMapping(value = "/queryAllOrderByDate")
+    public List<RepairsOrder> queryAllOrderByDate(@ApiParam(name = "查询日期",required = true) String time){
         List<RepairsOrder> repairsOrder = null ;
         try {
-            //前端日期数据由 String转Date
-            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println(stringDate);
-            Date date = sdf.parse(stringDate);
-            Calendar calendar = Calendar.getInstance();
-            //传入时间就设置为当天时间
-            if(date != null){
-                calendar.setTime(date);
+                HttpSession session = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes())
+                        .getRequest().getSession();
+
+                String tody = "";
+                String tomorrow = "";
+                //前端日期数据由 String转Date
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                Calendar calendar = Calendar.getInstance();
+                if(time!="" && time!=null){
+                    //传入时间就设置为当天时间
+                    Date date = sdf.parse(time);
+                    calendar.setTime(date);
+
+                }else {//获取当天时间
+                    calendar.setTime(calendar.getTime());
+                }
+                //获取当天的0时0分0秒
+                calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH),
+                        0, 0, 0);
+                tody = sdf.format(calendar.getTime());
+                calendar.add(Calendar.DATE, 1); //增加一天
+                tomorrow = sdf.format(calendar.getTime());
+                repairsOrder= repairsOrderService.queryAllOrderByDate(tody,tomorrow);
+            }catch (Exception e){
+                e.printStackTrace();
+            }
+        return repairsOrder;
+    }
+
+    /**
+     * 通过ID查询订单信息
+     * @param studentId
+     * @param workId
+     * @param campus
+     * @return
+     */
+    @ApiOperation("移动端订单查询")
+    @PostMapping(value = "/queryAllOrderById")
+    public List<RepairsOrder> queryAllOrderById(@ApiParam(name = "学生学号(学生订单查询)")String studentId,
+                                                @ApiParam(name = "维修工编号(维修工订单查询)")String workId,
+                                                @ApiParam(name = "校区",required = true)String campus){
+        List<RepairsOrder> orderList = null;
+        try{
+            if(studentId!="" && studentId!=null){
+                orderList = repairsOrderService.queryAllOrderById(studentId,null,campus);
+            }
+            if(workId!="" && workId!=null){
+                orderList = repairsOrderService.queryAllOrderById(null,workId,campus);
             }
-            //获取当天的0时0分0秒
-            calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH),
-                    0, 0, 0);
-            String tody = sdf.format(calendar.getTime());
-            calendar.add(Calendar.DATE, 1); //增加一天
-            String tomorrow = sdf.format(calendar.getTime());
-            repairsOrder= repairsOrderService.queryByStudentIdOrder(studentId,tody,tomorrow);
+
         }catch (Exception e){
             e.printStackTrace();
         }
-        return repairsOrder;
-    }
 
+        return orderList;
+    }
     /**
      * 通过订单ID修改订单评价
      * @param orderId
@@ -80,7 +120,8 @@ public class OrderController {
      */
     @ApiOperation("学生售后评价")
     @PostMapping(value = "/updateOrderAdvice")
-    public Integer updateOrderAdvice(@ApiParam("订单ID")String orderId, @ApiParam("订单评价")String orderAdvice){
+    public Integer updateOrderAdvice(@ApiParam(name = "订单ID",required = true)String orderId,
+                                     @ApiParam(name = "订单评价",required = true)String orderAdvice){
         //flag 0 修改失败  1 修改成功
         Integer flag = 0;
         try{
@@ -101,7 +142,7 @@ public class OrderController {
      */
     @ApiOperation("订单详情查看")
     @PostMapping(value = "/queryByOrderId")
-    public RepairsOrder queryByOrderId(@ApiParam("订单ID")String orderId){
+    public RepairsOrder queryByOrderId(@ApiParam(name = "订单ID",required = true)String orderId){
         RepairsOrder repairsOrder = null;
         try {
             if(orderId!="" && orderId!=null ){
@@ -114,4 +155,75 @@ public class OrderController {
         return repairsOrder;
     }
 
+    @ApiOperation("订单派送")
+    @PostMapping(value ="/updateRepairsOrderBath" )
+    public Boolean updateRepairsOrderBath(@ApiParam(name = "订单ID",required = true)String orderId,
+                                          @ApiParam(name = "维修工ID",required = true)Integer workId){
+        Boolean flag = Boolean.FALSE;
+
+        try {
+            if(orderId!="" && orderId!=null  ){
+                String status= "1";
+                RepairsOrder repairsOrder = new RepairsOrder();
+                RepairsWork repairsWork = new RepairsWork();
+                repairsOrder.setOrderId(orderId);
+                repairsOrder.setOrderStatus(status);
+                repairsWork.setWorkId(workId);
+
+                repairsOrder.setRepairsWork(repairsWork);
+                ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
+                orderArrayList.add(repairsOrder);
+
+                repairsOrderService.updateRepairsOrderBath(orderArrayList);
+                flag = Boolean.TRUE;
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return flag;
+    }
+
+    @ApiOperation("订单填报")
+    @PostMapping(value ="/insertOrder" )
+    public Boolean insertOrder(@ApiParam(name = "故障类型",required = true)String orderType,
+                               @ApiParam(name = "故障图片",required = true)String orderImages,
+                               @ApiParam(name = "订单备注",required = true)String orderNote,
+                               @ApiParam(name = "维修期望时间",required = true)String orderExpectedTime,
+                               @ApiParam(name = "故障类型ID",required = true)Integer faultId){
+        Boolean flag = Boolean.FALSE;
+        try {
+
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            //处理当前时间为时间戳格式
+            Calendar calendar = Calendar.getInstance();
+            String orderTime = sdf.format(calendar.getTime());
+            Date date = sdf.parse(orderTime);
+
+            long ts = date.getTime();
+            String orderId="D";
+            orderId += String.valueOf(ts);
+            //设置默认参数
+
+            //后期在session中获取学生学号
+            RepairsStudent repairsStudent = new RepairsStudent();
+            repairsStudent.setStudentId("200105030708");
+
+            RepairsWork repairsWork = null;
+            RepairsFault repairsFault = new RepairsFault(faultId,null,null,null,orderType);
+
+
+            RepairsOrder repairsOrder = new RepairsOrder(orderId,orderImages,orderNote,orderExpectedTime,
+                    null,date,null,"0",null,"0",
+                    null,repairsStudent,repairsWork,repairsFault,orderType);
+
+                repairsOrderService.insertOrder(repairsOrder);
+                flag = Boolean.TRUE;
+
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return flag;
+    }
 }

+ 11 - 7
src/main/java/com/chuanghai/repair/controller/WorkController.java

@@ -29,15 +29,19 @@ public class WorkController {
     /**
      * 维修工注册(先判断数据库中是否有同名同手机号码的人《认为是同一人》)
      * 同一人就无法注册,不同的人就可以完成注册
-     * @param repairsWork
+     * @param workName
+     * @param workPassword
+     * @param workPhone
+     * @param workCampus
      * @return
      */
     @ApiOperation("维修工注册")
-    @PostMapping(value = "/addWork")
-    Boolean addWork(@ApiParam("维修工实体属性")RepairsWork repairsWork){
+    @PostMapping(value = "/insertWork")
+    Boolean insertWork(@ApiParam( name = "维修工姓名", required = true) String workName,@ApiParam(name = "登录密码",required = true)String workPassword,
+                    @ApiParam(name = "手机号码",required = true)String workPhone,@ApiParam(name = "所在校区",required = true)String workCampus){
         Boolean flag =Boolean.FALSE;
         try {
-
+            RepairsWork repairsWork = new RepairsWork(null,workName,workPassword,workPhone,"1","0",workCampus);
             RepairsWork testWork = repairsWorkService.queryByWorkName(repairsWork.getWorkName());
             if(testWork!=null){
 
@@ -46,11 +50,11 @@ public class WorkController {
                         repairsWork.getWorkPhone().equals(testWork.getWorkPhone())){
 
                 }else {  //继续注册
-                     repairsWorkService.addWork(repairsWork);
+                     repairsWorkService.insertWork(repairsWork);
                      flag = Boolean.TRUE;
                 }
             }else {
-                repairsWorkService.addWork(repairsWork);
+                repairsWorkService.insertWork(repairsWork);
                 flag = Boolean.TRUE;
             }
         }catch (Exception e){
@@ -61,7 +65,7 @@ public class WorkController {
 
     @ApiOperation("维修工删除")
     @PostMapping(value ="updateWorkStatus")
-    Boolean updateWorkStatus(@ApiParam("维修工ID")String workId){
+    Boolean updateWorkStatus(@ApiParam(name = "维修工ID", required = true)String workId){
         // flag  FALSE 删除失败  TRUE 删除成功
         Boolean flag = Boolean.FALSE;
         try {

+ 12 - 4
src/main/java/com/chuanghai/repair/entity/RepairsFault.java

@@ -15,7 +15,7 @@ public class RepairsFault {
     /**
      * 故障类型ID
      */
-    @ApiModelProperty(value = "故障类型ID")
+    @ApiModelProperty(value = "故障ID")
     @Id
     @Column(name = "fault_id")
     private Integer faultId;
@@ -23,23 +23,31 @@ public class RepairsFault {
     /**
      * 故障类型名称
      */
-    @ApiModelProperty(value = "故障类型名称")
+    @ApiModelProperty(value = "故障名称")
     @Column(name = "fault_name")
     private String faultName;
 
     /**
      * 故障类型优先级
      */
-    @ApiModelProperty(value = "故障类型优先级")
+    @ApiModelProperty(value = "故障优先级")
     @Column(name = "fault_level")
     private String faultLevel;
 
     /**
      * 故障类型状态 1(启用)0(停用)
      */
-    @ApiModelProperty(value = "故障类型状态 1(启用)0(停用)")
+    @ApiModelProperty(value = "故障状态 1(启用)0(停用)")
     @Column(name = "fault_status")
     private String faultStatus;
 
 
+    /**
+     * 故障类型状态 1(启用)0(停用)
+     */
+    @ApiModelProperty(value = "故障类型 0(水电工)1(空调工)2(木工)")
+    @Column(name = "fault_type")
+    private String faultType;
+
+
 }

+ 0 - 30
src/main/java/com/chuanghai/repair/entity/RepairsFaultOrder.java

@@ -1,30 +0,0 @@
-package com.chuanghai.repair.entity;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.*;
-
-import javax.persistence.*;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Setter
-@Getter
-@ToString
-@Table(name = "repairs_fault_order")
-public class RepairsFaultOrder {
-    /**
-     * 故障类型编号
-     */
-    @ApiModelProperty(value = "故障类型编号")
-    @Column(name = "fault_id")
-    private Integer faultId;
-
-    /**
-     * 订单ID
-     */
-    @ApiModelProperty(value = "订单ID")
-    @Column(name = "order_id")
-    private String orderId;
-
-
-}

+ 0 - 43
src/main/java/com/chuanghai/repair/entity/RepairsFloor.java

@@ -1,43 +0,0 @@
-package com.chuanghai.repair.entity;
-
-import lombok.*;
-
-import javax.persistence.*;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Setter
-@Getter
-@ToString
-@Table(name = "repairs_floor")
-public class RepairsFloor {
-    /**
-     * 楼层ID
-     */
-    @Id
-    @Column(name = "floor_id")
-    private Integer floorId;
-
-    /**
-     * 楼层名称
-     */
-    @Column(name = "floor_name")
-    private String floorName;
-
-    /**
-     * 楼栋外键
-     */
-    @Column(name = "build_id")
-    private Integer buildId;
-
-    /**
-     * 获取楼层ID
-     *
-     * @return floor_id - 楼层ID
-     */
-    public Integer getFloorId() {
-        return floorId;
-    }
-
-
-}

+ 9 - 2
src/main/java/com/chuanghai/repair/entity/RepairsOrder.java

@@ -41,7 +41,7 @@ public class RepairsOrder {
      */
     @ApiModelProperty(value = "订单预期维修时间")
     @Column(name = "order_expected_time")
-    private Date orderExpectedTime;
+    private String orderExpectedTime;
 
     /**
      * 订单完成维修时间
@@ -110,7 +110,14 @@ public class RepairsOrder {
      * 故障类型ID
      * 订单与故障类型之间是  N:1
      */
-    private RepairsFault repairsFault;
+     private RepairsFault repairsFault;
 
 
+
+    /**
+     * 订单类型
+     */
+    @ApiModelProperty(value = "订单类型")
+    @Column(name = "order_type")
+    private String orderType;
 }

+ 3 - 3
src/main/java/com/chuanghai/repair/entity/RepairsRoom.java

@@ -25,10 +25,10 @@ public class RepairsRoom {
     private String roomName;
 
     /**
-     * 楼ID
+     * 楼ID
      */
-    @Column(name = "floor_id")
-    private Integer floorId;
+    @Column(name = "build_id")
+    private RepairsBuild repairsBuild;
 
 
 }

+ 6 - 1
src/main/java/com/chuanghai/repair/entity/RepairsStudent.java

@@ -76,5 +76,10 @@ public class RepairsStudent {
     @Column(name = "student_status")
     private String studentStatus;
 
-
+    /**
+     * 学生校区0(南校区)1(北校区)
+     */
+    @ApiModelProperty(value ="学生校区0(南校区)1(北校区)" )
+    @Column(name = "student_campus")
+    private String studentCampus;
 }

+ 8 - 1
src/main/java/com/chuanghai/repair/entity/RepairsWork.java

@@ -53,9 +53,16 @@ public class RepairsWork {
     /**
      * 工人类型 0(水电工)1(木工)
      */
-    @ApiModelProperty(value ="维修工人类型 0(水电工)1(木工)" )
+    @ApiModelProperty(value ="维修工人类型 0(水电工)1(空调工)2(木工)" )
     @Column(name = "work_type")
     private String workType;
 
 
+    /**
+     * 工人服务校区0(南校区)1(北校区)
+     */
+    @ApiModelProperty(value ="工人服务校区0(南校区)1(北校区)" )
+    @Column(name = "work_campus")
+    private String workCampus;
+
 }

+ 0 - 8
src/main/java/com/chuanghai/repair/mapper/RepairsBuildMapper.java

@@ -1,8 +0,0 @@
-package com.chuanghai.repair.mapper;
-
-import com.chuanghai.repair.entity.RepairsBuild;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface RepairsBuildMapper  {
-}

+ 16 - 0
src/main/java/com/chuanghai/repair/mapper/RepairsBuildRoomMapper.java

@@ -0,0 +1,16 @@
+package com.chuanghai.repair.mapper;
+
+import com.chuanghai.repair.entity.RepairsBuild;
+import com.chuanghai.repair.entity.RepairsRoom;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface RepairsBuildRoomMapper {
+    /**
+     * 查询所有宿舍信息
+     * @return
+     */
+    List<RepairsRoom> queryAllBuildRoom();
+}

+ 8 - 0
src/main/java/com/chuanghai/repair/mapper/RepairsFaultMapper.java

@@ -3,6 +3,14 @@ package com.chuanghai.repair.mapper;
 import com.chuanghai.repair.entity.RepairsFault;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 @Mapper
 public interface RepairsFaultMapper  {
+
+    /**
+     * 查询所有启用状态的故障类型
+     * @return
+     */
+    List<RepairsFault> queryAllFaultByStatus();
 }

+ 0 - 8
src/main/java/com/chuanghai/repair/mapper/RepairsFaultOrderMapper.java

@@ -1,8 +0,0 @@
-package com.chuanghai.repair.mapper;
-
-import com.chuanghai.repair.entity.RepairsFaultOrder;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface RepairsFaultOrderMapper {
-}

+ 0 - 8
src/main/java/com/chuanghai/repair/mapper/RepairsFloorMapper.java

@@ -1,8 +0,0 @@
-package com.chuanghai.repair.mapper;
-
-import com.chuanghai.repair.entity.RepairsFloor;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface RepairsFloorMapper {
-}

+ 40 - 3
src/main/java/com/chuanghai/repair/mapper/RepairsOrderMapper.java

@@ -3,18 +3,19 @@ package com.chuanghai.repair.mapper;
 import com.chuanghai.repair.entity.RepairsOrder;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.HashMap;
 import java.util.List;
 
 @Mapper
 public interface RepairsOrderMapper  {
 
     /**
-     * 通过学生ID查询订单
-     * @param studentId
+     * 通过时间查询订单
+     * @param
      * @return
      * @throws Exception
      */
-    List<RepairsOrder> queryByStudentIdOrder(String studentId,String tody,String tomorrow);
+    List<RepairsOrder> queryAllOrderByDate(String tody,String tomorrow);
 
 
     /**
@@ -38,4 +39,40 @@ public interface RepairsOrderMapper  {
      */
     RepairsOrder queryByOrderId(String orderId);
 
+
+    /**
+     * 管理员手动派单 通过OrderId  修改order_status   work_id
+     * @param orderList
+     * @return
+     */
+    void updateRepairsOrderBath(List<RepairsOrder> orderList);
+
+    /**
+     * 订单填报
+     * @param repairsOrder
+     */
+    void insertOrder(RepairsOrder repairsOrder);
+
+    /**
+     * 查询各个校区、类型的订单  木工  水电工  空调工
+     * @param orderType
+     * @return
+     */
+    List<String> queryOrderByType(String orderType,String campus);
+
+    /**
+     * 系统自动派单  修改对应的订单
+     * @param orderMap
+     */
+    void updateOrderWorkId(HashMap<String,String> orderMap);
+
+    /**
+     * 通过ID查询订单
+     * @param studentId
+     * @param workId
+     * @param campus
+     * @return
+     */
+    List<RepairsOrder> queryAllOrderById(String studentId,String workId,String campus);
+
 }

+ 0 - 8
src/main/java/com/chuanghai/repair/mapper/RepairsRoomMapper.java

@@ -1,8 +0,0 @@
-package com.chuanghai.repair.mapper;
-
-import com.chuanghai.repair.entity.RepairsRoom;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface RepairsRoomMapper {
-}

+ 7 - 2
src/main/java/com/chuanghai/repair/mapper/RepairsWorkMapper.java

@@ -20,7 +20,7 @@ public interface RepairsWorkMapper{
      * @param repairsWork
      * @return
      */
-    Boolean addWork(RepairsWork repairsWork) throws Exception;
+    Boolean insertWork(RepairsWork repairsWork) throws Exception;
 
     /**
      * 查找同名同电话的人判断维修工是否存在
@@ -38,6 +38,11 @@ public interface RepairsWorkMapper{
      */
     Integer updateWorkStatus(String workId) throws Exception;
 
-    List<String> queryAllWork() throws Exception;
+    /**
+     *
+     * @return
+     * @throws Exception
+     */
+    List<String> queryAllWork(String workType) throws Exception;
 
 }

+ 20 - 0
src/main/java/com/chuanghai/repair/service/RepairsBuildRoomService.java

@@ -0,0 +1,20 @@
+package com.chuanghai.repair.service;
+
+import com.chuanghai.repair.entity.RepairsRoom;
+
+import java.util.List;
+
+/**
+ * @Author: bingo
+ * @Date: 2022/2/23 星期三 17:27
+ * @Description: com.chuanghai.repair.service
+ * @version: 1.0
+ */
+public interface RepairsBuildRoomService {
+
+    /**
+     * 查询所有宿舍信息
+     * @return
+     */
+    List<RepairsRoom> queryAllBuildRoom() throws Exception;
+}

+ 0 - 10
src/main/java/com/chuanghai/repair/service/RepairsBuildService.java

@@ -1,10 +0,0 @@
-package com.chuanghai.repair.service;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:27
- * @Description: com.chuanghai.repair.service
- * @version: 1.0
- */
-public interface RepairsBuildService {
-}

+ 10 - 0
src/main/java/com/chuanghai/repair/service/RepairsFaultService.java

@@ -1,5 +1,9 @@
 package com.chuanghai.repair.service;
 
+import com.chuanghai.repair.entity.RepairsFault;
+
+import java.util.List;
+
 /**
  * @Author: bingo
  * @Date: 2022/2/23 星期三 17:27
@@ -7,4 +11,10 @@ package com.chuanghai.repair.service;
  * @version: 1.0
  */
 public interface RepairsFaultService {
+
+    /**
+     * 查询所有启用状态的故障类型
+     * @return
+     */
+    List<RepairsFault> queryAllFaultByStatus()throws  Exception;
 }

+ 0 - 10
src/main/java/com/chuanghai/repair/service/RepairsFloorService.java

@@ -1,10 +0,0 @@
-package com.chuanghai.repair.service;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:28
- * @Description: com.chuanghai.repair.service
- * @version: 1.0
- */
-public interface RepairsFloorService {
-}

+ 40 - 2
src/main/java/com/chuanghai/repair/service/RepairsOrderService.java

@@ -2,6 +2,7 @@ package com.chuanghai.repair.service;
 
 import com.chuanghai.repair.entity.RepairsOrder;
 
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -14,11 +15,11 @@ public interface RepairsOrderService {
 
     /**
      * 通过学生ID查询订单
-     * @param studentId
+     * @param
      * @return
      * @throws Exception
      */
-    List<RepairsOrder> queryByStudentIdOrder(String studentId,String tody,String tomorrow) throws Exception;
+    List<RepairsOrder> queryAllOrderByDate(String tody,String tomorrow) throws Exception;
 
     /**
      * 通过订单ID修改订单评价
@@ -43,4 +44,41 @@ public interface RepairsOrderService {
      * @return
      */
     RepairsOrder queryByOrderId(String orderId)throws  Exception;
+
+
+    /**
+     * 管理员手动派单 通过OrderId  修改order_status   work_id
+     * @param orderList
+     * @return
+     */
+    void updateRepairsOrderBath(List<RepairsOrder> orderList) throws Exception;
+
+    /**
+     * 订单填报
+     * @param repairsOrder
+     */
+    void insertOrder(RepairsOrder repairsOrder) throws Exception;
+
+
+    /**
+     * 查询各个校区、类型的订单  木工  水电工  空调工
+     * @param orderType
+     * @return
+     */
+    List<String> queryOrderByType(String orderType,String campus)throws Exception;
+
+    /**
+     * 系统自动派单  修改对应的订单
+     * @param orderMap
+     */
+    void updateOrderWorkId(HashMap<String,String> orderMap)throws Exception;
+
+    /**
+     * 通过ID查询订单
+     * @param studentId
+     * @param workId
+     * @param campus
+     * @return
+     */
+    List<RepairsOrder> queryAllOrderById(String studentId,String workId,String campus)throws  Exception;
 }

+ 0 - 10
src/main/java/com/chuanghai/repair/service/RepairsRoomService.java

@@ -1,10 +0,0 @@
-package com.chuanghai.repair.service;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:29
- * @Description: com.chuanghai.repair.service
- * @version: 1.0
- */
-public interface RepairsRoomService {
-}

+ 7 - 2
src/main/java/com/chuanghai/repair/service/RepairsWorkService.java

@@ -27,7 +27,7 @@ public interface RepairsWorkService {
      * @return
      * @throws Exception
      */
-    Boolean addWork (RepairsWork repairsWork) throws Exception;
+    Boolean insertWork (RepairsWork repairsWork) throws Exception;
 
     /**
      * 查找同名同电话的人判断维修工是否存在
@@ -45,5 +45,10 @@ public interface RepairsWorkService {
      */
     Integer updateWorkStatus(String workId) throws Exception;
 
-    List<String>queryAllWork() throws Exception;
+    /**
+     *
+     * @return
+     * @throws Exception
+     */
+    List<String> queryAllWork(String workType) throws Exception;
 }

+ 32 - 0
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsBuildRoomServiceImpl.java

@@ -0,0 +1,32 @@
+package com.chuanghai.repair.service.ServiceImpl;
+
+import com.chuanghai.repair.entity.RepairsRoom;
+import com.chuanghai.repair.mapper.RepairsBuildRoomMapper;
+import com.chuanghai.repair.service.RepairsBuildRoomService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Author: bingo
+ * @Date: 2022/2/23 星期三 17:33
+ * @Description: com.chuanghai.repair.service.ServiceImpl
+ * @version: 1.0
+ */
+@Service("repairsBuildRoomService")
+public class RepairsBuildRoomServiceImpl implements RepairsBuildRoomService {
+
+    @Resource
+    private RepairsBuildRoomMapper repairsBuildRoomMapper;
+
+    /**
+     * 查询所有宿舍信息
+     * @return
+     *
+     **/
+    @Override
+    public List<RepairsRoom> queryAllBuildRoom() throws Exception {
+        return repairsBuildRoomMapper.queryAllBuildRoom();
+    }
+}

+ 0 - 21
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsBuildServiceImpl.java

@@ -1,21 +0,0 @@
-package com.chuanghai.repair.service.ServiceImpl;
-
-import com.chuanghai.repair.mapper.RepairsBuildMapper;
-import com.chuanghai.repair.service.RepairsBuildService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:33
- * @Description: com.chuanghai.repair.service.ServiceImpl
- * @version: 1.0
- */
-@Service("repairsBuildService")
-public class RepairsBuildServiceImpl implements RepairsBuildService {
-
-    @Resource
-    private RepairsBuildMapper repairsBuildMapper;
-}

+ 12 - 0
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsFaultServiceImpl.java

@@ -1,11 +1,13 @@
 package com.chuanghai.repair.service.ServiceImpl;
 
+import com.chuanghai.repair.entity.RepairsFault;
 import com.chuanghai.repair.mapper.RepairsFaultMapper;
 import com.chuanghai.repair.service.RepairsFaultService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * @Author: bingo
@@ -18,4 +20,14 @@ public class RepairsFaultServiceImpl implements RepairsFaultService {
 
     @Resource
     private RepairsFaultMapper repairsFaultMapper;
+
+    /**
+     * 查询所有启用状态的故障类型
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public List<RepairsFault> queryAllFaultByStatus() throws Exception {
+        return repairsFaultMapper.queryAllFaultByStatus();
+    }
 }

+ 0 - 21
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsFloorServiceImpl.java

@@ -1,21 +0,0 @@
-package com.chuanghai.repair.service.ServiceImpl;
-
-import com.chuanghai.repair.mapper.RepairsFloorMapper;
-import com.chuanghai.repair.service.RepairsFloorService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:34
- * @Description: com.chuanghai.repair.service.ServiceImpl
- * @version: 1.0
- */
-@Service("repairsFloorService")
-public class RepairsFloorServiceImpl implements RepairsFloorService {
-
-    @Resource
-    private RepairsFloorMapper repairsFloorMapper;
-}

+ 57 - 5
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsOrderServiceImpl.java

@@ -9,8 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Author: bingo
@@ -26,13 +25,13 @@ public class RepairsOrderServiceImpl implements RepairsOrderService {
 
     /**
      * 通过学生ID查询订单
-     * @param studentId
+     * @param
      * @return
      * @throws Exception
      */
     @Override
-    public List<RepairsOrder> queryByStudentIdOrder(String studentId,String tody ,String tomorrow) throws Exception {
-        return repairsOrderMapper.queryByStudentIdOrder(studentId,tody,tomorrow);
+    public List<RepairsOrder> queryAllOrderByDate(String tody ,String tomorrow) throws Exception {
+        return repairsOrderMapper.queryAllOrderByDate(tody,tomorrow);
     }
 
     /**
@@ -56,4 +55,57 @@ public class RepairsOrderServiceImpl implements RepairsOrderService {
     public RepairsOrder queryByOrderId(String orderId) throws Exception {
         return repairsOrderMapper.queryByOrderId(orderId);
     }
+
+    /**
+     * 管理员手动派单 通过OrderId  修改order_status   work_id
+     * @param orderList
+     * @return
+     */
+    @Override
+    public void updateRepairsOrderBath(List<RepairsOrder> orderList) throws Exception {
+        repairsOrderMapper.updateRepairsOrderBath(orderList);
+    }
+
+    /**
+     * 订单填报
+     * @param repairsOrder
+     */
+    @Override
+     public void insertOrder(RepairsOrder repairsOrder) throws Exception{
+        repairsOrderMapper.insertOrder(repairsOrder);
+    }
+
+
+
+    /**
+     * 查询各个校区、类型的订单  木工  水电工  空调工
+     * @param orderType
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public List<String> queryOrderByType(String orderType,String campus) throws Exception {
+        return repairsOrderMapper.queryOrderByType(orderType,campus);
+    }
+
+    /**
+     * 系统自动派单  修改对应的订单
+     * @param orderMap
+     */
+    public void updateOrderWorkId(HashMap<String,String> orderMap)throws Exception{
+        repairsOrderMapper.updateOrderWorkId(orderMap);
+    }
+
+
+    /**
+     * 通过ID查询订单
+     * @param studentId
+     * @param workId
+     * @param campus
+     * @return
+     */
+   public List<RepairsOrder> queryAllOrderById(String studentId,String workId,String campus) throws Exception{
+        return repairsOrderMapper.queryAllOrderById(studentId,workId,campus);
+    }
+
 }

+ 0 - 20
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsRoomServiceImpl.java

@@ -1,20 +0,0 @@
-package com.chuanghai.repair.service.ServiceImpl;
-
-import com.chuanghai.repair.mapper.RepairsRoomMapper;
-import com.chuanghai.repair.service.RepairsRoomService;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-
-/**
- * @Author: bingo
- * @Date: 2022/2/23 星期三 17:35
- * @Description: com.chuanghai.repair.service.ServiceImpl
- * @version: 1.0
- */
-@Service("repairsRoomService")
-public class RepairsRoomServiceImpl implements RepairsRoomService {
-
-    @Resource
-    private RepairsRoomMapper repairsRoomMapper;
-}

+ 9 - 5
src/main/java/com/chuanghai/repair/service/ServiceImpl/RepairsWorkServiceImpl.java

@@ -40,8 +40,8 @@ public class RepairsWorkServiceImpl implements RepairsWorkService {
      * @throws Exception
      */
     @Override
-    public Boolean addWork(RepairsWork repairsWork) throws Exception {
-        return repairsWorkMapper.addWork(repairsWork);
+    public Boolean insertWork(RepairsWork repairsWork) throws Exception {
+        return repairsWorkMapper.insertWork(repairsWork);
     }
 
     /**
@@ -66,8 +66,12 @@ public class RepairsWorkServiceImpl implements RepairsWorkService {
         return repairsWorkMapper.updateWorkStatus(workId);
     }
 
-    @Override
-    public List<String> queryAllWork() throws Exception {
-        return repairsWorkMapper.queryAllWork();
+    /**
+     *
+     * @return
+     * @throws Exception
+     */
+   public List<String> queryAllWork(String workType) throws Exception{
+        return repairsWorkMapper.queryAllWork(workType);
     }
 }

+ 78 - 0
src/main/java/com/chuanghai/repair/utils/CreateTokenUtil.java

@@ -0,0 +1,78 @@
+package com.chuanghai.repair.utils;
+
+import com.auth0.jwt.JWT;
+import com.auth0.jwt.JWTVerifier;
+import com.auth0.jwt.algorithms.Algorithm;
+import com.auth0.jwt.interfaces.DecodedJWT;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @Author: bingo
+ * @Date: 2022/2/28 星期一 14:43
+ * @Description: com.chuanghai.repair.utils
+ * @version: 1.0
+ */
+public class CreateTokenUtil {
+
+    //设置过期时间
+    private static final long EXPIRE_DATE=30*60*100000;
+    //token秘钥
+    private static final String TOKEN_SECRET = "ZCfasfhuaUUHufguGuwu2020BQWE";
+
+    public static String token (String username,String password){
+
+        String token = "";
+        try {
+            //过期时间
+            Date date = new Date(System.currentTimeMillis()+EXPIRE_DATE);
+            //秘钥及加密算法
+            Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);
+            //设置头部信息
+            Map<String,Object> header = new HashMap<>();
+            header.put("typ","JWT");
+            header.put("alg","HS256");
+            //携带username,password信息,生成签名
+            token = JWT.create()
+                    .withHeader(header)
+                    .withClaim("username",username)
+                    .withClaim("password",password).withExpiresAt(date)
+                    .sign(algorithm);
+        }catch (Exception e){
+            e.printStackTrace();
+            return  null;
+        }
+        return token;
+    }
+
+    public static Boolean verify(String token){
+        /**
+         * @desc   验证token,通过返回true
+         * @params [token]需要校验的串
+         **/
+
+        try {
+            Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);
+                JWTVerifier verifier = JWT.require(algorithm).build();
+            DecodedJWT jwt = verifier.verify(token);
+            return true;
+        }catch (Exception e){
+            e.printStackTrace();
+            return  false;
+        }
+    }
+    public static void decryption(String token){
+
+    }
+    public static void main(String[] args) {
+        String username ="18214982265";
+        String password = "123456";
+        String token = token(username,password);
+        System.out.println(token);
+        boolean b = verify("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXNzd29yZCI6IjEyMzQ1NiIsImV4cCI6MTY0NjIxMTI0N30.IUO7y5SYxY9vDm6u7p-uUnswH630W-vTkay3kE-3BqY");
+        System.out.println(b);
+    }
+}
+

+ 1 - 1
src/main/resources/application.yml

@@ -2,7 +2,7 @@
 #数据源配置
 spring:
   datasource:
-    url: jdbc:mysql://127.0.0.1:3306/repairs?characterEncoding=utf-8&serverTimezone=UTC&useSSL=FALSE&useAffectedRows=TRUE
+    url: jdbc:mysql://127.0.0.1:3306/repairs?characterEncoding=utf-8&serverTimezone=UTC&useSSL=FALSE&useAffectedRows=TRUE&allowMultiQueries=true
     driver-class-name: com.mysql.jdbc.Driver
 #    mysql6以上需要使用下面的连接配置
 #    driver-class-name: com.mysql.cj.jdbc.Driver

+ 0 - 11
src/main/resources/mapper/RepairsBuildMapper.xml

@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.chuanghai.repair.mapper.RepairsBuildMapper">
-    <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsBuild">
-        <!--
-          WARNING - @mbg.generated
-        -->
-        <id column="build_id" property="buildId" jdbcType="INTEGER"/>
-        <result column="build_name" property="buildName" jdbcType="VARCHAR"/>
-    </resultMap>
-</mapper>

+ 21 - 0
src/main/resources/mapper/RepairsBuildRoomMapper.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.chuanghai.repair.mapper.RepairsBuildRoomMapper">
+    <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsRoom">
+        <!--
+          WARNING - @mbg.generated
+        -->
+        <id column="room_id" property="roomId" jdbcType="INTEGER"/>
+        <result column="room_name" property="roomName" jdbcType="VARCHAR"/>
+        <!--        房间与楼栋之间是  N:1 关系-->
+        <association  property="repairsBuild"  javaType="com.chuanghai.repair.entity.RepairsBuild">
+            <id column="build_id" property="buildId"></id>
+            <result column="build_name" property="buildName" jdbcType="VARCHAR"/>
+        </association >
+    </resultMap>
+
+<!--    查询所有宿舍信息-->
+    <select id="queryAllBuildRoom" resultMap="BaseResultMap">
+        select * from repairs_build bu,repairs_room ro where ro.build_id = bu.build_id
+    </select>
+</mapper>

+ 7 - 0
src/main/resources/mapper/RepairsFaultMapper.xml

@@ -9,5 +9,12 @@
         <result column="fault_name" property="faultName" jdbcType="VARCHAR"/>
         <result column="fault_level" property="faultLevel" jdbcType="VARCHAR"/>
         <result column="fault_status" property="faultStatus" jdbcType="VARCHAR"/>
+        <result column="fault_type" property="faultType" jdbcType="VARCHAR"/>
     </resultMap>
+
+
+    <!--    查询所有启用状态的故障类型-->
+    <select id="queryAllFaultByStatus" resultMap="BaseResultMap">
+        select * from repairs_fault  where  fault_status = 1
+    </select>
 </mapper>

+ 0 - 11
src/main/resources/mapper/RepairsFaultOrderMapper.xml

@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.chuanghai.repair.mapper.RepairsFaultOrderMapper">
-    <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsFaultOrder">
-        <!--
-          WARNING - @mbg.generated
-        -->
-        <result column="fault_id" property="faultId" jdbcType="INTEGER"/>
-        <result column="order_id" property="orderId" jdbcType="VARCHAR"/>
-    </resultMap>
-</mapper>

+ 0 - 12
src/main/resources/mapper/RepairsFloorMapper.xml

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.chuanghai.repair.mapper.RepairsFloorMapper">
-    <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsFloor">
-        <!--
-          WARNING - @mbg.generated
-        -->
-        <id column="floor_id" property="floorId" jdbcType="INTEGER"/>
-        <result column="floor_name" property="floorName" jdbcType="VARCHAR"/>
-        <result column="build_id" property="buildId" jdbcType="INTEGER"/>
-    </resultMap>
-</mapper>

+ 87 - 9
src/main/resources/mapper/RepairsOrderMapper.xml

@@ -23,7 +23,7 @@
         <id column="order_id" property="orderId" jdbcType="VARCHAR"/>
         <result column="order_images" property="orderImages" jdbcType="VARCHAR"/>
         <result column="order_note" property="orderNote" jdbcType="VARCHAR"/>
-        <result column="order_expected_time" property="orderExpectedTime" jdbcType="TIMESTAMP"/>
+        <result column="order_expected_time" property="orderExpectedTime" jdbcType="VARCHAR"/>
         <result column="order_complete_time" property="orderCompleteTime" jdbcType="TIMESTAMP"/>
         <result column="order_commit_time" property="orderCommitTime" jdbcType="TIMESTAMP"/>
 
@@ -32,6 +32,7 @@
         <result column="order_price" property="orderPrice" jdbcType="DECIMAL"/>
         <result column="order_price_status" property="orderPriceStatus" jdbcType="VARCHAR"/>
         <result column="order_back" property="orderBack" jdbcType="VARCHAR"/>
+        <result column="order_type" property="orderType" jdbcType="VARCHAR"/>
 <!--        订单与学生之间是  N:1 关系-->
         <association  property="repairsStudent"  javaType="com.chuanghai.repair.entity.RepairsStudent">
             <id column="student_id" property="studentId"></id>
@@ -49,17 +50,39 @@
 
     </resultMap>
 
-<!--    通过学生ID查询订单信息-->
-        <select id="queryByStudentIdOrder" parameterType="java.lang.String" resultMap="OrderFaultStudentMap">
+<!--    通过时间查询订单信息-->
+        <select id="queryAllOrderByDate" parameterType="java.lang.String" resultMap="OrderFaultStudentMap">
             select od.order_id, od.order_status,od.order_commit_time, fa.fault_name,st.student_build_floor_room, od.order_expected_time
-                from repairs_order od ,repairs_student st ,repairs_fault fa ,repairs_fault_order rfo
-                where od.student_id = st.student_id and od.order_id = rfo.order_id
-                and rfo.fault_id = fa.fault_id
-                and st.student_id = #{studentId}
-                and od.order_commit_time BETWEEN #{tody} and #{tomorrow}
-
+                from repairs_order od ,repairs_student st ,repairs_fault fa
+            <trim prefix="where" prefixOverrides="and" suffix="" suffixOverrides="">
+                od.student_id = st.student_id
+                and od.fault_id = fa.fault_id
+                <if test="tody!='' and tody!=null">
+                    and od.order_commit_time BETWEEN #{tody} and #{tomorrow}
+                </if>
+            </trim>
         </select>
 
+    <!--    通过ID查询订单信息-->
+    <select id="queryAllOrderById" parameterType="java.lang.String" resultMap="OrderFaultStudentMap">
+        select od.order_id, od.order_status,od.order_commit_time, fa.fault_name,st.student_build_floor_room, od.order_expected_time
+        from repairs_order od ,repairs_student st ,repairs_fault fa
+        <trim prefix="where" prefixOverrides="and" suffix="" suffixOverrides="">
+            od.student_id = st.student_id
+            and od.fault_id = fa.fault_id
+            <if test="studentId!='' and studentId!=null">
+                and od.student_id = #{studentId}
+            </if>
+            <if test="workId!='' and workId!=null">
+                and od.work_id = #{workId}
+            </if>
+            <if test="campus!='' and campus!=null">
+                and st.student_campus = #{campus}
+            </if>
+
+        </trim>
+    </select>
+
 <!--    订单修后评价-->
     <select id="updateOrderAdvice" parameterType="java.lang.String" resultType="java.lang.Integer">
         update repairs_order
@@ -91,4 +114,59 @@
         </trim>
     </select>
 
+<!--    管理员手动派单 同时修改两个参数-->
+    <update id="updateRepairsOrderBath" parameterType="java.util.List" >
+
+
+        update repairs_order
+        <trim prefix="set" suffixOverrides=",">
+            <trim prefix="order_status=case" suffix="end,">
+                <foreach collection="list" item="item" index="index">
+                    when order_id = #{item.orderId} then #{item.orderStatus}
+                </foreach>
+            </trim>
+            <trim prefix="work_id=case" suffix="end,">
+                <foreach collection="list" item="item" index="index">
+                    when order_id = #{item.orderId} then #{item.repairsWork.workId}
+                </foreach>
+            </trim>
+        </trim>
+        where order_id in
+        <foreach collection="list" index="index" item="item"
+                 separator="," open="(" close=")">
+            #{item.orderId,jdbcType=VARCHAR}
+        </foreach>
+    </update>
+
+
+<!--    系统自动派单  修改对应的订单-->
+    <update id="updateOrderWorkId" parameterType="java.util.Map">
+        update repairs_order set work_id = #{workId},order_status = 1 where order_id = #{orderId}
+    </update>
+
+
+<!--    订单填报-->
+    <insert id="insertOrder" parameterType="com.chuanghai.repair.entity.RepairsOrder">
+        insert into repairs_order (order_id,order_images,order_note,order_expected_time,order_status,order_price,
+                                    order_price_status,student_id,order_commit_time,order_type,fault_id)
+        values(#{orderId},#{orderImages},#{orderNote},#{orderExpectedTime},#{orderStatus},
+             #{orderPrice},#{orderPriceStatus},#{repairsStudent.studentId},#{orderCommitTime},#{orderType},#{repairsFault.faultId});
+    </insert>
+
+
+<!--    查询各个校区、类型的订单  木工  水电工  空调工-->
+    <select id="queryOrderByType" parameterType="java.lang.String" resultType="java.lang.String" >
+<!--        select od.order_id from repairs_order od,repairs_fault fa-->
+<!--        where od.fault_id = fa.fault_id-->
+<!--        and order_status = 0-->
+<!--        and fa.fault_type =#{orderType}-->
+
+        select od.order_id from repairs_order od ,repairs_student st
+        where od.student_id = st.student_id
+        and od.order_type =#{orderType}
+        and od.order_status = 0
+        and st.student_campus = #{campus}
+    </select>
+
+
 </mapper>

+ 0 - 12
src/main/resources/mapper/RepairsRoomMapper.xml

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.chuanghai.repair.mapper.RepairsRoomMapper">
-    <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsRoom">
-        <!--
-          WARNING - @mbg.generated
-        -->
-        <id column="room_id" property="roomId" jdbcType="INTEGER"/>
-        <result column="room_name" property="roomName" jdbcType="VARCHAR"/>
-        <result column="floor_id" property="floorId" jdbcType="INTEGER"/>
-    </resultMap>
-</mapper>

+ 1 - 0
src/main/resources/mapper/RepairsStudentMapper.xml

@@ -14,5 +14,6 @@
         <result column="student_build_floor_room" property="studentBuildFloorRoom" jdbcType="VARCHAR"/>
         <result column="student_dormitory" property="studentDormitory" jdbcType="VARCHAR"/>
         <result column="student_status" property="studentStatus" jdbcType="VARCHAR"/>
+        <result column="student_campus" property="studentCampus" jdbcType="VARCHAR"/>
     </resultMap>
 </mapper>

+ 7 - 6
src/main/resources/mapper/RepairsWorkMapper.xml

@@ -11,6 +11,7 @@
         <result column="work_phone" property="workPhone" jdbcType="VARCHAR"/>
         <result column="work_status" property="workStatus" jdbcType="VARCHAR"/>
         <result column="work_type" property="workType" jdbcType="VARCHAR"/>
+        <result column="work_campus" property="workCampus" jdbcType="VARCHAR"/>
     </resultMap>
 
     <!--维修工登录-->
@@ -37,9 +38,9 @@
     </select>
 
 <!--    维修工新增-->
-    <select id="addWork" parameterType="com.chuanghai.repair.entity.RepairsWork" resultType="Boolean">
-        insert into repairs_work(work_name,work_phone,work_password,work_type,work_status)
-            values(#{workName},#{workPhone},#{workPassword},#{workType},#{workStatus});
+    <select id="insertWork" parameterType="com.chuanghai.repair.entity.RepairsWork" resultType="Boolean">
+        insert into repairs_work(work_name,work_phone,work_password,work_type,work_status,work_campus)
+            values(#{workName},#{workPhone},#{workPassword},#{workType},#{workStatus},#{workCampus});
     </select>
 
 
@@ -58,8 +59,8 @@
         update repairs_work wo set wo.work_status = 0 where wo.work_id = #{work_id}
     </select>
 
-<!--    查询所有在维修工-->
-    <select id="queryAllWork" resultType="java.lang.String">
-        select work_id from  repairs_work where work_status = 1
+<!--    查询所有在岗的各类型维修工-->
+    <select id="queryAllWork" parameterType="java.lang.String" resultType="java.lang.String">
+        select work_id from  repairs_work where work_status = 1 and work_type = #{workType}
     </select>
 </mapper>

+ 1 - 2
src/test/java/com/chuanghai/RepairsApplicationTests.java

@@ -8,12 +8,11 @@ import org.springframework.security.crypto.password.PasswordEncoder;
 @SpringBootTest
 class RepairsApplicationTests {
 
-    @Autowired
-    private PasswordEncoder passwordEncoder;
 
 
     @Test
     void contextLoads() {
+
     }
 
 }