From 84fd23e5e865bd5529441a0c318809a00362f44c Mon Sep 17 00:00:00 2001
From: wjli <591616088@qq.com>
Date: 星期一, 18 三月 2024 16:15:03 +0800
Subject: [PATCH] 添加签收图片对比功能

---
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/OrderSynScheduleImpl.java |  133 ++++++++++++++++++++++++++++----------------
 1 files changed, 84 insertions(+), 49 deletions(-)

diff --git a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/OrderSynScheduleImpl.java b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/OrderSynScheduleImpl.java
index 14af0b1..663766a 100644
--- a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/OrderSynScheduleImpl.java
+++ b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/OrderSynScheduleImpl.java
@@ -1,13 +1,15 @@
 package cn.exrick.xboot.your.schedulings;
 import cn.exrick.xboot.your.entity.*;
 import cn.exrick.xboot.your.service.*;
-import cn.hutool.core.util.StrUtil;
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -37,46 +39,77 @@
     private ICustomerService iCustomerService;
 
     @Autowired
-    private ICarService iCarService;
-
-    @Autowired
     private ICustomerReceiveService iCustomerReceiveService;
 
-    @Scheduled(cron="0 30 23 * * ?")//姣忔櫄鍑屾櫒1鐐规墽琛�
+    @Autowired
+    private IOrderLogService iOrderLogService;
+
+    /**
+     * 姣忓ぉ15锛�59鍒嗗鐞�
+     * 鍦ㄥ師濮嬭鍗曟暟鎹紙t_order_task_original锛夎幏鍙栬鍗曟棩鏈熶负浠婂ぉ鐨勫師濮嬭鍗曪紝杞崲鎴愯鍗曟暟鎹瓨鍏ヨ鍗曚换鍔℃暟鎹〃锛坱_order_task锛�
+     */
+
+    @Scheduled(cron="0 59 15 * * ?")//姣忔櫄鍑屾櫒1鐐规墽琛�
+    //@Scheduled(cron="0 11 15 * * ?")//姣忔櫄鍑屾櫒1鐐规墽琛�
     public void execute(){
+        System.out.println("寮�濮嬪鐞嗚鍗�");
         QueryWrapper<OrderTaskOriginal> queryWrapper = new QueryWrapper<>();
-        queryWrapper.between("create_time",dateStringFormat(new Date()),dateStringFormat2(new Date()));
-        List<OrderTaskOriginal> list = iOrderTaskOriginalService.list();
+        queryWrapper.between("order_date",DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date()));
+        List<OrderTaskOriginal> list = iOrderTaskOriginalService.list(queryWrapper);
 
+        int sumNum = 0;
         for(OrderTaskOriginal original:list){
-            OrderTask orderTask = new OrderTask();
-            orderTask.setCode(original.getCode());
-            orderTask.setAreaId(getArea(original.getAreaName()));
-            orderTask.setAreaSectionId(getAreaSection(orderTask.getAreaId(),original.getAreaSection()));
-            orderTask.setCustomerId(getCustomer(original.getCustomerCode(),original.getCustomerName(),original.getCustomerPhone(),original.getLinker(),orderTask.getAreaId(),orderTask.getAreaSectionId()));
-            orderTask.setEndDate(original.getPacketDate());
-            orderTask.setSendDate(original.getSendDate());
-            orderTask.setOrderDate(original.getOrderDate());
-            orderTask.setSeq(original.getSeq());
-            orderTask.setNum(original.getNum());
-            orderTask.setCarId(orderTask.getAreaId());
-            iOrderTaskService.saveOrUpdate(orderTask);
+            try {
+                OrderTask orderTask = new OrderTask();
+                orderTask.setCode(original.getCode());
+                Area area = getArea(original.getAreaName());
+                orderTask.setAreaId(area.getId());
+                orderTask.setCarId(area.getCarId());
+                orderTask.setAreaSectionId(getAreaSection(orderTask.getAreaId(),original.getAreaSection()));
+                Customer customer = getCustomer(original.getCustomerCode(), original.getCustomerName(), original.getCustomerPhone(), original.getLinker(), orderTask.getAreaId(), orderTask.getAreaSectionId());
+                orderTask.setCustomerId(customer.getId());
+                orderTask.setCustomerName(customer.getName());
+                orderTask.setLinker(customer.getLinker());
+                orderTask.setEndDate(original.getPacketDate());
+                //orderTask.setSendDate(original.getSendDate());
+                orderTask.setSendDate(DateUtil.offsetDay(original.getOrderDate(),1));
+                orderTask.setOrderDate(original.getOrderDate());
+                if(original.getSeq()!=null){
+                    orderTask.setSeq(original.getSeq());
+                }else{
+                    orderTask.setSeq(999);
+                }
 
-            updateCustomerRecive(orderTask.getCustomerId(),original.getLinker(),original.getCustomerPhone());
+                orderTask.setNum(original.getNum());
+                sumNum+=original.getNum();
 
-            QueryWrapper<OrderDetailOriginal> wrapper = new QueryWrapper<>();
-            wrapper.between("create_time",dateStringFormat(new Date()),dateStringFormat2(new Date()));
-            wrapper.eq("order_id",original.getId());
-            List<OrderDetailOriginal> list1 = iOrderDetailOriginalService.list(wrapper);
-            for(OrderDetailOriginal o:list1){
-                OrderDetail orderDetail = new OrderDetail();
-                orderDetail.setNum(o.getNum());
-                orderDetail.setOrderId(orderTask.getId());
-                orderDetail.setProduct(o.getProductName());
-                iOrderDetailService.saveOrUpdate(orderDetail);
+                iOrderTaskService.saveOrUpdate(orderTask);
+
+                updateCustomerRecive(orderTask.getCustomerId(),original.getLinker(),original.getCustomerPhone());
+
+                QueryWrapper<OrderDetailOriginal> wrapper = new QueryWrapper<>();
+                wrapper.eq("order_id",original.getId());
+                List<OrderDetailOriginal> list1 = iOrderDetailOriginalService.list(wrapper);
+
+                List<OrderDetail> detailList = new ArrayList<>();
+                for(OrderDetailOriginal o:list1){
+                    OrderDetail orderDetail = new OrderDetail();
+                    orderDetail.setNum(o.getNum());
+                    orderDetail.setOrderId(orderTask.getId());
+                    orderDetail.setProduct(o.getProductName());
+                    detailList.add(orderDetail);
+                }
+                iOrderDetailService.saveBatch(detailList);
+            }catch (Exception e){
+                System.out.println(original.getId()+"瀹氭椂杞崲鎶ラ敊");
             }
-
         }
+
+        OrderLog orderLog = new OrderLog();
+        orderLog.setNum(sumNum);
+        orderLog.setType(0);
+        iOrderLogService.save(orderLog);
+        System.out.println("澶勭悊璁㈠崟缁撴潫");
 
     }
 
