From 33b45f4ce71e89b9dd5d01d37c79628c0a3fbb23 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期五, 17 三月 2023 17:21:23 +0800
Subject: [PATCH] 增加功能

---
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java |  200 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 196 insertions(+), 4 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 9d2c8e4..8c5b493 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
@@ -26,10 +26,9 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.net.URLEncoder;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * @author whj
@@ -74,12 +73,34 @@
     @Autowired
     private IOrderLogService iOrderLogService;
 
+    @Autowired
+    private IOrderTaskOriginalService iOrderTaskOriginalService;
+
+    @Autowired
+    private IOrderDetailOriginalService iOrderDetailOriginalService;
+
+
+    @Autowired
+    private ICustomerReceiveService iCustomerReceiveService;
+
+
     @RequestMapping(value = "/get/{id}", method = RequestMethod.GET)
     @ApiOperation(value = "閫氳繃id鑾峰彇")
     public Result<OrderTask> get(@PathVariable String id) {
 
         OrderTask orderTask = iOrderTaskService.getById(id);
         return new ResultUtil<OrderTask>().setData(orderTask);
+    }
+
+    @RequestMapping(value = "/getByPage2", method = RequestMethod.GET)
+    @ApiOperation(value = "鍒嗛〉鑾峰彇")
+    public Result<IPage<OrderTask>> getByPage2(PageVo page,String sendDate,String userName,String customerName,Integer status) {
+        QueryWrapper<OrderTask> wrapper = new QueryWrapper<>();
+        if(StrUtil.isNotEmpty(sendDate)){
+            wrapper.eq("order_date",sendDate);
+        }
+        IPage<OrderTask> data = iOrderTaskService.page(PageUtil.initMpPage(page),wrapper);
+        return new ResultUtil<IPage<OrderTask>>().setData(data);
     }
 
 //    public Area getArea(String userId){
@@ -111,6 +132,20 @@
             return sendTime;
         } else {
             return DateUtil.format(new Date(), "yyyy-MM-dd");
+        }
+    }
+
+    private Date getDate(String sendTime){
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+        if (StrUtil.isNotEmpty(sendTime)) {
+            return new Date();
+        } else {
+            try {
+                return format.parse(sendTime);
+            } catch (ParseException e) {
+                e.printStackTrace();
+                return new Date();
+            }
         }
     }
 
@@ -398,6 +433,163 @@
         return ResultUtil.success("鎵归噺閫氳繃id鍒犻櫎鏁版嵁鎴愬姛");
     }
 
+    @RequestMapping(value = "/insertOrders", method = RequestMethod.GET)
+    @ApiOperation(value = "瑙f瀽璁㈠崟")
+    public Result<Object> insertOrders(String sendTime) {
+        String formatDate = getFormatDate(sendTime);
+        QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
+        wrapper2.eq("order_date", formatDate);
+        List<OrderTask> list = iOrderTaskService.list(wrapper2);
+        if(list.size() > 0){
+            return ResultUtil.error("宸插瓨鍦ㄤ粖鏃ユ暟鎹�");
+        }else {
+            QueryWrapper<OrderTaskOriginal> queryWrapper = new QueryWrapper<>();
+            queryWrapper.between("order_date",dateStringFormat(getDate(sendTime)),dateStringFormat2(getDate(sendTime)));
+            List<OrderTaskOriginal> originals = iOrderTaskOriginalService.list(queryWrapper);
+
+            int sumNum = 0;
+            for(OrderTaskOriginal original:originals){
+                try {
+                    OrderTask orderTask = new OrderTask();
+                    orderTask.setCode(original.getCode());
+                    Area area = getArea2(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);
+                    }
+
+                    orderTask.setNum(original.getNum());
+                    sumNum+=original.getNum();
+
+                    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("鎶ラ敊浜�");
+                }
+            }
+
+            OrderLog orderLog = new OrderLog();
+            orderLog.setNum(sumNum);
+            orderLog.setType(0);
+            iOrderLogService.save(orderLog);
+            System.out.println("澶勭悊璁㈠崟缁撴潫");
+
+
+            return ResultUtil.success("瀵煎叆鎴愬姛");
+        }
+
+
+    }
+
+    public void updateCustomerRecive(String customerId,String linker,String phone){
+        QueryWrapper<CustomerReceive> wrapper = new QueryWrapper<>();
+        wrapper.eq("customer_id",customerId);
+        wrapper.eq("name",linker);
+        List<CustomerReceive> list = iCustomerReceiveService.list(wrapper);
+        if(list.size()==0){
+            CustomerReceive one = new CustomerReceive();
+            one.setCustomerId(customerId);
+            one.setFstatus(0);
+            one.setStatus(1);
+            one.setName(linker);
+            one.setPhone(phone);
+            iCustomerReceiveService.saveOrUpdate(one);
+        }
+    }
+
+    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);
+        if(one==null){
+            Customer customer = new Customer();
+            customer.setLicence(customerCode);
+            customer.setName(customerName);
+            customer.setPhone(customerPhone);
+            customer.setLinker(linker);
+            customer.setAreaId(areaId);
+            customer.setAreaSectionId(areaSectionId);
+            customer.setKstatus(1);
+            iCustomerService.saveOrUpdate(customer);
+            return customer;
+        }
+        one.setAreaId(areaId);
+        one.setAreaSectionId(areaSectionId);
+        iCustomerService.saveOrUpdate(one);
+        return one;
+    }
+
+    public Area getArea2(String name){
+        QueryWrapper<Area> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("name",name);
+        Area one = iAreaService.getOne(queryWrapper);
+        if(one==null){
+            Area area = new Area();
+            area.setName(name);
+            iAreaService.saveOrUpdate(area);
+            return area;
+        }
+        return one;
+    }
+
+    public String getAreaSection(String areaId,String name){
+        QueryWrapper<AreaSection> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("name",name);
+        queryWrapper.eq("area_id",areaId);
+        AreaSection one = iAreaSectionService.getOne(queryWrapper);
+        if(one==null){
+            AreaSection area = new AreaSection();
+            area.setName(name);
+            area.setAreaId(areaId);
+            iAreaSectionService.saveOrUpdate(area);
+            return area.getId();
+        }
+        return one.getId();
+    }
+
+
+    public String dateStringFormat(Date strDate) {
+        if (strDate == null)
+            return "";
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        return sdf.format(strDate)+" 00:00:00";
+    }
+
+
+    public String dateStringFormat2(Date strDate) {
+        if (strDate == null)
+            return "";
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        return sdf.format(strDate)+" 23:59:59";
+    }
+
     @GetMapping("/outExcel")//  瀵煎嚭鐨勪笉鏄腑闂磋〃
     @ApiOperation(value = "瀵煎嚭绛炬敹缁熻淇℃伅琛�", notes = "瀵煎嚭绛炬敹缁熻淇℃伅琛�")
     public void export1(OrderStatusCount orderStatusCount, HttpServletResponse response) throws IOException {

--
Gitblit v1.9.1