Merge branch 'sprint/30_zhouxin_45800' into 'kanban'

Finish task #45800.

See merge request easycorp/zentaopms!917
This commit is contained in:
朱金勇
2021-12-13 09:01:02 +00:00
4 changed files with 29 additions and 7 deletions
+1
View File
@@ -109,3 +109,4 @@ ALTER TABLE `zt_kanbanlane` ADD COLUMN `region` mediumint(8) unsigned NOT NULL A
ALTER TABLE `zt_kanbanlane` ADD COLUMN `group` mediumint(8) unsigned NOT NULL AFTER `region`;
ALTER TABLE `zt_kanbancolumn` ADD COLUMN `region` mediumint(8) unsigned NOT NULL AFTER `type`;
ALTER TABLE `zt_kanbancolumn` ADD COLUMN `group` mediumint(8) unsigned NOT NULL AFTER `region`;
ALTER TABLE `zt_project` ADD COLUMN `suspendedDate` date NOT NULL AFTER `canceledDate`;
+1
View File
@@ -999,6 +999,7 @@ CREATE TABLE IF NOT EXISTS `zt_project` (
`closedDate` datetime NOT NULL,
`canceledBy` varchar(30) NOT NULL DEFAULT '',
`canceledDate` datetime NOT NULL,
`suspendedDate` date NOT NULL,
`PO` varchar(30) NOT NULL DEFAULT '',
`PM` varchar(30) NOT NULL DEFAULT '',
`QD` varchar(30) NOT NULL DEFAULT '',
+3 -2
View File
@@ -1240,11 +1240,11 @@ class projectModel extends model
public function suspend($projectID)
{
$oldProject = $this->getById($projectID);
$now = helper::now();
$project = fixer::input('post')
->setDefault('status', 'suspended')
->setDefault('lastEditedBy', $this->app->user->account)
->setDefault('lastEditedDate', $now)
->setDefault('lastEditedDate', helper::now())
->setDefault('suspendedDate', helper::today())
->remove('comment')->get();
$this->dao->update(TABLE_PROJECT)->data($project)
@@ -1272,6 +1272,7 @@ class projectModel extends model
->setDefault('status', 'doing')
->setDefault('lastEditedBy', $this->app->user->account)
->setDefault('lastEditedDate', $now)
->setIF($oldProject->realBegan == '0000-00-00', 'realBegan', helper::today())
->remove('comment,readjustTime,readjustTask')
->get();
+24 -5
View File
@@ -22,9 +22,28 @@ class weeklyModel extends model
public function getPageNav($project, $date)
{
$date = date('Ymd', strtotime($this->getThisMonday($date)));
$begin = $project->begin;
$weeks = $this->getWeekPairs($begin);
$current = zget($weeks, $date, '');
switch($project->status)
{
case 'wait':
$begin = helper::now();
$end = $begin;
break;
case 'doing':
$begin = $project->realBegan != '0000-00-00' ? $project->realBegan : $date;
$end = $date;
break;
case 'suspended':
$begin = $project->realBegan != '0000-00-00' ? $project->realBegan : $project->suspendedDate;
$end = $project->suspendedDate;
break;
case 'closed':
$begin = $project->realBegan != '0000-00-00' ? $project->realBegan : $project->realEnd;
$end = $project->realEnd;
break;
}
$weeks = $this->getWeekPairs($begin, $end);
$current = zget($weeks, $date, current($weeks));
$selectHtml = "<div class='btn-group angle-btn'>";
$selectHtml .= html::a('###', $this->lang->weekly->common . $this->lang->colon . $project->name, '', "class='btn'");
$selectHtml .= '</div>';
@@ -49,9 +68,9 @@ class weeklyModel extends model
* @access public
* @return array
*/
public function getWeekPairs($begin)
public function getWeekPairs($begin, $end = '')
{
$sn = $this->getWeekSN($begin, date('Y-m-d'));
$sn = $end != '' ? $this->getWeekSN($begin, $end) : $this->getWeekSN($begin, date('Y-m-d'));
$weeks = array();
for($i = 0; $i <= $sn; $i++)
{