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 425c5d7..a45f4cd 100644 --- a/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java +++ b/src/main/java/cn/chjyj/szwh/service/impl/IndexServiceImpl.java @@ -7,8 +7,9 @@ import cn.chjyj.szwh.mapper.OrderMapper; import cn.chjyj.szwh.service.IndexService; import cn.chjyj.szwh.utils.SzwhApiUtils; import cn.chjyj.szwh.vo.GoodsDetailVo; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -18,6 +19,7 @@ import java.util.*; @Service public class IndexServiceImpl implements IndexService { + private static Log log = LogFactory.getLog(IndexServiceImpl.class); @Autowired private GoodsMapper goodsMapper; @Autowired @@ -174,26 +176,29 @@ public class IndexServiceImpl implements IndexService { ncal.getTime(); // 日历中取到今年的年份 int year = ncal.get(Calendar.YEAR); - // 订单金额 - String[] tarr = new String[5]; - //标的价款总额 - String[] bdarr=new String[5]; + // 订单金额总数 + List ftlist =new ArrayList(); + //标的金额 + List bdlist = new ArrayList(); // 数组索引从0 开始 for (int i=4;i>=0;i--){ - labelList.add((year-i)+"年"); - tarr[i]=i+""; - bdarr[i]=i+""; + int nyear=year-i; + String startdt = nyear+"-01-01 00:00:00"; + String enddt = nyear+"-12-31 23:59:59"; + //echarts 图标标签 + labelList.add(nyear+"年"); + BigDecimal[] rest = getDateMomeny(startdt,enddt); + // 订单金额 + ftlist.add(rest[0]); + // 标的 + bdlist.add(rest[1]); } - // 订单金额总数 - 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","标的金额"); @@ -211,11 +216,31 @@ public class IndexServiceImpl implements IndexService { * @param enddt * @return */ - private String[] getDateMomeny(String startdt,String enddt){ + private BigDecimal[] getDateMomeny(String startdt,String enddt){ + // + SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); + try { + String curyear = sdf.parse(startdt).toString(); + + 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; + + BigDecimal dm=(dealMoney==null)?new BigDecimal(0.00):dealMoney; + log.info(curyear+"订单总额 :"+dm.toString()); + BigDecimal pfee=platServiceFee==null?new BigDecimal(0.00):platServiceFee; + + BigDecimal oderMoney=null; + if(dm.compareTo(pfee)==1) { + oderMoney= dm.subtract(pfee); + } + + BigDecimal[] dmarr = {dm,oderMoney}; + return dmarr; + }catch (Exception ex){ + log.warn(ex); + } + BigDecimal[] dmarr = {new BigDecimal(0),new BigDecimal(0)}; + return dmarr; } }