has_permission('material_fukubukuro_edit')) {
$btn = '编辑 ';
}
return $btn;
}
var $detail_basic = '基本信息';
/**
* detail_basic
* @param mixed $combine_id ID
* @return mixed 返回值
*/
public function detail_basic($combine_id)
{
$render = app::get($this->_appName)->render();
$combineMdl = app::get('material')->model($this->_modelName);
$combineLib = kernel::single('material_fukubukuro_combine');
//获取信息
$masterInfo = $combineMdl->dump(array($this->_primary_id=>$combine_id), '*');
//items
$error_msg = '';
$itemList = $combineLib->formatCombineItems($combine_id, $error_msg);
$render->pagedata['data'] = $masterInfo;
$render->pagedata['items'] = $itemList;
return $render->fetch('admin/fukubukuro/detail_basic.html');
}
//关联基础物料
var $column_relation_material = '关联基础物料';
var $column_relation_material_width = 350;
var $column_relation_material_order = 20;
/**
* column_relation_material
* @param mixed $row row
* @param mixed $list list
* @return mixed 返回值
*/
public function column_relation_material($row, $list)
{
//load
$this->_getRelationMaterial($list);
$combine_id = $row[$this->col_prefix .'combine_id'];
$materialBns = array();
$mateiralList = isset(self::$_reMaterials[$combine_id]) ? self::$_reMaterials[$combine_id] : array();
if($mateiralList){
$materialBns = array_column($mateiralList, 'material_bn');
}
$material_str = implode(',', $materialBns);
$materialBns = array_splice($materialBns, 0, 5);
return ''. implode(',', $materialBns) .'';
}
/**
* 批量获取指定经销商列表(包含贸易公司信息)
*
* @param $list
* @return boolean
*/
private function _getRelationMaterial($list)
{
//check
if(self::$_reMaterials){
return true;
}
$combineItemMdl = app::get('material')->model('fukubukuro_combine_items');
$basicMaterialObj = app::get('material')->model('basic_material');
$combineIds = array_column($list, 'combine_id');
//items
$itemList = $combineItemMdl->getList('combine_id,bm_id', array('combine_id'=>$combineIds));
if(empty($itemList)){
return false;
}
//material
$bmIds = array_column($itemList, 'bm_id');
$materialList = $basicMaterialObj->getList('bm_id,material_bn,material_name', array('bm_id'=>$bmIds));
$materialList = array_column($materialList, null, 'bm_id');
if(empty($materialList)){
return false;
}
//format
foreach ($itemList as $key => $val)
{
$combine_id = $val['combine_id'];
$bm_id = $val['bm_id'];
self::$_reMaterials[$combine_id][$bm_id] = array(
'material_bn' => $materialList[$bm_id]['material_bn'],
'material_name' => $materialList[$bm_id]['material_bn']
);
}
return true;
}
var $detail_log = "操作日志";
/**
* detail_log
* @param mixed $combine_id ID
* @return mixed 返回值
*/
public function detail_log($combine_id)
{
$render = app::get($this->_appName)->render();
//log
$operLogMdl = app::get('ome')->model('operation_log');
$logList = $operLogMdl->read_log(array('obj_id'=>$combine_id, 'obj_type'=>'fukubukuro_combine@material'), 0, -1);
$render->pagedata['logList'] = $logList;
return $render->fetch('admin/fukubukuro/detail_log.html');
}
}