|
@@ -3,37 +3,60 @@
|
|
|
<mapper namespace="com.fjhx.sale.mapper.contract.ContractProductMapper">
|
|
|
|
|
|
<select id="getPage" resultType="com.fjhx.sale.entity.contract.vo.ContractProductVo">
|
|
|
- SELECT t1.id,
|
|
|
- t2.create_time AS contractTime,
|
|
|
- t1.contract_id,
|
|
|
- t1.product_id,
|
|
|
- t2.`code` AS contractCode,
|
|
|
- t2.user_name AS userName,
|
|
|
- t2.create_user AS salesmanId,
|
|
|
- t2.version AS contractVersion,
|
|
|
- t1.expend_quantity AS expendQuantity,
|
|
|
- (SELECT create_time
|
|
|
- FROM claim_contract
|
|
|
- WHERE contract_id = t2.id
|
|
|
- ORDER BY create_time DESC
|
|
|
- LIMIT 1) AS claimTime,
|
|
|
- t2.contract_template_id AS contractTemplateId,
|
|
|
- t1.quantity,
|
|
|
- (SELECT
|
|
|
- if(sum( pd.count ) is null,0,sum( pd.count ))
|
|
|
+ SELECT
|
|
|
+ *
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ t1.id,
|
|
|
+ t2.create_time AS contractTime,
|
|
|
+ t1.contract_id,
|
|
|
+ t1.product_id,
|
|
|
+ t2.`code` AS contractCode,
|
|
|
+ t2.user_name AS userName,
|
|
|
+ t2.create_user AS salesmanId,
|
|
|
+ t2.version AS contractVersion,
|
|
|
+ t1.expend_quantity AS expendQuantity,
|
|
|
+ ( SELECT create_time FROM claim_contract WHERE contract_id = t2.id ORDER BY create_time DESC LIMIT 1 ) AS claimTime,
|
|
|
+ t2.contract_template_id AS contractTemplateId,
|
|
|
+ t1.quantity,
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ IF
|
|
|
+ (
|
|
|
+ sum( pd.count ) IS NULL,
|
|
|
+ 0,
|
|
|
+ sum( pd.count ))
|
|
|
FROM
|
|
|
bytesailing_purchase.purchase_detail pd
|
|
|
- LEFT JOIN bytesailing_purchase.purchase p ON pd.purchase_id = p.id
|
|
|
+ LEFT JOIN bytesailing_purchase.purchase p ON pd.purchase_id = p.id
|
|
|
WHERE
|
|
|
p.purchase_status = 10
|
|
|
- and pd.data_resource_id = t1.id
|
|
|
- ) as startPurchaseCount
|
|
|
- FROM contract_product t1
|
|
|
+ AND pd.data_resource_id = t1.id
|
|
|
+ ) AS startPurchaseCount,
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ IFNULL( SUM( IFNULL( cc.money, 0 ) * IFNULL( arw.rate, 1 )), 0 )
|
|
|
+ FROM
|
|
|
+ claim_contract cc
|
|
|
+ LEFT JOIN claim c ON cc.claim_id = c.id
|
|
|
+ LEFT JOIN bytesailing_account.account_running_water arw ON c.business_id = arw.id
|
|
|
+ WHERE
|
|
|
+ cc.contract_id = t2.id
|
|
|
+ ) / t2.amount * 100 AS ad,
|
|
|
+ t2.advance_ratio AS advanceRatio
|
|
|
+ FROM
|
|
|
+ contract_product t1
|
|
|
LEFT JOIN contract t2
|
|
|
- LEFT JOIN claim_contract co
|
|
|
- on co.contract_id = t2.id
|
|
|
- ON t1.contract_id = t2.id
|
|
|
+ LEFT JOIN claim_contract co ON co.contract_id = t2.id ON t1.contract_id = t2.id
|
|
|
${ew.customSqlSegment}
|
|
|
+ ) t1
|
|
|
+ <where>
|
|
|
+ <if test="isArrival neq null" >
|
|
|
+ t1.ad < t1.advanceRatio
|
|
|
+ </if>
|
|
|
+
|
|
|
+ </where>
|
|
|
</select>
|
|
|
|
|
|
<select id="getEHSDPage" resultType="com.fjhx.sale.entity.contract.vo.ContractProductVo">
|