From 6dfd2599d2e52507e018fd4c6b35d38873e48cfb Mon Sep 17 00:00:00 2001
From: wang-hao-jie <1550036656@qq.com>
Date: 星期四, 17 三月 2022 15:52:51 +0800
Subject: [PATCH] 最新版本

---
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java |  200 +++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 164 insertions(+), 36 deletions(-)

diff --git a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java
index 5fef915..47dd585 100644
--- a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java
+++ b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java
@@ -5,15 +5,12 @@
 import cn.exrick.xboot.core.common.utils.SecurityUtil;
 import cn.exrick.xboot.core.common.vo.PageVo;
 import cn.exrick.xboot.core.common.vo.Result;
+import cn.exrick.xboot.core.entity.Department;
 import cn.exrick.xboot.core.entity.User;
+import cn.exrick.xboot.core.service.DepartmentService;
 import cn.exrick.xboot.core.service.UserService;
-import cn.exrick.xboot.your.entity.Area;
-import cn.exrick.xboot.your.entity.OrderDetail;
-import cn.exrick.xboot.your.entity.OrderTask;
-import cn.exrick.xboot.your.service.IAreaService;
-import cn.exrick.xboot.your.service.ICustomerService;
-import cn.exrick.xboot.your.service.IOrderDetailService;
-import cn.exrick.xboot.your.service.IOrderTaskService;
+import cn.exrick.xboot.your.entity.*;
+import cn.exrick.xboot.your.service.*;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -58,6 +55,18 @@
     @Autowired
     private UserService userService;
 
+    @Autowired
+    private IAreaSectionService iAreaSectionService;
+
+    @Autowired
+    private ICarService iCarService;
+
+    @Autowired
+    private DepartmentService departmentService;
+
+    @Autowired
+    private IEventLogService iEventLogService;
+
     @RequestMapping(value = "/get/{id}", method = RequestMethod.GET)
     @ApiOperation(value = "閫氳繃id鑾峰彇")
     public Result<OrderTask> get(@PathVariable String id) {
@@ -66,52 +75,103 @@
         return new ResultUtil<OrderTask>().setData(orderTask);
     }
 
+//    public Area getArea(String userId){
+//        QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
+//        wrapper.eq("user_id",userId);
+//        Area area = iAreaService.getOne(wrapper);
+//        if(area==null){
+//            QueryWrapper<Car> carQueryWrapper = new QueryWrapper<Car>();
+//            carQueryWrapper.eq("user_id",userId);
+//            Car one = iCarService.getOne(carQueryWrapper);
+//            if(one==null){
+//                return null;
+//            }
+//            if(StrUtil.isEmpty(one.getFollowUserId())){
+//                return null;
+//            }
+//
+//            QueryWrapper<Area> wrapper3 = new QueryWrapper<Area>();
+//            wrapper3.eq("user_id",one.getFollowUserId());
+//            area = iAreaService.getOne(wrapper3);
+//            return area;
+//        }
+//        return area;
+//    }
+
+
+    private String getFormatDate(String sendTime){
+        if(StrUtil.isNotEmpty(sendTime)){
+            return sendTime;
+        }else{
+            return DateUtil.format(new Date(), "yyyy-MM-dd");
+        }
+    }
+
+    public Area getArea(String userId){
+        QueryWrapper<Car> carQueryWrapper = new QueryWrapper<Car>();
+        carQueryWrapper.eq("user_id",userId).or().eq("follow_user_id",userId);
+        Car one = iCarService.getOne(carQueryWrapper);
+        if(one==null){
+            return null;
+        }else{
+            QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
+            wrapper.eq("car_id",one.getId());
+            Area area = iAreaService.getOne(wrapper);
+            return area;
+        }
+    }
+
     @RequestMapping(value = "/getByUserId", method = RequestMethod.GET)
     @ApiOperation(value = "鑾峰彇浠婃棩浠诲姟缁熻淇℃伅")
