array[
'date' => '20180208'---日期
'fee' => '10.00' ---价格
'currency' => 'USD' ---币种类型
]1=>array[
'date' => '20180208'
'fee' => '20.00'
'currency' => 'TWD'
]];*/
$l = $this->incomeService->getDateIncomeList();
/* $type sql查询后数据结构(distinct币种字段)
array[0=>array[
'currency' => 'USD'
]1=>array[
'currency' => 'TWD'
]];*/
$type = $this->incomeService->getCurrency();
$number = count($type);
/* $data_type 币种类型数据处理过后结构
array[
0 => 'USD'
1 => 'TWD'
];*/
$data_type = array();
foreach ($type as $key=>$value) {
$data_type[$key] = $value['currency'];
}
/* $data_total 统计每天不同币种价格数据处理过后结构
array['USD'=>array[
'20180208' => '10.00'
'20180207' => '20.00'
]'TWD'=>array[
'20180208' => '10.00'
'20180207' => '20.00'
]];*/
$data_total = array();
foreach ($l as $key=>$value) {
$data_total[$value['currency']][$value['date']] = $value['fee'];
}
/* $total_sum 统计30天币种汇总数据处理过后结构
array[
'USD' => '10.00'
'TWD' => '20.00'
];*/
$total_sum = array();
for($i=0; $i<$number; $i++){
$total_sum[$data_type[$i]] = empty($data_total[$data_type[$i]]) ? 0 : array_sum($data_total[$data_type[$i]]);
}
/* $time 统计时间数据处理过后结构
array['20180208'=>array[
'date' => '20180208'
]'20180207'=>array[
'date' => '20180207'
]];*/
$time = array();
foreach ($l as $key=>$value) {
$time[$value['date']]['date'] = $value['date'];
}
/* $list 汇总合并每天不同币种数据处理过后结构
array['20180208'=>array[
'date' => '20180208'
'USD' => '10.00'
'TWD' => '20.00'
]'20180207'=>array[
'date' => '20180207'
'USD' => '10.00'
'TWD' => '20.00'
]];*/
$list = array();
foreach ($time as $key=>$value){
$list[$key]['date'] = $key;
for($i=0; $i<$number; $i++){
$list[$key][$data_type[$i]] = empty($data_total[$data_type[$i]][$key]) ? 0 : $data_total[$data_type[$i]][$key];
}
}
//Highcharts数据图表插件数据处理 ---(可以用百度等插件)
$chartsData = $this->searchChartsDataFormat($list);
$this->render('income' array(
'list' => $list
'chartsData' => $chartsData
'total_sum' => $total_sum
'number' => $number
'data_type' => $data_type
));
}
/**
* [searchChartsData 数据图表使用]
* @param string $sql [desc
var chart = new Highcharts.Chart('container' {
ti
汇总 |