1.其它支付bug修复
This commit is contained in:
parent
7af6f84bca
commit
69a99ed836
@ -3,7 +3,7 @@ DELIMITER $$
|
||||
ALTER ALGORITHM=UNDEFINED DEFINER=`apzl`@`%` SQL SECURITY DEFINER VIEW `vi_lc_splitting_pay_list` AS (
|
||||
SELECT
|
||||
`o`.`ID` AS `ID`,
|
||||
`di`.`distributor_name` AS `distributor_name`,
|
||||
`di`.`DISTRIBUTOR_NAME` AS `distributor_name`,
|
||||
`lci`.`CONTRACT_NO` AS `contract_no`,
|
||||
`ci`.`customername` AS `customername`,
|
||||
`o`.`PLAN_LIST` AS `plan_list`,
|
||||
@ -17,9 +17,14 @@ SELECT
|
||||
`vlri`.`charge_way` AS `charge_way`
|
||||
FROM (((((`apzl`.`lc_rent_plan` `o`
|
||||
LEFT JOIN `apzl`.`lb_contract_info` `lci`
|
||||
ON ((`lci`.`ID` = `o`.`CONTRACT_ID`)))
|
||||
ON ((`lci`.`ID` = `o`.`CONTRACT_ID`))
|
||||
LEFT JOIN lc_calc_condition lcc ON lcc.contract_id=lci.id
|
||||
LEFT JOIN LC_COMMISSION_CHARGE_CONFIG lccc ON lccc.product_id=lci.product_id AND lccc.distributor_id=lci.distributor_id AND lccc.INCOME_NUMBER = lcc.lease_term
|
||||
)
|
||||
LEFT JOIN `apzl`.`distributor_info` `di`
|
||||
ON ((`di`.`distributor_no` = `lci`.`distributor_id`)))
|
||||
ON ((`di`.`distributor_no` = `lci`.`distributor_id`))
|
||||
|
||||
)
|
||||
LEFT JOIN `apzl`.`lb_union_lessee` `lul`
|
||||
ON ((`lul`.`CONTRACT_ID` = `lci`.`ID`)))
|
||||
LEFT JOIN `apzl`.`customer_info` `ci`
|
||||
@ -36,6 +41,9 @@ WHERE ((`o`.`CORPUS_SP` IS NOT NULL)
|
||||
AND (((((`vlri`.`rent` + IFNULL(`vlri`.`penalty`,0)) - `o`.`RENT`) - IFNULL(`o`.`PENALTY`,0)) >= 0)
|
||||
OR (`o`.`COLLECT_STATUS` = '´ú³¥'))
|
||||
AND ((`o`.`splitting_status` = 'N')
|
||||
OR ISNULL(`o`.`splitting_status`))))$$
|
||||
OR ISNULL(`o`.`splitting_status`))
|
||||
AND ISNULL(lccc.id)
|
||||
)
|
||||
)$$
|
||||
|
||||
DELIMITER ;
|
||||
@ -4,17 +4,33 @@ CREATE
|
||||
AS
|
||||
(
|
||||
SELECT
|
||||
lci.distributor_id AS distributor_id,
|
||||
lci.id AS contract_id,
|
||||
lci.CONTRACT_NO AS CONTRACT_NO,
|
||||
lrp.PLAN_LIST AS plan_list,
|
||||
CASE WHEN lrp.plan_list<lccc.charge_1 THEN 0 WHEN lrp.plan_list>=lccc.charge_1 AND lrp.plan_list<lccc.charge_2 THEN lccc.charge_1 WHEN lrp.plan_list>=lccc.charge_2 AND lrp.plan_list<lccc.charge_3 THEN lccc.charge_2 WHEN lrp.plan_list>=lccc.charge_3 AND lrp.plan_list<lccc.charge_4 THEN lccc.charge_3 WHEN lrp.plan_list>=lccc.charge_4 THEN lccc.charge_4 ELSE 0 END lccc_charge,
|
||||
CASE WHEN lrp.plan_list<lccc.charge_1 THEN 0 WHEN lrp.plan_list>=lccc.charge_1 AND lrp.plan_list<lccc.charge_2 THEN lccc.ratio_1 WHEN lrp.plan_list>=lccc.charge_2 AND lrp.plan_list<lccc.charge_3 THEN lccc.ratio_2 WHEN lrp.plan_list>=lccc.charge_3 AND lrp.plan_list<lccc.charge_4 THEN lccc.ratio_3 WHEN lrp.plan_list>=lccc.charge_4 THEN lccc.ratio_4 ELSE 0 END lccc_ratio
|
||||
|
||||
FROM lc_commission_charge_config lccc
|
||||
LEFT JOIN apzl.lb_contract_info lci
|
||||
ON lccc.product_id = lci.PRODUCT_ID AND lccc.distributor_id=lci.distributor_id
|
||||
LEFT JOIN (SELECT contract_id,MAX(plan_list) AS plan_list,COLLECT_STATUS,interest_sp FROM lc_rent_plan WHERE 1=1 AND COLLECT_STATUS IN ('微信', '网银收款', '代偿', '批量收款','手工收款') GROUP BY contract_id) lrp
|
||||
ON lci.ID = lrp.CONTRACT_ID
|
||||
WHERE lci.id NOT IN(SELECT contract_id FROM lc_split_occupy_process) AND lrp.plan_list IS NOT NULL AND lrp.interest_sp IS NOT NULL
|
||||
`lci`.`distributor_id` AS `distributor_id`,
|
||||
`lci`.`ID` AS `contract_id`,
|
||||
`lci`.`CONTRACT_NO` AS `CONTRACT_NO`,
|
||||
`lrp`.`plan_list` AS `plan_list`,
|
||||
(CASE WHEN (`lrp`.`plan_list` < `lccc`.`charge_1`) THEN 0 WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_1`) AND ((`lrp`.`plan_list` < `lccc`.`charge_2`) OR (`lccc`.`charge_2` = 0))) THEN `lccc`.`charge_1` WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_2`) AND ((`lrp`.`plan_list` < `lccc`.`charge_3`) OR (`lccc`.`charge_3` = 0))) THEN `lccc`.`charge_2` WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_3`) AND ((`lrp`.`plan_list` < `lccc`.`charge_4`) OR (`lccc`.`charge_4` = 0))) THEN `lccc`.`charge_3` WHEN (`lrp`.`plan_list` >= `lccc`.`charge_4`) THEN `lccc`.`charge_4` ELSE 0 END) AS `lccc_charge`,
|
||||
(CASE WHEN (`lrp`.`plan_list` < `lccc`.`charge_1`) THEN 0 WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_1`) AND ((`lrp`.`plan_list` < `lccc`.`charge_2`) OR (`lccc`.`charge_2` = 0))) THEN `lccc`.`ratio_1` WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_2`) AND ((`lrp`.`plan_list` < `lccc`.`charge_3`) OR (`lccc`.`charge_3` = 0))) THEN `lccc`.`ratio_2` WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_3`) AND ((`lrp`.`plan_list` < `lccc`.`charge_4`) OR (`lccc`.`charge_4` = 0))) THEN `lccc`.`ratio_3` WHEN (`lrp`.`plan_list` >= `lccc`.`charge_4`) THEN `lccc`.`ratio_4` ELSE 0 END) AS `lccc_ratio`,
|
||||
(CASE WHEN (`lrp`.`plan_list` < `lccc`.`charge_1`) THEN 0 WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_1`) AND ((`lrp`.`plan_list` < `lccc`.`charge_2`) OR (`lccc`.`charge_2` = 0))) THEN 1 WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_2`) AND ((`lrp`.`plan_list` < `lccc`.`charge_3`) OR (`lccc`.`charge_3` = 0))) THEN 2 WHEN ((`lrp`.`plan_list` >= `lccc`.`charge_3`) AND ((`lrp`.`plan_list` < `lccc`.`charge_4`) OR (`lccc`.`charge_4` = 0))) THEN 3 WHEN (`lrp`.`plan_list` >= `lccc`.`charge_4`) THEN 4 ELSE 0 END) AS `lccc_list`
|
||||
FROM ((`apzl`.`lc_commission_charge_config` `lccc`
|
||||
LEFT JOIN (SELECT ci.product_id,ci.distributor_id,ci.id,ci.contract_no,lcc.lease_term FROM `apzl`.`lb_contract_info` ci JOIN lc_calc_condition lcc ON ci.id=lcc.contract_id ) `lci`
|
||||
ON (((`lccc`.`product_id` = `lci`.`PRODUCT_ID`)
|
||||
AND (`lccc`.`distributor_id` = `lci`.`distributor_id`))
|
||||
AND lccc.income_number=lci.lease_term))
|
||||
LEFT JOIN (SELECT
|
||||
`apzl`.`lc_rent_plan`.`CONTRACT_ID` AS `contract_id`,
|
||||
MAX(`apzl`.`lc_rent_plan`.`PLAN_LIST`) AS `plan_list`,
|
||||
`apzl`.`lc_rent_plan`.`COLLECT_STATUS` AS `COLLECT_STATUS`,
|
||||
`apzl`.`lc_rent_plan`.`INTEREST_sp` AS `interest_sp`,
|
||||
COUNT(0) AS `plan_count`
|
||||
FROM `apzl`.`lc_rent_plan`
|
||||
WHERE ((1 = 1)
|
||||
AND (`apzl`.`lc_rent_plan`.`COLLECT_STATUS` IN('微信','网银收款','代偿','批量收款','手工收款')))
|
||||
GROUP BY `apzl`.`lc_rent_plan`.`CONTRACT_ID`) `lrp`
|
||||
ON ((`lci`.`ID` = `lrp`.`contract_id`)))
|
||||
WHERE ((NOT(`lci`.`ID` IN(SELECT
|
||||
`apzl`.`lc_split_occupy_process`.`contract_id`
|
||||
FROM `apzl`.`lc_split_occupy_process`)))
|
||||
AND (`lrp`.`plan_list` IS NOT NULL)
|
||||
AND (`lrp`.`interest_sp` IS NOT NULL)
|
||||
AND (`lrp`.`plan_count` = `lrp`.`plan_list`))
|
||||
);
|
||||
|
||||
@ -33,7 +33,7 @@ FROM (((`apzl`.`vi_split_config` `o`
|
||||
LEFT JOIN `apzl`.`lb_union_lessee` `lul`
|
||||
ON (((`lul`.`CONTRACT_ID` = `o`.`contract_id`)
|
||||
AND (`lul`.`IS_MAIN` = 'Y'))))
|
||||
WHERE (lsp.pay_list<>O.lccc_charge
|
||||
WHERE (IFNULL(lsp.pay_list,0)<>O.lccc_charge
|
||||
AND (`o`.`lccc_charge` > 0))
|
||||
|
||||
)$$
|
||||
|
||||
@ -142,6 +142,7 @@ public class OtherPayMethod {
|
||||
try {
|
||||
BizObjectManager bomLspt = JBOFactory.getBizObjectManager(LC_SPLITTING_PAY_TEMP.CLASS_NAME,tx);
|
||||
BizObject bolspt = bomLspt.newObject();
|
||||
bolspt.setAttributeValue("contract_id", boLRP.getAttribute("CONTRACT_ID").toString());
|
||||
bolspt.setAttributeValue("plan_id", plan_id);
|
||||
bolspt.setAttributeValue("splitting_money", splitting_money);
|
||||
bolspt.setAttributeValue("service_ratio", ratio.multiply(new BigDecimal("100")).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user