|
@@ -405,6 +405,94 @@ class BiController extends ApiBaseController
|
|
|
return response()->json($data);
|
|
|
}
|
|
|
|
|
|
+ public function company()
|
|
|
+ {
|
|
|
+ $data = [];
|
|
|
+ //企业数和岗位数
|
|
|
+ $company_count = Company::where('is_jkq', 1)->count();
|
|
|
+ $job_count = Jobs::whereHas('company', function ($query) {
|
|
|
+ $query->where('is_jkq', 1);
|
|
|
+ })->count();
|
|
|
+ $data['total_count'] = [
|
|
|
+ ['name' => '企业数', 'count' => $company_count],
|
|
|
+ ['name' => '岗位数', 'count' => $job_count]
|
|
|
+ ];
|
|
|
+
|
|
|
+ //企业所属行业
|
|
|
+ $company_trade_data = Company::where('is_jkq', 1)->select(['trade', DB::raw('count(trade) as count')])->groupBy('trade')->get();
|
|
|
+ $company_trade = [];
|
|
|
+ $company_trade_other = 0;
|
|
|
+ foreach ($company_trade_data as $v) {
|
|
|
+ switch ($v['trade']) {
|
|
|
+ case 11:
|
|
|
+ $company_trade[] = ['name' => '贸易/进出口', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ $company_trade[] = ['name' => '消费品(食/饮/烟酒)', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 14:
|
|
|
+ $company_trade[] = ['name' => '服装/纺织/皮革', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 19:
|
|
|
+ $company_trade[] = ['name' => '制药/生物工程', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 21:
|
|
|
+ $company_trade[] = ['name' => '医疗设备/器械', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 36:
|
|
|
+ $company_trade[] = ['name' => '酒店/旅游', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 37:
|
|
|
+ $company_trade[] = ['name' => '交通/运输/物流', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ $company_trade_other += $v['count'];
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $company_trade[] = ['name' => '其他', 'count' => $company_trade_other];
|
|
|
+ $data['company_trade'] = $company_trade;
|
|
|
+
|
|
|
+ //企业需求工种
|
|
|
+ $job_category_data = Jobs::whereHas('company', function ($query) {
|
|
|
+ $query->where('is_jkq', 1);
|
|
|
+ })->select(['topclass', DB::raw('count(topclass) as count')])->groupBy('topclass')->get();
|
|
|
+ $job_category = [];
|
|
|
+ $job_category_other = 0;
|
|
|
+ foreach ($job_category_data as $v) {
|
|
|
+ switch ($v['topclass']) {
|
|
|
+ case 1:
|
|
|
+ $job_category[] = ['name' => '销售|市场|客服|贸易', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 74:
|
|
|
+ $job_category[] = ['name' => '计算机|通信', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 96:
|
|
|
+ $job_category[] = ['name' => '服装/纺织/皮革', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 116:
|
|
|
+ $job_category[] = ['name' => '生产|质管|技工', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 136:
|
|
|
+ $job_category[] = ['name' => '电子|电气|能源|化工', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 225:
|
|
|
+ $job_category[] = ['name' => '医疗|制药|环保', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ case 258:
|
|
|
+ $job_category[] = ['name' => '学生|社工|科研|农业|其他', 'count' => $v['count']];
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ $job_category_other += $v['count'];
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $job_category[] = ['name' => '其他', 'count' => $job_category_other];
|
|
|
+ $data['job_category'] = $job_category;
|
|
|
+
|
|
|
+ return response()->json($data);
|
|
|
+ }
|
|
|
+
|
|
|
private function _valueToKey($arr, $key)
|
|
|
{
|
|
|
$res = [];
|