284 lines
10 KiB
XML
284 lines
10 KiB
XML
<?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.ruoyi.invest.mapper.StatisticAnalysisMapper">
|
|
|
|
<resultMap type="BankCardLendVo" id="BankCardLendResult">
|
|
<result property="id" column="id" />
|
|
<result property="name" column="name" />
|
|
<result property="type" column="type" />
|
|
<result property="code" column="code" />
|
|
<result property="openingBank" column="opening_bank" />
|
|
<result property="activationDate" column="activation_date" />
|
|
<result property="billDate" column="bill_date" />
|
|
<result property="payDate" column="pay_date" />
|
|
<result property="delayPeriod" column="delay_period" />
|
|
<result property="creditLimit" column="credit_limit" />
|
|
<result property="effectiveDate" column="effective_date" />
|
|
<result property="cvv" column="cvv" />
|
|
<result property="createBy" column="create_by" />
|
|
<result property="createTime" column="create_time" />
|
|
<result property="updateBy" column="update_by" />
|
|
<result property="updateTime" column="update_time" />
|
|
<result property="delFlag" column="del_flag" />
|
|
<result property="remark" column="remark" />
|
|
<result property="debitType" column="debit_type" />
|
|
<result property="lendType" column="lend_type" />
|
|
</resultMap>
|
|
|
|
<sql id="selectBankCardLendVo">
|
|
select
|
|
a.name,
|
|
a.type,
|
|
a.credit_limit
|
|
from
|
|
bank_card_lend a
|
|
</sql>
|
|
|
|
<select id="selectBankCardLendList" parameterType="BankCardLendDto" resultMap="BankCardLendResult">
|
|
<include refid="selectBankCardLendVo"/>
|
|
<where>
|
|
a.del_flag='0'
|
|
<if test="name != null and name != ''"> and a.name like '%'|| #{name}||'%'</if>
|
|
<if test="type != null and type != ''"> and a.type = #{type}</if>
|
|
<if test="creditCardId != null "> and a.id = #{creditCardId}</if>
|
|
<if test="lendType != null and lendType != ''"> and a.lend_type = #{lendType}</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
</select>
|
|
|
|
<resultMap type="AccountsDealRecordVo" id="AccountsDealRecordResult">
|
|
<result property="id" column="id" />
|
|
<result property="name" column="name" />
|
|
<result property="code" column="code" />
|
|
<result property="type" column="type" />
|
|
<result property="accountId" column="account_id" />
|
|
<result property="amount" column="amount" />
|
|
<result property="dealType" column="deal_type" />
|
|
<result property="createBy" column="create_by" />
|
|
<result property="createTime" column="create_time" />
|
|
<result property="updateBy" column="update_by" />
|
|
<result property="updateTime" column="update_time" />
|
|
<result property="delFlag" column="del_flag" />
|
|
<result property="remark" column="remark" />
|
|
<result property="dealCategory" column="deal_category" />
|
|
<result property="accountName" column="account_name" />
|
|
<result property="transferRecordId" column="transfer_record_id" />
|
|
<result property="currentBalance" column="current_balance" />
|
|
<result property="childCategory" column="child_category" />
|
|
</resultMap>
|
|
|
|
<select id="selectAccountsOutInList" parameterType="AccountsDealRecordDto" resultMap="AccountsDealRecordResult">
|
|
select
|
|
a.*
|
|
from
|
|
(
|
|
select
|
|
atr.id ,
|
|
'13' as deal_category,
|
|
'2' as deal_type,
|
|
atr.commission as amount,
|
|
atr.create_time ,
|
|
atr.pos_id as account_id ,
|
|
atr.create_by,
|
|
atr.remark,
|
|
p."name" as account_name ,
|
|
p.code
|
|
from
|
|
accounts_transfer_record atr
|
|
left join accounts p on
|
|
p.id = atr.pos_id
|
|
where
|
|
atr."type" = '1'
|
|
and atr.del_flag = '0'
|
|
union
|
|
select
|
|
ihd.id ,
|
|
case
|
|
when ihd."type" = '2' then '14'
|
|
when ihd."type" = '3' then '15'
|
|
end as deal_category,
|
|
'2' as deal_type,
|
|
ihd.interest as amount,
|
|
ihd.repayment_date as create_time,
|
|
ihd.bank_card_lend_id as account_id ,
|
|
ihd.create_by,
|
|
ihd.remark,
|
|
a."name" as account_name ,
|
|
a.code
|
|
from
|
|
installment_history_detail ihd
|
|
left join accounts a on
|
|
a.id = ihd.bank_card_lend_id
|
|
where
|
|
ihd.del_flag = '0'
|
|
union
|
|
select
|
|
adr.id ,
|
|
adr.deal_category,
|
|
adr.deal_type,
|
|
adr.amount,
|
|
adr.create_time ,
|
|
adr.account_id ,
|
|
adr.create_by,
|
|
adr.remark,
|
|
a."name" as account_name ,
|
|
a.code
|
|
from
|
|
accounts_deal_record adr
|
|
left join accounts a on
|
|
a.id = adr.account_id
|
|
where
|
|
adr.del_flag = '0'
|
|
and (
|
|
adr.deal_category = '1'
|
|
or adr.deal_category = '2'
|
|
or adr.deal_category = '11'
|
|
)
|
|
) a
|
|
<where>
|
|
1=1
|
|
<if test="endTime!=null and endTime !=''">
|
|
and #{endTime}>=to_char(a.create_time, 'yyyy-MM-dd')
|
|
</if>
|
|
<if test="startTime!=null and startTime !=''">
|
|
and to_char(a.create_time, 'yyyy-MM-dd')>=#{startTime}
|
|
</if>
|
|
<if test="dealCategory != null and dealCategory != ''"> and a.deal_category = #{dealCategory}</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
order by a.create_time desc
|
|
</select>
|
|
<select id="selectDailyExpensesList" parameterType="AccountsDealRecordDto" resultMap="AccountsDealRecordResult">
|
|
select
|
|
sum(a.amount) as amount ,
|
|
a.child_category
|
|
from
|
|
accounts_deal_record a
|
|
<where>
|
|
a.del_flag='0'
|
|
and a.deal_category = '1'
|
|
<if test="endTime!=null and endTime !=''">
|
|
and #{endTime}>=to_char(a.create_time, 'yyyy-MM-dd')
|
|
</if>
|
|
<if test="startTime!=null and startTime !=''">
|
|
and to_char(a.create_time, 'yyyy-MM-dd')>=#{startTime}
|
|
</if>
|
|
<if test="accountId != null and accountId != ''"> and a.account_id = #{accountId}</if>
|
|
<if test="childCategory != null and childCategory != ''"> and a.child_category = #{childCategory}</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
group by
|
|
a.child_category
|
|
order by sum(a.amount) desc
|
|
</select>
|
|
|
|
<resultMap type="AccountCalendarVo" id="AccountCalendarResult">
|
|
<result property="title" column="title" />
|
|
<result property="name" column="name" />
|
|
<result property="start" column="start" />
|
|
<result property="color" column="color" />
|
|
|
|
</resultMap>
|
|
<select id="selectDailyExpensesByDate" parameterType="AccountsDealRecordDto" resultMap="AccountCalendarResult">
|
|
select
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd') as start,
|
|
concat('日常支出:',
|
|
sum(a.amount)) as title,
|
|
'magenta' as color,
|
|
5 as type
|
|
from
|
|
accounts_deal_record a
|
|
<where>
|
|
a.del_flag='0'
|
|
and a.deal_type = '2'
|
|
and a.deal_category = '1'
|
|
<if test="endTime!=null and endTime !=''">
|
|
and #{endTime}>=to_char(a.create_time, 'yyyy-MM-dd')
|
|
</if>
|
|
<if test="startTime!=null and startTime !=''">
|
|
and to_char(a.create_time, 'yyyy-MM-dd')>=#{startTime}
|
|
</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
group by
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd')
|
|
</select>
|
|
|
|
<select id="selectSalaryByDate" parameterType="AccountsDealRecordDto" resultMap="AccountCalendarResult">
|
|
select
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd') as start,
|
|
concat('工资收入:',
|
|
sum(a.amount)) as title,
|
|
8 as type
|
|
from
|
|
accounts_deal_record a
|
|
<where>
|
|
a.del_flag='0'
|
|
and a.deal_type = '1'
|
|
and a.deal_category = '11'
|
|
<if test="endTime!=null and endTime !=''">
|
|
and #{endTime}>=to_char(a.create_time, 'yyyy-MM-dd')
|
|
</if>
|
|
<if test="startTime!=null and startTime !=''">
|
|
and to_char(a.create_time, 'yyyy-MM-dd')>=#{startTime}
|
|
</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
group by
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd')
|
|
</select>
|
|
|
|
<select id="selectDailyExpensesDateList" parameterType="AccountsDealRecordDto" resultMap="AccountsDealRecordResult">
|
|
select
|
|
sum(a.amount) as amount ,
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd') as dateStr
|
|
from
|
|
accounts_deal_record a
|
|
<where>
|
|
a.del_flag = '0'
|
|
and a.deal_type = '2'
|
|
and a.deal_category = '1'
|
|
<if test="endTime!=null and endTime !=''">
|
|
and #{endTime}>=to_char(a.create_time, 'yyyy-MM-dd')
|
|
</if>
|
|
<if test="startTime!=null and startTime !=''">
|
|
and to_char(a.create_time, 'yyyy-MM-dd')>=#{startTime}
|
|
</if>
|
|
</where>
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
group by
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd')
|
|
order by
|
|
to_char(a.create_time,
|
|
'yyyy-MM-dd') desc
|
|
</select>
|
|
|
|
<select id="selectCreditCardList" parameterType="BankCardLendDto" resultType="com.ruoyi.invest.domain.vo.AccountsVo">
|
|
select
|
|
a."name" ,
|
|
sum(a.available_limit) as availableLimit
|
|
from
|
|
accounts a
|
|
where
|
|
a."type" = '2'
|
|
and a.status = '1'
|
|
<!-- 数据范围过滤 -->
|
|
${params.dataScope}
|
|
group by a."name"
|
|
|
|
</select>
|
|
</mapper> |