@@ -84,9 +117,9 @@
         QueryWrapper<CustomerReceive> wrapper = new QueryWrapper<>();
         wrapper.eq("customer_id",customerId);
         wrapper.eq("name",linker);
-        CustomerReceive one = iCustomerReceiveService.getOne(wrapper);
-        if(one==null){
-            one = new CustomerReceive();
+        List<CustomerReceive> list = iCustomerReceiveService.list(wrapper);
+        if(list.size()==0){
+            CustomerReceive one = new CustomerReceive();
             one.setCustomerId(customerId);
             one.setFstatus(0);
             one.setStatus(1);
@@ -96,7 +129,7 @@
         }
     }
 
-    public String getCustomer(String customerCode,String customerName,String customerPhone,String linker,String areaId,String areaSectionId){
+    public Customer getCustomer(String customerCode,String customerName,String customerPhone,String linker,String areaId,String areaSectionId){
         QueryWrapper<Customer> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("licence",customerCode);
         Customer one = iCustomerService.getOne(queryWrapper);
@@ -110,15 +143,15 @@
             customer.setAreaSectionId(areaSectionId);
             customer.setKstatus(1);
             iCustomerService.saveOrUpdate(customer);
-            return customer.getId();
+            return customer;
         }
         one.setAreaId(areaId);
         one.setAreaSectionId(areaSectionId);
         iCustomerService.saveOrUpdate(one);
-        return one.getId();
+        return one;
     }
 
-    public String getArea(String name){
+    public Area getArea(String name){
         QueryWrapper<Area> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("name",name);
         Area one = iAreaService.getOne(queryWrapper);
@@ -126,9 +159,9 @@
             Area area = new Area();
             area.setName(name);
             iAreaService.saveOrUpdate(area);
-            return area.getId();
+            return area;
         }
-        return one.getId();
+        return one;
     }
 
     public String getAreaSection(String areaId,String name){
@@ -148,15 +181,17 @@
 
     public String getCarId(String areaId){
         Area area = iAreaService.getById(areaId);
-        String userId = area.getUserId();
-        if(StrUtil.isNotEmpty(userId)){
-            QueryWrapper<Car> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("follow_user_id",userId);
-            Car one = iCarService.getOne(queryWrapper);
-            return one.getId();
-        }else{
-            return null;
-        }
+        return area.getCarId();
+//        String userId = area.getUserId();
+//        if(StrUtil.isNotEmpty(userId)){
+//            QueryWrapper<Car> queryWrapper = new QueryWrapper<>();
+//            queryWrapper.eq("follow_user_id",userId);
+//            Car one = iCarService.getOne(queryWrapper);
+//            return one.getId();
+//        }else{
+//            return null;
+//        }
+        //return iAreaService.getCarId(areaId);
     }
 
     public String dateStringFormat(Date strDate) {

--
Gitblit v1.9.1