提交 50f11b28 authored 作者: 吴德鹏's avatar 吴德鹏

首页统计

上级 ce41ce8e
......@@ -294,7 +294,7 @@ public class TbCfOrderController extends AbstractController {
public R getOrderByDate(@RequestParam(value = "start", required = false) String start,
@RequestParam(value = "end", required = false) String end,
@RequestParam(value = "flag", required = false) String flag) {
List<StatisticalVo> orderList = tbCfOrderListService.getOrderByDate(start, end,flag);
List<StatisticalVo> orderList = tbCfOrderListService.getOrderByDate(start, end, flag);
return R.ok().put("list", orderList);
}
......@@ -303,7 +303,7 @@ public class TbCfOrderController extends AbstractController {
public R getOrderPaidByDate(@RequestParam(value = "start", required = false) String start,
@RequestParam(value = "end", required = false) String end,
@RequestParam(value = "flag", required = false) String flag) {
List<StatisticalVo> orderList = tbCfOrderListService.getOrderPaidByDate(start, end,flag);
List<StatisticalVo> orderList = tbCfOrderListService.getOrderPaidByDate(start, end, flag);
return R.ok().put("list", orderList);
}
......@@ -336,6 +336,21 @@ public class TbCfOrderController extends AbstractController {
int dayOrderNum = tbCfOrderService.getDayOrderNum();
return R.ok().put("dayOrderNum", dayOrderNum);
}
@GetMapping("/getWeekCompared")
@ResponseBody
public R getWeekCompared() {
BigDecimal weekCompared = tbCfOrderService.getWeekCompared();
return R.ok().put("weekCompared", weekCompared);
}
@GetMapping("/getDaysFrom")
@ResponseBody
public R getDaysFrom() {
String dayRate = tbCfOrderService.getDaysFrom();
return R.ok().put("dayRate", dayRate);
}
//==========================================================================================================
/**
......
......@@ -117,7 +117,7 @@ public class TbCfUserInfoController {
*/
@ResponseBody
@GetMapping("/getDailyRegistered")
public R getDailyRegistered(@RequestParam(value = "flag",required = false) String flag) {
public R getDailyRegistered(@RequestParam(value = "flag", required = false) String flag) {
List<StatisticalVo> userList = tbCfUserInfoService.getDailyRegistered(flag);
return R.ok().put("list", userList);
}
......@@ -156,4 +156,11 @@ public class TbCfUserInfoController {
List<StatisticalVo> userList = tbCfUserInfoService.getRegisteredByDate(start, end);
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getDayRate")
public R getDayRate() {
String rate = tbCfUserInfoService.getDayRate();
return R.ok().put("rate", rate);
}
}
......@@ -86,9 +86,9 @@ public interface TbCfOrderDao extends BaseDao<TbCfOrderEntity> {
//根据订单付款状态查询订单数量
int queryPayCount(String payStatus);
List<StatisticalVo> getOrderByDate(@Param("start") String start, @Param("end") String end,@Param("flag") String flag);
List<StatisticalVo> getOrderByDate(@Param("start") String start, @Param("end") String end, @Param("flag") String flag);
List<StatisticalVo> getOrderPaidByDate(@Param("start") String start, @Param("end") String end,@Param("flag") String flag);
List<StatisticalVo> getOrderPaidByDate(@Param("start") String start, @Param("end") String end, @Param("flag") String flag);
Long getOrderNum(@Param("status") String status);
......@@ -98,4 +98,12 @@ public interface TbCfOrderDao extends BaseDao<TbCfOrderEntity> {
int getDayOrderNum();
BigDecimal getWeekAmount();
BigDecimal getLastWeekAmount();
Double getTodayAmount();
Double getYesterdayAmount();
}
......@@ -34,4 +34,8 @@ public interface TbCfUserInfoDao extends BaseDao<TbCfUserInfoEntity> {
List<StatisticalVo> getYearRegistered();
List<StatisticalVo> getRegisteredByDate(@Param("start") String start, @Param("end") String end);
int getYesterdayRegistered();
int getTodayRegistered();
}
......@@ -73,6 +73,7 @@ public interface TbCfOrderService {
/**
* 获取订单中的商品
*
* @param orderId
* @return
*/
......@@ -80,6 +81,7 @@ public interface TbCfOrderService {
/**
* 获取订单的代购信息
*
* @param orderId
* @return
*/
......@@ -87,6 +89,7 @@ public interface TbCfOrderService {
/**
* 新增或者修改代购信息
*
* @param tbCfPlatformOrder
* @return
*/
......@@ -94,6 +97,7 @@ public interface TbCfOrderService {
/**
* 根据订单id查询商品详情
*
* @param orderId
* @return
*/
......@@ -117,4 +121,8 @@ public interface TbCfOrderService {
BigDecimal getOrderSumAmount();
int getDayOrderNum();
BigDecimal getWeekCompared();
String getDaysFrom();
}
......@@ -88,4 +88,6 @@ public interface TbCfUserInfoService {
List<StatisticalVo> getYearRegistered();
List<StatisticalVo> getRegisteredByDate(String start, String end);
String getDayRate();
}
......@@ -15,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.*;
/**
......@@ -202,4 +203,39 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
return tbCfOrderDao.getDayOrderNum();
}
@Override
public BigDecimal getWeekCompared() {
BigDecimal weekCompared;
//本周销售额
BigDecimal weekAmount = tbCfOrderDao.getWeekAmount();
//上周销售额
BigDecimal lastWeekAmount = tbCfOrderDao.getLastWeekAmount();
if (weekAmount.compareTo(BigDecimal.ZERO) == 0 || lastWeekAmount.compareTo(BigDecimal.ZERO) == 0) {
weekCompared = BigDecimal.ZERO;
return weekCompared;
}
//计算周同比
weekCompared = (weekAmount.subtract(lastWeekAmount)).divide(lastWeekAmount)
.multiply(new BigDecimal(100))
.setScale(2, BigDecimal.ROUND_UP);
return weekCompared;
}
@Override
public String getDaysFrom() {
Double dayRate = 0d;
DecimalFormat dcmFmt = new DecimalFormat("0.00");
//今日销售额
Double todayAmount = tbCfOrderDao.getTodayAmount();
//昨日销售额
Double yesterdayAmount = tbCfOrderDao.getYesterdayAmount();
if (todayAmount == 0 || yesterdayAmount == 0) {
return dcmFmt.format(dayRate);
}
dayRate = (todayAmount - yesterdayAmount) / yesterdayAmount * 100;
return dcmFmt.format(dayRate);
}
}
......@@ -8,6 +8,7 @@ import com.platform.vo.StatisticalVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.DecimalFormat;
import java.util.List;
import java.util.Map;
......@@ -109,4 +110,21 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
return tbCfUserInfoDao.getRegisteredByDate(start, end);
}
@Override
public String getDayRate() {
Double rate = 0d;
DecimalFormat dcmFmt = new DecimalFormat("0.00");
//今日注册量
int dayRegistered = tbCfUserInfoDao.getTodayRegistered();
//昨日注册量
int yesterdayRegistered = tbCfUserInfoDao.getYesterdayRegistered();
if (dayRegistered == 0 || yesterdayRegistered == 0) {
return dcmFmt.format(rate);
}
rate = (dayRegistered - yesterdayRegistered) / yesterdayRegistered * 100d;
return dcmFmt.format(rate);
}
}
......@@ -151,6 +151,26 @@
WHERE
pay_status = 20
</select>
<!--本周销售额-->
<select id="getWeekAmount" resultType="java.math.BigDecimal">
SELECT
IFNULL( sum( total_price ), 0 ) sum
FROM
tb_cf_order
WHERE
yearweek( date_format( order_time, '%Y-%m-%d' ) ) = yearweek( now( ) )
AND pay_status = 20;
</select>
<!--上周销售额-->
<select id="getLastWeekAmount" resultType="java.math.BigDecimal">
SELECT
IFNULL( sum( total_price ), 0 ) sum
FROM
tb_cf_order
WHERE
yearweek( date_format( order_time, '%Y-%m-%d' ) ) = yearweek( now( ) ) - 1
AND pay_status = 20;
</select>
<select id="getOrderSumAmount" resultType="java.math.BigDecimal">
SELECT
sum( total_price )
......@@ -159,6 +179,25 @@
WHERE
pay_status = 20
</select>
<select id="getTodayAmount" resultType="Double">
SELECT
IFNULL( sum( total_price ), 0 ) sum
FROM
tb_cf_order
WHERE
pay_status = 20
AND DATE_FORMAT( order_time, '%Y-%m-%d' ) = CURDATE( )
</select>
<select id="getYesterdayAmount" resultType="Double">
SELECT
IFNULL( sum( total_price ), 0 ) sum
FROM
tb_cf_order
WHERE
pay_status = 20
AND DATEDIFF( now( ), order_time ) = 1
</select>
<select id="queryList" resultType="com.platform.entity.TbCfOrderEntity">
select
i.order_item_id ordersId,
......
......@@ -70,7 +70,24 @@
GROUP BY
date
</select>
<!--查询当天注册量-->
<select id="getTodayRegistered" resultType="int">
SELECT
count( 1 ) sum
FROM
tb_cf_user_info
WHERE
DATE_FORMAT( create_time, '%Y-%m-%d' ) = CURDATE( )
</select>
<!--昨天的注册量-->
<select id="getYesterdayRegistered" resultType="int">
SELECT
count( 1 ) num
FROM
tb_cf_user_info
WHERE
DATEDIFF( now( ), create_time ) = 1
</select>
<!--查询当天注册数据-->
<select id="getDayRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
......
......@@ -451,7 +451,7 @@
<svg class="svg-icon desc-icon" xmlns="http://www.w3.org/2000/svg" version="1.1">
<path d="M5 0 L0 10 L10 10 Z" style="fill:green"/>
</svg>
<span>11%</span>
<span>{{dayRate}}%</span>
</div>
</div>
<div class="m-card-bottom">
......@@ -524,7 +524,7 @@
<svg class="svg-icon desc-icon" xmlns="http://www.w3.org/2000/svg" version="1.1">
<path d="M5 0 L0 10 L10 10 Z" style="fill:green"/>
</svg>
<span>11%</span>
<span>{{rate}}%</span>
</div>
</div>
</div>
......
......@@ -2,6 +2,8 @@ let app = new Vue({
el: '#app',
data() {
return {
rate: 0,
dayRate: 0,
flag: false,
show: false,
total: 0,
......@@ -422,6 +424,20 @@ let app = new Vue({
return res.count
})
},
getDayRate() {
$.get('../tbcforder/getDaysFrom', res => {
this.dayRate = res.dayRate
console.log('dayRate', res.dayRate)
})
},
getUserDayRate() {
$.get('../tbcfuserinfo/getDayRate', res => {
console.log('rate', JSON.parse(res).rate)
this.rate = JSON.parse(res).rate
})
},
/* 访问量 */
initEchartsPV() {
var app = echarts.init(document.getElementById('echartsPV'));
......@@ -851,6 +867,8 @@ let app = new Vue({
this.getCategory();
},
mounted() {
this.getDayRate();
this.getUserDayRate();
this.getSearchKeywords();
this.initEchartsPV();
this.initEchartsPayTheAmount();
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论