From be396e19af86f49cc2c966c73b5f59cd36c7402e Mon Sep 17 00:00:00 2001
From: wjli <591616088@qq.com>
Date: 星期二, 09 五月 2023 16:09:15 +0800
Subject: [PATCH] 1.增加手持客户端当天签收率接口 2.增加后端月签收率接口

---
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/OrderTaskController.java |   77 ++++++++++++++++++++++++++++++++++++++
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/vo/OrderListVo.java                 |   26 +++++++++++++
 2 files changed, 103 insertions(+), 0 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 6c3eec3..9d7d3a8 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
@@ -11,6 +11,7 @@
 import cn.exrick.xboot.core.service.UserService;
 import cn.exrick.xboot.your.entity.*;
 import cn.exrick.xboot.your.service.*;
+import cn.exrick.xboot.your.vo.OrderListVo;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.excel.EasyExcel;
@@ -25,6 +26,7 @@
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.math.BigDecimal;
 import java.net.URLEncoder;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -230,6 +232,81 @@
         return new ResultUtil<List<OrderTask>>().setData(list);
     }
 
+    @RequestMapping(value = "/getTodayOrderByHulue", method = RequestMethod.GET)
+    @ApiOperation(value = "鑾峰彇浠婃棩閰嶉�佷换鍔¤鎯呭垪琛�,蹇界暐鏌愯鍗�,瀹㈡埛绔笓鐢ㄦ帴鍙�")
+    public Result<OrderListVo> getTodayOrderFromHulue(String orderId, String sendTime) {
+        //蹇界暐璁㈠崟
+        if (!StrUtil.isEmpty(orderId)) {
+            OrderTask orderTask = iOrderTaskService.getById(orderId);
+            orderTask.setSeq(1000);
+            iOrderTaskService.saveOrUpdate(orderTask);
+        }
+        //鑾峰彇璁㈠崟鍒楄〃
+        Area area = getArea(securityUtil.getCurrUser().getId());
+        if (area == null) {
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
+        }
+
+        QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
+        String format = getFormatDate(sendTime);
+//        wrapper2.eq("a.area_id",area.getId());
+//        wrapper2.eq("a.send_date",format);
+//        wrapper2.orderByAsc("a.seq").orderByAsc("a.status");
+        //List<OrderTask> list = iOrderTaskService.list2(wrapper2);
+        wrapper2.eq("area_id", area.getId());
+        wrapper2.eq("send_date", format);
+        wrapper2.orderByAsc("seq").orderByAsc("status");
+        List<OrderTask> list = iOrderTaskService.list(wrapper2);
+        int num = 0;
+        for (OrderTask obj : list) {
+            obj.setCode(obj.getLinker());
+            if(obj.getStatus()==1){
+                num++;
+            }
+        }
+        String percent = getPercent(num,list.size());
+        OrderListVo vo = new OrderListVo();
+        vo.setOrderTasks(list);
+        vo.setPercent(percent);
+        return new ResultUtil<OrderListVo>().setData(vo);
+    }
+
+    public String getPercent(int num,int totalNum){
+        if(totalNum>0){
+            BigDecimal number = new BigDecimal(0);
+            number=BigDecimal.valueOf((int)num);
+            BigDecimal total = new BigDecimal(0);
+            total=BigDecimal.valueOf((int)totalNum);
+            BigDecimal divide = number.divide(total,2,BigDecimal.ROUND_HALF_UP);
+            double bfb = divide.doubleValue();
+            int bfbInt = (int)(bfb*100);
+            return bfbInt+ "%";
+        }else{
+            return 0+ "%";
+        }
+    }
+    @RequestMapping(value = "/getOneMonthOrderPercent", method = RequestMethod.GET)
+    @ApiOperation(value = "鑾峰彇鏈湀閰嶉�佺櫨鍒嗘瘮")
+    public Result<String> getMonthPercent(){
+        Area area = getArea(securityUtil.getCurrUser().getId());
+        if (area == null) {
+            return ResultUtil.error("璇疯仈绯荤鐞嗗憳缁戝畾璇ヨ溅杈�");
+        }
+
+        String todayFormat = DateUtil.format(new Date(), "yyyy-MM-dd");
+        String monthFormat = DateUtil.format(DateUtil.beginOfMonth(new Date()),"yyyy-MM-dd");
+
+        QueryWrapper<OrderTask> wrapper2 = new QueryWrapper<OrderTask>();
+        wrapper2.eq("area_id", area.getId());
+        wrapper2.between("send_date",monthFormat,todayFormat);
+        int allOrders = iOrderTaskService.count(wrapper2);
+
+        wrapper2.eq("status",1);
+        int doOrders = iOrderTaskService.count(wrapper2);
+
+        return new ResultUtil<String>().setData(getPercent(doOrders,allOrders));
+    }
+
     @RequestMapping(value = "/getTodayOrderDetail", method = RequestMethod.GET)
     @ApiOperation(value = "鑾峰彇褰撳墠閰嶉�佸晢鎴疯鎯�")
     public Result<OrderTask> getTodayOrderDetail(String orderId, String sendTime) {
diff --git a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/vo/OrderListVo.java b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/vo/OrderListVo.java
new file mode 100644
index 0000000..4202b87
--- /dev/null
+++ b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/vo/OrderListVo.java
@@ -0,0 +1,26 @@
+package cn.exrick.xboot.your.vo;
+
+import cn.exrick.xboot.your.entity.OrderTask;
+
+import java.util.List;
+
+public class OrderListVo {
+    String percent;
+    List<OrderTask> orderTasks;
+
+    public String getPercent() {
+        return percent;
+    }
+
+    public void setPercent(String percent) {
+        this.percent = percent;
+    }
+
+    public List<OrderTask> getOrderTasks() {
+        return orderTasks;
+    }
+
+    public void setOrderTasks(List<OrderTask> orderTasks) {
+        this.orderTasks = orderTasks;
+    }
+}

--
Gitblit v1.9.1