* Refactor edit page.

This commit is contained in:
daitingting
2024-01-16 00:35:51 +00:00
parent 58be325f7b
commit 00cedeb939
2 changed files with 30 additions and 151 deletions
+17 -151
View File
@@ -6,162 +6,28 @@ $currency = $parentID ? $parentProgram->budgetUnit : $config->project->defaultCu
$aclList = $parentID ? $lang->program->subAclList : $lang->program->aclList;
$delta = $program->end == LONG_TIME ? 999 : (strtotime($program->end) - strtotime($program->begin)) / 3600 / 24 + 1;
jsVar('longTime', $lang->project->longTime);
jsVar('weekend', $config->execution->weekend);
jsVar('page', 'edit');
jsVar('parentBudget', $lang->program->parentBudget);
jsVar('longTime', $lang->project->longTime);
jsVar('weekend', $config->execution->weekend);
jsVar('parentBudget', $lang->program->parentBudget);
jsVar('beginLessThanParent', $lang->program->beginLessThanParent);
jsVar('endGreatThanParent', $lang->program->endGreatThanParent);
jsVar('ignore', $lang->program->ignore);
jsVar('currencySymbol', $lang->project->currencySymbol);
jsVar('budgetOverrun', $lang->project->budgetOverrun);
jsVar('endGreatThanParent', $lang->program->endGreatThanParent);
jsVar('ignore', $lang->program->ignore);
jsVar('currencySymbol', $lang->project->currencySymbol);
jsVar('budgetOverrun', $lang->project->budgetOverrun);
set::title($parentID ? $lang->program->children : $lang->program->create);
$fields = useFields('program.edit');
formPanel
formGridPanel
(
to::heading
(
div
(
setClass('panel-title text-lg'),
$title
)
),
on::change('#parent', 'onParentChange'),
on::change('#budget', 'budgetOverrunTips'),
on::change('#future', 'onFutureChange'),
on::change('#acl', 'onAclChange'),
formGroup
(
set::width('1/2'),
set::name('parent'),
set::label($lang->program->parent),
set::value($parentID),
set::items($parents)
),
formGroup
(
set::width('1/2'),
set::name('name'),
set::strong(true),
set::value($program->name),
set::label($lang->program->name)
),
formGroup
(
set::width('1/4'),
set::name('PM'),
set::label($lang->program->PM),
set::value($program->PM),
set::items($pmUsers)
),
formRow
(
set::id('budgetRow'),
formGroup
(
set::width('1/4'),
set::name('budget'),
set::label($lang->project->budget),
$program->budget ? set::value($program->budget) : null,
$program->budget == 0 ? set::disabled(true) : null,
set::control(array
(
'type' => 'inputControl',
'prefix' => zget($lang->project->currencySymbol, $currency),
'prefixWidth' => 'icon',
'suffix' => $lang->project->tenThousandYuan,
'suffixWidth' => 60
)),
formHidden('syncPRJUnit', 'false'),
formHidden('exchangeRate', '')
),
formGroup
(
set::width('1/4'),
set::name('future'),
set::className('items-center'),
$program->budget == 0 ? set::value('1') : null,
set::control(array('type' => 'checkList', 'inline' => true)),
set::items(array('1' => $lang->project->future))
)
),
formRow
(
formGroup
(
set::width('1/2'),
set::label($lang->project->dateRange),
set::required(true),
inputGroup
(
set::seg(true),
datePicker
(
set::name('begin'),
set::id('begin'),
set::value($program->begin),
set::placeholder($lang->project->begin),
set::required(true),
on::change('computeWorkDays')
),
$lang->project->to,
datePicker
(
set::name('end'),
set::id('end'),
set::value($program->end),
set::placeholder($lang->project->end),
set::required(true),
$program->end == LONG_TIME ? setClass('hidden') : null,
on::change('computeWorkDays')
),
inputControl
(
setClass('has-suffix-icon w-full' . ($program->end != LONG_TIME ? ' hidden' : '')),
to::suffix(icon('calendar')),
input
(
set::value($lang->project->longTime),
set::disabled(true)
)
)
)
),
formGroup
(
set::name('delta'),
set::className('pl-4 items-center'),
set::control(array('type' => 'radioList', 'inline' => true, 'rootClass' => 'ml-4', 'items' => $lang->program->endList)),
set::value($delta),
on::change('setDate')
)
),
formGroup
(
set::label($lang->program->desc),
editor
(
set::name('desc'),
html($program->desc)
)
),
formGroup
(
set::name('acl'),
set::label($lang->program->acl),
set::value($program->acl),
set::items($aclList),
set::control('radioList')
),
formGroup
(
set::id('whitelistRow'),
set::className($program->acl == 'open' ? 'hidden' : ''),
set::label($lang->whitelist),
whitelist(set::items($pmUsers), set::value($program->whitelist))
)
set::modeSwitcher(false),
set::title($title),
set::fields($fields),
set::loadUrl($loadUrl),
set::autoLoad($autoLoad),
on::change('[name=budget]', 'budgetOverrunTips'),
on::change('[name=future]', 'onFutureChange'),
on::change('[name=acl]', 'onAclChange')
);
render();