From 7c5d2a65494a1ae3c6884356a4838967282c4b13 Mon Sep 17 00:00:00 2001 From: xyiege Date: Thu, 21 Jul 2022 18:50:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E5=8A=9F=E8=83=BD=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/chjyj/szwh/mapper/OrderMapper.java | 11 +++ .../szwh/service/impl/IndexServiceImpl.java | 85 +++++++++++++++++-- .../resources/mapper/szwh/GoodsMapper.xml | 1 + .../resources/mapper/szwh/OrderMapper.xml | 8 ++ 4 files changed, 99 insertions(+), 6 deletions(-) diff --git a/src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java b/src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java index b005e8d..e1e1b81 100644 --- a/src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java +++ b/src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java @@ -90,4 +90,15 @@ public interface OrderMapper { * @return */ int countAllOrder(); + + /** + * 统计平台在某时间内的订单总额、服务费总额 + * @param startdt + * @param enddt + * @param field + * @return + */ + BigDecimal sumOderDtZone(@Param("startdt") String startdt, + @Param("enddt") String enddt, + @Param("field") String field); } diff --git a/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java b/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java index 66b6fb8..425c5d7 100644 --- a/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java +++ b/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java @@ -1,5 +1,6 @@ package cn.chjyj.szwh.service.impl; +import cn.chjyj.szwh.dto.OrderGoodsDetailDTO; import cn.chjyj.szwh.mapper.GoodsMapper; import cn.chjyj.szwh.mapper.OrderGoodsDetailMapper; import cn.chjyj.szwh.mapper.OrderMapper; @@ -128,11 +129,11 @@ public class IndexServiceImpl implements IndexService { // 查找对应的用户 String uislicode = gvo.getUser_islicode(); JSONObject userjson =SzwhApiUtils.getApiUser(uislicode); - JSONArray ujsonArray = userjson.getJSONArray("data"); - if(ujsonArray==null){ + JSONObject udata = userjson.getJSONObject("data"); + if(udata==null){ fmap.put("username",gvo.getUser_islicode()); }else { - fmap.put("username",ujsonArray.get(1)); + fmap.put("username",udata.getString("name")); } fmap.put("count",gvo.getCcount()); entrustRanking.add(fmap); @@ -140,9 +141,81 @@ public class IndexServiceImpl implements IndexService { result.put("entrust_ranking",entrustRanking); //委托方销售排序 - result.put("entrust_sale_ranking",goodsCount); - result.put("treeMap",goodsCount); - result.put("label",goodsCount); + String[] saleRankDtzone=new String[2]; + if(saleRankingDate=="year"){ + saleRankDtzone[0]=last5years; + }else{ + saleRankDtzone[0]=lastyear; + } + saleRankDtzone[1]=nowtime; + List entrustSaleRankingList=new ArrayList(); + List ogddtolist = orderGoodsDetailMapper.orderGoodsDetailDTOList(saleRankDtzone[0],saleRankDtzone[1]); + // todo 非空? + for(OrderGoodsDetailDTO ogdt:ogddtolist){ + Map esmap =new HashMap(); + JSONObject userjson =SzwhApiUtils.getApiUser(ogdt.getEntrust_islicode()); + JSONObject udata = userjson.getJSONObject("data"); + if(udata==null){ + esmap.put("username",ogdt.getEntrust_islicode()); + }else { + esmap.put("username",udata.getString("name")); + } + esmap.put("total_money",ogdt.getTotalMoney()); + entrustSaleRankingList.add(esmap); + } + result.put("entrust_sale_ranking",entrustSaleRankingList); + + //统计图 + List treeMapList = new ArrayList(); + List labelList = new ArrayList(); //条形图标签名称 + if("year".equals(leftDate)){ //年 + // 重新初始化日历 + Calendar ncal = Calendar.getInstance(); + ncal.getTime(); + // 日历中取到今年的年份 + int year = ncal.get(Calendar.YEAR); + // 订单金额 + String[] tarr = new String[5]; + //标的价款总额 + String[] bdarr=new String[5]; + // 数组索引从0 开始 + for (int i=4;i>=0;i--){ + labelList.add((year-i)+"年"); + tarr[i]=i+""; + bdarr[i]=i+""; + } + // 订单金额总数 + List ftlist =new ArrayList(); + ftlist.add(Arrays.asList(tarr)); + Map tmp =new HashMap(); + tmp.put("data",ftlist); + tmp.put("label","订单金额总额"); + treeMapList.add(tmp); + //标的金额 + List bdlist = new ArrayList(); + bdlist.add(Arrays.asList(bdarr)); + Map bdmap =new HashMap(); + bdmap.put("data",bdlist); + bdmap.put("label","标的金额"); + treeMapList.add(bdmap); + } + + result.put("treeMap",treeMapList); + result.put("label",labelList); return result; } + + /** + * 查询制定日期内的交易额 成交额 - 服务费 =订单额度 + * @param startdt + * @param enddt + * @return + */ + private String[] getDateMomeny(String startdt,String enddt){ + BigDecimal dealMoney = orderMapper.sumOderDtZone(startdt,enddt,"total_money");//成交额 + BigDecimal platServiceFee=orderMapper.sumOderDtZone(startdt,enddt,"total_service_charge");//平台服务费 + BigDecimal oderMoney=dealMoney.subtract(platServiceFee); + String[] dm = {dealMoney.toString(),oderMoney.toString()}; + return dm; + } } diff --git a/src/main/resources/mapper/szwh/GoodsMapper.xml b/src/main/resources/mapper/szwh/GoodsMapper.xml index 7bfdb33..80e4fab 100644 --- a/src/main/resources/mapper/szwh/GoodsMapper.xml +++ b/src/main/resources/mapper/szwh/GoodsMapper.xml @@ -134,6 +134,7 @@ AND is_deleted=0 GROUP BY user_islicode ORDER BY ccount DESC + LIMIT 10 diff --git a/src/main/resources/mapper/szwh/OrderMapper.xml b/src/main/resources/mapper/szwh/OrderMapper.xml index ce1409a..b1f961e 100644 --- a/src/main/resources/mapper/szwh/OrderMapper.xml +++ b/src/main/resources/mapper/szwh/OrderMapper.xml @@ -97,6 +97,14 @@ where ${cmap.wherestr}; + + + insert into