|
@@ -0,0 +1,112 @@
|
|
|
+<?php
|
|
|
+/**
|
|
|
+ * Created by PhpStorm.
|
|
|
+ * User: qiuzijian
|
|
|
+ * Date: 6/22/24
|
|
|
+ * Time: 12:34 PM
|
|
|
+ */
|
|
|
+
|
|
|
+namespace Modules\Admin\Services;
|
|
|
+
|
|
|
+use App\Enum\ApiEnum;
|
|
|
+use Illuminate\Support\Facades\Cache;
|
|
|
+use Illuminate\Support\Facades\DB;
|
|
|
+use Illuminate\Support\Facades\Log;
|
|
|
+use Modules\Admin\Entities\Menu;
|
|
|
+
|
|
|
+class ApiService{
|
|
|
+
|
|
|
+ public function __construct()
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function getQueryConitions($date = '')
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ if (!$date) {
|
|
|
+ $date = date('Y-m-d', time());
|
|
|
+ }
|
|
|
+
|
|
|
+ $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] = [
|
|
|
+ 'name' => $depart_name,
|
|
|
+
|
|
|
+ ];
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->join('hrmresource', 'uf_wghgl_new.lrr', '=', 'hrmresource.id')
|
|
|
+ ->where('xjdw1', $depart_name)
|
|
|
+ ->where('lrsj', 'like', '%' . $date . '%')
|
|
|
+ ->groupBy('lrr')->select(
|
|
|
+ [
|
|
|
+ 'hrmresource.lastname as person_name',
|
|
|
+ 'uf_wghgl_new.lrr as person_id'
|
|
|
+ ]
|
|
|
+ )->get();
|
|
|
+ $query = json_decode($query);
|
|
|
+ $depart_arr[$key]['person_list'] = $query;
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['data'] = $depart_arr;
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function getPersonTravel($person_id, $depart, $date = '')
|
|
|
+ {
|
|
|
+ $result['status'] = true;
|
|
|
+ $result['msg'] = ApiEnum::RETURN_SUCCESS;
|
|
|
+ $result['data'] = [];
|
|
|
+
|
|
|
+ if (!$date) {
|
|
|
+ $date = date('Y-m-d', time());
|
|
|
+ }
|
|
|
+
|
|
|
+ $res = [];
|
|
|
+ $area_arr = [];
|
|
|
+
|
|
|
+ $query = DB::connection('mysql_fwview')->table('uf_wghgl_new')
|
|
|
+ ->where('lrr', $person_id)
|
|
|
+ ->where('lrsj', 'like', '%' . $date . '%')
|
|
|
+ ->where('xjdw1', $depart)
|
|
|
+ ->orderBy('lrsj', 'asc')->get();
|
|
|
+ $query = json_decode($query);
|
|
|
+ if ($query) {
|
|
|
+ foreach ($query as $key => $val) {
|
|
|
+ $area_arr[] = $val->jcqy;
|
|
|
+ $res[] = [
|
|
|
+ 'area' => $val->jcqy,
|
|
|
+ 'date' => $val->lrsj,
|
|
|
+ 'data_id' => $val->id,
|
|
|
+ 'url' => '/mobilemode/formbasebrowserview.jsp?billid=' . $val->id . '&modeId=580&formId=-976',
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $area_list = DB::connection('mysql_fwview')->table('formtable_main_974')
|
|
|
+ ->whereNotIn('qymc', $area_arr)
|
|
|
+ ->where('szxmc', $depart)->orderBy('areaid', 'asc')->get();
|
|
|
+ foreach ($area_list as $area) {
|
|
|
+ $res[] = [
|
|
|
+ 'area' => $area->qymc,
|
|
|
+ 'date' => '',
|
|
|
+ 'data_id' => '',
|
|
|
+ 'url' => '',
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ $result['data'] = $res;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+}
|