|
@@ -1,5 +1,6 @@
|
|
|
package com.ruixuan.jiaoyang.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ruixuan.common.core.controller.BaseController;
|
|
|
import com.ruixuan.common.core.page.TableDataInfo;
|
|
@@ -25,7 +26,9 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
|
import java.io.OutputStream;
|
|
|
import java.io.UnsupportedEncodingException;
|
|
|
+import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
+import java.time.LocalDate;
|
|
|
import java.util.*;
|
|
|
|
|
|
@RestController
|
|
@@ -40,6 +43,104 @@ public class JiaoYangReportController extends BaseController {
|
|
|
@Autowired
|
|
|
private ISysUserService sysUserService;
|
|
|
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 商品数据
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @GetMapping("/profitData")
|
|
|
+ @ApiOperation(value = "商品列表")
|
|
|
+ public JSONObject profitData(String date) throws ParseException {
|
|
|
+
|
|
|
+ JSONObject returnJson = new JSONObject();
|
|
|
+
|
|
|
+ try {
|
|
|
+ String lastDate = DateUtils.getAnotherDay("yyyy-MM-dd", date, -1); // 日期 -1
|
|
|
+ String firstDateByMonth = DateUtils.getFirstDayByMonth(); // 本月第一天
|
|
|
+ // date 为本月结束时间
|
|
|
+ String lastMonthFirstDate = DateUtils.getLastMonthFirstDay();// 上个月开始时间
|
|
|
+ String lastMonthEndDate = DateUtils.getLastMonthNowDay(date);// 上个月结束时间
|
|
|
+ JSONObject dayData = jiaoYangReportService.dayData(DateUtils.strDateTimsToInt(date), DateUtils.strDateTimsToInt(lastDate));
|
|
|
+ JSONArray dayArray = new JSONArray();
|
|
|
+ JSONObject obj1 = new JSONObject();
|
|
|
+ obj1.put("date", dayData.getString("date"));
|
|
|
+ obj1.put("gmv", dayData.getString("gmv"));
|
|
|
+ obj1.put("orderNum", dayData.getString("orderNum"));
|
|
|
+ obj1.put("validGmv", dayData.getString("validGmv"));
|
|
|
+ obj1.put("validOrderNum", dayData.getString("validOrderNum"));
|
|
|
+ obj1.put("mcnPromotionAmount", dayData.getString("mcnPromotionAmount"));
|
|
|
+ obj1.put("grossMargin", dayData.getString("grossMargin"));
|
|
|
+
|
|
|
+
|
|
|
+ JSONObject obj2 = new JSONObject();
|
|
|
+ obj2.put("date", dayData.getString("lastDate"));
|
|
|
+ obj2.put("gmv", dayData.getString("lastGmv"));
|
|
|
+ obj2.put("orderNum", dayData.getString("lastOrderNum"));
|
|
|
+ obj2.put("validGmv", dayData.getString("lastValidGmv"));
|
|
|
+ obj2.put("validOrderNum", dayData.getString("lastValidOrderNum"));
|
|
|
+ obj2.put("mcnPromotionAmount", dayData.getString("lastMcnPromotionAmount"));
|
|
|
+ obj2.put("grossMargin", dayData.getString("lastGrossMargin"));
|
|
|
+
|
|
|
+
|
|
|
+ JSONObject obj3 = new JSONObject();
|
|
|
+ obj3.put("date", "Gap");
|
|
|
+ obj3.put("gmv", dayData.getString("gvmGap"));
|
|
|
+ obj3.put("orderNum", dayData.getString("orderNumGap"));
|
|
|
+ obj3.put("validGmv", dayData.getString("validGmvGap"));
|
|
|
+ obj3.put("validOrderNum", dayData.getString("validOrderNumGap"));
|
|
|
+ obj3.put("mcnPromotionAmount", dayData.getString("mcnPromotionAmountGap"));
|
|
|
+ obj3.put("grossMargin", dayData.getString("grossMarginGap"));
|
|
|
+ dayArray.add(obj1);
|
|
|
+ dayArray.add(obj2);
|
|
|
+ dayArray.add(obj3);
|
|
|
+ dayArray.add(new JSONObject());
|
|
|
+
|
|
|
+ JSONObject monthData = jiaoYangReportService.monthData(DateUtils.strDateTimsToInt(firstDateByMonth), DateUtils.strDateTimsToInt(date), DateUtils.strDateTimsToInt(lastMonthFirstDate), DateUtils.strDateTimsToInt(lastMonthEndDate));
|
|
|
+
|
|
|
+
|
|
|
+ JSONObject obj4 = new JSONObject();
|
|
|
+ obj4.put("date", monthData.getString("date"));
|
|
|
+ obj4.put("gmv", monthData.getString("gmv"));
|
|
|
+ obj4.put("orderNum", monthData.getString("orderNum"));
|
|
|
+ obj4.put("validGmv", monthData.getString("validGmv"));
|
|
|
+ obj4.put("validOrderNum", monthData.getString("validOrderNum"));
|
|
|
+ obj4.put("mcnPromotionAmount", monthData.getString("mcnPromotionAmount"));
|
|
|
+ obj4.put("grossMargin", monthData.getString("grossMargin"));
|
|
|
+
|
|
|
+ JSONObject obj5 = new JSONObject();
|
|
|
+ obj5.put("date", monthData.getString("lastDate"));
|
|
|
+ obj5.put("gmv", monthData.getString("lastGmv"));
|
|
|
+ obj5.put("orderNum", monthData.getString("lastOrderNum"));
|
|
|
+ obj5.put("validGmv", monthData.getString("lastValidGmv"));
|
|
|
+ obj5.put("validOrderNum", monthData.getString("lastValidOrderNum"));
|
|
|
+ obj5.put("mcnPromotionAmount", monthData.getString("lastMcnPromotionAmount"));
|
|
|
+ obj5.put("grossMargin", monthData.getString("lastGrossMargin"));
|
|
|
+
|
|
|
+ JSONObject obj6 = new JSONObject();
|
|
|
+ obj6.put("date", "环比");
|
|
|
+ obj6.put("gmv", monthData.getString("gvmRadio"));
|
|
|
+ obj6.put("orderNum", monthData.getString("orderNumRadio"));
|
|
|
+ obj6.put("validGmv", monthData.getString("validGmvRadio"));
|
|
|
+ obj6.put("validOrderNum", monthData.getString("validOrderNumRadio"));
|
|
|
+ obj6.put("mcnPromotionAmount", monthData.getString("mcnPromotionAmountRadio"));
|
|
|
+ obj6.put("grossMargin", monthData.getString("grossMarginRadio"));
|
|
|
+
|
|
|
+ dayArray.add(obj4);
|
|
|
+ dayArray.add(obj5);
|
|
|
+ dayArray.add(obj6);
|
|
|
+ returnJson.put("code", 200);
|
|
|
+ returnJson.put("dayArray", dayArray);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ returnJson.put("code", 500);
|
|
|
+ returnJson.put("message", e.getMessage());
|
|
|
+ }
|
|
|
+
|
|
|
+ return returnJson;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 商品数据
|
|
|
*
|