Commit d93b36f7 authored by 陈宏杰's avatar 陈宏杰

去掉v

parent 1e366106
......@@ -964,92 +964,92 @@
<select id="queryOverdueRecordOfD3" parameterType="cn.quantgroup.report.domain.baihang.BaiHangTimeRecord"
resultType="cn.quantgroup.report.domain.baihang.RepaymentInfoZhuDai">
select
a.id reqID
,'A' opCode
,DATE_FORMAT(now(),'%Y-%m-%dT%H:%i:%S') uploadTs
,if(d.order_no is null,a.loan_application_history_id,d.order_no) loanId
,b.name name
,b.id_no pid
,b.phone_no mobile
,a.term_no termNo
,z.repayment_Date targetRepaymentDate
,'' realRepaymentDate
,a.required_repayment plannedPayment
,f.yqze targetRepayment
,0 realRepayment
,case when f.yqze=0 then ''
else concat('D',DATEDIFF(z.received_at,f.min_deadline)+1) end overdueStatus
,DATE_FORMAT(z.received_at,'%Y-%m-%dT%H:%i:%S') statusConfirmAt
,f.yqze overdueAmount
,i.dkye remainingAmount
,case when f.yqze>0 then '2'
when i.dkye=0 then '3'
when f.yqze=0 and i.dkye>0 then '1'
end as loanStatus
,'overdue' termStatus
a.id reqID
,'A' opCode
,DATE_FORMAT(now(),'%Y-%m-%dT%H:%i:%S') uploadTs
,if(d.order_no is null,a.loan_application_history_id,d.order_no) loanId
,b.name name
,b.id_no pid
,b.phone_no mobile
,a.term_no termNo
,z.repayment_Date targetRepaymentDate
,'' realRepaymentDate
,a.required_repayment plannedPayment
,f.yqze targetRepayment
,0 realRepayment
,case when f.yqze=0 then ''
else concat('D',DATEDIFF(z.received_at,f.min_deadline)+1) end overdueStatus
,DATE_FORMAT(z.received_at,'%Y-%m-%dT%H:%i:%S') statusConfirmAt
,f.yqze overdueAmount
,i.dkye remainingAmount
,case when f.yqze>0 then '2'
when i.dkye=0 then '3'
when f.yqze=0 and i.dkye>0 then '1'
end as loanStatus
,'overdue' termStatus
from (select a.*
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
where (a.repayment_status !=3 or (a.repayment_status =3 and a.repaid_at>=a.deadline))
and b.funding_corp_id in (1080,100040,1030,100030)
and b.transaction_status in (2,5)
and b.contract_term not in (2,3)) a
left join vxyqb_user.user_detail b on a.user_id=b.user_id
left join vxyqb.loan_account_ext c on a.loan_application_history_id=c.loan_id
left join vxyqb.apply_quota_record d on c.order_no=d.order_no
left join (select a.loan_application_history_id,a.term_no
,sum(if((a.repayment_status !=3 or (a.repayment_status =3 and a.deadline &lt; c.repayment_received_at)),if(b.loan_paid_at>='2018-01-01',g.principal+g.interest+g.service_fee,h.principle+h.interest+h.service_fee_per_term),0)) yqze
,min(if((a.repayment_status !=3 or (a.repayment_status =3 and a.deadline &lt; c.repayment_received_at)),c.deadline,null)) min_deadline
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join vxyqb.repayment_record g on a.id=g.repayment_plan_id
left join vxyqb.plan_amount_detail h on a.id=h.plan_id
left join vxyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
and a.term_no>=c.term_no
where b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no) f on a.loan_application_history_id=f.loan_application_history_id and a.term_no=f.term_no
left join vxyqb.repayment_record g on a.id=g.repayment_plan_id
left join (
select a.loan_application_history_id,a.term_no,if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at)
,sum(if(a.repayment_status !=3 or (a.repayment_status =3 and if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at) &lt; g.repayment_received_at),if(b.loan_paid_at>='2018-01-01',g.principal,h.principle),0)) dkye
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join vxyqb.repayment_record g on a.loan_application_history_id=g.loan_application_history_id
left join vxyqb.plan_amount_detail h on a.id=h.plan_id
where b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
where (a.repayment_status !=3 or (a.repayment_status =3 and a.repaid_at>=a.deadline))
and b.funding_corp_id in (1080,100040,1030,100030)
and b.transaction_status in (2,5)
and b.contract_term not in (2,3)) a
left join xyqb_user.user_detail b on a.user_id=b.user_id
left join xyqb.loan_account_ext c on a.loan_application_history_id=c.loan_id
left join xyqb.apply_quota_record d on c.order_no=d.order_no
left join (select a.loan_application_history_id,a.term_no
,sum(if((a.repayment_status !=3 or (a.repayment_status =3 and a.deadline &lt; c.repayment_received_at)),if(b.loan_paid_at>='2018-01-01',g.principal+g.interest+g.service_fee,h.principle+h.interest+h.service_fee_per_term),0)) yqze
,min(if((a.repayment_status !=3 or (a.repayment_status =3 and a.deadline &lt; c.repayment_received_at)),c.deadline,null)) min_deadline
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join xyqb.repayment_record g on a.id=g.repayment_plan_id
left join xyqb.plan_amount_detail h on a.id=h.plan_id
left join xyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
and a.term_no>=c.term_no
where b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no) f on a.loan_application_history_id=f.loan_application_history_id and a.term_no=f.term_no
left join xyqb.repayment_record g on a.id=g.repayment_plan_id
left join (
select a.loan_application_history_id,a.term_no,if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at)
,sum(if(a.repayment_status !=3 or (a.repayment_status =3 and if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at) &lt; g.repayment_received_at),if(b.loan_paid_at>='2018-01-01',g.principal,h.principle),0)) dkye
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join xyqb.repayment_record g on a.loan_application_history_id=g.loan_application_history_id
left join xyqb.plan_amount_detail h on a.id=h.plan_id
where b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no
) i on a.loan_application_history_id=i.loan_application_history_id and a.term_no=i.term_no
left join (
select a.loan_application_history_id,a.term_no,date(DATE_sub(a.deadline,INTERVAL 1 second)) repayment_Date,
if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at) received_at
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
left join (
select a.loan_application_history_id,a.term_no,date(DATE_sub(a.deadline,INTERVAL 1 second)) repayment_Date,
if(TO_DAYS(IFNULL(a.repayment_received_at,NOW()))!=TO_DAYS(date(DATE_sub(a.deadline,INTERVAL 1 second))),a.deadline,a.repayment_received_at) received_at
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at >= #{startTime,jdbcType=VARCHAR} and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
where b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no
) z on a.loan_application_history_id=z.loan_application_history_id and a.term_no=z.term_no
) z on a.loan_application_history_id=z.loan_application_history_id and a.term_no=z.term_no
</select>
<select id="queryRepayMentRecordOfD3" parameterType="cn.quantgroup.report.domain.baihang.BaiHangTimeRecord"
resultType="cn.quantgroup.report.domain.baihang.RepaymentInfoZhuDai">
select
a.id reqID
,'A' opCode
,DATE_FORMAT(now(),'%Y-%m-%dT%H:%i:%S') uploadTs
,if(d.order_no is null,a.loan_application_history_id,d.order_no) loanId
,b.name name
,b.id_no pid
,b.phone_no mobile,if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.term_no,h.max_term) termNo
,date(DATE_sub(if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.deadline,h.max_deadline),INTERVAL 1 second)) targetRepaymentDate
,DATE_FORMAT(a.repaid_at,'%Y-%m-%dT%H:%i:%S') realRepaymentDate
,j.required_repayment plannedPayment
,f.yqze+sum(a.required_repayment) targetRepayment
,sum(a.required_repayment) realRepayment
,case when f.yqze=0 then ''
else concat('D',DATEDIFF(a.repaid_at,f.min_deadline)+1) end overdueStatus
a.id reqID
,'A' opCode
,DATE_FORMAT(now(),'%Y-%m-%dT%H:%i:%S') uploadTs
,if(d.order_no is null,a.loan_application_history_id,d.order_no) loanId
,b.name name
,b.id_no pid
,b.phone_no mobile,if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.term_no,h.max_term) termNo
,date(DATE_sub(if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.deadline,h.max_deadline),INTERVAL 1 second)) targetRepaymentDate
,DATE_FORMAT(a.repaid_at,'%Y-%m-%dT%H:%i:%S') realRepaymentDate
,j.required_repayment plannedPayment
,f.yqze+sum(a.required_repayment) targetRepayment
,sum(a.required_repayment) realRepayment
,case when f.yqze=0 then ''
else concat('D',DATEDIFF(a.repaid_at,f.min_deadline)+1) end overdueStatus
,DATE_FORMAT(a.repayment_received_at,'%Y-%m-%dT%H:%i:%S') statusConfirmAt
,f.yqze overdueAmount
,i.dkye remainingAmount
......@@ -1062,18 +1062,18 @@
from (
select a.*,if(c.term_no is null,a.term_no,c.term_no) next_term
,if(c.deadline is null,a.deadline,c.deadline) next_deadline
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join vxyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
left join xyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
and a.term_no=c.term_no-1
where a.repaid_at>=#{startTime,jdbcType=VARCHAR} and a.repaid_at &lt; #{endTime,jdbcType=VARCHAR} and a.repayment_status=3
and b.funding_corp_id in (1080,100040,1030,100030)
and b.contract_term not in (2,3)
) a
left join vxyqb_user.user_detail b on a.user_id=b.user_id
left join vxyqb.loan_account_ext c on a.loan_application_history_id=c.loan_id
left join vxyqb.apply_quota_record d on c.order_no=d.order_no
left join xyqb_user.user_detail b on a.user_id=b.user_id
left join xyqb.loan_account_ext c on a.loan_application_history_id=c.loan_id
left join xyqb.apply_quota_record d on c.order_no=d.order_no
left join (
select a.loan_application_history_id,a.term_no
,sum(if((a.repayment_status !=3 or (a.repayment_status =3 and a.repaid_at>=c.deadline)) and a.deadline &lt;= c.deadline,a.required_repayment,0)) yqze
......@@ -1081,25 +1081,25 @@
,min(if((a.repayment_status !=3 or (a.repayment_status =3 and a.repaid_at>=c.deadline)) and a.deadline &lt;= c.deadline,c.deadline,null)) min_deadline
,max(a.term_no) max_term_no
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id
left join vxyqb.repayment_record g on a.id=g.repayment_plan_id
left join vxyqb.plan_amount_detail h on a.id=h.plan_id
left join vxyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
left join xyqb.repayment_record g on a.id=g.repayment_plan_id
left join xyqb.plan_amount_detail h on a.id=h.plan_id
left join xyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
and a.term_no &lt; c.term_no
where a.repaid_at>=#{startTime,jdbcType=VARCHAR} and a.repaid_at &lt; #{endTime,jdbcType=VARCHAR} and b.funding_corp_id in (1080,100040,1030,100030)
where a.repaid_at>=#{startTime,jdbcType=VARCHAR} and a.repaid_at &lt; #{endTime,jdbcType=VARCHAR} and b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no) f on a.loan_application_history_id=f.loan_application_history_id and a.term_no=f.term_no
left join vxyqb.repayment_record g on a.id=g.repayment_plan_id
left join xyqb.repayment_record g on a.id=g.repayment_plan_id
left join (
select a.loan_application_history_id,a.repaid_at,a.deadline,a.term_no
,max(c.term_no) max_term
,max(c.deadline) max_deadline
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join vxyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
left join xyqb.repayment_plan c on a.loan_application_history_id=c.loan_application_history_id
where a.repaid_at>=#{startTime,jdbcType=VARCHAR} and a.repaid_at &lt; #{endTime,jdbcType=VARCHAR} and DATEDIFF(a.repaid_at,c.deadline)>=-1
and b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no) h
......@@ -1108,14 +1108,14 @@
select a.loan_application_history_id
,a.term_no
,sum(if(d.term_no>a.term_no,d.principal,0)) dkye
from vxyqb.repayment_plan a
left join vxyqb.loan_application_manifest_history b
from xyqb.repayment_plan a
left join xyqb.loan_application_manifest_history b
on a.loan_application_history_id=b.loan_application_history_id and b.loan_paid_at &lt; #{endTime,jdbcType=VARCHAR}
left join vxyqb.repayment_record d on a.loan_application_history_id=d.loan_application_history_id
left join xyqb.repayment_record d on a.loan_application_history_id=d.loan_application_history_id
where a.repaid_at>=#{startTime,jdbcType=VARCHAR} and a.repaid_at &lt; #{endTime,jdbcType=VARCHAR} and b.funding_corp_id in (1080,100040,1030,100030)
group by a.loan_application_history_id,a.term_no) i
on a.loan_application_history_id=i.loan_application_history_id and a.term_no=i.term_no
left join vxyqb.repayment_plan j on a.loan_application_history_id=j.loan_application_history_id
left join xyqb.repayment_plan j on a.loan_application_history_id=j.loan_application_history_id
and if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.term_no,a.term_no)=j.term_no
group by if(d.order_no is null,a.loan_application_history_id,d.order_no),
if(DATEDIFF(a.next_deadline,a.repaid_at)>1,a.term_no,a.term_no)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment