diff --git a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusSaleInfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusSaleInfoController.java index f18d8af..67ea004 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusSaleInfoController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusSaleInfoController.java @@ -1,7 +1,14 @@ package com.ruoyi.business.controller; import java.util.List; +import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.business.domain.BusStoreDayInfo; +import com.ruoyi.business.domain.BusStoreInfo; +import com.ruoyi.business.resp.RespBusStoreInfo; +import com.ruoyi.business.service.IBusStoreDayInfoService; +import com.ruoyi.business.service.IBusStoreInfoService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -34,6 +41,12 @@ public class BusSaleInfoController extends BaseController @Autowired private IBusSaleInfoService busSaleInfoService; + @Autowired + private IBusStoreInfoService iBusStoreInfoService; + + @Autowired + private IBusStoreDayInfoService iBusStoreDayInfoService; + /** * 查询店铺归属-销售人员统计列表 */ @@ -43,7 +56,30 @@ public class BusSaleInfoController extends BaseController { startPage(); List list = busSaleInfoService.selectBusSaleInfoList(busSaleInfo); - return getDataTable(list); + List tableList = list.stream() + .map(info -> { + BusStoreInfo busStoreInfo = new BusStoreInfo(); + busStoreInfo.setSaleBindId(info.getId()); + int count = 0; + List ll = iBusStoreInfoService.selectBusStoreInfoList(busStoreInfo); + for (BusStoreInfo b:ll) { + BusStoreDayInfo busStoreDayInfo = new BusStoreDayInfo(); + busStoreDayInfo.setStoreId(b.getId()); + List dayList = iBusStoreDayInfoService.selectBusStoreDayInfoList(busStoreDayInfo); + for (BusStoreDayInfo day: dayList){ + count = day.getLastFiveStarReviewsNum()+count; + } + } + info.setStoreNum(ll.size()); + info.setLastOrderNum(0); + info.setFiveStarReviewsNum(count); + info.setReturnVisitNum(0); + return info; + }) + .collect(Collectors.toList()); + tableList.forEach(System.out::println); + return getDataTable(tableList); +// return getDataTable(list); } @PreAuthorize("@ss.hasPermi('business:sale:list')") @@ -76,6 +112,22 @@ public class BusSaleInfoController extends BaseController return success(busSaleInfoService.selectBusSaleInfoById(id)); } + /** + * 新增店铺归属-销售人员统计 + */ + @PreAuthorize("@ss.hasPermi('business:sale:add')") + @Log(title = "店铺归属-销售人员统计", businessType = BusinessType.INSERT) + @PostMapping("/saveOrUpdateSale") + public AjaxResult saveOrUpdateSale(@RequestBody BusSaleInfo busSaleInfo) + { + int count = 0; + if(busSaleInfo.getId() == null){ + count = busSaleInfoService.insertBusSaleInfo(busSaleInfo); + }else{ + count = busSaleInfoService.updateBusSaleInfo(busSaleInfo); + } + return toAjax(count); + } /** * 新增店铺归属-销售人员统计 */ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusStoreInfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusStoreInfoController.java index d28fd63..954c1a5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusStoreInfoController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusStoreInfoController.java @@ -5,10 +5,12 @@ import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; import com.ruoyi.business.domain.BusStoreConfigInfo; +import com.ruoyi.business.domain.BusStoreDayInfo; import com.ruoyi.business.req.ReqBusStoreConfigInfo; import com.ruoyi.business.req.ReqBusStoreInfo; import com.ruoyi.business.resp.RespBusStoreInfo; import com.ruoyi.business.service.IBusStoreConfigInfoService; +import com.ruoyi.business.service.IBusStoreDayInfoService; import com.ruoyi.common.exception.ServiceException; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -48,6 +50,9 @@ public class BusStoreInfoController extends BaseController @Autowired private IBusStoreConfigInfoService iBusStoreConfigInfoService; + + @Autowired + private IBusStoreDayInfoService busStoreDayInfoService; /** * 查询店铺信息列表 */ @@ -65,14 +70,28 @@ public class BusStoreInfoController extends BaseController @PreAuthorize("@ss.hasPermi('business:store:list')") @GetMapping("/listA") public TableDataInfo listA(ReqBusStoreInfo reqBusStoreInfo) - { + {//new RespBusStoreInfo(busStoreInfo1) startPage(); BusStoreInfo busStoreInfo = new BusStoreInfo(); BeanUtils.copyProperties(reqBusStoreInfo, busStoreInfo); List list = busStoreInfoService.selectBusStoreInfoList(busStoreInfo); List tableList = list.stream() - .map(busStoreInfo1 -> new RespBusStoreInfo(busStoreInfo1)) + .map(busStoreInfo1 -> { + RespBusStoreInfo info = new RespBusStoreInfo(busStoreInfo1); + BusStoreDayInfo busStoreDayInfo = new BusStoreDayInfo(); + busStoreDayInfo.setStoreId(info.getId()); + List ll = busStoreDayInfoService.selectBusStoreDayInfoList(busStoreDayInfo); + info.setLastOrderNum(ll.get(0).getLastOrderNum()); + info.setLastPositiveReviewsNum(ll.get(0).getLastPositiveReviewsNum()); + info.setLastFiveStarReviewsNum(ll.get(0).getLastFiveStarReviewsNum()); + info.setLastReturnVisitNum(ll.get(0).getLastReturnVisitNum()); + info.setTodayReturnVisitNum(ll.get(0).getTodayReturnVisitNum()); + info.setScore(ll.get(0).getScore()); + info.setLastReturnVisitRate(ll.get(0).getLastReturnVisitRate()); + return info; + }) .collect(Collectors.toList()); + tableList.forEach(System.out::println); return getDataTable(tableList); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/business/resp/RespBusStoreInfo.java b/ruoyi-admin/src/main/java/com/ruoyi/business/resp/RespBusStoreInfo.java index 941527e..201a143 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/business/resp/RespBusStoreInfo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/business/resp/RespBusStoreInfo.java @@ -1,6 +1,7 @@ package com.ruoyi.business.resp; import com.ruoyi.business.domain.BusStoreInfo; +import com.ruoyi.common.annotation.Excel; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -82,6 +83,34 @@ public class RespBusStoreInfo { @ApiModelProperty(name = "绑定时间(创建)") private Date bindTime; + /** 昨日订单量 */ + @ApiModelProperty(name = "昨日订单量") + private int lastOrderNum; + + /** 昨日好评量 */ + @ApiModelProperty(name = "昨日好评量") + private int lastPositiveReviewsNum; + + /** 昨日五星量 */ + @ApiModelProperty(name = "昨日五星量") + private int lastFiveStarReviewsNum; + + /** 昨日回访量 */ + @ApiModelProperty(name = "昨日回访量") + private int lastReturnVisitNum; + + /** 昨日回访比50% */ + @ApiModelProperty(name = "昨日回访比50%") + private String lastReturnVisitRate; + + /** 今日回访量 */ + @ApiModelProperty(name = "今日回访量") + private int todayReturnVisitNum; + + /** 评分 */ + @Excel(name = "评分") + private String score; + public RespBusStoreInfo() { } diff --git a/ruoyi-ui/src/views/market/self/index.vue b/ruoyi-ui/src/views/market/self/index.vue index 181125b..dd4fc8a 100644 --- a/ruoyi-ui/src/views/market/self/index.vue +++ b/ruoyi-ui/src/views/market/self/index.vue @@ -158,13 +158,13 @@ - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + +