支付对账更新

This commit is contained in:
磷叶 2025-05-12 16:45:22 +08:00
parent f2c8e5b2d5
commit d5168b4c5d
8 changed files with 118 additions and 2 deletions

View File

@ -0,0 +1,8 @@
package com.ruoyi.bst.order.domain.query;
import lombok.Data;
@Data
public class OrderStatQuery {
}

View File

@ -0,0 +1,14 @@
package com.ruoyi.bst.reconciliationDate.constants;
public class ReconciliationDateConstants {
// 按日期分组
public static final String GROUP_BY_DATE = "brd.date";
// 按渠道分组
public static final String GROUP_BY_CHANNEL = "brd.date, brd.channel_id, brd.channel_name";
// 按运营区分组
public static final String GROUP_BY_AREA = "brd.date, brd.area_id, ba.name";
}

View File

@ -73,4 +73,12 @@ public interface ReconciliationDateMapper
* @return 结果
*/
public int deleteReconciliationDateByIds(Long[] ids);
/**
* 查询渠道对账列表按指定字段分组
* @param query 查询条件
* @param groupBy 分组字段
* @return 渠道对账列表
*/
List<ReconciliationDateVO> selectReconciliationDateListGroupBy(@Param("query")ReconciliationDateQuery query, @Param("groupBy")String groupBy);
}

View File

@ -4,7 +4,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.bst.reconciliationDate.mapper.ReconciliationDateMapper">
<resultMap type="ReconciliationDateVO" id="ReconciliationDateResult" autoMapping="true"/>
<resultMap type="ReconciliationDateVO" id="ReconciliationDateResult" autoMapping="true">
<result property="areaName" column="name" />
</resultMap>
<sql id="selectReconciliationDateVo">
select
@ -30,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
brd.actual_bonus,
brd.difference,
brd.channel_cost,
ba.name as area_name
ba.name
from bst_reconciliation_date brd
left join bst_area ba on ba.id = brd.area_id
</sql>
@ -447,4 +449,37 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{id}
</foreach>
</delete>
<!-- selectReconciliationDateListGroupBy -->
<select id="selectReconciliationDateListGroupBy" parameterType="ReconciliationDateQuery" resultMap="ReconciliationDateResult">
select
<if test="groupBy != null and groupBy != ''">
${groupBy},
</if>
sum(brd.order_pay_amount) as order_pay_amount,
sum(brd.order_refund_amount) as order_refund_amount,
sum(brd.order_actual_amount) as order_actual_amount,
sum(brd.pay_amount) as pay_amount,
sum(brd.refund_amount) as refund_amount,
sum(brd.actual_amount) as actual_amount,
sum(brd.user_bonus) as user_bonus,
sum(brd.user_bonus_refund) as user_bonus_refund,
sum(brd.user_actual_bonus) as user_actual_bonus,
sum(brd.platform_bonus) as platform_bonus,
sum(brd.platform_bonus_refund) as platform_bonus_refund,
sum(brd.platform_actual_bonus) as platform_actual_bonus,
sum(brd.total_bonus) as total_bonus,
sum(brd.total_bonus_refund) as total_bonus_refund,
sum(brd.actual_bonus) as actual_bonus,
sum(brd.difference) as difference,
sum(brd.channel_cost) as channel_cost
from bst_reconciliation_date brd
left join bst_area ba on ba.id = brd.area_id
<where>
<include refid="searchCondition"/>
</where>
group by ${groupBy}
</select>
</mapper>

View File

@ -71,4 +71,12 @@ public interface ReconciliationDateService
* @param areaId 运营区ID
*/
public int insertReconciliationDate(LocalDate date, ChannelNameVO channel, Long areaId);
/**
* 查询渠道对账列表按指定字段分组
* @param query 查询条件
* @param groupBy 分组字段
* @return 渠道对账列表
*/
public List<ReconciliationDateVO> selectReconciliationDateListGroupBy(ReconciliationDateQuery query, String groupBy);
}

View File

@ -199,4 +199,9 @@ public class ReconciliationDateServiceImpl implements ReconciliationDateService
return this.insertReconciliationDate(po);
}
@Override
public List<ReconciliationDateVO> selectReconciliationDateListGroupBy(ReconciliationDateQuery query, String groupBy) {
return reconciliationDateMapper.selectReconciliationDateListGroupBy(query, groupBy);
}
}

View File

@ -12,6 +12,7 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.bst.reconciliationDate.constants.ReconciliationDateConstants;
import com.ruoyi.bst.reconciliationDate.domain.ReconciliationDateQuery;
import com.ruoyi.bst.reconciliationDate.domain.ReconciliationDateVO;
import com.ruoyi.bst.reconciliationDate.service.ReconciliationDateService;
@ -48,6 +49,36 @@ public class ReconciliationDateController extends BaseController
return getDataTable(list);
}
// 按日期分组
@PreAuthorize("@ss.hasPermi('bst:reconciliationDate:list')")
@GetMapping("/listGroupByDate")
public TableDataInfo listGroupByDate(ReconciliationDateQuery query) {
startPage();
startOrderBy();
List<ReconciliationDateVO> list = reconciliationDateService.selectReconciliationDateListGroupBy(query, ReconciliationDateConstants.GROUP_BY_DATE);
return getDataTable(list);
}
// 按渠道分组
@PreAuthorize("@ss.hasPermi('bst:reconciliationDate:list')")
@GetMapping("/listGroupByChannel")
public TableDataInfo getListGroupByChannel(ReconciliationDateQuery query) {
startPage();
startOrderBy();
List<ReconciliationDateVO> list = reconciliationDateService.selectReconciliationDateListGroupBy(query, ReconciliationDateConstants.GROUP_BY_CHANNEL);
return getDataTable(list);
}
// 按运营区分组
@PreAuthorize("@ss.hasPermi('bst:reconciliationDate:list')")
@GetMapping("/listGroupByArea")
public TableDataInfo getListGroupByArea(ReconciliationDateQuery query) {
startPage();
startOrderBy();
List<ReconciliationDateVO> list = reconciliationDateService.selectReconciliationDateListGroupBy(query, ReconciliationDateConstants.GROUP_BY_AREA);
return getDataTable(list);
}
/**
* 导出渠道对账列表
*/

View File

@ -77,4 +77,11 @@ public class DashboardOrderController extends BaseController {
List<OrderRankVO> list = orderDashboard.selectRank(query);
return success(list);
}
// @PreAuthorize("@ss.hasPermi('dashboard:order:stat')")
// @GetMapping("/stat")
// public AjaxResult getStat(OrderStatQuery query) {
// query.setScope(true);
// return success(orderDashboard.selectStat(query));
// }
}