apzl_leasing/src_sql/view/vi_rent_collect_4_ebank.sql
2021-01-30 17:40:44 +08:00

56 lines
3.0 KiB
SQL

drop view if exists vi_rent_collect_4_ebank;
create view vi_rent_collect_4_ebank as (
SELECT
`lrp`.`ID` AS `id`,
`lci`.`ID` AS `contract_id`,
`lci`.`BUSINESSTYPE` AS `businesstype`,
`lci`.`SUBJECTID` AS `subjectid`,
`lci`.`SUBJECTNAME` AS `subjectname`,
`lci`.`distributor_id` AS `distributor_id`,
`lci`.`CONTRACT_NUMBER` AS `contract_number`,
`lrp`.`PAYMENT_NUMBER` AS `payment_number`,
IFNULL(`lul`.`CUSTOMER_NAME`,'') AS `customername`,
`ca`.`acc_number` AS `acc_number`,
`lrp`.`PLAN_LIST` AS `plan_list`,
`lrp`.`PLAN_DATE` AS `plan_date`,
IFNULL(`lrp`.`COLLECT_STATUS`,'δÊÕ¿î') AS `collect_status`,
`lrp`.`COLLECT_MSG` AS `collect_msg`,
`lrp`.`BATCH_STATUS` AS `BATCH_STATUS`,
`lrp`.`RENT` AS `rent`,
`lrp`.`CORPUS` AS `corpus`,
`lrp`.`INTEREST` AS `interest`,
(`lrp`.`RENT` - (IFNULL(`lcfd`.`rent`,0) + IFNULL(`lcfi`.`rent`,0))) AS `rent_over`,
(`lrp`.`CORPUS` - (((IFNULL(`lcfd`.`corpus`,0) + IFNULL(`lcfi`.`corpus`,0)) + IFNULL(`lcfd`.`corpus_adjust`,0)) + IFNULL(`lcfi`.`corpus_adjust`,0))) AS `corpus_over`,
(`lrp`.`INTEREST` - (((IFNULL(`lcfd`.`interest`,0) + IFNULL(`lcfi`.`interest`,0)) + IFNULL(`lcfd`.`interest_adjust`,0)) + IFNULL(`lcfi`.`interest_adjust`,0))) AS `interest_over`,
ROUND((((IFNULL(`lcfd`.`penalty`,0) + IFNULL(`lcfi`.`penalty`,0)) + (IFNULL(`lcfd`.`penalty_adjust`,0) + IFNULL(`lcfi`.`penalty_adjust`,0)))),2) AS `penalty_sum`
FROM (((((`apzl`.`lc_rent_plan` `lrp`
LEFT JOIN `apzl`.`lb_contract_info` `lci`
ON ((`lrp`.`CONTRACT_ID` = `lci`.`ID`)))
LEFT JOIN `apzl`.`lb_union_lessee` `lul`
ON (((`lrp`.`CONTRACT_ID` = `lul`.`CONTRACT_ID`)
AND (`lul`.`IS_MAIN` = 'Y'))))
LEFT JOIN `apzl`.`lc_rent_income_transfer` `lcfd`
ON (((`lrp`.`PAYMENT_NUMBER` = `lcfd`.`payment_number`)
AND (`lrp`.`PLAN_LIST` = `lcfd`.`plan_list`))))
LEFT JOIN `apzl`.`lc_rent_income_temp_transfer` `lcfi`
ON (((`lrp`.`PAYMENT_NUMBER` = `lcfi`.`payment_number`)
AND (`lrp`.`PLAN_LIST` = `lcfi`.`plan_list`))))
LEFT JOIN (SELECT DISTINCT
`apzl`.`customer_account`.`CONTRACT_ID` AS `contract_id`,
`apzl`.`customer_account`.`acc_number` AS `acc_number`,
`apzl`.`customer_account`.`collect_type` AS `collect_type`
FROM `apzl`.`customer_account`) `ca`
ON ((`ca`.`contract_id` = `lci`.`ID`)))
WHERE ((`lci`.`CONTRACT_STATUS` = '31')
AND
(NOT(EXISTS(SELECT
1
FROM `apzl`.`lc_occupy_rent_list` `lorl`
WHERE ((`lorl`.`PAYMENT_NUMBER` = `lrp`.`PAYMENT_NUMBER`)
AND ((lorl.plan_id=lrp.id
AND (`lorl`.`FLOW_NAME` IN('΢ÐÅÒøÁªÊÕ¿î','΢ÐÅÖ§¸¶ÊÕ¿î','ÍøÒøÊÕ¿î')))
OR lorl.flow_name IN ('ºÏͬÖÐ;ÖÕÖ¹')
)
))))
)
);