value
2024-04-30 f5f08c542b4ecf240a3dace0b79afe15d18aeab1
data-server/src/main/resources/mapper/DataReportingMapper.xml
@@ -54,14 +54,32 @@
    </select>
    <select id="selectRegistrantCountDtoPageList" resultType="com.yuanchu.mom.dto.RegistrantCountDto">
        select * from (
        select id, department, registrant, product, name, sum(show_num) show_num, sum(click) click,
        sum(account_consumption)account_consumption, sum(rebate_consumption)
        rebate_consumption,(sum(rebate_consumption)+sum(remark)) rebate_consumption2, sum(discounted_consumption)
        discounted_consumption, sum(fans_add) fans_add, sum(actual_cost) actual_cost, sum(customer_costs)
        customer_costs, sum(profit) profit, sum(agent_rebate) agent_rebate, sum(customer_rebate) customer_rebate,
        sum(remark) remark, create_time, update_time, create_user
        select department,
        registrant,
        name2,
        product,
        name,
        sum(show_num)                           show_num,
        sum(click)                              click,
        sum(account_consumption)                account_consumption,
        sum(rebate_consumption)
        rebate_consumption,
        (sum(rebate_consumption) + sum(remark)) rebate_consumption2,
        sum(discounted_consumption)
        discounted_consumption,
        sum(fans_add)                           fans_add,
        sum(actual_cost)                        actual_cost,
        sum(customer_costs)
        customer_costs,
        sum(profit)                             profit,
        sum(agent_rebate)                       agent_rebate,
        sum(customer_rebate)                    customer_rebate,
        sum(remark)                             remark,
        date_format(create_time, '%Y-%m-%d')    create_time,
        create_user
        from data_reporting
        group by registrant,date_format(create_time, '%Y-%m-%d')
        where create_time &gt;= #{startTime} and create_time &lt;= #{endTime}
        group by department,product,name2,date_format(create_time, '%Y-%m')
        ) a
        <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
            ${ew.customSqlSegment}
@@ -114,19 +132,22 @@
    </select>
    <select id="selectDataComparisonDtoPageList" resultType="com.yuanchu.mom.dto.DataComparisonDto">
        select a.account             account,
        select a.uName             account,
               a.name                name,
               a.account_consumption consumption,
               b.account             comparisonAccount,
               a.product,
               COALESCE(b.uName, #{dataComparisonDto.comparisonName})             comparisonAccount,
               b.name                comparisonName,
               b.account_consumption comparisonConsumption
               b.account_consumption comparisonConsumption,
                b.uDepartment,
                b.uCompany
        from (select dr1.*, user.id uId, user.name uName, user.account
                from data_reporting dr1
                join user on dr1.create_user = user.id
                where date_format(dr1.create_time, '%Y-%m-%d') =
                      date_format(#{dataComparisonDto.createTime}, '%Y-%m-%d')
                and user.name = #{dataComparisonDto.name}) a
        left join (select dr2.*, user.id uId, user.name uName, user.account
        left join (select dr2.*, user.id uId, user.name uName, user.account,user.department uDepartment,user.company uCompany
                    from data_reporting dr2
                    join user on dr2.create_user = user.id
                    where date_format(dr2.create_time, '%Y-%m-%d') =
@@ -137,4 +158,21 @@
        where (a.account_consumption != b.account_consumption
            or b.account_consumption is null)
    </select>
    <select id="selectDataReportingForCreateUserNames" resultType="java.lang.String">
        select distinct u1.name from data_reporting dr
        left join user u1 on dr.create_user = u1.id
        where dr.create_time like concat('%', #{time}, '%')
    </select>
    <select id="selectDataReportingForProduct" resultType="java.lang.String">
        select distinct product from data_reporting
        where create_time like concat('%', #{time}, '%')
    </select>
    <select id="getUserNameById" resultType="java.lang.String">
        select account from user where id = #{id}
    </select>
    <select id="getUserDepartmentById" resultType="java.lang.String">
        select department from user where id = #{id}
    </select>
</mapper>