select <iftest="projectId == null">'合计' AS project_name,</if><iftest="projectId != null || projectIds != null"> project_name,'合计' AS dept_name,</if> group_CONCAT(DISTINCT YEAR (statistics_start),'年',MONTH (statistics_start),'月') AS date,year(statistics_start) AS year, sum(total_time) AS total_time, sum(cost) AS cost
from work_project_time_cost ptc join work_project p on ptc.project_id = p.id join work_dept d on ptc.dept_id = d.id
select <iftest="projectId == null and projectIds == null">'合计' AS project_name,</if><iftest="projectId != null"> project_name, dept_name,</if><iftest=" projectIds != null"> project_name, dept_name,</if> group_CONCAT(DISTINCT YEAR (statistics_start),'年',MONTH (statistics_start),'月') AS date,year(statistics_start) AS year, sum(total_time) AS total_time, sum(cost) AS cost
from work_project_time_cost ptc join work_project p on ptc.project_id = p.id join work_dept d on p.dept_id = d.id
<where>
<iftest="projectId != null ">
ptc.project_id = #{projectId}
...
...
@@ -131,13 +131,13 @@
AND p.manager_id = #{managerId} AND year(statistics_start) = #{year}
</if>
</where>
group by <iftest="projectId != null"> project_name,</if>year(statistics_start),MONTH(statistics_start)
group by <iftest="projectId != null and projectIds == null"> project_name,</if><iftest="projectId == null and projectIds != null"> project_name,dept_name,</if>year(statistics_start),MONTH(statistics_start)
select ptc.project_id AS project_id, project_name,
group_CONCAT(DISTINCT YEAR (statistics_start),'年',MONTH (statistics_start),'月') AS date,year(statistics_start) AS year,
sum(total_time) AS total_time, sum(cost) AS cost <iftest="projectId != null "> ,d.dept_name AS dept_name</if><iftest="projectIds != null">,d.dept_name AS dept_name,u.name </if>
sum(total_time) AS total_time, sum(cost) AS cost <iftest="projectId != null || (projectIds != null and !isAll)"> ,d.dept_name AS dept_name</if><iftest="projectIds != null and isAll">,d.dept_name AS dept_name,u.name AS user_name </if>
from work_project_time_cost ptc join work_project p on ptc.project_id = p.id join work_dept d on ptc.dept_id = d.id join work_user u on ptc.user_id = u.id
AND p.dept_id = #{deptId} AND year(statistics_start) = #{year}
...
...
@@ -159,7 +160,7 @@
AND p.manager_id = #{managerId} AND year(statistics_start) = #{year}
</if>
</where>
group by ptc.project_id,project_name,year(statistics_start),MONTH(statistics_start) <iftest="projectId != null "> ,d.dept_name</if><iftest="projectIds != null">,d.dept_name AS dept_name,u.name </if>
group by ptc.project_id,project_name,year(statistics_start),MONTH(statistics_start) <iftest="projectId != null || (projectIds != null and !isAll) "> ,d.dept_name</if><iftest="projectIds != null and isAll">,d.dept_name ,u.name </if>