|
@@ -8,7 +8,7 @@
|
|
|
fc.claim_amount as realAmount,
|
|
|
mp.report_no,
|
|
|
IF
|
|
|
- ( fc.claim_datetime > mp.save_file_date, fc.claim_datetime, mp.save_file_date ) AS settleDate,
|
|
|
+ ( fc.claim_datetime > mp.delivery_date, fc.claim_datetime, mp.delivery_date ) AS settleDate,
|
|
|
mp.NAME,
|
|
|
mp.created,
|
|
|
dd.NAME AS businessCate,
|
|
@@ -31,38 +31,50 @@
|
|
|
WHERE
|
|
|
deleted = 0
|
|
|
AND production_fund_id IS NOT NULL
|
|
|
- AND claim_datetime >= #{vo.startDate}
|
|
|
- AND claim_datetime <= #{vo.endDate}
|
|
|
- UNION ALL
|
|
|
+
|
|
|
+ ) fc
|
|
|
+ INNER JOIN ( SELECT id,order_fund_id, business_id, production_no FROM production_fund WHERE business_type = 'MAJOR_BUSINESS' AND deleted = 0 ) pf ON ( pf.id = fc.production_fund_id AND pf.order_fund_id = fc.order_fund_id )
|
|
|
+ INNER JOIN (
|
|
|
SELECT
|
|
|
- allot_amount AS claim_amount,
|
|
|
- order_fund_id,
|
|
|
- production_fund_id,
|
|
|
- created AS claim_datetime
|
|
|
+ id,
|
|
|
+ major_id,
|
|
|
+ NAME,
|
|
|
+ report_no,
|
|
|
+ production,
|
|
|
+ evaluate_amount,
|
|
|
+ delivery_date,
|
|
|
+ fund.real_amount,
|
|
|
+ created
|
|
|
FROM
|
|
|
- order_fund_allot
|
|
|
+ major_production mpr
|
|
|
+ INNER JOIN ( SELECT production_no, real_amount, production_type FROM production_fund WHERE deleted = 0 AND business_type = 'MAJOR_BUSINESS' ) fund ON ( fund.production_no = mpr.report_no AND fund.production_type = mpr.production )
|
|
|
WHERE
|
|
|
- deleted = 0
|
|
|
- AND created >= #{vo.startDate}
|
|
|
- AND created <= #{vo.endDate}
|
|
|
- ) fc
|
|
|
- INNER JOIN ( SELECT id,order_fund_id, business_id, production_no FROM production_fund WHERE business_type = 'MAJOR_BUSINESS' AND deleted = 0 ) pf ON ( pf.id = fc.production_fund_id AND pf.order_fund_id = fc.order_fund_id )
|
|
|
- INNER JOIN ( SELECT id, major_id, NAME, report_no, production, save_file_date, delivery_date,created FROM major_production WHERE deleted = 0 ) mp ON mp.report_no = pf.production_no
|
|
|
+ fund.real_amount IS NOT NULL
|
|
|
+ AND mpr.delivery_date IS NOT NULL
|
|
|
+ ) mp ON mp.report_no = pf.production_no
|
|
|
LEFT JOIN major m ON m.id = mp.major_id
|
|
|
INNER JOIN ( SELECT id,business_id, production_id, business_type ,commission_rate_id FROM commission_declare WHERE deleted = 0 AND declare_result = '审核通过' ) cd ON (
|
|
|
- cd.business_id = m.id
|
|
|
- AND ( cd.production_id IS NULL OR cd.production_id = mp.id ))
|
|
|
+ cd.business_id = m.id
|
|
|
+ AND ( cd.production_id = mp.id ))
|
|
|
LEFT JOIN business_commission_rate bcr ON bcr.id = cd.commission_rate_id
|
|
|
LEFT JOIN dict_data dd ON dd.id = bcr.business_cate_id
|
|
|
LEFT JOIN ( SELECT id,major_id,user_type, major_production_id, user_id, ratio ,declare_id FROM major_production_allot WHERE deleted = 0 ) mpa
|
|
|
- ON ( mpa.major_id = m.id and (mpa.major_production_id is null or mpa.major_production_id = mp.id )
|
|
|
+ ON ( mpa.major_id = m.id and mpa.major_production_id = mp.id
|
|
|
and if(mpa.user_type='MARKET','COMMISSION_DECLARE_MAJOR_MARKET','COMMISSION_DECLARE_MAJOR_EVALUATE') = cd.business_type
|
|
|
- )
|
|
|
- and if(mpa.user_type='MARKET',mp.delivery_date is not null,mp.save_file_date is not null)
|
|
|
+ )
|
|
|
+
|
|
|
left join user u on u.id = mpa.user_id
|
|
|
|
|
|
WHERE
|
|
|
u.id= #{vo.userId}
|
|
|
+ <if test="vo!=null and vo.startDate!=null and vo.startDate!='' ">
|
|
|
+ AND (select IF
|
|
|
+ ( fc.claim_datetime > mp.delivery_date, fc.claim_datetime, mp.delivery_date )) >= #{vo.startDate}
|
|
|
+ </if>
|
|
|
+ <if test="vo!=null and vo.endDate!=null and vo.endDate!='' ">
|
|
|
+ AND (select IF
|
|
|
+ ( fc.claim_datetime > mp.delivery_date, fc.claim_datetime, mp.delivery_date )) <= #{vo.endDate}
|
|
|
+ </if>
|
|
|
order by settleDate DESC
|
|
|
</select>
|
|
|
|