From 2bc356451b24db0b9253535997fb90fba3bed869 Mon Sep 17 00:00:00 2001 From: dingyongliang Date: Tue, 28 Feb 2023 17:11:11 +0800 Subject: [PATCH] * zin: refactor task create. --- module/task/ui/create.html.php | 206 +++++++++++++++++++++++++-------- 1 file changed, 156 insertions(+), 50 deletions(-) diff --git a/module/task/ui/create.html.php b/module/task/ui/create.html.php index cd14b063d6..da76d97ff4 100644 --- a/module/task/ui/create.html.php +++ b/module/task/ui/create.html.php @@ -1,6 +1,18 @@ $menuItem->text, + 'url' => \commonModel::createMenuLink($menuItem, $app->tab), + 'active' => $menuItem->order === 1, + ); +} + page( h::style(<<{$app->tab}->common), + set('icon', $app->tab), + set('url', \helper::createLink($app->tab, 'browse')), + ), + pagenavbar + ( + setId('navbar'), + set('items', $navItems) + ), + pagetoolbar + ( + set('create', array('href' => '#globalCreateMenu')), + set('switcher', array('href' => '#switcherMenu', 'text' => '研发管理界面')), + block('avatar', avatar(set('name', $app->user->account), set('avatar', $app->user->avatar), set('trigger', '#userMenu'))) + ) + ), + div + ( setStyle(array('width' => '1000px', 'margin' => '0 auto', 'background' => '#fff')), - div( + div + ( setClass('px-8 py-6'), - h2( + h2 + ( setStyle(array('font-size' => '1.2rem', 'font-weight' => 'bold')), $lang->task->create ), ), - div( + div + ( setStyle(array('padding-left' => '3rem', 'padding-bottom' => '1rem')), - formgrid( - formgroup( + formgrid + ( + formgroup + ( set('label', array('required' => true, 'text' => $lang->task->execution)), select( setClass('w-360'), + set('name', 'execution'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k == $execution->id);}, $executions, array_keys($executions))) ) ), - formgroup( + formgroup + ( set('label', array('required' => true, 'text' => $lang->task->type)), - select( + select + ( setClass('w-360'), + set('name', 'type'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === $task->type);}, $lang->task->typeList, array_keys($lang->task->typeList))) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->module)), - formrow( + formrow + ( setClass('items-center'), - select( + select + ( setClass('w-360'), + set('name', 'module'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === $task->module);}, $moduleOptionMenu, array_keys($moduleOptionMenu))) ), - checkbox(set(array('text' => $lang->task->allModule, 'checked' => true))) + checkbox + ( + set('name', 'showAllModule'), + set(array('text' => $lang->task->allModule)) + ) ), ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->story)), select( setClass('w-740'), + set('name', 'story'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === $task->story);}, $stories, array_keys($stories))) ) ), - formgroup( + formgroup + ( + set('name', 'name'), set('label', array('text' => $lang->task->name, 'required' => true)), forminput(setClass('w-740')), ), - formgroup( + formgroup + ( + set('name', 'pri'), set('label', array('text' => $lang->task->pri)), setClass('w-360'), - select( + select + ( set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === $task->pri);}, $lang->task->priList, array_keys($lang->task->priList))) ) ), - formrow( + formrow + ( setClass('items-center'), - formgroup( - set('label', array('text' => $lang->task->assignTo)), - select( + formgroup + ( + set('label', array('text' => $lang->task->assignedTo)), + select + ( + set('name', 'assignedTo[]'), setClass('w-360'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === $task->assignedTo);}, $members, array_keys($members))) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->estimateAB, 'auto' => true)), - inputgroup(set('items', array( - array('type' => 'input', 'class' => 'w-60'), - array('type' => 'addon', 'text' => 'H'), - ))) + inputgroup + ( + set('items', array( + array('type' => 'input', 'class' => 'w-60', 'name' => 'estimate'), + array('type' => 'addon', 'text' => 'H'), + )) + ) ), - formgroup( - checkbox(set(array('text' => $lang->task->multiple))) + formgroup + ( + checkbox + ( + set(array('text' => $lang->task->multiple)), + set('name', 'multiple') + ) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->desc)), - textarea( + textarea + ( + set('name', 'desc'), setClass('form-control w-740'), set(array( 'placeholder' => '可以在编辑器直接贴图。快捷键:Command C+V', @@ -96,52 +170,84 @@ page( )) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->files)), - formrow( + formrow + ( setClass('items-center'), - btn( - setClass('text-primary canvas'), - set(array( - 'icon' => 'plus', - 'text' => $lang->file->addFile - )) + h::label + ( + set('for', 'file'), + setClass('btn text-primary canvas'), + icon('plus'), + span($lang->file->addFile) + ), + h::file + ( + setId('file'), + setStyle('display', 'none'), + set('name', 'files'), ), span('(不超过50M)') ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->datePlan)), - formrow( + formrow + ( setClass('items-center'), - h::date(setClass('form-control w-166')), + h::date + ( + setClass('form-control w-166'), + set('name', 'estStarted') + ), span('至'), - h::date(setClass('form-control w-166')) + h::date + ( + setClass('form-control w-166'), + set('name', 'deadline') + ) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->story->mailto)), - select( + select + ( setClass('w-360'), + set('name', 'mailto[]'), set('items', array_map(function($v, $k) {return array('text' => $v, 'value' => $k, 'selected' => $k === str_replace(' ', '', $task->mailto));}, $users, array_keys($users))) ) ), - formgroup( + formgroup + ( set('label', array('text' => $lang->task->afterSubmit)), setClass('items-center'), setStyle(array('align-items' => 'center')), - formrow( - array_map(function($v, $k) {return radio(set(array('text' => $v, 'value' => $k, 'checked' => $k === (empty($task->id) ? 'continueAdding' : 'toTaskList'))));}, $lang->task->afterChoices, array_keys($lang->task->afterChoices)) + formrow + ( + array_map(function($v, $k) {return radio( + set('name', 'after'), + set(array('text' => $v, 'value' => $k, 'checked' => $k === (empty($task->id) ? 'continueAdding' : 'toTaskList'))) + );}, $lang->task->afterChoices, array_keys($lang->task->afterChoices)) ) ), - formgroup( - formrow( + formgroup + ( + formrow + ( setClass('justify-center'), - btn( + btn + ( + set('type', 'submit'), setClass('primary w-106'), $lang->save ), - btn( + btn + ( + set('url', 'javascript:history.go(-1)'), setClass('w-106'), $lang->goback )