You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
3.0 KiB
62 lines
3.0 KiB
package com.hai.dao;
|
|
|
|
import org.apache.ibatis.annotations.Param;
|
|
import org.apache.ibatis.annotations.Select;
|
|
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* mapper扩展类
|
|
*/
|
|
public interface HighGasClassGroupTaskMapperExt {
|
|
|
|
@Select("<script>" +
|
|
" select " +
|
|
" case when SUM(a.total_price) is not null then SUM(a.total_price) else 0 end refuelPrice," +
|
|
" COUNT(1) refuelNum," +
|
|
" case when SUM(a.gas_oil_liters) is not null then SUM(a.gas_oil_liters) else 0 end refuelLiters" +
|
|
" from high_child_order a" +
|
|
" LEFT JOIN high_order b on b.id = a.order_id" +
|
|
" where a.goods_type = 3 " +
|
|
" and a.gas_class_group_task_id = #{gasClassGroupTaskId} " +
|
|
" and b.order_status in (2,3)" +
|
|
"</script>")
|
|
Map<String, Object> countRefuelData(@Param("gasClassGroupTaskId") Long gasClassGroupTaskId);
|
|
|
|
@Select("<script>" +
|
|
" select" +
|
|
" case when SUM(a.total_price) is not null then SUM(a.total_price) else 0 end refundPrice," +
|
|
" COUNT(1) refundNum," +
|
|
" case when SUM(a.gas_oil_liters) is not null then SUM(a.gas_oil_liters) else 0 end refundLiters" +
|
|
" from high_child_order a" +
|
|
" LEFT JOIN high_order b on b.id = a.order_id" +
|
|
" where a.goods_type = 3 " +
|
|
" and a.gas_class_group_task_id = #{gasClassGroupTaskId}" +
|
|
" and b.order_status in (4)" +
|
|
"</script>")
|
|
Map<String, Object> countRefundData(@Param("gasClassGroupTaskId") Long gasClassGroupTaskId);
|
|
|
|
@Select("<script>" +
|
|
" SELECT" +
|
|
" a.oil_no oilNo," +
|
|
" case when b.refuelPrice is not null then b.refuelPrice else 0 end refuelPrice," +
|
|
" case when b.refuelNum is not null then b.refuelNum else 0 end refuelNum," +
|
|
" case when b.refuelLiters is not null then b.refuelLiters else 0 end refuelLiters" +
|
|
" FROM" +
|
|
" high_gas_oil_price a " +
|
|
" LEFT JOIN (select gas_oil_no," +
|
|
" case when SUM(a.total_price) is not null then SUM(a.total_price) else 0 end refuelPrice," +
|
|
" COUNT(1) refuelNum," +
|
|
" case when SUM(a.gas_oil_liters) is not null then SUM(a.gas_oil_liters) else 0 end refuelLiters" +
|
|
" from high_child_order a" +
|
|
" LEFT JOIN high_order b on b.id = a.order_id" +
|
|
" where a.gas_class_group_task_id = #{gasClassGroupTaskId} and a.goods_type = 3 and b.order_status in (2,3)" +
|
|
" GROUP BY a.gas_oil_no) b on b.gas_oil_no = a.oil_no" +
|
|
" WHERE a.merchant_store_id = #{gasId} and <![CDATA[ `status` <> 0 ]]> " +
|
|
"</script>")
|
|
List<Map<String, Object>> countOilData(@Param("gasId") Long gasId, @Param("gasClassGroupTaskId") Long gasClassGroupTaskId);
|
|
|
|
@Select("select count(1) from high_gas_class_group_task where merchant_store_id = #{gasId} and `status` <> 0")
|
|
int getLatestClassNum(@Param("gasId") Long gasId);
|
|
}
|
|
|