Performance Profiling

Total processing time: 107 ms; Peak memory: 4.924 MB. Show Profiling Timeline

总计24条数据
TimeDurationCategoryInfo
  
18:04:17.50219.1 msyii\db\Command::querySELECT count(*) as count, object_type FROM "a57be577deb434"."tbl_unread_comments" WHERE ("remind_user_id"=1015) AND (is_read = false) GROUP BY "object_type"
18:04:17.48417.4 msyii\db\Command::querySELECT COUNT(*) FROM "a57be577deb434"."tbl_unread_comments" WHERE ("remind_user_id"=1015) AND ("is_read"=FALSE) AND ("object_type" <> 20030)
18:04:17.5718.7 msyii\db\Command::queryINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "version_code", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1015, 2, 1161, 'v2/user/get-index', '{"access_token":"Q_7DD5LA0njCol9o5skCibRkap3ZqeYZ","device_type":"2","posttime":"1784109824","token":"98082a613481163bd8d90e9508ada2fe","version_code":"1161"}', '{"code":200,"data":{"announcementUnread":{"count":0},"unread":[],"calendar":{"list":[{"id":278435,"title":"\u6cd5\u56fd\u7ea2\u9152","client_id":982,"created_by":1015,"start_at":"2026-07-15 09:00:00","end_at":"2026-07-15 18:00:00","type":1,"is_alarm":false,"createdBy":{"id":1015,"key":1015,"name":"\u5434\u660a","sex":"M","department_id":2,"department":{"id":2,"key":2,"name":"\u6280\u672f\u90e8"},"avatar":{"id":12,"user_id":1015,"name":"\/files\/cdn\/a57be577deb434\/avatar\/d69b398a-5951-36e9-a92e-992fe938db26.jpg"}},"client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","sales_rep":1001,"logo":null},"start_at_display":"09:00","end_at_display":"18:00","can_update":true,"can_delete":true,"attachmentRelationships":[]}],"point":[{"edate":"2026-07-31","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-30","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-29","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-28","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-27","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-26","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-25","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-24","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-23","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-22","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-21","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-20","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-19","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-18","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-17","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-16","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-15","is_used":true,"is_calendar_used":true,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-14","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-13","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-12","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-11","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-10","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-09","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-08","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-07","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-06","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-05","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-04","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-03","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-02","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false},{"edate":"2026-07-01","is_used":false,"is_calendar_used":false,"is_schedule_used":false,"is_work_log_used":false}],"free":[],"alarm":[{"edate":"2026-07-31","is_alarm":false},{"edate":"2026-07-30","is_alarm":false},{"edate":"2026-07-29","is_alarm":false},{"edate":"2026-07-28","is_alarm":false},{"edate":"2026-07-27","is_alarm":false},{"edate":"2026-07-26","is_alarm":false},{"edate":"2026-07-25","is_alarm":false},{"edate":"2026-07-24","is_alarm":false},{"edate":"2026-07-23","is_alarm":false},{"edate":"2026-07-22","is_alarm":false},{"edate":"2026-07-21","is_alarm":false},{"edate":"2026-07-20","is_alarm":false},{"edate":"2026-07-19","is_alarm":false},{"edate":"2026-07-18","is_alarm":false},{"edate":"2026-07-17","is_alarm":false},{"edate":"2026-07-16","is_alarm":false},{"edate":"2026-07-15","is_alarm":false},{"edate":"2026-07-14","is_alarm":false},{"edate":"2026-07-13","is_alarm":false},{"edate":"2026-07-12","is_alarm":false},{"edate":"2026-07-11","is_alarm":false},{"edate":"2026-07-10","is_alarm":false},{"edate":"2026-07-09","is_alarm":false},{"edate":"2026-07-08","is_alarm":false},{"edate":"2026-07-07","is_alarm":false},{"edate":"2026-07-06","is_alarm":false},{"edate":"2026-07-05","is_alarm":false},{"edate":"2026-07-04","is_alarm":false},{"edate":"2026-07-03","is_alarm":false},{"edate":"2026-07-02","is_alarm":false},{"edate":"2026-07-01","is_alarm":false}],"pagenation":{"totalcount":1,"thispage":1,"pagesize":-1}}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"ip":"223.104.40.7","ua":"jinchangxiao\/2.3.158 (iPhone 12; iOS 26.5.2; Scale\/3.00)"}', FALSE, '2026-07-15 18:04:17', 93004032) RETURNING "id"
18:04:17.5495.5 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT * FROM ((SELECT w.id, wlso.name as title, w.client_id, w.created_by, start_at, end_at, 3 as type, false AS is_alarm FROM "a57be577deb434"."tbl_work_logs" "w" LEFT JOIN "a57be577deb434"."tbl_work_log_scenario_options" "wlso" ON wlso.id = w.scenario_option_id WHERE ((("w"."start_at" >= '2026-07-15 00:00:00') AND ("w"."end_at" < '2026-07-15 23:59:59')) OR (("w"."start_at" <= '2026-07-15 00:00:00') AND ("w"."end_at" > '2026-07-15 00:00:00')) OR (("w"."start_at" <= '2026-07-15 23:59:59') AND ("w"."end_at" > '2026-07-15 23:59:59'))) AND (w.start_at IS NOT NULL) AND (w.end_at IS NOT NULL) AND ("w"."is_draft"=FALSE) AND ("w"."created_by"=1015) AND ("w"."created_by" IN (1015, 1015, 1022, 1023, 5248))) UNION ALL ( (SELECT s.id, schedule_title as title, s.client_id, created_by, s_at as start_at, e_at as end_at, 2 as type, CASE WHEN alarm_before IS NOT NULL THEN true ELSE false END AS is_alarm FROM (SELECT *, CASE WHEN end_at IS NULL THEN ( CASE WHEN start_at > now() THEN start_at ELSE ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) END ) ELSE ( CASE WHEN start_at IS NULL AND end_at < now() THEN ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) ELSE end_at END ) END AS e_at, CASE WHEN start_at IS NULL THEN ( CASE WHEN end_at < now() THEN ( CASE WHEN is_complete = true THEN created_at ELSE end_at END ) ELSE ( CASE WHEN is_complete = true THEN created_at ELSE now() END ) END ) ELSE start_at END AS s_at FROM "a57be577deb434"."tbl_schedules" WHERE (start_at is not null) OR (end_at is not null)) "s" WHERE ((("s"."s_at" >= '2026-07-15 00:00:00') AND ("s"."e_at" < '2026-07-15 23:59:59')) OR (("s"."s_at" <= '2026-07-15 00:00:00') AND ("s"."e_at" > '2026-07-15 00:00:00')) OR (("s"."s_at" <= '2026-07-15 23:59:59') AND ("s"."e_at" > '2026-07-15 23:59:59'))) AND ("s"."created_by"=1015) AND ("s"."created_by" IN (1004, 1001, 5087, 1015, 1015, 1023, 5360, 1022, 5311, 5311, 5248, 5476, 5500, 5252, 1013, 5300, 1005, 5499, 5332, 1011, 5295))) UNION ALL ( SELECT c.id, title, c.client_id, created_by, start_at, end_at, 1 as type, CASE WHEN alarm_before IS NOT NULL THEN true ELSE false END AS is_alarm FROM "a57be577deb434"."tbl_calendars" "c" WHERE ((("c"."start_at" >= '2026-07-15 00:00:00') AND ("c"."end_at" < '2026-07-15 23:59:59')) OR (("c"."start_at" <= '2026-07-15 00:00:00') AND ("c"."end_at" > '2026-07-15 00:00:00')) OR (("c"."start_at" <= '2026-07-15 23:59:59') AND ("c"."end_at" > '2026-07-15 23:59:59'))) AND (c.start_at IS NOT NULL) AND (c.end_at IS NOT NULL) AND ("c"."created_by" IN (1015, 1015, 1023, 1022, 5248)) AND ("c"."created_by"=1015) ) )) "w" ORDER BY "start_at") "c"
18:04:17.5355.4 msyii\db\Command::querySELECT DISTINCT date_trunc('day', generate_series( GREATEST(start_at::date, '2026-07-01'::date), LEAST(end_at::date, '2026-07-31'::date), '1 day' ))::date AS used_date FROM "a57be577deb434"."tbl_calendars" WHERE ("created_by"=1015) AND (NOT ("start_at" IS NULL)) AND (NOT ("end_at" IS NULL)) AND ("start_at" <= '2026-07-31') AND ("end_at" >= '2026-07-01')
18:04:17.5554.3 msyii\db\Command::querySELECT * FROM ((SELECT w.id, wlso.name as title, w.client_id, w.created_by, start_at, end_at, 3 as type, false AS is_alarm FROM "a57be577deb434"."tbl_work_logs" "w" LEFT JOIN "a57be577deb434"."tbl_work_log_scenario_options" "wlso" ON wlso.id = w.scenario_option_id WHERE ((("w"."start_at" >= '2026-07-15 00:00:00') AND ("w"."end_at" < '2026-07-15 23:59:59')) OR (("w"."start_at" <= '2026-07-15 00:00:00') AND ("w"."end_at" > '2026-07-15 00:00:00')) OR (("w"."start_at" <= '2026-07-15 23:59:59') AND ("w"."end_at" > '2026-07-15 23:59:59'))) AND (w.start_at IS NOT NULL) AND (w.end_at IS NOT NULL) AND ("w"."is_draft"=FALSE) AND ("w"."created_by"=1015) AND ("w"."created_by" IN (1015, 1015, 1022, 1023, 5248))) UNION ALL ( (SELECT s.id, schedule_title as title, s.client_id, created_by, s_at as start_at, e_at as end_at, 2 as type, CASE WHEN alarm_before IS NOT NULL THEN true ELSE false END AS is_alarm FROM (SELECT *, CASE WHEN end_at IS NULL THEN ( CASE WHEN start_at > now() THEN start_at ELSE ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) END ) ELSE ( CASE WHEN start_at IS NULL AND end_at < now() THEN ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) ELSE end_at END ) END AS e_at, CASE WHEN start_at IS NULL THEN ( CASE WHEN end_at < now() THEN ( CASE WHEN is_complete = true THEN created_at ELSE end_at END ) ELSE ( CASE WHEN is_complete = true THEN created_at ELSE now() END ) END ) ELSE start_at END AS s_at FROM "a57be577deb434"."tbl_schedules" WHERE (start_at is not null) OR (end_at is not null)) "s" WHERE ((("s"."s_at" >= '2026-07-15 00:00:00') AND ("s"."e_at" < '2026-07-15 23:59:59')) OR (("s"."s_at" <= '2026-07-15 00:00:00') AND ("s"."e_at" > '2026-07-15 00:00:00')) OR (("s"."s_at" <= '2026-07-15 23:59:59') AND ("s"."e_at" > '2026-07-15 23:59:59'))) AND ("s"."created_by"=1015) AND ("s"."created_by" IN (1004, 1001, 5087, 1015, 1015, 1023, 5360, 1022, 5311, 5311, 5248, 5476, 5500, 5252, 1013, 5300, 1005, 5499, 5332, 1011, 5295))) UNION ALL ( SELECT c.id, title, c.client_id, created_by, start_at, end_at, 1 as type, CASE WHEN alarm_before IS NOT NULL THEN true ELSE false END AS is_alarm FROM "a57be577deb434"."tbl_calendars" "c" WHERE ((("c"."start_at" >= '2026-07-15 00:00:00') AND ("c"."end_at" < '2026-07-15 23:59:59')) OR (("c"."start_at" <= '2026-07-15 00:00:00') AND ("c"."end_at" > '2026-07-15 00:00:00')) OR (("c"."start_at" <= '2026-07-15 23:59:59') AND ("c"."end_at" > '2026-07-15 23:59:59'))) AND (c.start_at IS NOT NULL) AND (c.end_at IS NOT NULL) AND ("c"."created_by" IN (1015, 1015, 1023, 1022, 5248)) AND ("c"."created_by"=1015) ) )) "w" ORDER BY "start_at"
18:04:17.5643.9 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=26) AND ("object_id"=278435)
18:04:17.5443.7 msyii\db\Command::querySELECT DISTINCT date_trunc('day', generate_series( GREATEST(start_at::date, '2026-07-01'::date), LEAST(end_at::date, '2026-07-31'::date), '1 day' ))::date AS alarm_date FROM "a57be577deb434"."tbl_calendars" WHERE ("created_by"=1015) AND (NOT ("start_at" IS NULL)) AND (NOT ("alarm_before" IS NULL)) AND ("start_at" <= '2026-07-31') AND ("end_at" >= '2026-07-01') AND (start_at - alarm_before > now())
18:04:17.5401.7 msyii\db\Command::querySELECT DISTINCT date_trunc('day', generate_series( GREATEST(s_at::date, '2026-07-01'::date), LEAST(e_at::date, '2026-07-31'::date), '1 day' ))::date AS used_date FROM (SELECT *, CASE WHEN end_at IS NULL THEN ( CASE WHEN start_at > now() THEN start_at ELSE ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) END ) ELSE ( CASE WHEN start_at IS NULL AND end_at < now() THEN ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) ELSE end_at END ) END AS e_at, CASE WHEN start_at IS NULL THEN ( CASE WHEN end_at < now() THEN ( CASE WHEN is_complete = true THEN created_at ELSE end_at END ) ELSE ( CASE WHEN is_complete = true THEN created_at ELSE now() END ) END ) ELSE start_at END AS s_at FROM "a57be577deb434"."tbl_schedules" WHERE (start_at is not null) OR (end_at is not null)) "s" WHERE ("created_by"=1015) AND ("s_at" <= '2026-07-31') AND ("e_at" >= '2026-07-01')
18:04:17.5281.3 msyii\db\Command::querySELECT "s"."accessible_user" FROM "a57be577deb434"."tbl_visible_calendars" "s" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON u.id = s.accessible_user WHERE ("s"."user_id"=1015) AND (s.accessible_user IS NOT NULL) AND ("u"."user_status"='1') GROUP BY "s"."id", "u"."id" ORDER BY "u"."name"
18:04:17.5421.2 msyii\db\Command::querySELECT DISTINCT date_trunc('day', generate_series( GREATEST(start_at::date, '2026-07-01'::date), LEAST(end_at::date, '2026-07-31'::date), '1 day' ))::date AS used_date FROM "a57be577deb434"."tbl_work_logs" WHERE ("created_by"=1015) AND (NOT ("start_at" IS NULL)) AND (NOT ("end_at" IS NULL)) AND ("is_draft"=FALSE) AND ("start_at" <= '2026-07-31') AND ("end_at" >= '2026-07-01')
18:04:17.4801.1 msyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "access_token"='Q_7DD5LA0njCol9o5skCibRkap3ZqeYZ'
18:04:17.5311.0 msyii\db\Command::querySELECT "s"."accessible_user" FROM "a57be577deb434"."tbl_visible_schedules" "s" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON u.id = s.accessible_user WHERE ("s"."user_id"=1015) AND (s.accessible_user IS NOT NULL) AND ("u"."user_status"='1') GROUP BY "s"."id", "u"."id" ORDER BY "u"."name"
18:04:17.5330.9 msyii\db\Command::querySELECT "s"."accessible_user" FROM "a57be577deb434"."tbl_visible_work_logs" "s" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON u.id = s.accessible_user WHERE ("s"."user_id"=1015) AND (s.accessible_user IS NOT NULL) AND ("u"."user_status"='1') GROUP BY "s"."id", "u"."id" ORDER BY "u"."id"
18:04:17.5610.7 msyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_departments" WHERE "id"=2
18:04:17.5480.7 msyii\db\Command::querySELECT DISTINCT date_trunc('day', generate_series( GREATEST(s_at::date, '2026-07-01'::date), LEAST(e_at::date, '2026-07-31'::date), '1 day' ))::date AS alarm_date FROM (SELECT *, CASE WHEN end_at IS NULL THEN ( CASE WHEN start_at > now() THEN start_at ELSE ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) END ) ELSE ( CASE WHEN start_at IS NULL AND end_at < now() THEN ( CASE WHEN is_complete = true THEN complete_at ELSE now() END ) ELSE end_at END ) END AS e_at, CASE WHEN start_at IS NULL THEN ( CASE WHEN end_at < now() THEN ( CASE WHEN is_complete = true THEN created_at ELSE end_at END ) ELSE ( CASE WHEN is_complete = true THEN created_at ELSE now() END ) END ) ELSE start_at END AS s_at FROM "a57be577deb434"."tbl_schedules" WHERE (start_at is not null) OR (end_at is not null)) "s" WHERE ("created_by"=1015) AND (NOT ("alarm_before" IS NULL)) AND ("s_at" <= '2026-07-31') AND ("e_at" >= '2026-07-01') AND (s_at - alarm_before > now())
18:04:17.5630.6 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "sales_rep", "logo" FROM "a57be577deb434"."tbl_clients" WHERE "id"=982
18:04:17.5300.6 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1015
18:04:17.5620.5 msyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1015)
18:04:17.4830.5 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1015
18:04:17.5600.5 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id"=1015
18:04:17.5680.3 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=9) AND (0=1)
18:04:17.4800.2 msyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
18:04:17.5690.2 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=18) AND (0=1)