yuan
2 天以前 569655a9a25e87e9b5ea985df2e7a214e61d25ad
src/main/resources/mapper/basic/CustomerMapper.xml
@@ -9,7 +9,7 @@
    <select id="listPage" resultType="com.ruoyi.basic.vo.CustomerVo">
        select
        c.*,
        u.user_name usage_user_name,
        u.nick_name usage_user_name,
        (
        select group_concat(u2.user_name separator ', ')
        from customer_user cu
@@ -26,7 +26,6 @@
        from customer c
        left join sys_user u on c.usage_user = u.user_id
        <where>
            and c.usage_status = 1
            <if test="c.customerName != null and c.customerName != ''">
                and customer_name like concat('%', #{c.customerName}, '%')
            </if>
@@ -53,6 +52,7 @@
                )
            </if>
        </where>
        order by c.id desc
    </select>
    <select id="list" resultType="com.ruoyi.basic.vo.CustomerVo">
@@ -107,5 +107,42 @@
                )
            </if>
        </where>
        order by c.id desc
    </select>
    <select id="customewTransactions" resultType="com.ruoyi.sales.vo.CustomerTransactionsVo">
        select T1.customer_id,
               c.customer_name,
               T1.contractAmounts,
               IFNULL(T2.receiptPaymentAmount, 0) AS receiptPaymentAmount,
               IFNULL(T1.contractAmounts, 0) - IFNULL(T2.receiptPaymentAmount, 0) AS receiptableAmount
        from (select customer_id, sum(contract_amount) as contractAmounts from sales_ledger group by customer_id) T1
        left join (select customer_id, sum(collection_amount) as receiptPaymentAmount from account_sales_collection group by customer_id) T2 on T1.customer_id = T2.customer_id
        left join customer c on T1.customer_id = c.id
        <where>
            <if test="customerName!=null and customerName!=''">
                AND c.customer_name LIKE CONCAT('%', #{customerName}, '%')
            </if>
        </where>
        order by T1.customer_id desc
    </select>
    <select id="customewTransactionsDetails"
            resultType="com.ruoyi.sales.vo.CustomerTransactionsDetailsVo">
        select sl.id salesLedgerId,
               sl.sales_contract_no,
               sl.execution_date,
               sl.contract_amount,
               IFNULL(T1.receiptPaymentAmount, 0) AS receiptPaymentAmount,
               IFNULL(sl.contract_amount, 0) - IFNULL(T1.receiptPaymentAmount, 0) AS receiptableAmount
        from sales_ledger sl
        left join (
            select
                ascc.sales_ledger_id,
                sum(ascc.collection_amount) as receiptPaymentAmount
            from account_sales_collection ascc
            where ascc.sales_ledger_id is not null
            group by ascc.sales_ledger_id
        )T1 on T1.sales_ledger_id = sl.id
        where sl.customer_id = #{customerId}
        order by sl.id desc
    </select>
</mapper>