调整城镇饼图统计排行榜接口返回
parent
fc2728d23c
commit
32ab9a7105
|
|
@ -228,18 +228,19 @@ class CropYieldController extends Controller
|
||||||
$baseId = $request->input('base_id'); //镇
|
$baseId = $request->input('base_id'); //镇
|
||||||
$year = $request->input('year', date('Y')); //年份
|
$year = $request->input('year', date('Y')); //年份
|
||||||
|
|
||||||
$q = CropYield::query();
|
//使用单独配置,不再做统计
|
||||||
$q->where('time_year', $year);
|
// $q = CropYield::query();
|
||||||
if ($baseId) {
|
// $q->where('time_year', $year);
|
||||||
$q->where('base_id', $baseId);
|
// if ($baseId) {
|
||||||
}else{
|
// $q->where('base_id', $baseId);
|
||||||
$baseIds = AgriculturalBase::where('type', BaseType::Town)->pluck('id')->toArray();
|
// }else{
|
||||||
$q->whereIn('base_id', $baseIds);
|
// $baseIds = AgriculturalBase::where('type', BaseType::Town)->pluck('id')->toArray();
|
||||||
}
|
// $q->whereIn('base_id', $baseIds);
|
||||||
$q->groupBy('category_id');
|
// }
|
||||||
$totalData = $q->select(DB::raw('category_id, sum(output) as output_total '))
|
// $q->groupBy('category_id');
|
||||||
->get()
|
// $totalData = $q->select(DB::raw('category_id, sum(output) as output_total '))
|
||||||
->keyBy('category_id')->toArray();
|
// ->get()
|
||||||
|
// ->keyBy('category_id')->toArray();
|
||||||
|
|
||||||
$categories = Keywords::filter($request->all())->where('type_key', 'crops-category')->get();
|
$categories = Keywords::filter($request->all())->where('type_key', 'crops-category')->get();
|
||||||
|
|
||||||
|
|
@ -250,9 +251,10 @@ class CropYieldController extends Controller
|
||||||
}
|
}
|
||||||
foreach ($categories as $category) {
|
foreach ($categories as $category) {
|
||||||
$data[$category->name] = 0;
|
$data[$category->name] = 0;
|
||||||
if (isset($totalData[$category->id])) {
|
//使用单独配置,不再做统计
|
||||||
$data[$category->name] = $totalData[$category->id]['output_total'];
|
// if (isset($totalData[$category->id])) {
|
||||||
}
|
// $data[$category->name] = $totalData[$category->id]['output_total'];
|
||||||
|
// }
|
||||||
//如果是没有查指定城镇,则如果设置数据统计,则使用统计数值;
|
//如果是没有查指定城镇,则如果设置数据统计,则使用统计数值;
|
||||||
if(!($baseId > 0)){
|
if(!($baseId > 0)){
|
||||||
$data[$category->name] = 0;
|
$data[$category->name] = 0;
|
||||||
|
|
@ -283,6 +285,36 @@ class CropYieldController extends Controller
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
$baseExtends = AgriculturalBase::where('id', $baseId)->value('extends');
|
||||||
|
$baseExtends = json_decode($baseExtends, true);
|
||||||
|
switch($category->key){
|
||||||
|
case 'crops-cate-nongye':
|
||||||
|
if(isset($baseExtends['chart_nongye'][$year])){
|
||||||
|
$data[$category->name] = ($baseExtends['chart_nongye'][$year])*10000;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'crops-cate-yuye':
|
||||||
|
if(isset($baseExtends['chart_yuye'][$year])){
|
||||||
|
$data[$category->name] = ($baseExtends['chart_yuye'][$year])*10000;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'crops-cate-xumuye':
|
||||||
|
if(isset($baseExtends['chart_xumuye'][$year])){
|
||||||
|
$data[$category->name] = ($baseExtends['chart_xumuye'][$year])*10000;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'crops-cate-lingye':
|
||||||
|
if(isset($baseExtends['chart_lingye'][$year])){
|
||||||
|
$data[$category->name] = ($baseExtends['chart_lingye'][$year])*10000;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'crops-cate-activity':
|
||||||
|
if(isset($baseExtends['chart_activity'][$year])){
|
||||||
|
$data[$category->name] = ($baseExtends['chart_activity'][$year])*10000;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -300,20 +332,20 @@ class CropYieldController extends Controller
|
||||||
$nowYear = date('Y');
|
$nowYear = date('Y');
|
||||||
//默认去年开始往前4年;
|
//默认去年开始往前4年;
|
||||||
$nowYear--;
|
$nowYear--;
|
||||||
|
//使用单独配置,不再做统计
|
||||||
|
// $q = CropYield::query();
|
||||||
|
// if ($baseId) {
|
||||||
|
// $q->where('base_id', $baseId);
|
||||||
|
// }else{
|
||||||
|
// $baseIds = AgriculturalBase::where('type', BaseType::Town)->pluck('id')->toArray();
|
||||||
|
// $q->whereIn('base_id', $baseIds);
|
||||||
|
// }
|
||||||
|
// $q->where('time_year', '>=', $nowYear - 3);
|
||||||
|
|
||||||
$q = CropYield::query();
|
// $q->groupBy('time_year');
|
||||||
if ($baseId) {
|
// $totalData = $q->select(DB::raw('time_year, sum(output) as output_total '))
|
||||||
$q->where('base_id', $baseId);
|
// ->get()
|
||||||
}else{
|
// ->keyBy('time_year')->toArray();
|
||||||
$baseIds = AgriculturalBase::where('type', BaseType::Town)->pluck('id')->toArray();
|
|
||||||
$q->whereIn('base_id', $baseIds);
|
|
||||||
}
|
|
||||||
$q->where('time_year', '>=', $nowYear - 3);
|
|
||||||
|
|
||||||
$q->groupBy('time_year');
|
|
||||||
$totalData = $q->select(DB::raw('time_year, sum(output) as output_total '))
|
|
||||||
->get()
|
|
||||||
->keyBy('time_year')->toArray();
|
|
||||||
|
|
||||||
$data = [];
|
$data = [];
|
||||||
$settingCharts = [];
|
$settingCharts = [];
|
||||||
|
|
@ -323,9 +355,10 @@ class CropYieldController extends Controller
|
||||||
for ($i = 0; $i < 4; $i++) {
|
for ($i = 0; $i < 4; $i++) {
|
||||||
$_year = $nowYear - $i;
|
$_year = $nowYear - $i;
|
||||||
$data[$_year] = 0;
|
$data[$_year] = 0;
|
||||||
if (isset($totalData[$_year])) {
|
//使用单独配置,不再做统计
|
||||||
$data[$_year] = $totalData[$_year]['output_total'];
|
// if (isset($totalData[$_year])) {
|
||||||
}
|
// $data[$_year] = $totalData[$_year]['output_total'];
|
||||||
|
// }
|
||||||
if(!($baseId > 0)){
|
if(!($baseId > 0)){
|
||||||
$data[$_year] = 0;
|
$data[$_year] = 0;
|
||||||
if(isset(json_decode($settingCharts['city_data_chart_nongye'], true)[$_year])){
|
if(isset(json_decode($settingCharts['city_data_chart_nongye'], true)[$_year])){
|
||||||
|
|
@ -343,6 +376,24 @@ class CropYieldController extends Controller
|
||||||
if(isset(json_decode($settingCharts['city_data_chart_activity'], true)[$_year])){
|
if(isset(json_decode($settingCharts['city_data_chart_activity'], true)[$_year])){
|
||||||
$data[$_year] += (json_decode($settingCharts['city_data_chart_activity'], true)[$_year])*10000;
|
$data[$_year] += (json_decode($settingCharts['city_data_chart_activity'], true)[$_year])*10000;
|
||||||
}
|
}
|
||||||
|
}else{//使用单独配置,不再做统计
|
||||||
|
$baseExtends = AgriculturalBase::where('id', $baseId)->value('extends');
|
||||||
|
$baseExtends = json_decode($baseExtends, true);
|
||||||
|
if(isset($baseExtends['chart_nongye'][$_year])){
|
||||||
|
$data[$_year] += ($baseExtends['chart_nongye'][$_year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_yuye'][$_year])){
|
||||||
|
$data[$_year] += ($baseExtends['chart_yuye'][$_year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_xumuye'][$_year])){
|
||||||
|
$data[$_year] += ($baseExtends['chart_xumuye'][$_year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_lingye'][$_year])){
|
||||||
|
$data[$_year] += ($baseExtends['chart_lingye'][$_year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_activity'][$_year])){
|
||||||
|
$data[$_year] += ($baseExtends['chart_activity'][$_year])*10000;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -361,15 +412,16 @@ class CropYieldController extends Controller
|
||||||
$year = $request->input('year', date('Y')); //年份
|
$year = $request->input('year', date('Y')); //年份
|
||||||
$categoryId = $request->input('category_id'); //行业ID
|
$categoryId = $request->input('category_id'); //行业ID
|
||||||
|
|
||||||
$q = CropYield::query();
|
//使用单独配置,不再做统计
|
||||||
$q->where('time_year', $year);
|
// $q = CropYield::query();
|
||||||
if ($categoryId) {
|
// $q->where('time_year', $year);
|
||||||
$q->where('category_id', $categoryId);
|
// if ($categoryId) {
|
||||||
}
|
// $q->where('category_id', $categoryId);
|
||||||
$q->groupBy('base_id');
|
// }
|
||||||
$totalData = $q->select(DB::raw('base_id, sum(output) as output_total '))
|
// $q->groupBy('base_id');
|
||||||
->get()
|
// $totalData = $q->select(DB::raw('base_id, sum(output) as output_total '))
|
||||||
->keyBy('base_id')->toArray();
|
// ->get()
|
||||||
|
// ->keyBy('base_id')->toArray();
|
||||||
|
|
||||||
$bases = AgriculturalBase::town()->get();
|
$bases = AgriculturalBase::town()->get();
|
||||||
|
|
||||||
|
|
@ -377,9 +429,26 @@ class CropYieldController extends Controller
|
||||||
|
|
||||||
foreach ($bases as $base) {
|
foreach ($bases as $base) {
|
||||||
$data[$base->name] = 0;
|
$data[$base->name] = 0;
|
||||||
if (isset($totalData[$base->id])) {
|
$baseExtends = json_decode($base->extends, true);
|
||||||
$data[$base->name] = $totalData[$base->id]['output_total'];
|
if(isset($baseExtends['chart_nongye'][$year])){
|
||||||
|
$data[$base->name] += ($baseExtends['chart_nongye'][$year])*10000;
|
||||||
}
|
}
|
||||||
|
if(isset($baseExtends['chart_yuye'][$year])){
|
||||||
|
$data[$base->name] += ($baseExtends['chart_yuye'][$year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_xumuye'][$year])){
|
||||||
|
$data[$base->name] += ($baseExtends['chart_xumuye'][$year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_lingye'][$year])){
|
||||||
|
$data[$base->name] += ($baseExtends['chart_lingye'][$year])*10000;
|
||||||
|
}
|
||||||
|
if(isset($baseExtends['chart_activity'][$year])){
|
||||||
|
$data[$base->name] += ($baseExtends['chart_activity'][$year])*10000;
|
||||||
|
}
|
||||||
|
//使用单独配置,不再做统计
|
||||||
|
// if (isset($totalData[$base->id])) {
|
||||||
|
// $data[$base->name] = $totalData[$base->id]['output_total'];
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
arsort($data);
|
arsort($data);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue