482 lines
24 KiB
SQL
482 lines
24 KiB
SQL
-- 接口通联卡扣签约编码配置表
|
||
CREATE TABLE `bank_code_platform` (
|
||
`bank_code` varchar(10) DEFAULT NULL COMMENT '银行编码',
|
||
`channel_code` varchar(20) DEFAULT NULL COMMENT '渠道编码',
|
||
`platform_bank_name` varchar(20) DEFAULT NULL COMMENT '渠道银行名称',
|
||
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
PRIMARY KEY (`id`),
|
||
KEY `fk_bank_code` (`bank_code`),
|
||
CONSTRAINT `fk_bank_code` FOREIGN KEY (`bank_code`) REFERENCES `bank_code` (`bank_code`)
|
||
) ;
|
||
|
||
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('105', 'KAER', '中国建设银行', '1');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('305', 'KAER', '中国民生银行', '2');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('102', 'KAER', '中国工商银行', '3');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('317', 'KAER', '渤海银行', '4');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('307', 'KAER', '平安银行', '5');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('104', 'KAER', '中国银行', '6');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('102', 'SHIQIAO', '工商银行', '7');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('104', 'SHIQIAO', '中国银行', '8');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('105', 'SHIQIAO', '建设银行', '9');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('100', 'SHIQIAO', '邮政储蓄银行', '10');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('309', 'SHIQIAO', '兴业银行', '11');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('307', 'SHIQIAO', '平安银行', '12');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('305', 'SHIQIAO', '民生银行', '13');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('302', 'SHIQIAO', '中信银行', '14');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('310', 'SHIQIAO', '浦发银行', '15');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('413', 'SHIQIAO', '广州银行', '16');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('304', 'SHIQIAO', '华夏银行', '17');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('403', 'SHIQIAO', '北京银行', '18');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('401', 'SHIQIAO', '上海银行', '19');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('317', 'SHIQIAO', '渤海银行', '20');
|
||
INSERT INTO `apzl`.`bank_code_platform` (`bank_code`, `channel_code`, `platform_bank_name`, `id`) VALUES ('311', 'SHIQIAO', '恒丰银行', '21');
|
||
|
||
|
||
-- 手工卡扣模板更新
|
||
update awe_do_catalog set jboclass = 'jbo.loan.vi_manual_dedution',jbowhere = null where dono = 'ViLcReviewAuditRentPlanList3';
|
||
|
||
DELETE from awe_do_library where dono = 'ViLcReviewAuditRentPlanList3' and colheader = '未付租金';
|
||
INSERT INTO `apzl`.`awe_do_library` (`dono`, `colindex`, `sortno`, `isinuse`, `coltablename`, `colactualname`, `colname`, `coltype`, `coldefaultvalue`, `colheader`, `colunit`, `colcolumntype`, `coleditstyle`, `colcheckformat`, `colalign`, `coleditsourcetype`, `coleditsource`, `colhtmlstyle`, `collimit`, `colvisible`, `colreadonly`, `colrequired`, `colsortable`, `isfilter`, `colspan`, `isautocomplete`, `groupid`, `colfilterrefid`, `inputuser`, `inputtime`, `updateuser`, `updatetime`, `isaudit`, `colfilterattrs`, `isupdate`, `parentcolindex`, `tips`, `colinnerbtevent`, `colfilteroptions`) VALUES ('ViLcReviewAuditRentPlanList3', '1090', '1040', '1', 'O', 'rent_over', 'rent_over', 'Number', '', '未付租金', '', '1', 'Text', '2', '1', '', '', '', '20', '1', '1', '0', '1', '0', '1', '0', '', '', 'SYS_Designer', '2020/08/03 16:55:00', 'SYS_Designer', '2020/09/29 15:23:57', '', '', '1', '', '', '', '');
|
||
|
||
DELETE from awe_do_library where dono = 'ViLcReviewAuditRentPlanList3' and colheader = '未付罚息';
|
||
INSERT INTO `apzl`.`awe_do_library` (`dono`, `colindex`, `sortno`, `isinuse`, `coltablename`, `colactualname`, `colname`, `coltype`, `coldefaultvalue`, `colheader`, `colunit`, `colcolumntype`, `coleditstyle`, `colcheckformat`, `colalign`, `coleditsourcetype`, `coleditsource`, `colhtmlstyle`, `collimit`, `colvisible`, `colreadonly`, `colrequired`, `colsortable`, `isfilter`, `colspan`, `isautocomplete`, `groupid`, `colfilterrefid`, `inputuser`, `inputtime`, `updateuser`, `updatetime`, `isaudit`, `colfilterattrs`, `isupdate`, `parentcolindex`, `tips`, `colinnerbtevent`, `colfilteroptions`) VALUES ('ViLcReviewAuditRentPlanList3', '1570', '1065', '1', '', '\'\'', 'penalty_over', 'Number', '', '未付罚息', '', '1', 'Text', '2', '1', '', '', '', NULL, '1', '1', '0', '1', '0', '0', '', '', '', 'SYS_Designer', '2020/09/27 09:48:31', 'SYS_Designer', '2020/09/29 15:23:57', '', '', '1', '', '', '', '');
|
||
|
||
INSERT INTO `apzl`.`awe_do_library` (`dono`, `colindex`, `sortno`, `isinuse`, `coltablename`, `colactualname`, `colname`, `coltype`, `coldefaultvalue`, `colheader`, `colunit`, `colcolumntype`, `coleditstyle`, `colcheckformat`, `colalign`, `coleditsourcetype`, `coleditsource`, `colhtmlstyle`, `collimit`, `colvisible`, `colreadonly`, `colrequired`, `colsortable`, `isfilter`, `colspan`, `isautocomplete`, `groupid`, `colfilterrefid`, `inputuser`, `inputtime`, `updateuser`, `updatetime`, `isaudit`, `colfilterattrs`, `isupdate`, `parentcolindex`, `tips`, `colinnerbtevent`, `colfilteroptions`) VALUES ('ViLcReviewAuditRentPlanList3', '1490', '1490', '1', 'O', 'penalty_sum', 'penalty_sum', 'Number', '', '已还罚息', '', '1', 'Text', '2', '3', '', '', '', '32', '0', '0', '0', '1', '0', '0', '', '', '', 'SYS_Designer', '2020/12/04 14:57:30', 'SYS_Designer', '2020/12/04 14:57:30', '0', '', '1', '', '', '', '');
|
||
|
||
|
||
-- 手工卡扣使用新视图
|
||
CREATE ALGORITHM=UNDEFINED DEFINER=`apzl`@`%` SQL SECURITY DEFINER VIEW `vi_manual_dedution` 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`,`ca`.`collect_type` AS `collect_type`,`ca`.`CERTID` AS `certid`,`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`,`getRentPenalty`(`lrp`.`PAYMENT_NUMBER`,`lrp`.`PLAN_LIST`,date_format(now(),'%Y/%m/%d')) AS `penalty`,(`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 (((((((select `l`.`ID` AS `ID`,`l`.`PROJECT_ID` AS `PROJECT_ID`,`l`.`PROJECT_PLAN_NUMBER` AS `PROJECT_PLAN_NUMBER`,`l`.`CONTRACT_ID` AS `CONTRACT_ID`,`l`.`CONTRACT_PLAN_NUMBER` AS `CONTRACT_PLAN_NUMBER`,`l`.`PAYMENT_NUMBER` AS `PAYMENT_NUMBER`,`l`.`PLAN_LIST` AS `PLAN_LIST`,`l`.`PLAN_DATE` AS `PLAN_DATE`,`l`.`PLAN_STATUS` AS `PLAN_STATUS`,`l`.`RENT` AS `RENT`,`l`.`CORPUS` AS `CORPUS`,`l`.`INTEREST` AS `INTEREST`,`l`.`PENALTY` AS `PENALTY`,`l`.`CORPUS_BUSINESS` AS `CORPUS_BUSINESS`,`l`.`INTEREST_BUSINESS` AS `INTEREST_BUSINESS`,`l`.`RENT_ADJUST` AS `RENT_ADJUST`,`l`.`ALL_REMAIN_CORPUS` AS `ALL_REMAIN_CORPUS`,`l`.`SETTLE_METHOD` AS `SETTLE_METHOD`,`l`.`COIN` AS `COIN`,`l`.`YEAR_RATE` AS `YEAR_RATE`,`l`.`MEMO` AS `MEMO`,`l`.`FLOWUNID` AS `FLOWUNID`,`l`.`INPUTUSERID` AS `INPUTUSERID`,`l`.`INPUTORGID` AS `INPUTORGID`,`l`.`INPUTTIME` AS `INPUTTIME`,`l`.`INTEREST_DATE` AS `INTEREST_DATE`,`l`.`AUDIT_STATE` AS `AUDIT_STATE`,`l`.`COLLECT_STATUS` AS `COLLECT_STATUS`,`l`.`COLLECT_MSG` AS `COLLECT_MSG`,`l`.`FAILURE_TIME` AS `FAILURE_TIME`,`l`.`FAILURE_REASON` AS `FAILURE_REASON`,`l`.`BATCH_NO` AS `BATCH_NO`,`l`.`BATCH_STATUS` AS `BATCH_STATUS`,`l`.`batch_sn` AS `batch_sn`,`l`.`SPARE_BATCH_NO` AS `SPARE_BATCH_NO`,`l`.`CORPUS_SP` AS `CORPUS_SP`,`l`.`INTEREST_sp` AS `INTEREST_sp`,`l`.`splitting_status` AS `splitting_status`,`l`.`charge_way` AS `charge_way` from `apzl`.`lc_rent_plan` `l` where (((`l`.`COLLECT_STATUS` in ('未收款','部分收款','代偿')) or isnull(`l`.`COLLECT_STATUS`)) and (`l`.`PLAN_DATE` <= convert(date_format(now(),'%Y/%m/%d') using gbk)) and (`l`.`ID` = (select `t`.`ID` from `apzl`.`lc_rent_plan` `t` where ((`t`.`CONTRACT_ID` = `l`.`CONTRACT_ID`) and ((`t`.`COLLECT_STATUS` in ('未收款','部分收款','代偿')) or isnull(`t`.`COLLECT_STATUS`))) order by `t`.`PAYMENT_NUMBER`,`t`.`PLAN_LIST` limit 1))))) `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 `apzl`.`customer_account` `ca` on(((`lci`.`ID` = `ca`.`CONTRACT_ID`) and (`ca`.`acc_info` = 'Debit')))) where ((`lci`.`CONTRACT_STATUS` = '31') and (`lci`.`BUSINESSTYPE` = '1') 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` = '合同中途终止')))))));
|
||
|
||
-- 添加签约类型字段
|
||
alter table lc_card_tlsign add column sign_type VARCHAR(10) COMMENT '签约类型' after RESPONSE_CONTENT;
|
||
|
||
|
||
-- 添加卡扣类型字段
|
||
alter table lb_buckle_log add column deduction_type varchar(10) COMMENT '卡扣类型' AFTER updatetime;
|
||
|
||
-- 通联卡扣核销函数修改
|
||
drop PROCEDURE if exists proc_insert_hexiao;
|
||
CREATE PROCEDURE `proc_insert_hexiao`(IN ln_contract_id VARCHAR(200), IN ln_plan_date VARCHAR(200),
|
||
IN in_rent VARCHAR(200), IN in_hire_list VARCHAR(200),
|
||
IN in_type VARCHAR(2))
|
||
BEGIN
|
||
-- 如果in_type=1就是手工核销
|
||
IF in_type = 1 THEN
|
||
INSERT INTO LC_RENT_INCOME (
|
||
ID,
|
||
QUOT_ID,
|
||
CUST_ID,
|
||
PROJECT_ID,
|
||
PROJECT_PLAN_NUMBER,
|
||
CONTRACT_ID,
|
||
CONTRACT_PLAN_NUMBER,
|
||
PAYMENT_NUMBER,
|
||
EBANK_NUMBER,
|
||
PLAN_ID,
|
||
PLAN_LIST,
|
||
INTEREST_ADJUST,
|
||
SETTLE_METHOD,
|
||
HIRE_LIST,
|
||
HIRE_DATE,
|
||
RENT,
|
||
CORPUS,
|
||
INTEREST,
|
||
PENALTY,
|
||
CORPUS_ADJUST,
|
||
PENALTY_ADJUST,
|
||
ROLL_BACK,
|
||
COIN,
|
||
hire_number,
|
||
hire_bank,
|
||
hire_account,
|
||
own_bank,
|
||
own_account,
|
||
own_number,
|
||
charge_way
|
||
)
|
||
(SELECT
|
||
REPLACE (UUID(), '-', '') AS id,
|
||
O.QUOT_ID AS QUOT_ID,
|
||
O.CUST_ID AS CUST_ID,
|
||
O.PROJECT_ID AS PROJECT_ID,
|
||
O.PROJECT_PLAN_NUMBER AS PROJECT_PLAN_NUMBER,
|
||
O.CONTRACT_ID AS CONTRACT_ID,
|
||
O.CONTRACT_PLAN_NUMBER AS CONTRACT_PLAN_NUMBER,
|
||
O.PAYMENT_NUMBER AS PAYMENT_NUMBER,
|
||
'' AS EBANK_NUMBER,
|
||
O.id AS PLAN_ID,
|
||
O.PLAN_LIST AS PLAN_LIST,
|
||
'0' AS INTEREST_ADJUST,
|
||
'settlemethod6' AS SETTLE_METHOD,
|
||
in_hire_list AS HIRE_LIST,
|
||
DATE_FORMAT (CURDATE(),'%Y/%m/%d') AS HIRE_DATE,
|
||
vl.rent_over AS RENT,
|
||
vl.corpus_over AS CORPUS,
|
||
vl.interest_over AS INTEREST,
|
||
(
|
||
in_rent - vl.corpus_over - vl.interest_over
|
||
) AS PENALTY,
|
||
'0' AS CORPUS_ADJUST,
|
||
'0' AS PENALTY_ADJUST,
|
||
'0' AS ROLL_BACK,
|
||
O.COIN AS COIN ,
|
||
ca.acc_number,
|
||
ca.bank_name,
|
||
ca.account,
|
||
oa.acc_bank,
|
||
lci.subjectname,
|
||
oa.acc_number,
|
||
'AutoBuckle'
|
||
FROM
|
||
LC_RENT_PLAN O,
|
||
VI_LC_RENT_PLAN vl
|
||
LEFT JOIN customer_account ca ON ca.contract_id=vl.contract_id
|
||
LEFT JOIN lb_contract_info lci ON vl.contract_id=lci.id
|
||
LEFT JOIN code_library cl ON cl.codeno='ManySubject' AND lci.subjectid=cl.itemno
|
||
LEFT JOIN own_account oa ON oa.own_id=cl.bankno AND oa.account_purpose='default' AND oa.state_='0010' AND (oa.account_type='in_account' OR oa.account_type='inAndOut_account') AND oa.acc_type='0010'
|
||
WHERE O.id = vl.id
|
||
AND vl.contract_id =ln_contract_id
|
||
AND vl.plan_date = ln_plan_date
|
||
GROUP BY oa.own_id) ;
|
||
-- in_type = 2为银联卡口手动刷新核销数据
|
||
ELSEIF in_type = 2 THEN
|
||
INSERT INTO LC_RENT_INCOME (
|
||
ID,
|
||
QUOT_ID,
|
||
CUST_ID,
|
||
PROJECT_ID,
|
||
PROJECT_PLAN_NUMBER,
|
||
CONTRACT_ID,
|
||
CONTRACT_PLAN_NUMBER,
|
||
PAYMENT_NUMBER,
|
||
EBANK_NUMBER,
|
||
PLAN_ID,
|
||
PLAN_LIST,
|
||
INTEREST_ADJUST,
|
||
SETTLE_METHOD,
|
||
HIRE_LIST,
|
||
HIRE_DATE,
|
||
RENT,
|
||
CORPUS,
|
||
INTEREST,
|
||
PENALTY,
|
||
CORPUS_ADJUST,
|
||
PENALTY_ADJUST,
|
||
ROLL_BACK,
|
||
COIN,
|
||
hire_number,
|
||
hire_bank,
|
||
hire_account,
|
||
own_bank,
|
||
own_account,
|
||
own_number,
|
||
charge_way
|
||
)
|
||
(SELECT
|
||
REPLACE (UUID (), '-', '') AS id,
|
||
O.QUOT_ID AS QUOT_ID,
|
||
O.CUST_ID AS CUST_ID,
|
||
O.PROJECT_ID AS PROJECT_ID,
|
||
O.PROJECT_PLAN_NUMBER AS PROJECT_PLAN_NUMBER,
|
||
O.CONTRACT_ID AS CONTRACT_ID,
|
||
O.CONTRACT_PLAN_NUMBER AS CONTRACT_PLAN_NUMBER,
|
||
O.PAYMENT_NUMBER AS PAYMENT_NUMBER,
|
||
'' AS EBANK_NUMBER,
|
||
O.id AS PLAN_ID,
|
||
O.PLAN_LIST AS PLAN_LIST,
|
||
'0' AS INTEREST_ADJUST,
|
||
'settlemethod6' AS SETTLE_METHOD,
|
||
in_hire_list AS HIRE_LIST,
|
||
DATE_FORMAT (CURDATE(),'%Y/%m/%d') AS HIRE_DATE,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.rent_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN in_rent-vl.penalty_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>vl.penalty_over THEN in_rent-vl.penalty_over
|
||
ELSE '0'
|
||
END RENT,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.corpus_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN in_rent-(vl.penalty_over+vl.interest_over)
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN '0'
|
||
ELSE '0'
|
||
END CORPUS,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.interest_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN vl.interest_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN in_rent-vl.penalty_over
|
||
ELSE '0'
|
||
END INTEREST,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.penalty_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN vl.penalty_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN vl.penalty_over
|
||
ELSE in_rent
|
||
END AS PENALTY,
|
||
'0' AS CORPUS_ADJUST,
|
||
'0' AS PENALTY_ADJUST,
|
||
'0' AS ROLL_BACK,
|
||
O.COIN AS COIN ,
|
||
ca.acc_number,
|
||
ca.bank_name,
|
||
ca.account,
|
||
oa.acc_bank,
|
||
lci.subjectname,
|
||
oa.acc_number,
|
||
'AutoBuckle'
|
||
FROM
|
||
LC_RENT_PLAN O,
|
||
VI_LC_RENT_PLAN vl
|
||
LEFT JOIN customer_account ca ON ca.contract_id=vl.contract_id
|
||
LEFT JOIN lb_contract_info lci ON vl.contract_id=lci.id
|
||
LEFT JOIN code_library cl ON cl.codeno='ManySubject' AND lci.subjectid=cl.itemno
|
||
LEFT JOIN own_account oa ON oa.own_id=cl.bankno AND oa.account_purpose='default' AND oa.state_='0010' AND (oa.account_type='in_account' OR oa.account_type='inAndOut_account') AND oa.acc_type='0010'
|
||
WHERE O.id = vl.id
|
||
AND vl.contract_id =ln_contract_id
|
||
AND vl.plan_date = ln_plan_date
|
||
GROUP BY oa.own_id) ;
|
||
|
||
-- 如果in_type=3就是经销商保证金代偿,in_hire_list为核销罚息金额
|
||
ELSEIF in_type = 3 THEN
|
||
INSERT INTO LC_RENT_INCOME (
|
||
ID,
|
||
QUOT_ID,
|
||
CUST_ID,
|
||
PROJECT_ID,
|
||
PROJECT_PLAN_NUMBER,
|
||
CONTRACT_ID,
|
||
CONTRACT_PLAN_NUMBER,
|
||
PAYMENT_NUMBER,
|
||
EBANK_NUMBER,
|
||
PLAN_ID,
|
||
PLAN_LIST,
|
||
INTEREST_ADJUST,
|
||
SETTLE_METHOD,
|
||
HIRE_LIST,
|
||
HIRE_DATE,
|
||
RENT,
|
||
CORPUS,
|
||
INTEREST,
|
||
PENALTY,
|
||
CORPUS_ADJUST,
|
||
PENALTY_ADJUST,
|
||
ROLL_BACK,
|
||
COIN,
|
||
hire_number,
|
||
hire_bank,
|
||
hire_account,
|
||
own_bank,
|
||
own_account,
|
||
own_number,
|
||
charge_way
|
||
)
|
||
(SELECT
|
||
REPLACE (UUID(), '-', '') AS id,
|
||
O.QUOT_ID AS QUOT_ID,
|
||
O.CUST_ID AS CUST_ID,
|
||
O.PROJECT_ID AS PROJECT_ID,
|
||
O.PROJECT_PLAN_NUMBER AS PROJECT_PLAN_NUMBER,
|
||
O.CONTRACT_ID AS CONTRACT_ID,
|
||
O.CONTRACT_PLAN_NUMBER AS CONTRACT_PLAN_NUMBER,
|
||
O.PAYMENT_NUMBER AS PAYMENT_NUMBER,
|
||
'' AS EBANK_NUMBER,
|
||
O.id AS PLAN_ID,
|
||
O.PLAN_LIST AS PLAN_LIST,
|
||
'0' AS INTEREST_ADJUST,
|
||
'settlemethod6' AS SETTLE_METHOD,
|
||
'1' AS HIRE_LIST,
|
||
DATE_FORMAT (CURDATE(),'%Y/%m/%d') AS HIRE_DATE,
|
||
vl.rent_over AS RENT,
|
||
vl.corpus_over AS CORPUS,
|
||
vl.interest_over AS INTEREST,
|
||
in_hire_list AS PENALTY,
|
||
'0' AS CORPUS_ADJUST,
|
||
penalty_over-in_hire_list AS PENALTY_ADJUST,
|
||
'0' AS ROLL_BACK,
|
||
O.COIN AS COIN ,
|
||
ca.acc_number,
|
||
ca.bank_name,
|
||
ca.account,
|
||
oa.acc_bank,
|
||
lci.subjectname,
|
||
oa.acc_number,
|
||
'AutoBuckle'
|
||
FROM
|
||
LC_RENT_PLAN O,
|
||
VI_LC_RENT_PLAN vl
|
||
LEFT JOIN customer_account ca ON ca.contract_id=vl.contract_id
|
||
LEFT JOIN lb_contract_info lci ON vl.contract_id=lci.id
|
||
LEFT JOIN code_library cl ON cl.codeno='ManySubject' AND lci.subjectid=cl.itemno
|
||
LEFT JOIN own_account oa ON oa.own_id=cl.bankno AND oa.account_purpose='default' AND oa.state_='0010' AND (oa.account_type='in_account' OR oa.account_type='inAndOut_account') AND oa.acc_type='0010'
|
||
WHERE O.id = vl.id
|
||
AND vl.contract_id =ln_contract_id
|
||
AND vl.plan_date = ln_plan_date
|
||
GROUP BY oa.own_id ) ;
|
||
|
||
-- in_type = 4 为微信还款
|
||
ELSEIF in_type = 4 THEN
|
||
INSERT INTO LC_RENT_INCOME (
|
||
ID,
|
||
QUOT_ID,
|
||
CUST_ID,
|
||
PROJECT_ID,
|
||
PROJECT_PLAN_NUMBER,
|
||
CONTRACT_ID,
|
||
CONTRACT_PLAN_NUMBER,
|
||
PAYMENT_NUMBER,
|
||
EBANK_NUMBER,
|
||
PLAN_ID,
|
||
PLAN_LIST,
|
||
INTEREST_ADJUST,
|
||
SETTLE_METHOD,
|
||
HIRE_LIST,
|
||
HIRE_DATE,
|
||
RENT,
|
||
CORPUS,
|
||
INTEREST,
|
||
PENALTY,
|
||
CORPUS_ADJUST,
|
||
PENALTY_ADJUST,
|
||
ROLL_BACK,
|
||
COIN,
|
||
hire_number,
|
||
hire_bank,
|
||
hire_account,
|
||
own_bank,
|
||
own_account,
|
||
own_number,
|
||
charge_way
|
||
)
|
||
(SELECT
|
||
REPLACE (UUID(), '-', '') AS id,
|
||
O.QUOT_ID AS QUOT_ID,
|
||
O.CUST_ID AS CUST_ID,
|
||
O.PROJECT_ID AS PROJECT_ID,
|
||
O.PROJECT_PLAN_NUMBER AS PROJECT_PLAN_NUMBER,
|
||
O.CONTRACT_ID AS CONTRACT_ID,
|
||
O.CONTRACT_PLAN_NUMBER AS CONTRACT_PLAN_NUMBER,
|
||
O.PAYMENT_NUMBER AS PAYMENT_NUMBER,
|
||
'' AS EBANK_NUMBER,
|
||
O.id AS PLAN_ID,
|
||
O.PLAN_LIST AS PLAN_LIST,
|
||
'0' AS INTEREST_ADJUST,
|
||
'settlemethod6' AS SETTLE_METHOD,
|
||
'1' AS HIRE_LIST,
|
||
DATE_FORMAT (CURDATE(),'%Y/%m/%d') AS HIRE_DATE,
|
||
vl.rent_over AS RENT,
|
||
vl.corpus_over AS CORPUS,
|
||
vl.interest_over AS INTEREST,
|
||
(
|
||
in_rent - vl.corpus_over - vl.interest_over
|
||
) AS PENALTY,
|
||
'0' AS CORPUS_ADJUST,
|
||
'0' AS PENALTY_ADJUST,
|
||
'0' AS ROLL_BACK,
|
||
O.COIN AS COIN ,
|
||
'',
|
||
'',
|
||
'',
|
||
CASE ln_plan_date WHEN 'WXPay' THEN '中国银行股份有限公司北京潘家园支行' ELSE lms.bank_name END,
|
||
CASE ln_plan_date WHEN 'WXPay' THEN '北京安鹏昌达资产管理有限公司' ELSE lms.acc_name END,
|
||
CASE ln_plan_date WHEN 'WXPay' THEN '344167318076' ELSE lms.acc_number END,
|
||
CASE ln_plan_date WHEN 'WXPay' THEN 'WXPay' ELSE 'WXUnionPay' END
|
||
FROM
|
||
LC_RENT_PLAN O,
|
||
VI_LC_RENT_PLAN vl
|
||
LEFT JOIN customer_account ca ON ca.contract_id=vl.contract_id
|
||
LEFT JOIN LB_MANY_SUBJECT lms ON lms.subject_id=vl.subjectid AND lms.is_enable='Y'
|
||
WHERE O.id = vl.id
|
||
AND vl.contract_id =ln_contract_id
|
||
AND vl.plan_list = in_hire_list ) ;
|
||
-- in_type = 5为通联扣款
|
||
ELSEIF in_type = 5 THEN
|
||
INSERT INTO LC_RENT_INCOME (
|
||
ID,
|
||
QUOT_ID,
|
||
CUST_ID,
|
||
PROJECT_ID,
|
||
PROJECT_PLAN_NUMBER,
|
||
CONTRACT_ID,
|
||
CONTRACT_PLAN_NUMBER,
|
||
PAYMENT_NUMBER,
|
||
EBANK_NUMBER,
|
||
PLAN_ID,
|
||
PLAN_LIST,
|
||
INTEREST_ADJUST,
|
||
SETTLE_METHOD,
|
||
HIRE_LIST,
|
||
HIRE_DATE,
|
||
RENT,
|
||
CORPUS,
|
||
INTEREST,
|
||
PENALTY,
|
||
CORPUS_ADJUST,
|
||
PENALTY_ADJUST,
|
||
ROLL_BACK,
|
||
COIN,
|
||
hire_number,
|
||
hire_bank,
|
||
hire_account,
|
||
own_bank,
|
||
own_account,
|
||
own_number,
|
||
charge_way
|
||
)
|
||
(SELECT
|
||
REPLACE (UUID (), '-', '') AS id,
|
||
O.QUOT_ID AS QUOT_ID,
|
||
O.CUST_ID AS CUST_ID,
|
||
O.PROJECT_ID AS PROJECT_ID,
|
||
O.PROJECT_PLAN_NUMBER AS PROJECT_PLAN_NUMBER,
|
||
O.CONTRACT_ID AS CONTRACT_ID,
|
||
O.CONTRACT_PLAN_NUMBER AS CONTRACT_PLAN_NUMBER,
|
||
O.PAYMENT_NUMBER AS PAYMENT_NUMBER,
|
||
'' AS EBANK_NUMBER,
|
||
O.id AS PLAN_ID,
|
||
O.PLAN_LIST AS PLAN_LIST,
|
||
'0' AS INTEREST_ADJUST,
|
||
'settlemethod6' AS SETTLE_METHOD,
|
||
in_hire_list AS HIRE_LIST,
|
||
DATE_FORMAT (CURDATE(),'%Y/%m/%d') AS HIRE_DATE,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.rent_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN in_rent-vl.penalty_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>vl.penalty_over THEN in_rent-vl.penalty_over
|
||
ELSE '0'
|
||
END RENT,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.corpus_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN in_rent-(vl.penalty_over+vl.interest_over)
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN '0'
|
||
ELSE '0'
|
||
END CORPUS,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.interest_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN vl.interest_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN in_rent-vl.penalty_over
|
||
ELSE '0'
|
||
END INTEREST,
|
||
CASE WHEN in_rent>=vl.corpus_over+vl.interest_over+vl.penalty_over THEN vl.penalty_over
|
||
WHEN in_rent<vl.corpus_over+vl.interest_over+vl.penalty_over AND in_rent>=vl.interest_over+vl.penalty_over THEN vl.penalty_over
|
||
WHEN in_rent<vl.interest_over+vl.penalty_over AND in_rent>=vl.penalty_over THEN vl.penalty_over
|
||
ELSE in_rent
|
||
END AS PENALTY,
|
||
'0' AS CORPUS_ADJUST,
|
||
'0' AS PENALTY_ADJUST,
|
||
'0' AS ROLL_BACK,
|
||
O.COIN AS COIN ,
|
||
ca.acc_number,
|
||
ca.bank_name,
|
||
ca.account,
|
||
oa.acc_bank,
|
||
lci.subjectname,
|
||
oa.acc_number,
|
||
'TLCollect'
|
||
FROM
|
||
LC_RENT_PLAN O,
|
||
VI_LC_RENT_PLAN vl
|
||
LEFT JOIN customer_account ca ON ca.contract_id=vl.contract_id
|
||
LEFT JOIN lb_contract_info lci ON vl.contract_id=lci.id
|
||
LEFT JOIN code_library cl ON cl.codeno='ManySubject' AND lci.subjectid=cl.itemno
|
||
LEFT JOIN own_account oa ON oa.own_id=cl.bankno AND oa.account_purpose='default' AND oa.state_='0010' AND (oa.account_type='in_account' OR oa.account_type='inAndOut_account') AND oa.acc_type='0010'
|
||
WHERE O.id = vl.id
|
||
AND vl.contract_id =ln_contract_id
|
||
AND vl.plan_date = ln_plan_date
|
||
GROUP BY oa.own_id) ;
|
||
ELSE
|
||
SELECT 1;
|
||
END IF;
|
||
END |