* @package pivot * @link https://www.zentao.net */ namespace zin; $cols = $config->pivot->dtable->productSummary->fieldList; $cols['PO']['map'] = $users; $data = new stdclass(); $data->cols = $this->pivot->processDTableCols($cols); $data->array = $this->pivot->processDTableData(array_keys($cols), $products); $generateData = function() use ($lang, $title, $cols, $data, $products, $filters) { $this->loadModel('bi'); $this->app->loadLang('product'); return array ( div ( setID('conditions'), setClass('flex bg-canvas p-2'), checkList ( on::change('loadProductSummary'), set::inline(true), set::items(array(array('text' => $lang->pivot->overduePlan, 'value' => 'overduePlan'))) ), div ( setStyle('width', '70%'), setClass('ml-4 flex gap-4'), inputGroup ( setID('product'), setClass('filter w-1/3'), $lang->pivot->otherLang->product, picker ( setClass('flex-auto'), set::name('product'), set::value($filters['productID']), set::items($this->bi->getScopeOptions('product')), on::change('loadProductSummary') ) ), inputGroup ( setID('productStatus'), setClass('filter w-1/3'), $lang->pivot->otherLang->productStatus, picker ( setClass('flex-auto'), set::name('productStatus'), set::value($filters['productStatus']), set::required(true), set::items($lang->product->statusList), on::change('loadProductSummary') ) ), inputGroup ( setID('productType'), setClass('filter w-1/3'), $lang->pivot->otherLang->productType, picker ( setClass('flex-auto'), set::name('productType'), set::value($filters['productType']), set::required(true), set::items($lang->product->typeList), on::change('loadProductSummary') ) ), ) ), panel ( setID('pivotPanel'), set::title($title), set::shadow(false), set::headingClass('h-14'), set::bodyClass('pt-0'), dtable ( set::striped(true), set::bordered(true), set::cols($cols), set::data($products), set::emptyTip($lang->error->noData), set::height(jsRaw('getHeight')), set::plugins(array('cellspan')), set::getCellSpan(jsRaw('getCellSpan')), set::cellSpanOptions(array('name' => array(), 'PO' => array())) ), div ( setID('exportData'), setClass('hidden'), rawContent(), html($this->pivot->buildPivotTable($data, array())) ) ) ); };