-    public Result<Object> getAll() {
-        QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
-        wrapper.eq("user_id",securityUtil.getCurrUser().getId());
-        Area area = iAreaService.getOne(wrapper);
+    public Result<Object> getAll(String sendTime) {
+        Area area = getArea(securityUtil.getCurrUser().getId());
         if(area==null){
-            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾鐗囧尯閰嶉�佸憳");
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
         }
 
         QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
-        String format = DateUtil.format(new Date(), "yyyy-MM-dd");
+        String format = getFormatDate(sendTime);
         wrapper2.eq("area_id",area.getId());
         wrapper2.eq("send_date",format);
-        int count = iOrderTaskService.count(wrapper2);
+        List<OrderTask> list = iOrderTaskService.list(wrapper2);
 
         int sum = iOrderTaskService.sum(area.getId(),format);
 
         Map<String,Object> map = new HashMap<String,Object>();
-        map.put("count",count);
+        map.put("count",list.size());
         map.put("sum",sum);
+        map.put("name","");
+        if(list.size()>0){
+            OrderTask orderTask = list.get(0);
+            String areaSectionId = orderTask.getAreaSectionId();
+            AreaSection a = iAreaSectionService.getById(areaSectionId);
+            Area area2 = iAreaService.getById(orderTask.getAreaId());
+            map.put("name",area2.getName()+a.getName());
+            list.clear();
+        }
         return new ResultUtil<Object>().setData(map);
     }
 
     @RequestMapping(value = "/getTodayOrder", method = RequestMethod.GET)
-    @ApiOperation(value = "鑾峰彇浠婃棩浠诲姟璇︽儏")
-    public Result<List<OrderTask>> getTodayOrder() {
-        QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
-        wrapper.eq("user_id",securityUtil.getCurrUser().getId());
-        Area area = iAreaService.getOne(wrapper);
+    @ApiOperation(value = "鑾峰彇浠婃棩閰嶉�佷换鍔¤鎯呭垪琛�")
+    public Result<List<OrderTask>> getTodayOrder(String sendTime) {
+        Area area = getArea(securityUtil.getCurrUser().getId());
         if(area==null){
-            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾鐗囧尯閰嶉�佸憳");
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
         }
 
         QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
-        String format = DateUtil.format(new Date(), "yyyy-MM-dd");
+        String format = getFormatDate(sendTime);
         wrapper2.eq("a.area_id",area.getId());
         wrapper2.eq("a.send_date",format);
-        wrapper2.orderByAsc("a.seq");
+        wrapper2.orderByAsc("a.seq").orderByAsc("a.status");
         List<OrderTask> list = iOrderTaskService.list2(wrapper2);
         return new ResultUtil<List<OrderTask>>().setData(list);
     }
 
     @RequestMapping(value = "/getTodayOrderDetail", method = RequestMethod.GET)
     @ApiOperation(value = "鑾峰彇褰撳墠閰嶉�佸晢鎴疯鎯�")
-    public Result<OrderTask> getTodayOrderDetail(String orderId) {
+    public Result<OrderTask> getTodayOrderDetail(String orderId,String sendTime) {
         OrderTask orderTask = new OrderTask();
         if(!StrUtil.isEmpty(orderId)){
             orderTask = iOrderTaskService.getById(orderId);
@@ -119,15 +179,13 @@
                 return ResultUtil.error("姝ゅ晢鎴峰凡閰嶉��");
             }
         }else{
-            QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
-            wrapper.eq("user_id",securityUtil.getCurrUser().getId());
-            Area area = iAreaService.getOne(wrapper);
+            Area area = getArea(securityUtil.getCurrUser().getId());
             if(area==null){
-                return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾鐗囧尯閰嶉�佸憳");
+                return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
             }
 
             QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
-            String format = DateUtil.format(new Date(), "yyyy-MM-dd");
+            String format = getFormatDate(sendTime);
             wrapper2.eq("area_id",area.getId());
             wrapper2.eq("send_date",format);
             wrapper2.eq("status",0);
@@ -150,17 +208,15 @@
 
     @RequestMapping(value = "/getTodayOtherInfo", method = RequestMethod.GET)
     @ApiOperation(value = "鑾峰彇鍏跺畠淇℃伅")
-    public Result<Object> getTodayOtherInfo() {
+    public Result<Object> getTodayOtherInfo(String sendTime) {
 
-        QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
-        wrapper.eq("user_id",securityUtil.getCurrUser().getId());
-        Area area = iAreaService.getOne(wrapper);
+        Area area = getArea(securityUtil.getCurrUser().getId());
         if(area==null){
-            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾鐗囧尯閰嶉�佸憳");
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
         }
 
         QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
-        String format = DateUtil.format(new Date(), "yyyy-MM-dd");
+        String format = getFormatDate(sendTime);
         wrapper2.eq("area_id",area.getId());
         wrapper2.eq("send_date",format);
         wrapper2.ne("status",0);
@@ -202,14 +258,86 @@
             }
         }
         map.put("content",content);
+
+        map.put("lng","");
+        map.put("lat","");
+        String deptId = securityUtil.getCurrUser().getDepartmentId();
+        if(StrUtil.isNotEmpty(deptId)){
+            Department department = departmentService.get(deptId);
+            map.put("lng",department.getLng());
+            map.put("lat",department.getLat());
+        }
         return new ResultUtil<Object>().setData(map);
+    }
+
+    @RequestMapping(value = "/addImg", method = RequestMethod.POST)
+    @ApiOperation(value = "涓婁紶闂ㄥご鐓�")
+    public Object saveOrUpdate(String orderId,String imgUrl) {
+        OrderTask orderTask = iOrderTaskService.getById(orderId);
+        orderTask.setImg(imgUrl);
+        iOrderTaskService.saveOrUpdate(orderTask);
+        return ResultUtil.success("娣诲姞鎴愬姛");
+    }
+
+    @RequestMapping(value = "/signFor", method = RequestMethod.POST)
+    @ApiOperation(value = "绛炬敹")
+    public Object signFor(String orderId,int status,String content,String customerReceiveId,int time,String carId) {
+        if(status==1){
+            if(StrUtil.isEmpty(customerReceiveId)){
+                return ResultUtil.error("姝e父绛炬敹锛屾帴璐т汉id蹇呭~");
+            }
+        }
+
+        if(StrUtil.isEmpty(carId)){
+            return ResultUtil.error("杞﹁締id涓嶈兘涓虹┖");
+        }
+        OrderTask orderTask = iOrderTaskService.getById(orderId);
+        orderTask.setStatus(status);
+        orderTask.setUserId(securityUtil.getCurrUser().getId());
+        orderTask.setTime(time);
+        orderTask.setCarId(carId);
+        if(StrUtil.isNotEmpty(customerReceiveId)){
+            orderTask.setCustomerReceiveId(customerReceiveId);
+        }
+
+        if(!StrUtil.isEmpty(content)){
+            orderTask.setRemarks(content);
+        }else{
+            if(status==2){
+                return ResultUtil.error("璇峰~鍐欏紓甯哥鏀跺師鍥�");
+            }
+        }
+        iOrderTaskService.saveOrUpdate(orderTask);
+
+        Car car = iCarService.getById(orderTask.getCarId());
+        EventLog eventLog = new EventLog();
+        eventLog.setCarNo(car.getCarNo());
+        eventLog.setRefId(orderId);
+        eventLog.setType(6);//6:閰嶉�佸畬鎴�
+        iEventLogService.saveOrUpdate(eventLog);
+        return ResultUtil.success("娣诲姞鎴愬姛");
+    }
+
+    @RequestMapping(value = "/getTaKan", method = RequestMethod.GET)
+    @ApiOperation(value = "鑾峰彇韪忓嫎鍟嗘埛")
+    public Result<List<Customer>> getTaKan() {
+        Area area = getArea(securityUtil.getCurrUser().getId());
+        if(area==null){
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
+        }
+
+        QueryWrapper<Customer> wrapper2 = new QueryWrapper<Customer>();
+        wrapper2.eq("area_id",area.getId());
+        wrapper2.eq("kstatus",0);
+        List<Customer> list = iCustomerService.list(wrapper2);
+        return new ResultUtil<List<Customer>>().setData(list);
     }
 
     @RequestMapping(value = "/getByPage", method = RequestMethod.GET)
     @ApiOperation(value = "鍒嗛〉鑾峰彇")
     public Result<IPage<OrderTask>> getByPage(PageVo page) {
 
-        IPage<OrderTask> data = iOrderTaskService.page(PageUtil.initMpPage(page));
+        IPage<OrderTask> data = iOrderTaskService.page2(PageUtil.initMpPage(page));
         return new ResultUtil<IPage<OrderTask>>().setData(data);
     }
 

--
Gitblit v1.9.1