|
@@ -21,6 +21,31 @@ class ApiService{
|
|
|
|
|
|
}
|
|
|
|
|
|
+ //网格化录入
|
|
|
+ public static function addConition($params)
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $insert = [
|
|
|
+ 'lrr' => $params['lrr'],
|
|
|
+ 'dwmc' => $params['dwmc'],
|
|
|
+ 'xjdw' => $params['xjdw'],
|
|
|
+ 'jcqy' => $params['jcqy'],
|
|
|
+ 'jclx' => $params['jclx'],
|
|
|
+ 'lrsj' => $params['lrsj'],
|
|
|
+ 'jcwt' => $params['jcwt'],
|
|
|
+ 'wtms' => $params['wtms'],
|
|
|
+ 'dkpz' => $params['dkpz'],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $res = DB::connection('mysql_fwview')->table('uf_wghgl_new')->insert($insert);
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化人员轨迹查询条件
|
|
|
public static function getQueryConitions($date = '')
|
|
|
{
|
|
|
$result['status'] = true;
|
|
@@ -45,7 +70,7 @@ class ApiService{
|
|
|
];
|
|
|
$query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
->join('hrmresource', 'uf_wghgl_new.lrr', '=', 'hrmresource.id')
|
|
|
- ->where('xjdw1', $depart_name)
|
|
|
+ ->where('xjdw', $depart_name)
|
|
|
->where('lrsj', 'like', '%' . $date . '%')
|
|
|
->groupBy('lrr')->select(
|
|
|
[
|
|
@@ -62,6 +87,7 @@ class ApiService{
|
|
|
return $result;
|
|
|
}
|
|
|
|
|
|
+ //网格化人员轨迹
|
|
|
public static function getPersonTravel($person_id, $depart, $date = '')
|
|
|
{
|
|
|
$result['status'] = true;
|
|
@@ -78,7 +104,7 @@ class ApiService{
|
|
|
$query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
->where('lrr', $person_id)
|
|
|
->where('lrsj', 'like', '%' . $date . '%')
|
|
|
- ->where('xjdw1', $depart)
|
|
|
+ ->where('xjdw', $depart)
|
|
|
->orderBy('lrsj', 'asc')->get();
|
|
|
$query = json_decode($query);
|
|
|
if ($query) {
|
|
@@ -106,6 +132,225 @@ class ApiService{
|
|
|
$result['data'] = $res;
|
|
|
}
|
|
|
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化巡检记录查询条件
|
|
|
+ public static function getResultConition()
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $depart = DB::connection('mysql_fwview')->table('hrmdepartment')
|
|
|
+ ->where('subcompanyid1', 49)
|
|
|
+ ->where('departmentname', 'like', '%' . '洗煤厂')
|
|
|
+ ->where('id', '!=', 1602)->get();
|
|
|
+
|
|
|
+ $depart_arr = [];
|
|
|
+ foreach ($depart as $key => $val) {
|
|
|
+ $depart_name = str_replace('洗选中心', '', $val->DEPARTMENTNAME);
|
|
|
+ $depart_arr[$key] = $depart_name;
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['data'] = $depart_arr;
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化巡检记录查询
|
|
|
+ public static function getResultRecord($depart = 'all', $date_type = 'week')
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new');
|
|
|
+
|
|
|
+ if ($depart != 'all') {
|
|
|
+ $query = $query->where('xjdw', $depart);
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($date_type == 'month') {
|
|
|
+ $query = $query->where(DB::raw('MONTH(lrsj)'), DB::raw('MONTH(CURDATE())'));
|
|
|
+ } else if ($date_type = 'quarter') {
|
|
|
+ $query = $query->where(DB::raw('QUARTER(lrsj)'), DB::raw('QUARTER(CURDATE())'));
|
|
|
+ } else {
|
|
|
+ $query = $query->where(DB::raw('WEEK(lrsj)'), DB::raw('WEEK(CURDATE())'));
|
|
|
+ }
|
|
|
+
|
|
|
+ $query = $query->groupBy('lrdate', 'xjdw', 'lrr', 'dwmc')
|
|
|
+ ->select(
|
|
|
+ [
|
|
|
+ DB::raw('DATE(lrsj) as lrdate'),
|
|
|
+ 'xjdw',
|
|
|
+ 'lrr',
|
|
|
+ 'dwmc'
|
|
|
+ ]
|
|
|
+ )
|
|
|
+ ->get();
|
|
|
+
|
|
|
+ $data = [];
|
|
|
+ $pie = [];
|
|
|
+ foreach ($query as $key => $val) {
|
|
|
+ $lastname = DB::connection('mysql_fwview')->table('hrmresource')
|
|
|
+ ->where('id', $val->lrr)->value('lastname');
|
|
|
+ $allcount = DB::connection('mysql_fwview')->table('formtable_main_974')
|
|
|
+ ->where('szxmc', $val->xjdw)->count();
|
|
|
+
|
|
|
+ $detail = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->where('xjdw', $val->xjdw)
|
|
|
+ ->where(DB::raw('DATE(lrsj)'), $val->lrdate)
|
|
|
+ ->where('lrr', $val->lrr)->count();
|
|
|
+
|
|
|
+ if ($detail >= $allcount) {
|
|
|
+ $data[$val->lrr] = [
|
|
|
+ 'department' => $val->dwmc,
|
|
|
+ 'lastname' => $lastname,
|
|
|
+ 'person_id' => $val->lrr,
|
|
|
+ 'count' => isset($data[$val->lrr]['count']) ? $data[$val->lrr]['count'] + 1 : 1,
|
|
|
+ ];
|
|
|
+ $pie[$val->lrr] = [
|
|
|
+ 'name' => $lastname,
|
|
|
+ 'value' => isset($data[$val->lrr]['value']) ? $data[$val->lrr]['value'] + 1 : 1,
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $data_arr = array_column($data, 'count');
|
|
|
+ array_multisort($data_arr, SORT_DESC, $data);
|
|
|
+
|
|
|
+ $pie_arr = array_column($pie, 'value');
|
|
|
+ array_multisort($pie_arr, SORT_DESC, $pie);
|
|
|
+
|
|
|
+ $result['data']['list'] = $data;
|
|
|
+ $result['data']['pie'] = $pie;
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化巡检记录列表
|
|
|
+ public static function getResultList($person_id, $depart = 'all', $date_type = 'week')
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new')->where('lrr', $person_id);
|
|
|
+
|
|
|
+ if ($depart != 'all') {
|
|
|
+ $query = $query->where('xjdw', $depart);
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($date_type == 'month') {
|
|
|
+ $query = $query->where(DB::raw('MONTH(lrsj)'), DB::raw('MONTH(CURDATE())'));
|
|
|
+ } else if ($date_type = 'quarter') {
|
|
|
+ $query = $query->where(DB::raw('QUARTER(lrsj)'), DB::raw('QUARTER(CURDATE())'));
|
|
|
+ } else {
|
|
|
+ $query = $query->where(DB::raw('WEEK(lrsj)'), DB::raw('WEEK(CURDATE())'));
|
|
|
+ }
|
|
|
+
|
|
|
+ $query = $query->groupBy('lrdate', 'xjdw')
|
|
|
+ ->select(
|
|
|
+ [
|
|
|
+ 'xjdw',
|
|
|
+ DB::raw('DATE(lrsj) as lrdate'),
|
|
|
+ ]
|
|
|
+ )
|
|
|
+ ->get();
|
|
|
+
|
|
|
+ $data = [];
|
|
|
+ foreach ($query as $key => $val) {
|
|
|
+ $lastname = DB::connection('mysql_fwview')->table('hrmresource')
|
|
|
+ ->where('id', $person_id)->value('lastname');
|
|
|
+
|
|
|
+ $allcount = DB::connection('mysql_fwview')->table('formtable_main_974')
|
|
|
+ ->where('szxmc', $val->xjdw)->count();
|
|
|
+
|
|
|
+ $detail = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->where('xjdw', $val->xjdw)
|
|
|
+ ->where(DB::raw('DATE(lrsj)'), $val->lrdate)
|
|
|
+ ->where('lrr', $person_id)->count();
|
|
|
+
|
|
|
+ if ($detail >= $allcount) {
|
|
|
+ $data[] = [
|
|
|
+ 'lastname' => $lastname,
|
|
|
+ 'person_id' => $person_id,
|
|
|
+ 'depart' => $val->xjdw,
|
|
|
+ 'date' => $val->lrdate
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $data_arr = array_column($data, 'date');
|
|
|
+ array_multisort($data_arr, SORT_DESC, $data);
|
|
|
+
|
|
|
+ $result['data']['list'] = $data;
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化巡检记录列表明细
|
|
|
+ public static function getResultDlist($person_id, $depart, $date)
|
|
|
+ {
|
|
|
+
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->join('hrmresource', 'uf_wghgl_new.lrr', '=', 'hrmresource.id')
|
|
|
+ ->where('lrr', $person_id)
|
|
|
+ ->where('xjdw', $depart)
|
|
|
+ ->where('lrsj', 'like', $date . '%')
|
|
|
+ ->orderBy('lrsj', 'desc')
|
|
|
+ ->select(
|
|
|
+ [
|
|
|
+ 'uf_wghgl_new.id',
|
|
|
+ 'lastname',
|
|
|
+ 'jcqy',
|
|
|
+ 'lrsj',
|
|
|
+ ]
|
|
|
+ )->get();
|
|
|
+
|
|
|
+ $query = json_decode($query);
|
|
|
+
|
|
|
+ $result['data'] = $query;
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //网格化巡检记录明细
|
|
|
+ public static function getResultDetails($id)
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->join('hrmresource', 'uf_wghgl_new.lrr', '=', 'hrmresource.id')
|
|
|
+ ->where('uf_wghgl_new.id', $id)
|
|
|
+ ->select(
|
|
|
+ [
|
|
|
+ 'lastname',
|
|
|
+ 'dwmc',
|
|
|
+ 'xjdw',
|
|
|
+ 'jcqy',
|
|
|
+ 'jclx',
|
|
|
+ 'lrsj',
|
|
|
+ 'jcwt',
|
|
|
+ 'wtms',
|
|
|
+ 'dkpz'
|
|
|
+ ]
|
|
|
+ )->get();
|
|
|
+
|
|
|
+ $query = json_decode($query);
|
|
|
+
|
|
|
+ $result['data'] = $query;
|
|
|
|
|
|
return $result;
|
|
|
}
|