123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409 |
- package com.ydd.web.controller;
- import com.alibaba.fastjson.JSONArray;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
- import com.ydd.common.annotation.Log;
- import com.ydd.common.core.controller.BaseController;
- import com.ydd.common.core.domain.Result;
- import com.ydd.common.core.domain.entity.SysUser;
- import com.ydd.common.enums.BusinessType;
- import com.ydd.common.enums.UserTypeEnums;
- import com.ydd.common.utils.DateUtils;
- import com.ydd.module.domain.*;
- import com.ydd.module.dto.EChartsDto;
- import com.ydd.module.enums.DeliveryStatusEnum;
- import com.ydd.module.enums.ListSizeEnum;
- import com.ydd.module.service.*;
- import lombok.RequiredArgsConstructor;
- import org.apache.commons.compress.utils.Lists;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import java.math.BigDecimal;
- import java.math.RoundingMode;
- import java.text.SimpleDateFormat;
- import java.util.*;
- import java.util.stream.Collectors;
- /**
- * 首页Controller
- *
- * @author douya
- * @date 2021-03-17
- */
- @RequiredArgsConstructor(onConstructor_ = @Autowired)
- @RestController
- @RequestMapping("/module/home")
- public class HomeController extends BaseController {
- private final IProfitsAgentService iProfitsAgentService;
- private final IProfitsDspService iProfitsDspService;
- private final IProfitsMerchantService iProfitsMerchantService;
- private final IWaimaiOrderService iWaimaiOrderService;
- private final IOrderService iOrderService;
- private final IDspWaimaiService iDspWaimaiService;
- private final IMerchantService iMerchantService;
- private final IAgentService iAgentService;
- private final INoticeService iNoticeService;
- private final IMessageService iMessageService;
- private final IDspTextConfigService iDspTextConfigService;
- private final IProfitsDetailService iProfitsDetailService;
- private final IShopService iShopService;
- @GetMapping("/right/data")
- @Log(title = "首页右侧的数据", businessType = BusinessType.EXPORT)
- public Result rightData() {
- List<Notice> noticeList = iNoticeService.selectFive();
- Message message = iMessageService.selectNew();
- Integer dspId = null;
- SysUser user = getSysUser();
- if (user.getDspId() != null){
- dspId = user.getDspId().intValue();
- }
- List<DspTextConfig> kefuInfo = iDspTextConfigService.selectKeFuInfo(dspId);
- Map map = new HashMap();
- map.put("noticeList", noticeList);
- map.put("message", message);
- map.put("kefuInfo", kefuInfo);
- return Result.success(map);
- }
- @GetMapping("/dataInfo")
- public Result dataInfo() {
- SysUser user = getSysUser();
- List<Map<String, Object>> list = new ArrayList<>();
- SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- List<Long> agentIds = iAgentService.listAgent(user.getAgentId());
- List<Long> merchantIds = iMerchantService.findMerchantIdByAgentId(agentIds);
- List<Long> shopIds = Lists.newArrayList();
- if (CollectionUtils.isNotEmpty(merchantIds)) {
- shopIds = iShopService.findShopIdByMerchantId(merchantIds);
- }
- for (int i = 1; i < 3; i++) {
- Map<String, Object> map = new HashMap<>();
- String todayStartDate = DateUtils.parseToBeginTime(dft.format(new Date()));
- if (i == 2) {
- Date beginDate = new Date();
- Calendar date = Calendar.getInstance();
- date.setTime(beginDate);
- date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);
- String yesStartDate = DateUtils.parseToBeginTime(dft.format(date.getTime()));
- String yesEndDate = DateUtils.parseToTomorrowBeginTime(dft.format(date.getTime()));
- map.put("commission", iProfitsAgentService.selectCommissionByAgentId(user.getAgentId(), yesStartDate, yesEndDate));
- map.put("agentNum", iAgentService.getSAgentNum(user.getAgentId().intValue(), todayStartDate));
- map.put("merchantNum", iMerchantService.getMerchantNum(user.getAgentId().intValue(), todayStartDate));
- } else {
- // BigDecimal commission = iProfitsDetailService.countBigDecimal(user.getAgentId(), null);
- List<Double> commissions = iProfitsDetailService.getProfitCommissionList(user.getAgentId(), null);
- double commissionDouble = commissions.stream().collect(Collectors.summarizingDouble(value -> value)).getSum();
- BigDecimal commission = BigDecimal.valueOf(commissionDouble).setScale(2, BigDecimal.ROUND_HALF_UP);
- map.put("commission", commission);
- map.put("agentNum", iAgentService.getSAgentNum(user.getAgentId().intValue(), null));
- map.put("merchantNum", iMerchantService.getMerchantNum(user.getAgentId().intValue(), null));
- }
- if (agentIds.size() == ListSizeEnum.ZERO.getSize() || shopIds.size() == 0) {
- map.put("orderNum", 0);
- map.put("orderAmount", BigDecimal.ZERO);
- } else {
- map.put("orderNum", iOrderService.getOrderNum(shopIds, i == 1 ? null : todayStartDate));
- map.put("orderAmount", iOrderService.getOrderAmount(shopIds, i == 1 ? null : todayStartDate));
- }
- list.add(map);
- }
- } else {
- String todayStartDate = DateUtils.parseToBeginTime(dft.format(new Date()));
- for (int i = 1; i < 3; i++) {
- Map<String, Object> map = new HashMap<>();
- if (i == 2) {
- ProfitsDsp profitsDsp = iProfitsDspService.selectCommissionByAgentId(todayStartDate);
- BigDecimal commission = profitsDsp.getMeituanCommission().add(profitsDsp.getShansongCommission())
- .add(profitsDsp.getShunfengCommission()).add(profitsDsp.getDadaCommission())
- .add(profitsDsp.getFengniaoCommission()).add(profitsDsp.getUuptCommission())
- .add(profitsDsp.getAptCommission()).add(profitsDsp.getKuaifuCommission())
- .add(profitsDsp.getDadayzCommission()).add(profitsDsp.getHuolalaCommission())
- .add(profitsDsp.getFengniaoPtCommission());
- map.put("commission", commission);
- } else {
- List<Double> commissions = iProfitsDetailService.getProfitCommissionList(null, user.getDspId());
- double commissionDouble = commissions.stream().collect(Collectors.summarizingDouble(value -> value)).getSum();
- BigDecimal commission = BigDecimal.valueOf(commissionDouble).setScale(2, BigDecimal.ROUND_HALF_UP);
- // BigDecimal commission = iProfitsDetailService.countBigDecimal(null, user.getDspId());
- map.put("commission", commission);
- }
- int agentCount = iAgentService.count(new QueryWrapper<Agent>()
- .ge(i == 2, "create_time", todayStartDate)
- .eq("deleted", 0));
- map.put("agentNum", agentCount);
- int merchantCount = iMerchantService.count(new QueryWrapper<Merchant>()
- .ge(i == 2, "create_time", todayStartDate)
- .eq("deleted", 0));
- map.put("merchantNum", merchantCount);
- int orderCount = iOrderService.count(new QueryWrapper<Order>()
- .ge(i == 2, "create_time", todayStartDate)
- .eq("delivery_status", DeliveryStatusEnum.FINISH.status)
- .eq("deleted", 0));
- map.put("orderNum", orderCount);
- map.put("orderAmount", iOrderService.getOrderAmount(null, i == 1 ? null : todayStartDate));
- list.add(map);
- }
- }
- return Result.success(list);
- }
- @GetMapping("/profit/trend")
- @Log(title = "收益趋势", businessType = BusinessType.EXPORT)
- public Result trend() {
- SysUser user = getSysUser();
- List<EChartsDto> list;
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- list = iProfitsAgentService.getProfitTrend(user.getAgentId().intValue());
- } else {
- list = iProfitsDspService.getProfitTrend(user.getDspId());
- }
- return Result.success(list);
- }
- @GetMapping("/profit/topTen")
- @Log(title = "贡献收益top10", businessType = BusinessType.EXPORT)
- public Result topTen() {
- SysUser user = getSysUser();
- List<EChartsDto> list;
- //平台看代理商,代理商看商户
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- list = iProfitsMerchantService.topTen(user.getAgentId().intValue());
- } else {
- list = iProfitsAgentService.topTen();
- }
- return Result.success(list);
- }
- @GetMapping("/delivery/profitProportion")
- @Log(title = "各配送平台收益占比", businessType = BusinessType.EXPORT)
- public Result profitProportion() {
- SysUser user = getSysUser();
- Map map = new HashMap();
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- ProfitsAgent profitsAgent = iProfitsAgentService.profitProportion(user.getAgentId().intValue());
- map.put("meituan", profitsAgent.getMeituanAmount());
- map.put("shansong", profitsAgent.getShansongAmount());
- map.put("shunfeng", profitsAgent.getShunfengAmount());
- map.put("dada", profitsAgent.getDadaAmount());
- map.put("fengniao", profitsAgent.getFengniaoAmount());
- map.put("uupt", profitsAgent.getUuptAmount());
- map.put("apt", profitsAgent.getAptAmount());
- map.put("dadayz", profitsAgent.getDadayzAmount());
- map.put("kuaifu", profitsAgent.getKuaifuAmount());
- map.put("huolala", profitsAgent.getHuolalaAmount());
- map.put("meituanzb", profitsAgent.getMeituanzbAmount());
- map.put("fengniaopt", profitsAgent.getFengniaoPtAmount());
- BigDecimal total = profitsAgent.getMeituanAmount().add(profitsAgent.getShansongAmount())
- .add(profitsAgent.getShunfengAmount()).add(profitsAgent.getDadaAmount())
- .add(profitsAgent.getFengniaoAmount()).add(profitsAgent.getUuptAmount())
- .add(profitsAgent.getAptAmount()).add(profitsAgent.getDadayzAmount())
- .add(profitsAgent.getKuaifuAmount()).add(profitsAgent.getHuolalaAmount()
- .add(profitsAgent.getMeituanzbAmount()).add(profitsAgent.getFengniaoPtAmount()));
- map.put("total", total);
- if (total.compareTo(BigDecimal.ZERO) == 0) {
- map.put("meituanProportion", 0);
- map.put("shansongProportion", 0);
- map.put("shunfengProportion", 0);
- map.put("dadaProportion", 0);
- map.put("fengniaoProportion", 0);
- map.put("uuptProportion", 0);
- map.put("aptProportion", 0);
- map.put("dadayzProportion", 0);
- map.put("kuaifuProportion", 0);
- map.put("huolalaProportion", 0);
- map.put("meituanzbProportion", 0);
- map.put("fengniaoptProportion", 0);
- } else {
- // map.put("meituanProportion", profitsAgent.getMeituanAmount().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("shansongProportion", profitsAgent.getShansongAmount().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("shunfengProportion", profitsAgent.getShunfengAmount().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("dadaProportion", profitsAgent.getDadaAmount().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("fengniaoProportion", profitsAgent.getFengniaoAmount().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- map.put("meituanProportion", profitsAgent.getMeituanAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("shansongProportion", profitsAgent.getShansongAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("shunfengProportion", profitsAgent.getShunfengAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("dadaProportion", profitsAgent.getDadaAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("fengniaoProportion", profitsAgent.getFengniaoAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("uuptProportion", profitsAgent.getUuptAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("aptProportion", profitsAgent.getAptAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("dadayzProportion", profitsAgent.getDadayzAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("kuaifuProportion", profitsAgent.getKuaifuAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("huolalaProportion", profitsAgent.getHuolalaAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("meituanzbProportion", profitsAgent.getMeituanzbAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("fengniaoptProportion", profitsAgent.getFengniaoPtAmount().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- }
- } else {
- ProfitsDsp profitsDsp = iProfitsDspService.profitProportion();
- map.put("meituan", profitsDsp.getMeituanCommission());
- map.put("shansong", profitsDsp.getShansongCommission());
- map.put("shunfeng", profitsDsp.getShunfengCommission());
- map.put("dada", profitsDsp.getDadaCommission());
- map.put("fengniao", profitsDsp.getFengniaoCommission());
- map.put("uupt", profitsDsp.getUuptCommission());
- map.put("apt", profitsDsp.getAptCommission());
- map.put("dadayz", profitsDsp.getDadayzCommission());
- map.put("kuaifu", profitsDsp.getKuaifuCommission());
- map.put("huolala", profitsDsp.getHuolalaAmount());
- map.put("meituanzb", profitsDsp.getHuolalaAmount());
- map.put("fengniaopt", profitsDsp.getFengniaoPtAmount());
- BigDecimal total = profitsDsp.getMeituanCommission().add(profitsDsp.getShansongCommission())
- .add(profitsDsp.getShunfengCommission()).add(profitsDsp.getDadaCommission())
- .add(profitsDsp.getFengniaoCommission()).add(profitsDsp.getUuptCommission())
- .add(profitsDsp.getAptCommission()).add(profitsDsp.getDadayzCommission())
- .add(profitsDsp.getKuaifuCommission()).add(profitsDsp.getHuolalaCommission()
- .add(profitsDsp.getMeituanzbCommission()).add(profitsDsp.getFengniaoPtCommission()));
- map.put("total", total);
- if (total.compareTo(BigDecimal.ZERO) == 0) {
- map.put("meituanProportion", 0);
- map.put("shansongProportion", 0);
- map.put("shunfengProportion", 0);
- map.put("dadaProportion", 0);
- map.put("fengniaoProportion", 0);
- map.put("uuptProportion", 0);
- map.put("aptProportion", 0);
- map.put("dadayzProportion", 0);
- map.put("kuaifuProportion", 0);
- map.put("huolalaProportion", 0);
- map.put("meituanzbProportion", 0);
- map.put("fengniaoptProportion", 0);
- } else {
- // map.put("meituanProportion", profitsDsp.getMeituanCommission().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("shansongProportion", profitsDsp.getShansongCommission().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("shunfengProportion", profitsDsp.getShunfengCommission().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("dadaProportion", profitsDsp.getDadaCommission().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- // map.put("fengniaoProportion", profitsDsp.getFengniaoCommission().divide(total, 2, RoundingMode.DOWN).multiply(new BigDecimal("100")).setScale(2, RoundingMode.DOWN));
- map.put("meituanProportion", profitsDsp.getMeituanCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("shansongProportion", profitsDsp.getShansongCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("shunfengProportion", profitsDsp.getShunfengCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("dadaProportion", profitsDsp.getDadaCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("fengniaoProportion", profitsDsp.getFengniaoCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("uuptProportion", profitsDsp.getUuptCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("aptProportion", profitsDsp.getAptCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("dadayzProportion", profitsDsp.getDadayzCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("kuaifuProportion", profitsDsp.getKuaifuCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("huolalaProportion", profitsDsp.getHuolalaCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("meituanzbProportion", profitsDsp.getMeituanzbCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- map.put("fengniaoptProportion", profitsDsp.getFengniaoPtCommission().divide(total, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
- }
- }
- return Result.success(map);
- }
- @GetMapping("/waimai/orderAmount")
- @Log(title = "外卖订单金额占比", businessType = BusinessType.EXPORT)
- public Result waimaiOrderAmount() {
- SysUser user = getSysUser();
- Map<String, Object> map = new HashMap<>();
- //返回金额
- /*BigDecimal meituanAmount = BigDecimal.ZERO;
- BigDecimal elemeAmount = BigDecimal.ZERO;
- BigDecimal ebaiAmount = BigDecimal.ZERO;
- BigDecimal meituanSgAmount = BigDecimal.ZERO;
- //返回金额占比
- BigDecimal meituanAmountProportion = BigDecimal.ZERO;
- BigDecimal elemeAmountProportion = BigDecimal.ZERO;
- BigDecimal ebaiAmountProportion = BigDecimal.ZERO;
- BigDecimal meituanSgAmountProportion = BigDecimal.ZERO;
- List<WaimaiOrderRateDto> waimaiOrderRateDtoList = Lists.newArrayList();
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- List<Long> longs = iAgentService.listAgent(user.getAgentId());
- List<Integer> merchantIds = iMerchantService.findIdsByAgentIdLists(longs);
- if (CollectionUtils.isNotEmpty(merchantIds)) {
- waimaiOrderRateDtoList = iWaimaiOrderService.getOrderByMerchantIds(merchantIds);
- }
- } else {
- waimaiOrderRateDtoList = iWaimaiOrderService.getOrderByMerchantIds(null);
- }
- if (CollectionUtils.isNotEmpty(waimaiOrderRateDtoList)) {
- DspWaimai meituanDsp = iDspWaimaiService.findOne(WaimaiTypeEnums.MEI_TUAN.getType());
- DspWaimai elemeDsp = iDspWaimaiService.findOne(WaimaiTypeEnums.E_LE_ME.getType());
- DspWaimai elemeRetailDsp = iDspWaimaiService.findOne(WaimaiTypeEnums.E_LE_ME_RETAIL.getType());
- DspWaimai meituanSgDsp = iDspWaimaiService.findOne(WaimaiTypeEnums.MEI_TUAN_SG.getType());
- Long meituanId = meituanDsp == null ? null : meituanDsp.getId();
- Long elemeId = elemeDsp == null ? null : elemeDsp.getId();
- Long ebaiId = elemeRetailDsp == null ? null : elemeRetailDsp.getId();
- Long meituanSgId = meituanSgDsp == null ? null : meituanSgDsp.getId();
- double meituanAmountDouble = waimaiOrderRateDtoList.stream().filter(item -> meituanId != null && meituanId.equals(item.getWaimaiId())).mapToDouble(WaimaiOrderRateDto::getOriginalPrice).sum();
- meituanAmount = BigDecimal.valueOf(meituanAmountDouble);
- double elemeAmountDouble = waimaiOrderRateDtoList.stream().filter(item -> elemeId != null && elemeId.equals(item.getWaimaiId())).mapToDouble(WaimaiOrderRateDto::getOriginalPrice).sum();
- elemeAmount = BigDecimal.valueOf(elemeAmountDouble);
- double ebaiAmountDouble = waimaiOrderRateDtoList.stream().filter(item -> ebaiId != null && ebaiId.equals(item.getWaimaiId())).mapToDouble(WaimaiOrderRateDto::getOriginalPrice).sum();
- ebaiAmount = BigDecimal.valueOf(ebaiAmountDouble);
- double meituanSgAmountDouble = waimaiOrderRateDtoList.stream().filter(item -> meituanSgId != null && meituanSgId.equals(item.getWaimaiId())).mapToDouble(WaimaiOrderRateDto::getOriginalPrice).sum();
- meituanSgAmount = BigDecimal.valueOf(meituanSgAmountDouble);
- }
- BigDecimal totalAmount = meituanAmount.add(elemeAmount).add(ebaiAmount).add(meituanSgAmount);
- // 占比计算
- if (totalAmount.compareTo(BigDecimal.ZERO) > 0) {
- meituanAmountProportion = meituanAmount.divide(totalAmount, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
- elemeAmountProportion = elemeAmount.divide(totalAmount, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
- ebaiAmountProportion = ebaiAmount.divide(totalAmount, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
- meituanSgAmountProportion = meituanSgAmount.divide(totalAmount, 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
- }
- map.put("meituanAmount", meituanAmountProportion);
- map.put("elemeAmount", elemeAmountProportion);
- map.put("ebaiAmount", ebaiAmountProportion);
- map.put("meituanSgAmount", meituanSgAmountProportion);*/
- // 查询影响效率, 耗时较长, 暂写定值(2022-01-28)
- int orderCount = 0;
- if (user.getType().equals(UserTypeEnums.AGENT.getCode())) {
- List<Long> agentIds = iAgentService.listAgent(user.getAgentId());
- if (CollectionUtils.isNotEmpty(agentIds)) {
- List<Long> merchantIds = iMerchantService.findMerchantIdByAgentId(agentIds);
- if (CollectionUtils.isNotEmpty(merchantIds)) {
- List<Long> shopIds = iShopService.findShopIdByMerchantId(merchantIds);
- orderCount = iOrderService.count(new QueryWrapper<Order>()
- .eq("delivery_status", DeliveryStatusEnum.FINISH.status)
- .in("shop_id", shopIds));
- }
- }
- } else {
- orderCount = iOrderService.count(new QueryWrapper<Order>()
- .eq("delivery_status", DeliveryStatusEnum.FINISH.status));
- }
- if (orderCount > 0) {
- map.put("meituanAmount", 68);
- map.put("elemeAmount", 18);
- map.put("ebaiAmount", 13);
- map.put("meituanSgAmount", 1);
- map.put("jdHomeAmount", 0);
- } else {
- map.put("meituanAmount", 0);
- map.put("elemeAmount", 0);
- map.put("ebaiAmount", 0);
- map.put("meituanSgAmount", 0);
- map.put("jdHomeAmount", 0);
- }
- return Result.success(map);
- }
- }
|