Merge remote-tracking branch 'origin/master'

This commit is contained in:
liuchenglong
2023-05-04 09:01:39 +00:00
10 changed files with 85 additions and 70 deletions
+3 -2
View File
@@ -3,5 +3,6 @@
.border-right::after {content: ''; position: absolute; right: 0px; width: 1px; height: 40px; background: #EEE; top: 50%; margin-top: -20px;}
.avatar-border-one {width: 4.2rem; height: 4.2rem; background: #f4f5f3; position: relative;}
.avatar-border-two {width: 3.6rem; height: 3.6rem; background: #F5EBDE; position: absolute;}
.welcome-avatar {border: 2px solid #FBC962; position: absolute;}
.tile-amount {font-size: 32px; font-weight: 700; line-height: 56px; }
.welcome-avatar {border: 2px solid #FBC962; position: absolute; border-radius: 50% 50%;}
.tile-amount {font-size: 32px; font-weight: 700; line-height: 56px;}
.welcome-label-delay {background: var(--color-danger-50); color: var(--color-danger-600);}
+5 -3
View File
@@ -18,15 +18,17 @@ function onParamsTypeChange(event)
}
else
{
const $paramstype = document.querySelector('#paramstype');
if(lang.indexOf('zh') >= 0)
{
const $paramstype = document.querySelector('#paramstype');
const blockTitle = $paramstype.options[$paramstype.selectedIndex].text + of + $code.options[$code.selectedIndex].text;
$('#title').val(blockTitle);
}
else
{
/* TODO */
const blockTitle = $code.options[$code.selectedIndex].text + of + $paramstype.options[$paramstype.selectedIndex].text;
}
$('#title').val(blockTitle);
}
}
+27
View File
@@ -6,3 +6,30 @@ function getForm(event)
const url = $.createLink('block', 'edit', 'blockID=' + blockID + '&module=' + module + '&code=' + (code ? code : ''));
loadPage(url, '#codesRow, #paramsRow');
}
function onParamsTypeChange(event)
{
const lang = config.clientLang;
const $code = document.querySelector('#code');
if($('#module').val() == 'scrumtest' && $('#paramstype').val() != 'all')
{
$('#title').val($code.options[$code.selectedIndex].text);
}
else
{
const $paramstype = document.querySelector('#paramstype');
let blockTitle = '';
if(lang.indexOf('zh') >= 0)
{
blockTitle = $paramstype.options[$paramstype.selectedIndex].text + of + $code.options[$code.selectedIndex].text;
}
else
{
blockTitle = $code.options[$code.selectedIndex].text + of + $paramstype.options[$paramstype.selectedIndex].text;
}
$('#title').val(blockTitle);
}
}
+3
View File
@@ -13,6 +13,7 @@ namespace zin;
set::title($title);
jsVar('blockID', $block->id);
jsVar('of', $lang->block->of);
$paramsRows = array();
$showModules = ($dashboard == 'my' and $modules);
@@ -28,6 +29,7 @@ foreach($params as $key => $row)
set::value($block->params->{$key}),
set::control(array
(
'id' => "params$key",
'type' => $row['control'],
'items' => isset($row['options']) ? $row['options'] : null
))
@@ -38,6 +40,7 @@ form
(
on::change('#module', 'getForm'),
on::change('#code', 'getForm'),
on::change('#paramstype', 'onParamsTypeChange'),
formGroup
(
set::class($showModules ? '' : 'hidden'),
+42 -56
View File
@@ -53,48 +53,36 @@ panel
),
div
(
setClass('flex items-center justify-around pt-6'),
center
setClass('flex justify-around pt-6'),
col
(
col
set('class', 'text-center'),
span
(
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
)
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
),
center
col
(
col
set('class', 'text-center'),
span
(
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
)
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
),
center
col
(
col
set('class', 'text-center'),
span
(
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
)
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
)
)
),
@@ -109,34 +97,32 @@ panel
),
div
(
setClass('flex items-center justify-around pt-6'),
center
setClass('flex justify-around pt-6'),
col
(
col
set('class', 'text-center items-center'),
span
(
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
set('class', 'tile-amount text-primary'),
81
),
span('任务数'),
div
(
set('class', 'rounded-full welcome-label-delay px-1 text-sm'),
'延期 3'
)
),
center
col
(
col
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('justify', 'center'),
set('class', 'text-center'),
span
(
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数')
)
set('class', 'tile-amount text-primary'),
81
),
span('研发需求数'),
)
)
)
+3
View File
@@ -1382,6 +1382,7 @@ class projectModel extends model
if(!empty($executionsCount) and $oldProject->multiple) $this->checkDatesValidByProject($projectID ,$project);
$this->projectTao->doUpdate($projectID, $project, $oldProject);
if(dao::isError()) return false;
if(!$oldProject->hasProduct and ($oldProject->name != $project->name or $oldProject->parent != $project->parent or $oldProject->acl != $project->acl)) $this->updateShadowProduct($project);
@@ -1411,6 +1412,7 @@ class projectModel extends model
$teamMembers[$account] = $member;
}
if($oldProject->model == 'kanban')
{
$this->dao->delete()->from(TABLE_TEAM)
@@ -3048,6 +3050,7 @@ class projectModel extends model
{
foreach($plans as $planList)
{
if(is_array($planList))
foreach($planList as $planID) $newPlans[$planID] = $planID;
}
}
-4
View File
@@ -1,6 +1,5 @@
<?php
declare(strict_types=1);
/**
* The control file of todo module of ZenTaoPMS.
*
@@ -22,9 +21,6 @@ class todo extends control
{
parent::__construct();
$this->app->loadClass('date');
$this->loadModel('task');
$this->loadModel('bug');
$this->app->loadLang('my');
}
-1
View File
@@ -1,6 +1,5 @@
<?php
declare(strict_types=1);
/**
* The model file of todo module of ZenTaoPMS.
*
-1
View File
@@ -1,6 +1,5 @@
<?php
declare(strict_types=1);
class todoTao extends todoModel
{
/**
+2 -3
View File
@@ -1,6 +1,5 @@
<?php
declare(strict_types=1);
class todoZen extends todo
{
/**
@@ -244,8 +243,8 @@ class todoZen extends todo
list($editedTodos, $objectIdList) = $this->getBatchEditInitTodos($formData, $type, $account, $status);
$bugs = $this->bug->getUserBugPairs($account, true, 0, '', '', isset($objectIdList['bug']) ? $objectIdList['bug'] : '');
$tasks = $this->task->getUserTaskPairs($account, 'wait,doing', '', isset($objectIdList['task']) ? $objectIdList['task'] : '');
$bugs = $this->loadModel('bug')->getUserBugPairs($account, true, 0, '', '', isset($objectIdList['bug']) ? $objectIdList['bug'] : '');
$tasks = $this->loadModel('task')->getUserTaskPairs($account, 'wait,doing', '', isset($objectIdList['task']) ? $objectIdList['task'] : '');
$storys = $this->loadModel('story')->getUserStoryPairs($account, 10, 'story', '', isset($objectIdList['story']) ? $objectIdList['story'] : '');
$users = $this->loadModel('user')->getPairs('noclosed|nodeleted|noempty');
$testtasks = $this->loadModel('testtask')->getUserTestTaskPairs($account);