| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- <?php
- /**
- * The manage product view file of execution module of ZenTaoPMS.
- * @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
- * @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
- * @author Yanyi Cao<caoyanyi@easycorp.ltd>
- * @package execution
- * @link https://www.zentao.net
- */
- namespace zin;
- jsVar('unmodifiableProducts',$unmodifiableProducts);
- jsVar('unmodifiableBranches', $unmodifiableBranches);
- jsVar('linkedStoryIDList', $linkedStoryIDList);
- jsVar('allProducts', $allProducts);
- jsVar('branchGroups', $branchGroups);
- jsVar('unLinkProductTip', $lang->project->unLinkProductTip);
- $index = 0;
- $linkedList = array();
- foreach($allProducts as $productID => $productName)
- {
- if(empty($linkedProducts[$productID])) continue;
- foreach($linkedBranches[$productID] as $branchID)
- {
- $linkedList[] = btn
- (
- setClass('product-block modal-content center-row justify-start items-center text-left'),
- checkbox
- (
- set::rootClass('w-full p-4 pl-0 clip'),
- setClass('linked-product cursor-pointer'),
- set::name("products[{$index}]"),
- set::text($productName),
- set::checked(true),
- set::value($productID),
- on::click('checkUnlink')
- ),
- isset($allBranches[$productID][$branchID]) ? picker(set::name("branch[{$index}]"), set::value($branchID), set::items($allBranches[$productID]), set::disabled(true), set::required(true)) : formHidden("branch[{$index}]", $branchID)
- );
- if(!isset($branchGroups[$productID])) unset($allProducts[$productID]);
- if(isset($branchGroups[$productID][$branchID])) unset($branchGroups[$productID][$branchID]);
- if(isset($branchGroups[$productID]) and empty($branchGroups[$productID])) unset($allProducts[$productID]);
- $index ++;
- }
- }
- $unlinkList = array();
- if($execution->grade == 1 || $execution->grade == 2)
- {
- foreach($allProducts as $productID => $productName)
- {
- if($execution->grade == 2 && (!isset($linkedProducts[$productID]) || $linkedProducts[$productID]->type == 'normal')) continue;
- $unlinkList[] = btn
- (
- setClass('product-block modal-content center-row justify-start items-center text-left'),
- checkbox
- (
- set::rootClass('w-full p-4 pl-0 clip'),
- setClass('cursor-pointer'),
- set::name("products[{$index}]"),
- set::text($productName),
- set::value($productID)
- ),
- isset($branchGroups[$productID]) ? picker(set::name("branch[{$index}]"), set::value(key($branchGroups[$productID])), set::items($branchGroups[$productID]), set::required(true)) : formHidden("branch[{$index}]", 0)
- );
- $index ++;
- }
- }
- $canModify = common::canModify('execution', $execution);
- form
- (
- setID('manageProducts'),
- setClass('canvas pb-6'),
- sectionList
- (
- section
- (
- set::title($lang->execution->linkedProducts),
- div
- (
- setClass('flex items-center flex-wrap'),
- $linkedList
- )
- ),
- $unlinkList ? h::hr() : null,
- $unlinkList ? section
- (
- set::title($lang->execution->unlinkedProducts),
- div
- (
- setClass('flex items-center flex-wrap'),
- $unlinkList
- )
- ) : null,
- $canModify ? h::hr() : null
- ),
- $canModify ? set::actions(array('submit')) : null
- );
- render();
|