true,
);
public $graph_options = array(
'hidden' => true,
);
public $type_options = array(
'display' => 'true',
);
function __construct(&$app)
{
parent::__construct($app);
$this->_render = kernel::single('desktop_controller');
for($i=0;$i<=5;$i++){
if ($i == 1) continue;
$val = $i+1;
$this->_render->pagedata['time_shortcut'][$i] = $val;
}
$shopObj = &app::get('ome')->model('shop');
$shopdata = $shopObj->getList('name,shop_id');
$statistics['qcys'] = $this->statistics_qcys($_POST);#期初应收统计
$statistics['bqys'] = $this->statistics_bqys($_POST);#本期应收统计
$statistics['bqss'] = $this->statistics_bqss($_POST);#本期实收统计
$statistics['qmys'] = sprintf("%01.2f",($statistics['qcys']+$statistics['bqys'])-$statistics['bqss']);#期末应收统计
$this->_render->pagedata['statistics']= $statistics;
$this->_render->pagedata['shopdata']= $shopdata;
$this->_render->pagedata['shop_id']= $_POST['shop_id'] ? $_POST['shop_id'] : '0';
$this->_extra_view = array('finance' => 'ar/item.html');
}
/**
* 查找er
* @return mixed 返回结果
*/
public function finder(){
$this->export_href = 'index.php?app=finance&ctl=ar_item&act=index&action=export';
$params = array(
'model' => 'finance_mdl_ar_statistics',
'params' => array(
'actions'=>array(
array(
'label' => '导出',
'href' => $this->export_href,
'target' => '{width:600,height:300,title:\'导出\'}',
//'id'=>'export_id',
'class'=>'export',
),
),
'title'=>'销售到账明细',
'use_buildin_recycle'=>false,
'use_buildin_selectrow'=>false,
'use_buildin_filter'=>false,
'finder_aliasname'=>'item_ar',
'finder_cols'=>'ar_bn,trade_time,member,type,order_bn,channel_name,column_items_nums,money,column_fee_money,column_qcys,cloumn_bqys,cloumn_bqss,cloumn_qmys',
),
);
#增加财务导出权限
$is_export = kernel::single('desktop_user')->has_permission('finance_export');
if(!$is_export){
unset($params['params']['actions']);
}
return $params;
}
function export_href()
{
$base_href = $this->export_href;
$str = <<
$('export_id').href="{$base_href}";
$('export_id').addEvent('click',function(){var finder_id = $('workground').getElement('input[name^=_finder[finder_id]');
var filter_input = $('finder-filter-'+finder_id.value);
if(filter_input){
$('export_id').href="{$base_href}"+"&"+filter_input.value+"&export_href=true";
}
});
EOF;
return $str;
}
//统计期初应收金额
public function statistics_qcys($filter = array()){
$where = ' 1 ';
if(isset($filter['shop_id']) && $filter['shop_id']!='0'){
$where .= " AND channel_id = '".$filter['shop_id']."'";
unset($filter['shop_id']);
}
if(isset($filter['time_from']) && $filter['time_from']!=''){
$where .= " AND trade_time < ".strtotime($filter['time_from']);
unset($filter['time_from']);
}
$statistics_qcys_sql = 'SELECT SUM(money) as money FROM sdb_finance_ar WHERE '.$where;
$statistics_qcys_verification_sql = 'SELECT SUM(money) as money FROM sdb_finance_verification_items WHERE type=0 AND bill_id in(SELECT ar_id as bill_id FROM sdb_finance_ar WHERE '.$where.')';
$statistics_qcys = kernel::database()->select($statistics_qcys_sql);
$statistics_qcys_verification = kernel::database()->select($statistics_qcys_verification_sql);
$qcys = sprintf("%01.2f",$statistics_qcys[0]['money'] - $statistics_qcys_verification[0]['money']);
return $qcys;
}
//统计本期应收金额
public function statistics_bqys($filter = array()){
$ar_statistics_mdl = app::get('finance')->model('ar_statistics');
$statistics_bqys_sql = 'SELECT SUM(money) as money FROM sdb_finance_ar WHERE '.$ar_statistics_mdl->statistics_filter($filter );
$statistics_bqys = kernel::database()->select($statistics_bqys_sql);
$bqys = sprintf("%01.2f",$statistics_bqys[0]['money']);
return $bqys;
}
//统计本期实收金额
public function statistics_bqss($filter = array()){
$ar_statistics_mdl = app::get('finance')->model('ar_statistics');
$sql = 'SELECT ar_id as bill_id FROM sdb_finance_ar WHERE '.$ar_statistics_mdl->statistics_filter($filter );
$statistics_bqss_verification_sql = 'SELECT SUM(money) as money FROM sdb_finance_verification_items WHERE type=0 AND bill_id in('.$sql.')';
$statistics_bqss_verification = kernel::database()->select($statistics_bqss_verification_sql);
$bqss = sprintf("%01.2f",$statistics_bqss_verification[0]['money']);
return $bqss;
}
}