|
|
@@ -5,6 +5,7 @@ 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.RepairsStudentService;
|
|
|
import com.chuanghai.repair.service.RepairsWorkService;
|
|
|
import com.chuanghai.repair.utils.CreateTokenUtil;
|
|
|
import com.sun.xml.internal.ws.encoding.XMLHTTPBindingCodec;
|
|
|
@@ -13,12 +14,17 @@ import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import org.apache.catalina.Manager;
|
|
|
import org.apache.http.util.TextUtils;
|
|
|
+import org.springframework.context.ApplicationListener;
|
|
|
+import org.springframework.context.event.ContextRefreshedEvent;
|
|
|
+import org.springframework.scheduling.annotation.Scheduled;
|
|
|
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.RequestParam;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
import org.springframework.web.context.request.RequestContextHolder;
|
|
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
import org.thymeleaf.util.DateUtils;
|
|
|
import sun.util.calendar.BaseCalendar;
|
|
|
import sun.util.calendar.CalendarUtils;
|
|
|
@@ -26,6 +32,7 @@ import sun.util.calendar.CalendarUtils;
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpSession;
|
|
|
+import java.io.File;
|
|
|
import java.math.BigInteger;
|
|
|
import java.util.*;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
@@ -45,11 +52,13 @@ public class OrderController {
|
|
|
@Resource (name = "repairsOrderService")
|
|
|
private RepairsOrderService repairsOrderService;
|
|
|
|
|
|
+ @Resource (name = "repairsStudentService")
|
|
|
+ private RepairsStudentService repairsStudentService;
|
|
|
|
|
|
|
|
|
+ //------------------------------------------- PC端管理员操作-------------------------------------------
|
|
|
+
|
|
|
/**
|
|
|
- * 通过学生ID查询订单默认查询当天
|
|
|
- *s学生ID从 sesson中获取
|
|
|
* @param time
|
|
|
* @return
|
|
|
*/
|
|
|
@@ -58,19 +67,15 @@ public class OrderController {
|
|
|
public List<RepairsOrder> queryAllOrderByDate(@ApiParam(name = "查询日期",required = true) String time){
|
|
|
List<RepairsOrder> repairsOrder = null ;
|
|
|
try {
|
|
|
- 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);
|
|
|
-
|
|
|
+ //传入时间就设置为当天时间
|
|
|
+ Date date = sdf.parse(time);
|
|
|
+ calendar.setTime(date);
|
|
|
}else {//获取当天时间
|
|
|
calendar.setTime(calendar.getTime());
|
|
|
}
|
|
|
@@ -87,23 +92,104 @@ 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 ){
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ Date time = calendar.getTime();
|
|
|
+ String status= "1";
|
|
|
+ RepairsOrder repairsOrder = new RepairsOrder();
|
|
|
+ RepairsWork repairsWork = new RepairsWork();
|
|
|
+ repairsOrder.setOrderId(orderId);
|
|
|
+ repairsOrder.setOrderStatus(status);
|
|
|
+ repairsWork.setWorkId(workId);
|
|
|
+ repairsOrder.setRepairsWork(repairsWork);
|
|
|
+ repairsOrder.setOrderCompleteTime(time);
|
|
|
+ ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
|
|
|
+ orderArrayList.add(repairsOrder);
|
|
|
+ repairsOrderService.updateRepairsOrderBath(orderArrayList);
|
|
|
+ flag = Boolean.TRUE;
|
|
|
+ }
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return flag;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改订单状态 退单+退单理由 orderStatus = 3
|
|
|
+ * @param orderStatus
|
|
|
+ * @param orderId
|
|
|
+ * @param orderBack
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @ApiOperation("订单退回")
|
|
|
+ @PostMapping(value = "/updateOrderBack")
|
|
|
+ public Boolean updateOrderBack( @ApiParam(name = "订单状态",required = true)String orderStatus,
|
|
|
+ @ApiParam(name = "订单ID",required = true)String orderId,
|
|
|
+ @ApiParam(name = "退回理由",required = true)String orderBack){
|
|
|
+ Boolean flag = Boolean.FALSE;
|
|
|
+ try{
|
|
|
+ RepairsWork repairsWork = new RepairsWork();
|
|
|
+ repairsWork.setWorkId(Integer.parseInt("1"));
|
|
|
+ RepairsOrder repairsOrder =new RepairsOrder(orderId,null,null,null,
|
|
|
+ null,null,null,orderStatus,null,
|
|
|
+ null,orderBack,null,repairsWork,null,null);
|
|
|
+ System.out.println(repairsOrder);
|
|
|
+ ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
|
|
|
+ orderArrayList.add(repairsOrder);
|
|
|
+ repairsOrderService.updateOrderStatus(orderArrayList);
|
|
|
+ flag = Boolean.TRUE;
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return flag;
|
|
|
+ }
|
|
|
+
|
|
|
+//------------------------------------------- 移动端操作-------------------------------------------
|
|
|
/**
|
|
|
* 通过ID查询订单信息
|
|
|
- * @param studentId
|
|
|
- * @param workId
|
|
|
+ * @param
|
|
|
+ * @param
|
|
|
* @param campus
|
|
|
* @return
|
|
|
*/
|
|
|
- @ApiOperation("移动端订单查询")
|
|
|
- @PostMapping(value = "/queryAllOrderById")
|
|
|
- public List<RepairsOrder> queryAllOrderById(@ApiParam(name = "学生学号(学生订单查询)")String studentId,
|
|
|
- @ApiParam(name = "维修工编号(维修工订单查询)")String workId,
|
|
|
+ @ApiOperation("移动端学生订单查询")
|
|
|
+ @PostMapping(value = "/queryAllOrderByStudentId")
|
|
|
+ public List<RepairsOrder> queryAllOrderByStudentId(HttpServletRequest request,
|
|
|
@ApiParam(name = "校区",required = true)String campus){
|
|
|
List<RepairsOrder> orderList = null;
|
|
|
try{
|
|
|
+ String studentId = CreateTokenUtil.getHeadersInfo(request); //从请求头中获取 studentId
|
|
|
if(studentId!="" && studentId!=null){
|
|
|
orderList = repairsOrderService.queryAllOrderById(studentId,null,campus);
|
|
|
}
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return orderList;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 通过ID查询订单信息
|
|
|
+ * @param
|
|
|
+ * @param
|
|
|
+ * @param campus
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @ApiOperation("移动端维修工订单查询")
|
|
|
+ @PostMapping(value = "/queryAllOrderByWorkId")
|
|
|
+ public List<RepairsOrder> queryAllOrderByWorkId(HttpServletRequest request,
|
|
|
+ @ApiParam(name = "校区",required = true)String campus){
|
|
|
+ List<RepairsOrder> orderList = null;
|
|
|
+ try{
|
|
|
+ String workId = CreateTokenUtil.getHeadersInfo(request);
|
|
|
if(workId!="" && workId!=null){
|
|
|
orderList = repairsOrderService.queryAllOrderById(null,workId,campus);
|
|
|
}
|
|
|
@@ -114,6 +200,8 @@ public class OrderController {
|
|
|
|
|
|
return orderList;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 通过订单ID修改订单评价
|
|
|
* @param orderId
|
|
|
@@ -138,7 +226,7 @@ public class OrderController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 查询指定订单ID 的订单信息
|
|
|
+ * 查询指定订单ID 的订单信息 故障图片地址 http://binguo.vaiwan.com/images/1c843e19-6858-48a8-8c41-cbc80b5804ffperson.jpg
|
|
|
* @param orderId
|
|
|
* @return
|
|
|
*/
|
|
|
@@ -157,72 +245,63 @@ 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("订单填报")
|
|
|
+ @ApiOperation("学生:订单填报")
|
|
|
@PostMapping(value ="/insertOrder" )
|
|
|
- public Boolean insertOrder(@ApiParam(name = "故障类型",required = true)String orderType,
|
|
|
- @ApiParam(name = "故障图片",required = true)String orderImages,
|
|
|
+ public Boolean insertOrder(HttpServletRequest request,
|
|
|
+ @ApiParam(name = "故障类型",required = true)String orderType,
|
|
|
@ApiParam(name = "订单备注",required = true)String orderNote,
|
|
|
@ApiParam(name = "维修期望时间",required = true)String orderExpectedTime,
|
|
|
- @ApiParam(name = "故障类型ID",required = true)Integer faultId){
|
|
|
+ @ApiParam(name = "故障类型ID",required = true)Integer faultId,
|
|
|
+ @ApiParam(name = "备选电话")String otherPhone,
|
|
|
+ @ApiParam(name = "学生宿舍")String dormNumber,
|
|
|
+ @ApiParam(name = "故障图片 orderImages",required = true) MultipartFile file){
|
|
|
Boolean flag = Boolean.FALSE;
|
|
|
try {
|
|
|
-
|
|
|
+ String cardNumber = CreateTokenUtil.getHeadersInfo(request);
|
|
|
+ RepairsStudent repairsStudent = new RepairsStudent();
|
|
|
+ repairsStudent.setStudentId(cardNumber);
|
|
|
+ repairsStudent.setDormNumber(dormNumber);
|
|
|
+ repairsStudent.setStudentOtherPhone(otherPhone);
|
|
|
+ ArrayList<RepairsStudent> repairsStudentList = new ArrayList<>();
|
|
|
+ repairsStudentList.add(repairsStudent);
|
|
|
+ repairsStudentService.updateStudent(repairsStudentList);
|
|
|
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();
|
|
|
-
|
|
|
-
|
|
|
RepairsWork repairsWork = null;
|
|
|
+ RepairsOrder repairsOrder = new RepairsOrder();
|
|
|
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;
|
|
|
-
|
|
|
-
|
|
|
+ //获取原始图片的拓展名
|
|
|
+ String originalFilename = file.getOriginalFilename();
|
|
|
+ int index=originalFilename.lastIndexOf('.')+1;//获取地址.的前面的数字,从0开始
|
|
|
+ String type=originalFilename.substring(index);//从地址.开始截取后缀
|
|
|
+ String orderImages=repairsOrder.getOrderImages();
|
|
|
+ //保存图片的路径(这是存在我项目中的images下了,你们可以设置路径)
|
|
|
+ // String filePath="E:\\springboot\\src\\main\\resources\\static\\images";
|
|
|
+ String filePath="C:\\Users\\Administrator\\Desktop\\学校报修系统\\code\\repair_reporting_system_api\\src\\main\\resources\\static\\images";
|
|
|
+ //生成新文件名字
|
|
|
+ String newFileName= UUID.randomUUID()+originalFilename;
|
|
|
+ // 封装上传文件位置的全路径
|
|
|
+ File targetFile = new File(filePath,newFileName);
|
|
|
+ //把本地文件上传到封装上传文件位置的全路径
|
|
|
+ file.transferTo(targetFile);
|
|
|
+ repairsOrder.setOrderImages(newFileName);
|
|
|
+ if(type.equals("jpg") || type.equals("gif")){
|
|
|
+ if(newFileName!=null && newFileName!=""){
|
|
|
+ //prodectService.addProdect(prodect);
|
|
|
+ repairsOrder = new RepairsOrder(orderId,newFileName,orderNote,orderExpectedTime,
|
|
|
+ null,date,null,"0",null,"0",
|
|
|
+ null,repairsStudent,repairsWork,repairsFault,orderType);
|
|
|
+ repairsOrderService.insertOrder(repairsOrder);
|
|
|
+ flag = Boolean.TRUE;
|
|
|
+ }
|
|
|
+ }
|
|
|
}catch (Exception e){
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
@@ -231,22 +310,22 @@ public class OrderController {
|
|
|
|
|
|
/**
|
|
|
* 修改订单状态 已完成 orderStatus = 2
|
|
|
- * @param orderStatus
|
|
|
+ * @param
|
|
|
* @param orderId
|
|
|
* @return
|
|
|
*/
|
|
|
- @ApiOperation("订单已完成")
|
|
|
+ @ApiOperation("维修工:订单已完成")
|
|
|
@PostMapping(value = "/updateOrderFinish")
|
|
|
- public Boolean updateOrderFinish(@ApiParam(name = "订单状态",required = true)String orderStatus,
|
|
|
+ public Boolean updateOrderFinish(HttpServletRequest request,
|
|
|
@ApiParam(name = "订单ID",required = true)String orderId){
|
|
|
Boolean flag = Boolean.FALSE;
|
|
|
try{
|
|
|
RepairsWork repairsWork = new RepairsWork();
|
|
|
- repairsWork.setWorkId(Integer.parseInt("1"));
|
|
|
+ String workId = CreateTokenUtil.getHeadersInfo(request);
|
|
|
+ repairsWork.setWorkId(Integer.parseInt(workId));
|
|
|
RepairsOrder repairsOrder =new RepairsOrder(orderId,null,null,null,
|
|
|
- null,null,null,orderStatus,null,
|
|
|
+ null,null,null,"2",null,
|
|
|
null,null,null,repairsWork,null,null);
|
|
|
- System.out.println(repairsOrder);
|
|
|
ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
|
|
|
orderArrayList.add(repairsOrder);
|
|
|
repairsOrderService.updateOrderStatus(orderArrayList);
|
|
|
@@ -257,53 +336,22 @@ public class OrderController {
|
|
|
return flag;
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 修改订单状态 退单+退单理由 orderStatus = 3
|
|
|
- * @param orderStatus
|
|
|
- * @param orderId
|
|
|
- * @param orderBack
|
|
|
- * @return
|
|
|
- */
|
|
|
- @ApiOperation("订单退回")
|
|
|
- @PostMapping(value = "/updateOrderBack")
|
|
|
- public Boolean updateOrderBack( @ApiParam(name = "订单状态",required = true)String orderStatus,
|
|
|
- @ApiParam(name = "订单ID",required = true)String orderId,
|
|
|
- @ApiParam(name = "退回理由",required = true)String orderBack){
|
|
|
- Boolean flag = Boolean.FALSE;
|
|
|
- try{
|
|
|
- RepairsWork repairsWork = new RepairsWork();
|
|
|
- repairsWork.setWorkId(Integer.parseInt("1"));
|
|
|
- RepairsOrder repairsOrder =new RepairsOrder(orderId,null,null,null,
|
|
|
- null,null,null,orderStatus,null,
|
|
|
- null,orderBack,null,repairsWork,null,null);
|
|
|
- System.out.println(repairsOrder);
|
|
|
- ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
|
|
|
- orderArrayList.add(repairsOrder);
|
|
|
- repairsOrderService.updateOrderStatus(orderArrayList);
|
|
|
- flag = Boolean.TRUE;
|
|
|
- }catch (Exception e){
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
- return flag;
|
|
|
- }
|
|
|
|
|
|
/**
|
|
|
* 修改订单状态 维修工拒绝订单 orderStatus = 0
|
|
|
- * @param orderStatus
|
|
|
+ * @param
|
|
|
* @param orderId
|
|
|
* @param
|
|
|
* @return
|
|
|
*/
|
|
|
- @ApiOperation("订单拒绝")
|
|
|
+ @ApiOperation("维修工:订单拒绝")
|
|
|
@PostMapping(value = "/updateOrderRefused")
|
|
|
- public Boolean updateOrderRefused( @ApiParam(name = "订单状态",required = true)String orderStatus,
|
|
|
- @ApiParam(name = "订单ID",required = true)String orderId){
|
|
|
+ public Boolean updateOrderRefused(@ApiParam(name = "订单ID",required = true)String orderId){
|
|
|
Boolean flag = Boolean.FALSE;
|
|
|
try{
|
|
|
RepairsOrder repairsOrder =new RepairsOrder(orderId,null,null,null,
|
|
|
- null,null,null,orderStatus,null,
|
|
|
+ null,null,null,"2",null,
|
|
|
null,null,null,null,null,null);
|
|
|
- System.out.println(repairsOrder);
|
|
|
ArrayList<RepairsOrder> orderArrayList = new ArrayList<>();
|
|
|
orderArrayList.add(repairsOrder);
|
|
|
repairsOrderService.updateOrderStatus(orderArrayList);
|
|
|
@@ -313,4 +361,6 @@ public class OrderController {
|
|
|
}
|
|
|
return flag;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
}
|