Commit 77561fe7 by wukaiqiang

修改统计查询 数据间断问题 及 修改经营类报表返回数据带逗号问题

parent 41c0616c
...@@ -27,8 +27,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao { ...@@ -27,8 +27,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao {
StringBuffer hql = new StringBuffer(" SELECT "); StringBuffer hql = new StringBuffer(" SELECT ");
hql.append(" result.stationName AS stationName, " hql.append(" result.stationName AS stationName, "
+ " result.dinasTypeName AS dinasTypeName,\r\n" + " result.dinasTypeName AS dinasTypeName,\r\n"
+ " FORMAT( result.saleDealAmount ,2) AS saleDealAmount, \r\n" + " CAST( result.saleDealAmount as DECIMAL(18,2)) AS saleDealAmount, \r\n"
+ " FORMAT( result.saleAmount ,2) AS saleAmount FROM "); + " CAST( result.saleAmount as DECIMAL(18,2)) AS saleAmount FROM ");
hql.append(" ( SELECT station.station_Name AS stationName, \r\n " hql.append(" ( SELECT station.station_Name AS stationName, \r\n "
+ " dinasType.dinas_Type_Name AS dinasTypeName, "); + " dinasType.dinas_Type_Name AS dinasTypeName, ");
if (OperationsReportType != null && OperationsReportType != "" ) { if (OperationsReportType != null && OperationsReportType != "" ) {
...@@ -36,8 +36,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao { ...@@ -36,8 +36,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao {
hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n" hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n"
+ " SUM( salesSummary.sale_Amount ) AS saleAmount, "); + " SUM( salesSummary.sale_Amount ) AS saleAmount, ");
} else { } else {
hql.append(" FORMAT( SUM( salesSummary.sale_Deal_Amount ) / 10000 ,2) AS saleDealAmount, \r\n" hql.append(" CAST( SUM( salesSummary.sale_Deal_Amount ) / 10000 as DECIMAL(18,2) ) AS saleDealAmount, \r\n"
+ " FORMAT( SUM( salesSummary.sale_Amount ) / 10000 ,2) AS saleAmount, "); + " CAST( SUM( salesSummary.sale_Amount ) / 10000 as DECIMAL(18,2) ) AS saleAmount, ");
} }
}else { }else {
hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n" hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n"
...@@ -63,8 +63,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao { ...@@ -63,8 +63,8 @@ public class OperationsReportsDaoImpl implements OperationsReportsDao {
hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n" hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n"
+ " SUM( salesSummary.sale_Amount ) AS saleAmount, "); + " SUM( salesSummary.sale_Amount ) AS saleAmount, ");
} else { } else {
hql.append(" FORMAT( SUM( salesSummary.sale_Deal_Amount ) / 10000 ,2) AS saleDealAmount, \r\n" hql.append(" CAST( SUM( salesSummary.sale_Deal_Amount ) / 10000 as DECIMAL(18,2)) AS saleDealAmount, \r\n"
+ " FORMAT( SUM( salesSummary.sale_Amount ) / 10000 ,2) AS saleAmount, "); + " CAST( SUM( salesSummary.sale_Amount ) / 10000 as DECIMAL(18,2)) AS saleAmount, ");
} }
}else { }else {
hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n" hql.append(" SUM( salesSummary.sale_Deal_Amount ) AS saleDealAmount, \r\n"
......
...@@ -12,15 +12,25 @@ ...@@ -12,15 +12,25 @@
<sql-type>SQL</sql-type> <sql-type>SQL</sql-type>
<sql> <sql>
SELECT SELECT
COUNT(1) AS contractNumber, COUNT(contract.id) AS contractNumber,
monthof(contract.createTime) AS createTime yearof(planningCycle.startTime) as createYear,
monthof(planningCycle.startTime) AS createTime
FROM FROM
Contract AS contract (select
contract1.id as id ,
contract1.createTime as createTime
from Contract as contract1
where contract1.approveState = 2
)AS contract
RIGHT JOIN PlanningCycle AS planningCycle ON 1=1
AND yearof(contract.createTime) = yearof(planningCycle.startTime)
AND monthof(contract.createTime) = monthof(planningCycle.startTime)
AND dayof(contract.createTime) = dayof(planningCycle.startTime)
WHERE 1=1 WHERE 1=1
AND contract.approveState = 2 AND planningCycle.cycleType &lt;&gt; 'WEEK'
AND contract.createTime &gt;= :?startDate AND planningCycle.startTime &gt;= :?startDate
AND contract.createTime &lt;= :?endDate AND planningCycle.startTime &lt;= :?endDate
GROUP BY monthof(contract.createTime) GROUP BY yearof(planningCycle.startTime),monthof(planningCycle.startTime)
</sql> </sql>
</template> </template>
</content> </content>
......
...@@ -71,6 +71,18 @@ ...@@ -71,6 +71,18 @@
} }
} }
} }
,
{
"type": "VALUE",
"title": "签订年份",
"key": "createYear",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
] ]
} }
} }
......
...@@ -18,7 +18,9 @@ ...@@ -18,7 +18,9 @@
ProjectFiled AS projectFiled ProjectFiled AS projectFiled
LEFT JOIN ProjectFiledAssociatedProjectFiledDinasDetail AS projectFiledDinasDetail ON projectFiledDinasDetail.master = projectFiled.id LEFT JOIN ProjectFiledAssociatedProjectFiledDinasDetail AS projectFiledDinasDetail ON projectFiledDinasDetail.master = projectFiled.id
LEFT JOIN DinasType AS dinasType ON projectFiledDinasDetail.dinasType = dinasType.id LEFT JOIN DinasType AS dinasType ON projectFiledDinasDetail.dinasType = dinasType.id
WHERE 1=1 and projectFiled.regionalCompany = :?regionalCompany WHERE 1=1
and projectFiledDinasDetail.dinasType is not null
and projectFiled.regionalCompany = :?regionalCompany
GROUP BY GROUP BY
projectFiledDinasDetail.dinasType projectFiledDinasDetail.dinasType
</sql> </sql>
......
...@@ -12,15 +12,25 @@ ...@@ -12,15 +12,25 @@
<sql-type>SQL</sql-type> <sql-type>SQL</sql-type>
<sql> <sql>
SELECT SELECT
count(0) as projectNumber, count(projectFiled.id) as projectNumber,
monthof(projectFiled.createTime) as projectTime yearof(planningCycle.startTime) as projectYear,
monthof(planningCycle.startTime) as projectTime
FROM FROM
ProjectFiled AS projectFiled PlanningCycle AS planningCycle
LEFT JOIN (
select projectFiled1.createTime as createTime,
projectFiled1.id as id
from ProjectFiled as projectFiled1 where projectFiled1.regionalCompany = :?regionalCompany
) AS projectFiled ON 1=1
AND yearof(projectFiled.createTime) = yearof(planningCycle.startTime)
AND monthof(projectFiled.createTime) = monthof(planningCycle.startTime)
AND dayof(projectFiled.createTime) = dayof(planningCycle.startTime)
WHERE 1=1 WHERE 1=1
AND projectFiled.createTime &gt;= :?startDate AND planningCycle.cycleType &lt;&gt; 'WEEK'
AND projectFiled.createTime &lt;= :?endDate AND planningCycle.startTime &gt;= :?startDate
AND projectFiled.regionalCompany = :?regionalCompany AND planningCycle.startTime &lt;= :?endDate
GROUP BY monthof(projectFiled.createTime) GROUP BY yearof(planningCycle.startTime),monthof(planningCycle.startTime)
</sql> </sql>
</template> </template>
</content> </content>
......
...@@ -70,6 +70,17 @@ ...@@ -70,6 +70,17 @@
"selected": true "selected": true
} }
} }
},
{
"type": "VALUE",
"title": "项目年份",
"key": "projectYear",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
} }
] ]
} }
......
...@@ -25,7 +25,12 @@ ...@@ -25,7 +25,12 @@
FROM FROM
DinasType AS dinasType DinasType AS dinasType
JOIN PlanningCycle AS planningCycle ON 1=1 JOIN PlanningCycle AS planningCycle ON 1=1
LEFT JOIN SalesRecord AS salesRecord ON salesRecord.dinasType = dinasType.id LEFT JOIN (select salesRecord1.dealTime as dealTime,
salesRecord1.dealAmount as dealAmount,
salesRecord1.dinasType as dinasType
from SalesRecord as salesRecord1 where
salesRecord1.regionalCompany = :?regionalCompany
) AS salesRecord ON salesRecord.dinasType = dinasType.id
AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime) AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime)
AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime) AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime)
AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime) AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime)
...@@ -33,7 +38,7 @@ ...@@ -33,7 +38,7 @@
AND planningCycle.cycleType &lt;&gt; 'WEEK' AND planningCycle.cycleType &lt;&gt; 'WEEK'
AND planningCycle.startTime &gt;= :?startDate AND planningCycle.startTime &gt;= :?startDate
AND planningCycle.startTime &lt;= :?endDate AND planningCycle.startTime &lt;= :?endDate
AND salesRecord.regionalCompany = :?regionalCompany
group by dinasType.id,yearof(planningCycle.startTime) , monthof(planningCycle.startTime),dayof(planningCycle.startTime) group by dinasType.id,yearof(planningCycle.startTime) , monthof(planningCycle.startTime),dayof(planningCycle.startTime)
</sql> </sql>
</template> </template>
......
...@@ -24,7 +24,12 @@ ...@@ -24,7 +24,12 @@
FROM FROM
DinasType AS dinasType DinasType AS dinasType
JOIN PlanningCycle AS planningCycle ON 1=1 JOIN PlanningCycle AS planningCycle ON 1=1
LEFT JOIN SalesRecord AS salesRecord ON salesRecord.dinasType = dinasType.id LEFT JOIN (select salesRecord1.dealTime as dealTime,
salesRecord1.dealAmount as dealAmount,
salesRecord1.dinasType as dinasType
from SalesRecord as salesRecord1 where
salesRecord1.regionalCompany = :?regionalCompany
) AS salesRecord ON salesRecord.dinasType = dinasType.id
AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime) AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime)
AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime) AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime)
AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime) AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime)
...@@ -32,7 +37,7 @@ ...@@ -32,7 +37,7 @@
AND planningCycle.cycleType &lt;&gt; 'WEEK' AND planningCycle.cycleType &lt;&gt; 'WEEK'
AND planningCycle.startTime &gt;= :?startDate AND planningCycle.startTime &gt;= :?startDate
AND planningCycle.startTime &lt;= :?endDate AND planningCycle.startTime &lt;= :?endDate
AND salesRecord.regionalCompany = :?regionalCompany
group by dinasType.id,yearof(planningCycle.startTime) , monthof(planningCycle.startTime) group by dinasType.id,yearof(planningCycle.startTime) , monthof(planningCycle.startTime)
</sql> </sql>
</template> </template>
......
...@@ -23,7 +23,12 @@ ...@@ -23,7 +23,12 @@
FROM FROM
DinasType AS dinasType DinasType AS dinasType
JOIN PlanningCycle AS planningCycle ON 1=1 JOIN PlanningCycle AS planningCycle ON 1=1
LEFT JOIN SalesRecord AS salesRecord ON salesRecord.dinasType = dinasType.id LEFT JOIN (select salesRecord1.dealTime as dealTime,
salesRecord1.dealAmount as dealAmount,
salesRecord1.dinasType as dinasType
from SalesRecord as salesRecord1 where
salesRecord1.regionalCompany = :?regionalCompany
) AS salesRecord ON salesRecord.dinasType = dinasType.id
AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime) AND yearof(salesRecord.dealTime) = yearof(planningCycle.startTime)
AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime) AND monthof(salesRecord.dealTime) = monthof(planningCycle.startTime)
AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime) AND dayof(salesRecord.dealTime) = dayof(planningCycle.startTime)
...@@ -31,7 +36,7 @@ ...@@ -31,7 +36,7 @@
AND planningCycle.cycleType &lt;&gt; 'WEEK' AND planningCycle.cycleType &lt;&gt; 'WEEK'
AND planningCycle.startTime &gt;= :?startDate AND planningCycle.startTime &gt;= :?startDate
AND planningCycle.startTime &lt;= :?endDate AND planningCycle.startTime &lt;= :?endDate
AND salesRecord.regionalCompany = :?regionalCompany
group by dinasType.id,yearof(planningCycle.startTime) group by dinasType.id,yearof(planningCycle.startTime)
</sql> </sql>
</template> </template>
......
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