|
@@ -1120,6 +1120,7 @@ class ApiController extends BaseController
|
|
|
public function dutyCalendar(){
|
|
|
$result['status'] = true;
|
|
|
$result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
|
|
|
$riqi = Input::get('riqi', '');
|
|
|
|
|
@@ -1127,8 +1128,93 @@ class ApiController extends BaseController
|
|
|
return self::errorResponse(ApiEnum::STATUS_CODE_EMPTY);
|
|
|
}
|
|
|
|
|
|
- $list = DB::connection('mysql_fwe10')->table('uf_gggs_zbgl')->get();
|
|
|
- dd($list);
|
|
|
+ $zbInfo = DB::connection('mysql_fwe10')->table('uf_gggs_zbgl')->where('riqi',$riqi)->orderBy('CREATE_TIME','desc')->first();
|
|
|
+
|
|
|
+ if (!$zbInfo) {
|
|
|
+ return self::successResponse($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'title' => date('Y年n月j日', strtotime($riqi)).'值班信息',
|
|
|
+ 'zzb' => [], // 主值班
|
|
|
+ 'fzb' => [], // 副值班
|
|
|
+ 'gbdd' => [], // 跟班地点
|
|
|
+ 'zbsj' => [], // 值班司机
|
|
|
+ 'pmyzx' => [], // 配煤一中心
|
|
|
+ 'pmezx' => [], // 配煤二中心
|
|
|
+ 'whzx' => [], // 维护中心
|
|
|
+ 'dyzx' => [], // 电仪中心
|
|
|
+ 'zczx' => [], // 渣场中心
|
|
|
+ 'zabw' => [], // 治安保卫
|
|
|
+ 'ylzx' => [], // 原料中心
|
|
|
+ 'hqzx' => [] // 后勤中心
|
|
|
+ ];
|
|
|
+
|
|
|
+ $fieldMap = [
|
|
|
+ 'zzb' => ['zzb'],
|
|
|
+ 'fzb' => ['fzb1', 'fzb2'],
|
|
|
+ 'gbdd' => ['gbdd1','gbdd2'],
|
|
|
+ 'zbsj' => ['zbsj'],
|
|
|
+ 'pmyzx' => ['pmyzx1','pmyzx2'],
|
|
|
+ 'pmezx' => ['pmezx1','pmezx2'],
|
|
|
+ 'whzx' => ['whzx1','whzx2'],
|
|
|
+ 'dyzx' => ['dyzx1','dyzx2'],
|
|
|
+ 'zczx' => ['zczx1','zczx2'],
|
|
|
+ 'zabw' => ['zabw1','zabw2'],
|
|
|
+ 'ylzx' => ['ylzx1','ylzx2'],
|
|
|
+ 'hqzx' => ['hqzx1','hqzx2'],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $namesToQuery = array_filter([
|
|
|
+ $zbInfo->zzb,
|
|
|
+ $zbInfo->fzb1,
|
|
|
+ $zbInfo->fzb2,
|
|
|
+ $zbInfo->zbsj,
|
|
|
+ $zbInfo->pmyzx1,
|
|
|
+ $zbInfo->pmyzx2,
|
|
|
+ $zbInfo->pmezx1,
|
|
|
+ $zbInfo->pmezx2,
|
|
|
+ $zbInfo->whzx1,
|
|
|
+ $zbInfo->whzx2,
|
|
|
+ $zbInfo->dyzx1,
|
|
|
+ $zbInfo->dyzx2,
|
|
|
+ $zbInfo->zczx1,
|
|
|
+ $zbInfo->zczx2,
|
|
|
+ $zbInfo->zabw1,
|
|
|
+ $zbInfo->zabw2,
|
|
|
+ $zbInfo->ylzx1,
|
|
|
+ $zbInfo->ylzx2,
|
|
|
+ $zbInfo->hqzx1,
|
|
|
+ $zbInfo->hqzx2
|
|
|
+ ]);
|
|
|
+
|
|
|
+ $peopleInfo = [];
|
|
|
+ if (!empty($namesToQuery)) {
|
|
|
+ $peopleData = DB::connection('mysql_fwe10')
|
|
|
+ ->table('uf_gggs_rygl as r1')
|
|
|
+ ->whereIn('xm', $namesToQuery)
|
|
|
+ ->whereRaw('CREATE_TIME = (
|
|
|
+ SELECT MAX(CREATE_TIME)
|
|
|
+ FROM uf_gggs_rygl as r2
|
|
|
+ WHERE r2.xm = r1.xm)')
|
|
|
+ ->get()
|
|
|
+ ->keyBy('xm');
|
|
|
+ foreach ($peopleData as $person) {
|
|
|
+ $peopleInfo[$person->xm] = $person->dh ?? '';
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($fieldMap as $dataKey => $dbFields) {
|
|
|
+ foreach ($dbFields as $field) {
|
|
|
+ if (!empty($zbInfo->$field)) {
|
|
|
+ $name = $zbInfo->$field;
|
|
|
+ $phone = $peopleInfo[$name] ?? '';
|
|
|
+ $data[$dataKey][] = $phone ? $name . $phone : $name;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['data'] = $data;
|
|
|
|
|
|
return self::successResponse($result);
|
|
|
}
|
|
@@ -1137,6 +1223,7 @@ class ApiController extends BaseController
|
|
|
public function dutySearch(){
|
|
|
$result['status'] = true;
|
|
|
$result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
|
|
|
$name = Input::get('name', '');
|
|
|
$start_date = Input::get('start_date', '');
|
|
@@ -1152,6 +1239,93 @@ class ApiController extends BaseController
|
|
|
return self::errorResponse(ApiEnum::STATUS_CODE_EMPTY);
|
|
|
}
|
|
|
|
|
|
+ $people = DB::connection('mysql_fwe10')->table('uf_gggs_rygl')->where('xm',$name)->orderBy('create_time','desc')->first();
|
|
|
+
|
|
|
+ $mobile = '';
|
|
|
+
|
|
|
+ if(!empty($people) && $people->dh != null && $people->dh != ''){
|
|
|
+ $mobile = '('.$people->dh.')';
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['title'] = $name.$mobile.date('Y年n月j日', strtotime($start_date)).'至'.date('Y年n月j日', strtotime($end_date)).'的值班记录';
|
|
|
+
|
|
|
+ $list = DB::connection('mysql_fwe10')->table('uf_gggs_zbgl')->whereBetween('riqi', [$start_date, $end_date])
|
|
|
+ ->whereIn('id', function($subQuery) {
|
|
|
+ $subQuery->selectRaw('MAX(id)') // 获取每个日期的最大create_time对应的记录
|
|
|
+ ->from('uf_gggs_zbgl')
|
|
|
+ ->groupBy('riqi'); // 按riqi分组
|
|
|
+ })->orderBy('riqi')->get();
|
|
|
+
|
|
|
+ $data = [];
|
|
|
+
|
|
|
+ if(count($list) > 0){
|
|
|
+ for($i=0;$i<count($list);$i++){
|
|
|
+ $riqi = date('Y/n/j', strtotime($list[$i]->riqi));
|
|
|
+ if($list[$i]->zzb == $name){
|
|
|
+ array_push($data,[$riqi,'主值班']);
|
|
|
+ }
|
|
|
+ if($list[$i]->fzb1 == $name){
|
|
|
+ array_push($data,[$riqi,'副值班']);
|
|
|
+ }
|
|
|
+ if($list[$i]->fzb2 == $name){
|
|
|
+ array_push($data,[$riqi,'副值班']);
|
|
|
+ }
|
|
|
+ if($list[$i]->zbsj == $name){
|
|
|
+ array_push($data,[$riqi,'值班司机']);
|
|
|
+ }
|
|
|
+ if($list[$i]->pmyzx1 == $name){
|
|
|
+ array_push($data,[$riqi,'配煤一中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->pmyzx2 == $name){
|
|
|
+ array_push($data,[$riqi,'配煤一中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->pmezx1 == $name){
|
|
|
+ array_push($data,[$riqi,'配煤二中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->pmezx2 == $name){
|
|
|
+ array_push($data,[$riqi,'配煤二中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->whzx1 == $name){
|
|
|
+ array_push($data,[$riqi,'维护中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->whzx2 == $name){
|
|
|
+ array_push($data,[$riqi,'维护中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->dyzx1 == $name){
|
|
|
+ array_push($data,[$riqi,'电仪中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->dyzx2 == $name){
|
|
|
+ array_push($data,[$riqi,'电仪中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->zczx1 == $name){
|
|
|
+ array_push($data,[$riqi,'渣场中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->zczx2 == $name){
|
|
|
+ array_push($data,[$riqi,'渣场中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->zabw1 == $name){
|
|
|
+ array_push($data,[$riqi,'治安保卫']);
|
|
|
+ }
|
|
|
+ if($list[$i]->zabw2 == $name){
|
|
|
+ array_push($data,[$riqi,'治安保卫']);
|
|
|
+ }
|
|
|
+ if($list[$i]->ylzx1 == $name){
|
|
|
+ array_push($data,[$riqi,'原料中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->ylzx2 == $name){
|
|
|
+ array_push($data,[$riqi,'原料中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->hqzx1 == $name){
|
|
|
+ array_push($data,[$riqi,'后勤中心']);
|
|
|
+ }
|
|
|
+ if($list[$i]->hqzx2 == $name){
|
|
|
+ array_push($data,[$riqi,'后勤中心']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['data'] =$data;
|
|
|
+
|
|
|
return self::successResponse($result);
|
|
|
}
|
|
|
|