实际上我正在尝试使用 dotproject 来构建我自己的小型应用程序。
我被卡在 dotproject 显示与特定项目相关的所有任务的地方。它查询数据库以触发下面的 sql
$q->addJoin('tasks', 't1', 'projects.project_id = t1.task_project');
$q->addQuery('com.company_name AS company_name, com_internal.company_name'
. ' AS company_name_internal'
. ", CONCAT_WS(', ',contact_last_name,contact_first_name) user_name"
. ', projects.*, SUM(t1.task_duration * t1.task_percent_complete'
." * IF(t1.task_duration_type = 24, {$working_hours}, t1.task_duration_type))"
." / SUM(t1.task_duration * IF(t1.task_duration_type = 24, {$working_hours},"
. ' t1.task_duration_type)) AS project_percent_complete');
$q->addWhere('t1.task_id = t1.task_parent');
$q->addWhere('project_id = ' . $project_id);
$q->addGroup('project_id');
我无法正确理解 sql。实际上,此 sql 检索与项目关联的所有任务。但在我的项目中,我只想要那些持续时间已完成的任务。
我如何更改 sql 以实现这一点?