From af83304e2ca46ace2cde325df5acde6b8e51ab8d Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Fri, 12 Mar 2021 14:17:45 +0800
Subject: [PATCH] 包裹,违禁品,在线设备统计接口ok

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/parcel/service/impl/ParcelServiceImpl.java |   88 +++++++++++++++++++++++++++++++++----------
 1 files changed, 67 insertions(+), 21 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/parcel/service/impl/ParcelServiceImpl.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/parcel/service/impl/ParcelServiceImpl.java
index 8e68cb7..52e92e2 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/parcel/service/impl/ParcelServiceImpl.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/parcel/service/impl/ParcelServiceImpl.java
@@ -1,19 +1,18 @@
 package org.springblade.jfpt.parcel.service.impl;
 
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.alibaba.nacos.common.utils.JacksonUtils;
 import org.springblade.jfpt.parcel.service.ParcelService;
 import org.springblade.jfpt.parcel.util.DateUtils;
 import org.springblade.jfpt.parcel.util.HttpClientUtils;
-import org.springblade.jfpt.parcel.util.JacksonUtil;
 import org.springblade.jfpt.parcel.vo.ConditionVo;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
-import springfox.documentation.spring.web.json.Json;
 
+import java.text.SimpleDateFormat;
 import java.util.*;
+
+import static org.springblade.core.tool.utils.DateUtil.now;
 
 /**
  * 包裹服务实现层
@@ -35,8 +34,8 @@
 
 
 	/**
-	 * 获取查询条件
-	 * @param conditionVo 查询条件对象
+	 * 获取违禁包裹统计数据,远程调用接口
+	 * @param conditionVo 查询条件对象  status 状态码 0:本天    1:本周   2:本月
 	 * @return
 	 */
 	@Override
@@ -45,16 +44,32 @@
 		if (null!=conditionVo.getStatus()) {
 			//获取数据
 			List<Object> objectList = getParcelData(conditionVo,PARCEL_CONTRABAND_URL,PARCEL_KEY,PARCEL_SECRET);
-			//5.遍历,分别取出数据
+			Map<String,String> mapCode = new HashMap<>();
+			//遍历集合,存储所有的违禁包裹编码
 			for (Object object : objectList) {
-				Map<String, Object> objectMap = (Map<String, Object>) object;//取出list里面的值转为map
-				System.out.println("liMap.get(\"objCode\") = " + objectMap.get("objCode"));
-				System.out.println("liMap.get(\"objCode\") = " + objectMap.get("objCount"));
-				System.out.println("liMap.get(\"objCode\") = " + objectMap.get("dateStr"));
-				System.out.println("liMap.get(\"objCode\") = " + objectMap.get("objName"));
+				//取出list里面的值转为map
+				Map<String, Object> objectMap = (Map<String, Object>) object;
+				//将所有的违禁包裹编码存起来
+				mapCode.put(objectMap.get("objCode").toString(),objectMap.get("objCode").toString());
 			}
+			//遍历违禁编码map数据
+			List<Map<String,Object>> list = new ArrayList<>();
+			for (String value:mapCode.values()) {
+				Integer count = 0;
+				HashMap<String, Object> map = new HashMap<>();
+				for (Object object : objectList) {
+					Map<String, Object> objectMap = (Map<String, Object>) object;//取出list里面的值转为map
+					//将所有的违禁包裹编码存起来
+					if (value.equals(objectMap.get("objCode").toString())){
+						count+=Integer.parseInt(objectMap.get("objCount").toString());
+						map.put("name",objectMap.get("objName").toString());
+						map.put("value",objectMap.get("objCount").toString());
+					}
+				}
+				list.add(map);
+			}
+			return list;
 		}
-
 		return null;
 	}
 
@@ -75,8 +90,8 @@
 			List<String> listTime = new ArrayList<>();
 			List<Map<String,Object>> parcelList = new ArrayList<>();
 			if (conditionVo.getStatus() == 1) {
-				//3.获取本周开始时间和结束时间的每一天数组
-				listTime = DateUtils.pastDay(DateUtils.getWeekEnd());
+				//3.获取今天之前的每一天数组   2021-3-12 arsn修改
+				listTime = DateUtils.pastDay(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
 				List<String> percelTimeList = new ArrayList<>();
 				for (Object object:objectList) {
 					//4.取出list里面的值转为map
@@ -149,17 +164,17 @@
 			startDate = DateUtils.getToday();
 			endDate = DateUtils.getToday();
 		}
-		//2.2查询本周内每天的数据
+		//2.2查询过去6天及当天的的数据
 		if (conditionVo.getStatus() == 1) {
-			//3.获取本周开始时间和结束时间
-			startDate = DateUtils.getWeekStart();
-			endDate = DateUtils.getWeekEnd();
+			//3.获取过去6天及当天开始时间和结束时间
+			startDate = DateUtils.getPastDate(6,now());
+			endDate = DateUtils.getToday();
 		}
 		//2.2查询本月的数据
 		if (conditionVo.getStatus() == 2) {
 			//3.获取本月开始时间和结束时间
-			startDate = DateUtils.getWeekStart();
-			endDate = DateUtils.getWeekEnd();
+			startDate = DateUtils.getMonthStart();
+			endDate = DateUtils.getMonthEnd();
 		}
 		map.put("startDate", startDate);
 		map.put("endDate", endDate);
@@ -169,4 +184,35 @@
 		Map<String, Object> data = (Map<String, Object>) JSONObject.parse(params);
 		return JSON.parseArray(data.get("result").toString());
 	}
+
+
+	/**
+	 * 查询包裹,违禁品总数
+	 * @param status 状态码 0:本天    1:本周   2:本月
+	 * @return
+	 */
+	@Override
+	public List<Integer> selectParcelCount(Integer status) {
+		List<Integer> list = new ArrayList<>();
+		ConditionVo conditionVo = new ConditionVo();
+		conditionVo.setStatus(status);
+		//获取包裹数据
+		List<Object> parcelData = getParcelData(conditionVo, PARCEL_URL, PARCEL_KEY, PARCEL_SECRET);
+		//查询当天的包裹总数
+		Integer checkCount = null;
+		Integer dangerCount = null;
+		if (status == 0) {
+			for (Object object : parcelData) {
+				//取出list里面的值转为map
+				Map<String, Object> objectMap = (Map<String, Object>) object;
+				checkCount = Integer.parseInt(objectMap.get("checkCount").toString()); //安检包裹数量
+				dangerCount = Integer.parseInt(objectMap.get("dangerCount").toString()); //违禁包裹数量
+			}
+		}
+		//封装数据
+		list.add(checkCount);
+		list.add(dangerCount);
+		//返回数据
+		return list;
+	}
 }

--
Gitblit v1.9.3