* [misc] Adjust productcharterbox wg.

This commit is contained in:
wangyuting
2024-07-31 09:34:01 +08:00
committed by 唐胡成
parent c6c47520fc
commit b28570f474
+106 -5
View File
@@ -12,7 +12,8 @@ class productCharterBox extends wg
* @access protected
*/
protected static array $defineProps = array(
'products?: array', // 产品下拉列表。
'charter?: object', // 所属立项。
'products?: array' // 产品下拉列表。
);
public static function getPageCSS(): ?string
@@ -42,9 +43,106 @@ class productCharterBox extends wg
protected function initProductsBox(): array
{
global $lang;
global $lang, $app;
$products = $this->prop('products');
$charter = $this->prop('charter');
$productsBox = array();
$index = 0;
if($charter)
{
$roadmapGroup = $app->control->loadModel('roadmap')->groupByProduct('nolaunching');
$charterProductMaps = $app->control->loadModel('charter')->getGroupDataByID($charter->id);
foreach($charterProductMaps as $productID => $roadmaps)
{
$productsBox[] = div
(
set::className('productBox'),
div
(
set::className('flex'),
formGroup
(
set::width('1/2'),
setClass('distributeProduct text-clip'),
set::required(true),
set::label($lang->charter->product),
inputGroup
(
div
(
setClass('grow linkProduct w-1/2'),
picker
(
set::name("product[0]"),
set::items($products),
set::value($productID)
)
)
)
),
formGroup
(
set::width('1/2'),
set::label($lang->charter->roadmap),
set::className('roadmapBox'),
set::required(true),
inputGroup
(
div
(
setClass('grow linkRoadmap w-1/2'),
picker
(
set::name("roadmap[0]"),
set::multiple(true),
set::required(true),
set::items($roadmapGroup[$productID]),
set::value(array_keys($roadmaps))
)
),
div
(
common::hasPriv('charter', 'loadRoadmapStories') ? inputGroupAddon
(
setClass('p-0'),
btn
(
setID('loadRoadmapStories'),
setClass('ghost'),
$lang->charter->loadStories
)
) : null
)
)
)
),
div
(
set::className('actionsBox'),
formGroup
(
set::label(''),
div
(
setClass('pl-2 flex self-center line-btn'),
btn
(
setClass('btn btn-link text-gray addLine'),
icon('plus')
),
btn
(
setClass('btn btn-link text-gray removeLine'),
icon('trash')
)
)
)
)
);
$index ++;
}
}
$productsBox[] = div
(
@@ -58,6 +156,7 @@ class productCharterBox extends wg
setClass('distributeProduct text-clip'),
set::required(true),
set::label($lang->charter->product),
set::labelClass($charter ? 'hidden' : ''),
inputGroup
(
div
@@ -65,7 +164,7 @@ class productCharterBox extends wg
setClass('grow linkProduct w-1/2'),
picker
(
set::name("product[0]"),
set::name("product[$index]"),
set::items($products),
set::defaultValue(''),
set::emptyValue('')
@@ -77,6 +176,7 @@ class productCharterBox extends wg
(
set::width('1/2'),
set::label($lang->charter->roadmap),
set::labelClass($charter ? 'hidden' : ''),
set::className('roadmapBox'),
set::required(true),
inputGroup
@@ -86,7 +186,7 @@ class productCharterBox extends wg
setClass('grow linkRoadmap w-1/2'),
picker
(
set::name("roadmap[0]"),
set::name("roadmap[$index]"),
set::multiple(true),
set::required(true),
set::items(array())
@@ -114,6 +214,7 @@ class productCharterBox extends wg
count($products) ? formGroup
(
set::label(''),
set::labelClass($charter ? 'hidden' : ''),
div
(
setClass('pl-2 flex self-center line-btn'),
@@ -124,7 +225,7 @@ class productCharterBox extends wg
),
btn
(
setClass('btn btn-link text-gray hidden removeLine'),
setClass('btn btn-link text-gray removeLine', $charter ? '' : 'hidden'),
icon('trash')
)
)