|
|
|
@ -102,8 +102,342 @@
|
|
|
|
|
</collection>
|
|
|
|
|
|
|
|
|
|
</resultMap>
|
|
|
|
|
|
|
|
|
|
<select id="getMobileDate" resultMap="contractMobileDate">
|
|
|
|
|
SELECT
|
|
|
|
|
*
|
|
|
|
|
FROM
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
a.*,
|
|
|
|
|
@doneNum :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( SUM( b.settlement ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = b.sales_id
|
|
|
|
|
AND ( b.sales_status != '99' OR ISNULL( b.sales_status ) )
|
|
|
|
|
AND ( b.sales_status != '0' OR ISNULL( b.sales_status ) )
|
|
|
|
|
AND b.pound_status = '0'
|
|
|
|
|
AND b.delete_mark = '0'
|
|
|
|
|
) doneNum,
|
|
|
|
|
@contractNum := (
|
|
|
|
|
IFNULL( a.num, 0 )) contractNum,
|
|
|
|
|
ROUND( @contractNum - @doneNum, 6 ) unfinishedNum,
|
|
|
|
|
round( IFNULL( @doneNum / @contractNum * 100, 0 ), 2 ) SCHEDULE,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( b3.sales_price * IFNULL( SUM( b3.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b3
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = b3.sales_id
|
|
|
|
|
AND ( b3.sales_status != '99' OR ISNULL( b3.sales_status ) )
|
|
|
|
|
AND ( b3.sales_status != '0' OR ISNULL( b3.sales_status ) )
|
|
|
|
|
AND b3.pound_status = '0'
|
|
|
|
|
AND b3.advance = '1'
|
|
|
|
|
AND b3.delete_mark = '0'
|
|
|
|
|
) amountDeposit,
|
|
|
|
|
ROUND(@doneNum,6) sellNum,
|
|
|
|
|
ROUND((
|
|
|
|
|
CASE
|
|
|
|
|
|
|
|
|
|
WHEN timestampdiff(
|
|
|
|
|
DAY,
|
|
|
|
|
DATE (
|
|
|
|
|
NOW()),
|
|
|
|
|
DATE_ADD( a.end_date, INTERVAL a.collection_cycle DAY ))> 0 THEN
|
|
|
|
|
0 ELSE ( @tradePaymentAmount + @machinePaymentAmount + @outsourcePaymentAmount + @cheapPaymentAmount - @collectedAmount )* IFNULL( a.overdue, 0 )
|
|
|
|
|
END
|
|
|
|
|
),
|
|
|
|
|
6
|
|
|
|
|
) overdueInterest,
|
|
|
|
|
ROUND( @salesAmount - @tradePurchaseAmount -( @machineCostAmount + @outsourceCostAmount + @cheapCostAmount ), 6 ) netMargin,
|
|
|
|
|
@salesAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( b.sales_price * IFNULL( SUM( b.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = b.sales_id
|
|
|
|
|
AND ( b.sales_status != '99' OR ISNULL( b.sales_status ) )
|
|
|
|
|
AND ( b.sales_status != '0' OR ISNULL( b.sales_status ) )
|
|
|
|
|
AND b.pound_status = '0'
|
|
|
|
|
AND b.delete_mark = '0'
|
|
|
|
|
) salesAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( b1.sales_price * IFNULL( SUM( b1.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b1
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = b1.sales_id
|
|
|
|
|
AND ( b1.sales_status != '99' OR ISNULL( b1.sales_status ) )
|
|
|
|
|
AND ( b1.sales_status != '0' OR ISNULL( b1.sales_status ) )
|
|
|
|
|
AND b1.pound_status = '0'
|
|
|
|
|
AND b1.is_expense = '1'
|
|
|
|
|
AND b1.delete_mark = '0'
|
|
|
|
|
) invoiceAmount,
|
|
|
|
|
@collectedAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( b2.sales_price * IFNULL( SUM( b2.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b2
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = b2.sales_id
|
|
|
|
|
AND ( b2.sales_status != '99' OR ISNULL( b2.sales_status ) )
|
|
|
|
|
AND ( b2.sales_status != '0' OR ISNULL( b2.sales_status ) )
|
|
|
|
|
AND b2.pound_status = '0'
|
|
|
|
|
AND b2.is_collection = '1'
|
|
|
|
|
AND b2.delete_mark = '0'
|
|
|
|
|
) collectedAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( SUM( c.settlement ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist c
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = c.sales_id
|
|
|
|
|
AND c.pound_status = '0'
|
|
|
|
|
AND c.pound_type = '0'
|
|
|
|
|
AND ( c.purchase_status = '2' OR c.purchase_status = '3' )
|
|
|
|
|
AND c.delete_mark = '0'
|
|
|
|
|
) purchaseNum,
|
|
|
|
|
@tradePurchaseAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( c.sales_price * IFNULL( SUM( c.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist c
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = c.sales_id
|
|
|
|
|
AND c.pound_status = '0'
|
|
|
|
|
AND c.pound_type = '0'
|
|
|
|
|
AND ( c.purchase_status = '2' OR c.purchase_status = '3' )) tradePurchaseAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( c1.sales_price * IFNULL( SUM( c1.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist c1
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = c1.sales_id
|
|
|
|
|
AND c1.pound_status = '0'
|
|
|
|
|
AND c1.pound_type = '0'
|
|
|
|
|
AND ( c1.purchase_status = '2' OR c1.purchase_status = '3' )
|
|
|
|
|
AND c1.is_Invoicing = '1'
|
|
|
|
|
AND c1.delete_mark = '0'
|
|
|
|
|
) tradeInvoiceAmount,
|
|
|
|
|
@tradePaymentAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( c2.sales_price * IFNULL( SUM( c2.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist c2
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = c2.sales_id
|
|
|
|
|
AND c2.pound_status = '0'
|
|
|
|
|
AND c2.pound_type = '0'
|
|
|
|
|
AND ( c2.purchase_status = '2' OR c2.purchase_status = '3' )
|
|
|
|
|
AND c2.is_pay = '1'
|
|
|
|
|
AND c2.delete_mark = '0'
|
|
|
|
|
) tradePaymentAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( SUM( d.settlement ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist d
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = d.sales_id
|
|
|
|
|
AND d.pound_status = '0'
|
|
|
|
|
AND d.pound_type = '1'
|
|
|
|
|
AND ( d.purchase_status = '2' OR d.purchase_status = '3' )
|
|
|
|
|
AND d.delete_mark = '0'
|
|
|
|
|
) machineNum,
|
|
|
|
|
@machineCostAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( d.sales_price * IFNULL( SUM( d.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist d
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = d.sales_id
|
|
|
|
|
AND d.pound_status = '0'
|
|
|
|
|
AND d.pound_type = '1'
|
|
|
|
|
AND ( d.purchase_status = '2' OR d.purchase_status = '3' )
|
|
|
|
|
AND d.delete_mark = '0'
|
|
|
|
|
) machineCostAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( d1.sales_price * IFNULL( SUM( d1.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist d1
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = d1.sales_id
|
|
|
|
|
AND d1.pound_status = '0'
|
|
|
|
|
AND d1.pound_type = '1'
|
|
|
|
|
AND ( d1.purchase_status = '2' OR d1.purchase_status = '3' )
|
|
|
|
|
AND d1.is_Invoicing = '1'
|
|
|
|
|
AND d1.delete_mark = '0'
|
|
|
|
|
) machinePurchaseAmount,
|
|
|
|
|
@machinePaymentAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( d2.sales_price * IFNULL( SUM( d2.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist d2
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = d2.sales_id
|
|
|
|
|
AND d2.pound_status = '0'
|
|
|
|
|
AND d2.pound_type = '1'
|
|
|
|
|
AND ( d2.purchase_status = '2' OR d2.purchase_status = '3' )
|
|
|
|
|
AND d2.is_pay = '1'
|
|
|
|
|
AND d2.delete_mark = '0'
|
|
|
|
|
) machinePaymentAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( SUM( e.settlement ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist e
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = e.sales_id
|
|
|
|
|
AND e.pound_status = '0'
|
|
|
|
|
AND e.pound_type = '2'
|
|
|
|
|
AND ( e.purchase_status = '2' OR e.purchase_status = '3' )
|
|
|
|
|
AND e.delete_mark = '0'
|
|
|
|
|
) outsourceNum,
|
|
|
|
|
@outsourceCostAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( e.sales_price * IFNULL( SUM( e.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist e
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = e.sales_id
|
|
|
|
|
AND e.pound_status = '0'
|
|
|
|
|
AND e.pound_type = '2'
|
|
|
|
|
AND ( e.purchase_status = '2' OR e.purchase_status = '3' )
|
|
|
|
|
AND e.delete_mark = '0'
|
|
|
|
|
) outsourceCostAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( e1.sales_price * IFNULL( SUM( e1.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist e1
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = e1.sales_id
|
|
|
|
|
AND e1.pound_status = '0'
|
|
|
|
|
AND e1.pound_type = '2'
|
|
|
|
|
AND ( e1.purchase_status = '2' OR e1.purchase_status = '3' )
|
|
|
|
|
AND e1.is_Invoicing = '1'
|
|
|
|
|
AND e1.delete_mark = '0'
|
|
|
|
|
) outsourcePurchaseAmount,
|
|
|
|
|
@outsourcePaymentAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( e2.sales_price * IFNULL( SUM( e2.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist e2
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = e2.sales_id
|
|
|
|
|
AND e2.pound_status = '0'
|
|
|
|
|
AND e2.pound_type = '2'
|
|
|
|
|
AND ( e2.purchase_status = '2' OR e2.purchase_status = '3' )
|
|
|
|
|
AND e2.is_pay = '1'
|
|
|
|
|
AND e2.delete_mark = '0'
|
|
|
|
|
) outsourcePaymentAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( SUM( f.settlement ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist f
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = f.sales_id
|
|
|
|
|
AND f.pound_status = '0'
|
|
|
|
|
AND f.pound_type = '3'
|
|
|
|
|
AND ( f.purchase_status = '2' OR f.purchase_status = '3' )
|
|
|
|
|
AND f.delete_mark = '0'
|
|
|
|
|
) cheapNum,
|
|
|
|
|
@cheapCostAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( f.sales_price * IFNULL( SUM( f.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist f
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = f.sales_id
|
|
|
|
|
AND f.pound_status = '0'
|
|
|
|
|
AND f.pound_type = '3'
|
|
|
|
|
AND ( f.purchase_status = '2' OR f.purchase_status = '3' )
|
|
|
|
|
AND f.delete_mark = '0'
|
|
|
|
|
) cheapCostAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( f1.sales_price * IFNULL( SUM( f1.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist f1
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = f1.sales_id
|
|
|
|
|
AND f1.pound_status = '0'
|
|
|
|
|
AND f1.pound_type = '3'
|
|
|
|
|
AND ( f1.purchase_status = '2' OR f1.purchase_status = '3' )
|
|
|
|
|
AND f1.is_Invoicing = '1'
|
|
|
|
|
AND f1.delete_mark = '0'
|
|
|
|
|
) cheapPurchaseAmount,
|
|
|
|
|
@cheapPaymentAmount :=(
|
|
|
|
|
SELECT
|
|
|
|
|
ROUND( IFNULL( f2.sales_price * IFNULL( SUM( f2.settlement ), 0 ), 0 ), 6 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist f2
|
|
|
|
|
WHERE
|
|
|
|
|
a.id = f2.sales_id
|
|
|
|
|
AND f2.pound_status = '0'
|
|
|
|
|
AND f2.pound_type = '3'
|
|
|
|
|
AND ( f2.purchase_status = '2' OR f2.purchase_status = '3' )
|
|
|
|
|
AND f2.is_pay = '1'
|
|
|
|
|
AND f2.delete_mark = '0'
|
|
|
|
|
) cheapPaymentAmount,
|
|
|
|
|
( SELECT g.supplier_nm FROM jg_customer g WHERE a.CODE = g.id AND g.delete_mark = '0' ) supperName,
|
|
|
|
|
pur.pContractName,
|
|
|
|
|
pur.pSupperName,
|
|
|
|
|
pur.pNum,
|
|
|
|
|
pur.pAmount,
|
|
|
|
|
pur.pDoneNum,
|
|
|
|
|
pur.pUnfinishedNum
|
|
|
|
|
FROM
|
|
|
|
|
jg_contract a
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
b.sales_id id,
|
|
|
|
|
h.contract_name pContractName,
|
|
|
|
|
j.supplier_name pSupperName,
|
|
|
|
|
h.num pNum,
|
|
|
|
|
h.amount pAmount,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
IFNULL( SUM( i.settlement ), 0 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist i
|
|
|
|
|
WHERE
|
|
|
|
|
h.id = i.purchase_id
|
|
|
|
|
AND ( i.purchase_status = '2' OR i.purchase_status = '3' )
|
|
|
|
|
AND i.pound_status = '0'
|
|
|
|
|
AND i.delete_mark = '0'
|
|
|
|
|
) pDoneNum,
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
IFNULL ( h.num, 0 ) - IFNULL( SUM( i.settlement ), 0 )
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist i
|
|
|
|
|
WHERE
|
|
|
|
|
h.id = i.purchase_id
|
|
|
|
|
AND ( i.purchase_status = '2' OR i.purchase_status = '3' )
|
|
|
|
|
AND i.pound_status = '0'
|
|
|
|
|
AND i.delete_mark = '0'
|
|
|
|
|
) pUnfinishedNum
|
|
|
|
|
FROM
|
|
|
|
|
jg_poundlist b
|
|
|
|
|
LEFT JOIN jg_contract h ON b.purchase_id = h.id
|
|
|
|
|
AND h.delete_mark = '0'
|
|
|
|
|
LEFT JOIN jg_supplier j ON h.CODE = j.id
|
|
|
|
|
AND j.delete_mark = '0'
|
|
|
|
|
) pur ON a.id = pur.id
|
|
|
|
|
) aaa ${ew.customSqlSegment}
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="getMobileDatee" resultMap="contractMobileDate">
|
|
|
|
|
SELECT
|
|
|
|
|
*
|
|
|
|
|
FROM
|
|
|
|
|