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.
134 lines
6.1 KiB
134 lines
6.1 KiB
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="com.qs.serve.modules.bir.mapper.BirRoiRateMapper">
|
|
|
|
<resultMap id="birRoiRateMap" type="com.qs.serve.modules.bir.entity.BirRoiRate" >
|
|
<result property="id" column="id"/>
|
|
<result property="keyNum" column="key_num"/>
|
|
<result property="activityAmt" column="activity_amt"/>
|
|
<result property="verificationAmt" column="verification_amt"/>
|
|
<result property="shipmentQty" column="shipment_qty"/>
|
|
<result property="shipmentAmt" column="shipment_amt"/>
|
|
<result property="supplierId" column="supplier_id"/>
|
|
<result property="supplierCode" column="supplier_code"/>
|
|
<result property="supplierName" column="supplier_name"/>
|
|
<result property="userId" column="user_id"/>
|
|
<result property="userCode" column="user_code"/>
|
|
<result property="userName" column="user_name"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
<result property="tenantId" column="tenant_id"/>
|
|
<result property="delFlag" column="del_flag"/>
|
|
</resultMap>
|
|
|
|
<sql id="birRoiRateSql">
|
|
bir_roi_rate.`id`,
|
|
bir_roi_rate.`key_num`,
|
|
bir_roi_rate.`activity_amt`,
|
|
bir_roi_rate.`verification_amt`,
|
|
bir_roi_rate.`shipment_qty`,
|
|
bir_roi_rate.`shipment_amt`,
|
|
bir_roi_rate.`supplier_id`,
|
|
bir_roi_rate.`supplier_code`,
|
|
bir_roi_rate.`supplier_name`,
|
|
bir_roi_rate.`user_id`,
|
|
bir_roi_rate.`user_code`,
|
|
bir_roi_rate.`user_name`,
|
|
bir_roi_rate.`create_time`,
|
|
bir_roi_rate.`update_time`,
|
|
bir_roi_rate.`tenant_id`,
|
|
bir_roi_rate.`del_flag` </sql>
|
|
|
|
<resultMap id="BirRoiCostItemVoMap" type="com.qs.serve.modules.bir.entity.vo.BirRoiCostItemVo" >
|
|
<result property="yearMonth" column="year_month"/>
|
|
<result property="yearMonthDate" column="year_month_date"/>
|
|
<result property="costAmt" column="cost_amt"/>
|
|
<result property="checkAmt" column="check_amt"/>
|
|
</resultMap>
|
|
|
|
<select id="queryForecastRoiCostItems" resultType="com.qs.serve.modules.bir.entity.vo.BirRoiCostItemVo" resultMap="BirRoiCostItemVoMap">
|
|
SELECT
|
|
key_num AS `year_month`,
|
|
min( start_date ) AS year_month_date,
|
|
sum(bir_base_activity.activity_total_amt) as cost_amt,
|
|
sum(bir_base_activity.verification_amt) as check_amt,
|
|
sum(bir_base_activity.pre_act_quantity) as pre_amt
|
|
FROM
|
|
`bir_base_activity` left join `tbs_cost_apply` on `bir_base_activity`.cost_apply_id = `tbs_cost_apply`.id
|
|
<where>
|
|
tbs_cost_apply.charge_state in (1,2)
|
|
and bir_base_activity.del_flag = '0'
|
|
and `tbs_cost_apply`.del_flag = '0'
|
|
and bir_base_activity.key_num >= #{query.startMonthNum}
|
|
and bir_base_activity.key_num <= #{query.endMonthNum}
|
|
<if test="query.supplierId!=null and query.supplierId!=''">
|
|
and bir_base_activity.supplier_id = #{query.supplierId}
|
|
</if>
|
|
<if test="query.userId!=null and query.userId!=''">
|
|
and bir_base_activity.supplier_id != #{query.notSupplierId}
|
|
and bir_base_activity.user_id = #{query.userId}
|
|
</if>
|
|
<if test="query.supplierIds!=null and query.supplierIds.size > 0">
|
|
and bir_base_activity.supplier_id in
|
|
<foreach collection="query.supplierIds" item ="selectId" index="i" open="(" close=")" separator=",">
|
|
#{selectId}
|
|
</foreach>
|
|
</if>
|
|
<if test="query.userIds!=null and query.userIds.size > 0">
|
|
and bir_base_activity.user_id in
|
|
<foreach collection="query.userIds" item ="selectId" index="i" open="(" close=")" separator=",">
|
|
#{selectId}
|
|
</foreach>
|
|
</if>
|
|
</where>
|
|
GROUP BY
|
|
`year_month`
|
|
ORDER BY
|
|
`year_month` desc
|
|
</select>
|
|
|
|
|
|
<select id="queryRoiCostItems" resultType="com.qs.serve.modules.bir.entity.vo.BirRoiCostItemVo" resultMap="BirRoiCostItemVoMap">
|
|
SELECT
|
|
key_num AS `year_month`,
|
|
min( start_date ) AS year_month_date,
|
|
sum(bir_base_activity.activity_total_amt) as cost_amt,
|
|
sum(bir_base_activity.verification_amt) as check_amt,
|
|
sum(bir_base_activity.pre_act_quantity) as pre_amt
|
|
FROM
|
|
`bir_base_activity` left join `tbs_cost_apply` on `bir_base_activity`.cost_apply_id = `tbs_cost_apply`.id
|
|
<where>
|
|
tbs_cost_apply.charge_state = 3
|
|
and bir_base_activity.del_flag = '0'
|
|
and `tbs_cost_apply`.del_flag = '0'
|
|
and bir_base_activity.key_num >= #{query.startMonthNum}
|
|
and bir_base_activity.key_num <= #{query.endMonthNum}
|
|
<if test="query.supplierId!=null and query.supplierId!=''">
|
|
and bir_base_activity.supplier_id = #{query.supplierId}
|
|
</if>
|
|
<if test="query.userId!=null and query.userId!=''">
|
|
and bir_base_activity.supplier_id != #{query.notSupplierId}
|
|
and bir_base_activity.user_id = #{query.userId}
|
|
</if>
|
|
<if test="query.supplierIds!=null and query.supplierIds.size > 0">
|
|
and bir_base_activity.supplier_id in
|
|
<foreach collection="query.supplierIds" item ="selectId" index="i" open="(" close=")" separator=",">
|
|
#{selectId}
|
|
</foreach>
|
|
</if>
|
|
<if test="query.userIds!=null and query.userIds.size > 0">
|
|
and bir_base_activity.user_id in
|
|
<foreach collection="query.userIds" item ="selectId" index="i" open="(" close=")" separator=",">
|
|
#{selectId}
|
|
</foreach>
|
|
</if>
|
|
</where>
|
|
GROUP BY
|
|
`year_month`
|
|
ORDER BY
|
|
`year_month` desc
|
|
</select>
|
|
|
|
|
|
</mapper>
|
|
|
|
|