Commit f310dd19 by wukaiqiang

经营类统计初版

parent 4dfb290d
......@@ -3,8 +3,8 @@
<specification>1.0</specification>
<id>21639dfb-910e-4054-826a-e6f051faf965</id>
<name>com.xyst.dinas.statistics.advanquery.OperationsDailyReportsAdvQuery</name>
<title>回款明细</title>
<description>回款明细</description>
<title>经营日报</title>
<description>经营日报</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
......@@ -12,77 +12,50 @@
<sql-type>SQL</sql-type>
<sql>
SELECT
artificialRecharge.id as id,
artificialRecharge.createTime AS createTime,
purchaseSandCompanyon.name AS purchaseSandUnit,
projectFiled.projectName AS project,
CASE
WHEN artificialRecharge.fundType ='DEPOSIT' then '保证金充值'
ELSE '预付款充值'
END
as fundType,
artificialRecharge.rechargeAmount AS rechargeAmount,
'' AS actualRefundAmount,
artificialRecharge.remark AS remark
FROM
ArtificialRecharge as artificialRecharge
LEFT JOIN PurchaseSandCompany as purchaseSandCompanyon on purchaseSandCompanyon.id = artificialRecharge.purchaseSandUnit
LEFT JOIN ProjectFiled AS projectFiled ON projectFiled.id = artificialRecharge.project
WHERE artificialRecharge.regionalCompany = :?regionalCompanyId
AND (artificialRecharge.createTime &gt;= :?startDate AND artificialRecharge.createTime &lt; :?endDate)
AND purchaseSandCompanyon.name LIKE :?purchaseSandCompanyonName
AND projectFiled.projectName LIKE :?projectName
UNION ALL
SELECT
expenseAdjust.id as id,
expenseAdjust.createTime AS createTime,
purchaseSandCompanyon.name AS purchaseSandUnit,
projectFiled.projectName AS project,
CASE
WHEN expenseAdjust.fundType ='DEPOSIT' then '保证金费用调整'
ELSE '预付款费用调整'
END
as fundType,
CASE
WHEN expenseAdjust.expenseAdjustAmount &gt;= '0' THEN
expenseAdjust.expenseAdjustAmount ELSE ''
END AS expenseAdjustAmount,
CASE
WHEN expenseAdjust.expenseAdjustAmount &lt; '0'
THEN (- expenseAdjust.expenseAdjustAmount) ELSE ''
END AS actualRefundAmount,
expenseAdjust.remark AS remark
FROM
ExpenseAdjust as expenseAdjust
LEFT JOIN PurchaseSandCompany as purchaseSandCompanyon on purchaseSandCompanyon.id = expenseAdjust.purchaseSandUnit
LEFT JOIN ProjectFiled AS projectFiled ON projectFiled.id = expenseAdjust.project
WHERE expenseAdjust.regionalCompany = :?regionalCompanyId
AND (expenseAdjust.createTime &gt;= :?startDate AND expenseAdjust.createTime &lt; :?endDate)
AND purchaseSandCompanyon.name LIKE :?purchaseSandCompanyonName
AND projectFiled.projectName LIKE :?projectName
UNION ALL
SELECT
financeRefund.id as id,
financeRefund.createTime AS createTime,
purchaseSandCompanyon.name AS purchaseSandUnit,
projectFiled.projectName AS project,
CASE
WHEN financeRefund.fundType ='1' THEN '保证金退费'
ELSE '预付款退费'
END
as fundType,
'' AS rechargeAmount,
financeRefund.actualRefundAmount AS actualRefundAmount,
financeRefund.refundExplain AS remark
FROM
FinanceRefund as financeRefund
LEFT JOIN PurchaseSandCompany as purchaseSandCompanyon on purchaseSandCompanyon.id = financeRefund.purchaseSandCompany
LEFT JOIN ProjectFiled AS projectFiled ON projectFiled.id = financeRefund.project
WHERE financeRefund.regionalCompany = :?regionalCompanyId
AND (financeRefund.createTime &gt;= :?startDate AND financeRefund.createTime &lt; :?endDate)
AND purchaseSandCompanyon.name LIKE :?purchaseSandCompanyonName
AND projectFiled.projectName LIKE :?projectName
ORDER BY createTime DESC
Station.stationName AS stationName,
DinasType.dinasTypeName AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
GROUP BY
SalesSummary.station,
SalesSummary.dinasType UNION ALL
SELECT
Station.stationName AS stationName,
'小计' AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
GROUP BY
SalesSummary.station UNION ALL
SELECT
'总计' AS stationName,
'————' AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
ORDER BY
( stationName = '总计' ) DESC,
stationName,
( dinasTypeName = '小计' ) ASC
</sql>
</template>
</content>
......
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>1c58a0d5-aae3-4dbd-a87a-9acb8d503f30</id>
<name>com.xyst.dinas.statistics.advanquery.OperationsOtherReportsAdvQuery</name>
<title>经营周报/月报/季报/年报</title>
<description>经营周报/月报/季报/年报</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
Station.stationName AS stationName,
DinasType.dinasTypeName AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
GROUP BY
SalesSummary.station,
SalesSummary.dinasType UNION ALL
SELECT
Station.stationName AS stationName,
'小计' AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
GROUP BY
SalesSummary.station UNION ALL
SELECT
'总计' AS stationName,
'————' AS dinasTypeName,
SUM( SalesSummary.saleDealAmount ) AS saleDealAmount,
SUM( SalesSummary.saleAmount ) AS saleAmount
FROM
SalesSummary AS SalesSummary
LEFT JOIN Station AS Station ON Station.id = SalesSummary.station
LEFT JOIN DinasType AS DinasType ON DinasType.id = SalesSummary.dinasType
WHERE
( SalesSummary.dealTime &gt;= :?startDate AND SalesSummary.dealTime &lt; :?endDate )
AND Station.id IN :?stationList
ORDER BY
( stationName = '总计' ) DESC,
stationName,
( dinasTypeName = '小计' ) ASC
</sql>
</template>
</content>
</metadata>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment