All Latest
6a1cffaea2d5e: POST https://beta.jinchangxiao.com/vue/erp-analysis/list-case-ticket at 2026-06-01 11:42:38 am by 221.216.117.119

Database Queries

总计6条数据
TimeDurationTypeQuery
  
11:42:38.6690.7 msSELECTSELECT * FROM "global"."vw_user_login" WHERE "id"=1001

11:42:38.6701.5 msSELECTSELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001

11:42:38.674305.0 msSELECTSELECT COALESCE(ROUND(sum(summary.erp_labor_cost_amount)::numeric, 2), 0) as erp_labor_cost_amount, COALESCE(ROUND(sum(summary.work_hours)::numeric, 2), 0) as work_hours, COALESCE(ROUND(COALESCE(sum(summary.erp_labor_cost_amount), 0)::numeric / NULLIF(sum(summary.work_hours)::numeric, 0), 2), 0) as average_labor_cost_per_hour FROM (SELECT ct.ticket_id, ct.ticket_type, ct.ticket_type_name, ct.ticket_no, ct.case_id, ct.case_no, ct.project_id, p.project_title, ct.client_id, c.name as client_name, ct.sales_rep_id, sr.name as sales_rep_name, ct.engineer_id, e.name as engineer_name, ROUND(ct.work_hours::numeric, 2) as work_hours, ROUND(COALESCE(tlc.erp_labor_cost_amount, 0)::numeric, 2) as erp_labor_cost_amount, CASE WHEN ROUND(ct.work_hours::numeric, 2) = TRUNC(ROUND(ct.work_hours::numeric, 2)) THEN TRUNC(ROUND(ct.work_hours::numeric, 2))::text || 'h' ELSE ROUND(ct.work_hours::numeric, 2)::text || 'h' END as hours_spent_display, ct.start_at, to_char(ct.start_at, 'YYYY/MM/DD HH24:MI') as start_at_display, ct.end_at, to_char(ct.end_at, 'YYYY/MM/DD HH24:MI') as end_at_display FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = ct.client_id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON p.id = ct.project_id LEFT JOIN "a57be577deb434"."tbl_users" "sr" ON sr.id = ct.sales_rep_id LEFT JOIN "a57be577deb434"."tbl_users" "e" ON e.id = ct.engineer_id LEFT JOIN (SELECT ct.ticket_id, ct.ticket_type, COALESCE(sum(CASE WHEN ct.work_hours > 0 THEN COALESCE(payroll.amount, 0) / GREATEST(( SELECT COUNT(1) FROM generate_series(ct.settle_month::timestamp, (ct.settle_month + interval '1 month - 1 day')::timestamp, interval '1 day') AS work_dates(work_date) LEFT JOIN a57be577deb434.tbl_legal_holidays lh ON lh.edate = work_dates.work_date::date LEFT JOIN a57be577deb434.tbl_punch_strategy_schedules pss ON pss.edate = work_dates.work_date::date AND pss.punch_strategy_id = ps.id WHERE CASE WHEN ps.id IS NULL THEN EXTRACT(ISODOW FROM work_dates.work_date)::integer BETWEEN 1 AND 5 WHEN pss.id IS NOT NULL THEN pss.need_work WHEN ps.legal_holiday AND lh.id IS NOT NULL THEN lh.is_exchange ELSE (ps.week::integer & (1 << (EXTRACT(ISODOW FROM work_dates.work_date)::integer - 1))) <> 0 END ), 1) / GREATEST((CASE WHEN ps.id IS NULL THEN 8 WHEN ps.punch_type = 0 THEN 8 WHEN ps.work_hour IS NOT NULL AND ps.work_hour > 0 THEN ps.work_hour ELSE 8 END), 1) * ct.work_hours ELSE 0 END), 0) as erp_labor_cost_amount FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN (SELECT pay.user_id, pay.settle_month, COALESCE(sum(pay.amount), 0) as amount FROM ((SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_wage_ticket_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_wage_tickets" "t" ON am.erp_wage_ticket_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month") UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_social_insurance_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_social_insurances" "t" ON am.erp_social_insurance_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_provident_fund_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_provident_funds" "t" ON am.erp_provident_fund_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_personal_tax_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_personal_taxs" "t" ON am.erp_personal_tax_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" )) "pay" GROUP BY "pay"."user_id", "pay"."settle_month") "payroll" ON payroll.user_id = ct.engineer_id AND payroll.settle_month = ct.settle_month LEFT JOIN "a57be577deb434"."tbl_punch_strategy_resource_rels" "psrr" ON psrr.user_id = ct.engineer_id LEFT JOIN "a57be577deb434"."tbl_punch_strategies" "ps" ON ps.id = psrr.punch_strategy_id GROUP BY "ct"."ticket_id", "ct"."ticket_type") "tlc" ON tlc.ticket_id = ct.ticket_id AND tlc.ticket_type = ct.ticket_type WHERE "ct"."client_id"='918') "summary"

11:42:38.9809.9 msSELECTSELECT COUNT(*) FROM (SELECT ct.ticket_id, ct.ticket_type, ct.ticket_type_name, ct.ticket_no, ct.case_id, ct.case_no, ct.project_id, p.project_title, ct.client_id, c.name as client_name, ct.sales_rep_id, sr.name as sales_rep_name, ct.engineer_id, e.name as engineer_name, ROUND(ct.work_hours::numeric, 2) as work_hours, ROUND(COALESCE(tlc.erp_labor_cost_amount, 0)::numeric, 2) as erp_labor_cost_amount, CASE WHEN ROUND(ct.work_hours::numeric, 2) = TRUNC(ROUND(ct.work_hours::numeric, 2)) THEN TRUNC(ROUND(ct.work_hours::numeric, 2))::text || 'h' ELSE ROUND(ct.work_hours::numeric, 2)::text || 'h' END as hours_spent_display, ct.start_at, to_char(ct.start_at, 'YYYY/MM/DD HH24:MI') as start_at_display, ct.end_at, to_char(ct.end_at, 'YYYY/MM/DD HH24:MI') as end_at_display FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = ct.client_id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON p.id = ct.project_id LEFT JOIN "a57be577deb434"."tbl_users" "sr" ON sr.id = ct.sales_rep_id LEFT JOIN "a57be577deb434"."tbl_users" "e" ON e.id = ct.engineer_id LEFT JOIN (SELECT ct.ticket_id, ct.ticket_type, COALESCE(sum(CASE WHEN ct.work_hours > 0 THEN COALESCE(payroll.amount, 0) / GREATEST(( SELECT COUNT(1) FROM generate_series(ct.settle_month::timestamp, (ct.settle_month + interval '1 month - 1 day')::timestamp, interval '1 day') AS work_dates(work_date) LEFT JOIN a57be577deb434.tbl_legal_holidays lh ON lh.edate = work_dates.work_date::date LEFT JOIN a57be577deb434.tbl_punch_strategy_schedules pss ON pss.edate = work_dates.work_date::date AND pss.punch_strategy_id = ps.id WHERE CASE WHEN ps.id IS NULL THEN EXTRACT(ISODOW FROM work_dates.work_date)::integer BETWEEN 1 AND 5 WHEN pss.id IS NOT NULL THEN pss.need_work WHEN ps.legal_holiday AND lh.id IS NOT NULL THEN lh.is_exchange ELSE (ps.week::integer & (1 << (EXTRACT(ISODOW FROM work_dates.work_date)::integer - 1))) <> 0 END ), 1) / GREATEST((CASE WHEN ps.id IS NULL THEN 8 WHEN ps.punch_type = 0 THEN 8 WHEN ps.work_hour IS NOT NULL AND ps.work_hour > 0 THEN ps.work_hour ELSE 8 END), 1) * ct.work_hours ELSE 0 END), 0) as erp_labor_cost_amount FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN (SELECT pay.user_id, pay.settle_month, COALESCE(sum(pay.amount), 0) as amount FROM ((SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_wage_ticket_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_wage_tickets" "t" ON am.erp_wage_ticket_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month") UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_social_insurance_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_social_insurances" "t" ON am.erp_social_insurance_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_provident_fund_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_provident_funds" "t" ON am.erp_provident_fund_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_personal_tax_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_personal_taxs" "t" ON am.erp_personal_tax_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" )) "pay" GROUP BY "pay"."user_id", "pay"."settle_month") "payroll" ON payroll.user_id = ct.engineer_id AND payroll.settle_month = ct.settle_month LEFT JOIN "a57be577deb434"."tbl_punch_strategy_resource_rels" "psrr" ON psrr.user_id = ct.engineer_id LEFT JOIN "a57be577deb434"."tbl_punch_strategies" "ps" ON ps.id = psrr.punch_strategy_id GROUP BY "ct"."ticket_id", "ct"."ticket_type") "tlc" ON tlc.ticket_id = ct.ticket_id AND tlc.ticket_type = ct.ticket_type WHERE "ct"."client_id"='918' ORDER BY ct.start_at DESC, ct.ticket_id DESC) "c"

11:42:38.990305.2 msSELECTSELECT ct.ticket_id, ct.ticket_type, ct.ticket_type_name, ct.ticket_no, ct.case_id, ct.case_no, ct.project_id, p.project_title, ct.client_id, c.name as client_name, ct.sales_rep_id, sr.name as sales_rep_name, ct.engineer_id, e.name as engineer_name, ROUND(ct.work_hours::numeric, 2) as work_hours, ROUND(COALESCE(tlc.erp_labor_cost_amount, 0)::numeric, 2) as erp_labor_cost_amount, CASE WHEN ROUND(ct.work_hours::numeric, 2) = TRUNC(ROUND(ct.work_hours::numeric, 2)) THEN TRUNC(ROUND(ct.work_hours::numeric, 2))::text || 'h' ELSE ROUND(ct.work_hours::numeric, 2)::text || 'h' END as hours_spent_display, ct.start_at, to_char(ct.start_at, 'YYYY/MM/DD HH24:MI') as start_at_display, ct.end_at, to_char(ct.end_at, 'YYYY/MM/DD HH24:MI') as end_at_display FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = ct.client_id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON p.id = ct.project_id LEFT JOIN "a57be577deb434"."tbl_users" "sr" ON sr.id = ct.sales_rep_id LEFT JOIN "a57be577deb434"."tbl_users" "e" ON e.id = ct.engineer_id LEFT JOIN (SELECT ct.ticket_id, ct.ticket_type, COALESCE(sum(CASE WHEN ct.work_hours > 0 THEN COALESCE(payroll.amount, 0) / GREATEST(( SELECT COUNT(1) FROM generate_series(ct.settle_month::timestamp, (ct.settle_month + interval '1 month - 1 day')::timestamp, interval '1 day') AS work_dates(work_date) LEFT JOIN a57be577deb434.tbl_legal_holidays lh ON lh.edate = work_dates.work_date::date LEFT JOIN a57be577deb434.tbl_punch_strategy_schedules pss ON pss.edate = work_dates.work_date::date AND pss.punch_strategy_id = ps.id WHERE CASE WHEN ps.id IS NULL THEN EXTRACT(ISODOW FROM work_dates.work_date)::integer BETWEEN 1 AND 5 WHEN pss.id IS NOT NULL THEN pss.need_work WHEN ps.legal_holiday AND lh.id IS NOT NULL THEN lh.is_exchange ELSE (ps.week::integer & (1 << (EXTRACT(ISODOW FROM work_dates.work_date)::integer - 1))) <> 0 END ), 1) / GREATEST((CASE WHEN ps.id IS NULL THEN 8 WHEN ps.punch_type = 0 THEN 8 WHEN ps.work_hour IS NOT NULL AND ps.work_hour > 0 THEN ps.work_hour ELSE 8 END), 1) * ct.work_hours ELSE 0 END), 0) as erp_labor_cost_amount FROM ((SELECT p.id as ticket_id, 'preSales' as ticket_type, '售前' as ticket_type_name, p.ticket_no, p.case_id, c.case_no, COALESCE(p.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, p.engineer_id, p.start_at, p.end_at, date_trunc('month', p.start_at)::date as settle_month, EXTRACT(EPOCH FROM (p.end_at - p.start_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_pre_sales" "p" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = p.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(p.client_id, c.client_id) WHERE (p.start_at IS NOT NULL) AND (p.end_at IS NOT NULL) AND (p.end_at > p.start_at) AND (p.engineer_id IS NOT NULL) AND (("p"."is_draft"=FALSE) OR (p.is_draft IS NULL))) UNION ALL ( SELECT i.id as ticket_id, 'implementRecords' as ticket_type, '实施' as ticket_type_name, i.ticket_no, i.case_id, c.case_no, COALESCE(i.client_id, c.client_id) as client_id, c.project_id, cl.sales_rep as sales_rep_id, c.last_engineer as engineer_id, i.arrived_at as start_at, i.left_at as end_at, date_trunc('month', i.arrived_at)::date as settle_month, EXTRACT(EPOCH FROM (i.left_at - i.arrived_at)) / 3600 as work_hours FROM "a57be577deb434"."tbl_implement_records" "i" LEFT JOIN "a57be577deb434"."tbl_cases" "c" ON c.id = i.case_id LEFT JOIN "a57be577deb434"."tbl_clients" "cl" ON cl.id = COALESCE(i.client_id, c.client_id) WHERE (i.arrived_at IS NOT NULL) AND (i.left_at IS NOT NULL) AND (i.left_at > i.arrived_at) AND (c.last_engineer IS NOT NULL) AND (("i"."is_draft"=FALSE) OR (i.is_draft IS NULL)) )) "ct" LEFT JOIN (SELECT pay.user_id, pay.settle_month, COALESCE(sum(pay.amount), 0) as amount FROM ((SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_wage_ticket_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_wage_tickets" "t" ON am.erp_wage_ticket_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month") UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_social_insurance_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_social_insurances" "t" ON am.erp_social_insurance_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_provident_fund_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_provident_funds" "t" ON am.erp_provident_fund_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" ) UNION ALL ( SELECT am.user_id, t.settle_month::date as settle_month, COALESCE(sum(am.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_personal_tax_amounts" "am" LEFT JOIN "a57be577deb434"."tbl_erp_personal_taxs" "t" ON am.erp_personal_tax_id = t.id WHERE ("t"."status"=2) AND (am.user_id IS NOT NULL) GROUP BY "am"."user_id", "t"."settle_month" )) "pay" GROUP BY "pay"."user_id", "pay"."settle_month") "payroll" ON payroll.user_id = ct.engineer_id AND payroll.settle_month = ct.settle_month LEFT JOIN "a57be577deb434"."tbl_punch_strategy_resource_rels" "psrr" ON psrr.user_id = ct.engineer_id LEFT JOIN "a57be577deb434"."tbl_punch_strategies" "ps" ON ps.id = psrr.punch_strategy_id GROUP BY "ct"."ticket_id", "ct"."ticket_type") "tlc" ON tlc.ticket_id = ct.ticket_id AND tlc.ticket_type = ct.ticket_type WHERE "ct"."client_id"='918' ORDER BY ct.start_at DESC, ct.ticket_id DESC LIMIT 40 OFFSET 160

11:42:39.2972.6 msINSERTINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1001, 5, 'vue/erp-analysis/list-case-ticket', '{"client_id":"918","created_at_period":"","created_at_from":"","created_at_to":"","page":"5","pageSize":"40","listReload":"undefined","web_access_token":"YNQKwEYJYN8muCSh8ExnNlBf2oepDAlv"}', '{"code":2000,"result":{"erp_labor_cost_amount":"257.67","work_hours":"1938.09","average_labor_cost_per_hour":"0.13","list":[{"ticket_id":4874,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230626002001","case_id":6239,"case_no":"IM230626002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"4.58","erp_labor_cost_amount":"0.00","hours_spent_display":"4.58h","start_at":"2023-06-26 11:10:03","start_at_display":"2023\/06\/26 11:10","end_at":"2023-06-26 15:45:05","end_at_display":"2023\/06\/26 15:45","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4872,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230625006001","case_id":6237,"case_no":"IM230625006","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"2.50","erp_labor_cost_amount":"0.00","hours_spent_display":"2.50h","start_at":"2023-06-25 16:30:00","start_at_display":"2023\/06\/25 16:30","end_at":"2023-06-25 19:00:00","end_at_display":"2023\/06\/25 19:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4845,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230614002001","case_id":6210,"case_no":"IM230614002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-06-14 10:00:00","start_at_display":"2023\/06\/14 10:00","end_at":"2023-06-14 11:00:00","end_at_display":"2023\/06\/14 11:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4819,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230605005001","case_id":6179,"case_no":"IM230605005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"0.67","erp_labor_cost_amount":"0.00","hours_spent_display":"0.67h","start_at":"2023-06-05 11:50:00","start_at_display":"2023\/06\/05 11:50","end_at":"2023-06-05 12:30:00","end_at_display":"2023\/06\/05 12:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4805,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230601004001","case_id":6163,"case_no":"IM230601004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-06-01 09:00:00","start_at_display":"2023\/06\/01 09:00","end_at":"2023-06-01 10:00:00","end_at_display":"2023\/06\/01 10:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4796,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230530004001","case_id":6154,"case_no":"IM230530004","project_id":3204,"project_title":"\u66ff\u6362\u4e3b\u5b58\u50a8","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.00","erp_labor_cost_amount":"0.00","hours_spent_display":"2h","start_at":"2023-05-29 14:00:00","start_at_display":"2023\/05\/29 14:00","end_at":"2023-05-29 16:00:00","end_at_display":"2023\/05\/29 16:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4789,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230529004001","case_id":6149,"case_no":"IM230529004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"1.50","erp_labor_cost_amount":"0.00","hours_spent_display":"1.50h","start_at":"2023-05-29 10:30:00","start_at_display":"2023\/05\/29 10:30","end_at":"2023-05-29 12:00:00","end_at_display":"2023\/05\/29 12:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4779,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230522002001","case_id":6134,"case_no":"IM230522002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"4.00","erp_labor_cost_amount":"0.00","hours_spent_display":"4h","start_at":"2023-05-22 13:00:00","start_at_display":"2023\/05\/22 13:00","end_at":"2023-05-22 17:00:00","end_at_display":"2023\/05\/22 17:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4774,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230518004001","case_id":6128,"case_no":"IM230518004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5085,"engineer_name":"\u970d\u4e1c\u9633","work_hours":"2.90","erp_labor_cost_amount":"0.00","hours_spent_display":"2.90h","start_at":"2023-05-18 15:00:00","start_at_display":"2023\/05\/18 15:00","end_at":"2023-05-18 17:54:00","end_at_display":"2023\/05\/18 17:54","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4765,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230511005001","case_id":6117,"case_no":"IM230511005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"6.66","erp_labor_cost_amount":"0.00","hours_spent_display":"6.66h","start_at":"2023-05-12 09:23:14","start_at_display":"2023\/05\/12 09:23","end_at":"2023-05-12 16:02:37","end_at_display":"2023\/05\/12 16:02","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4761,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230511002001","case_id":6114,"case_no":"IM230511002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"7.86","erp_labor_cost_amount":"0.00","hours_spent_display":"7.86h","start_at":"2023-05-11 09:15:55","start_at_display":"2023\/05\/11 09:15","end_at":"2023-05-11 17:07:24","end_at_display":"2023\/05\/11 17:07","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4762,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230511001001","case_id":6113,"case_no":"IM230511001","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"4.00","erp_labor_cost_amount":"0.00","hours_spent_display":"4h","start_at":"2023-05-11 08:00:00","start_at_display":"2023\/05\/11 08:00","end_at":"2023-05-11 12:00:00","end_at_display":"2023\/05\/11 12:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4756,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230509004001","case_id":6104,"case_no":"IM230509004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-05-09 15:00:00","start_at_display":"2023\/05\/09 15:00","end_at":"2023-05-09 16:00:00","end_at_display":"2023\/05\/09 16:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4753,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230509005001","case_id":6105,"case_no":"IM230509005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"7.50","erp_labor_cost_amount":"0.00","hours_spent_display":"7.50h","start_at":"2023-05-09 10:00:00","start_at_display":"2023\/05\/09 10:00","end_at":"2023-05-09 17:30:00","end_at_display":"2023\/05\/09 17:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4742,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230505003001","case_id":6091,"case_no":"IM230505003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"1.67","erp_labor_cost_amount":"0.00","hours_spent_display":"1.67h","start_at":"2023-05-05 09:30:00","start_at_display":"2023\/05\/05 09:30","end_at":"2023-05-05 11:10:00","end_at_display":"2023\/05\/05 11:10","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4737,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230504006001","case_id":6088,"case_no":"IM230504006","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.02","erp_labor_cost_amount":"0.00","hours_spent_display":"1.02h","start_at":"2023-05-04 15:33:00","start_at_display":"2023\/05\/04 15:33","end_at":"2023-05-04 16:34:00","end_at_display":"2023\/05\/04 16:34","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4725,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230427002001","case_id":6075,"case_no":"IM230427002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"2.83","erp_labor_cost_amount":"0.00","hours_spent_display":"2.83h","start_at":"2023-04-27 15:30:00","start_at_display":"2023\/04\/27 15:30","end_at":"2023-04-27 18:20:00","end_at_display":"2023\/04\/27 18:20","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4722,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230426003001","case_id":6071,"case_no":"IM230426003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"2.98","erp_labor_cost_amount":"0.00","hours_spent_display":"2.98h","start_at":"2023-04-26 15:00:00","start_at_display":"2023\/04\/26 15:00","end_at":"2023-04-26 17:59:00","end_at_display":"2023\/04\/26 17:59","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4720,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230426001001","case_id":6069,"case_no":"IM230426001","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.42","erp_labor_cost_amount":"0.00","hours_spent_display":"2.42h","start_at":"2023-04-26 14:10:00","start_at_display":"2023\/04\/26 14:10","end_at":"2023-04-26 16:35:00","end_at_display":"2023\/04\/26 16:35","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4717,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230425007001","case_id":6066,"case_no":"IM230425007","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-04-25 14:00:00","start_at_display":"2023\/04\/25 14:00","end_at":"2023-04-25 15:00:00","end_at_display":"2023\/04\/25 15:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4710,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230424003001","case_id":6058,"case_no":"IM230424003","project_id":1010,"project_title":"\u5b89\u5168,\u7f51\u76d8,\u79c1\u6709\u4e91\u8fc1\u79fb,\u8fd0\u7ef4","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.50","erp_labor_cost_amount":"0.00","hours_spent_display":"2.50h","start_at":"2023-04-24 16:14:00","start_at_display":"2023\/04\/24 16:14","end_at":"2023-04-24 18:44:00","end_at_display":"2023\/04\/24 18:44","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4708,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230424001001","case_id":6056,"case_no":"IM230424001","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"9.92","erp_labor_cost_amount":"0.00","hours_spent_display":"9.92h","start_at":"2023-04-24 09:05:56","start_at_display":"2023\/04\/24 09:05","end_at":"2023-04-24 19:01:05","end_at_display":"2023\/04\/24 19:01","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4707,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230424002001","case_id":6057,"case_no":"IM230424002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"9.68","erp_labor_cost_amount":"0.00","hours_spent_display":"9.68h","start_at":"2023-04-24 09:04:13","start_at_display":"2023\/04\/24 09:04","end_at":"2023-04-24 18:44:53","end_at_display":"2023\/04\/24 18:44","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4669,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230410004001","case_id":6008,"case_no":"IM230410004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.00","erp_labor_cost_amount":"0.00","hours_spent_display":"2h","start_at":"2023-04-10 13:00:00","start_at_display":"2023\/04\/10 13:00","end_at":"2023-04-10 15:00:00","end_at_display":"2023\/04\/10 15:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4643,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230331004001","case_id":5980,"case_no":"IM230331004","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"0.75","erp_labor_cost_amount":"0.00","hours_spent_display":"0.75h","start_at":"2023-03-31 09:30:00","start_at_display":"2023\/03\/31 09:30","end_at":"2023-03-31 10:15:00","end_at_display":"2023\/03\/31 10:15","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4631,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230329006001","case_id":5964,"case_no":"IM230329006","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"2.56","erp_labor_cost_amount":"0.00","hours_spent_display":"2.56h","start_at":"2023-03-30 09:56:50","start_at_display":"2023\/03\/30 09:56","end_at":"2023-03-30 12:30:23","end_at_display":"2023\/03\/30 12:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4630,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230329005001","case_id":5963,"case_no":"IM230329005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-03-29 09:30:00","start_at_display":"2023\/03\/29 09:30","end_at":"2023-03-29 10:30:00","end_at_display":"2023\/03\/29 10:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4604,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230322005001","case_id":5936,"case_no":"IM230322005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.50","erp_labor_cost_amount":"0.00","hours_spent_display":"1.50h","start_at":"2023-03-22 12:00:00","start_at_display":"2023\/03\/22 12:00","end_at":"2023-03-22 13:30:00","end_at_display":"2023\/03\/22 13:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4605,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230322003001","case_id":5934,"case_no":"IM230322003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5248,"engineer_name":"\u6587\u4f73\u9f99","work_hours":"2.33","erp_labor_cost_amount":"0.00","hours_spent_display":"2.33h","start_at":"2023-03-22 11:20:00","start_at_display":"2023\/03\/22 11:20","end_at":"2023-03-22 13:40:00","end_at_display":"2023\/03\/22 13:40","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4536,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230306010001","case_id":5864,"case_no":"IM230306010","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"3.00","erp_labor_cost_amount":"0.00","hours_spent_display":"3h","start_at":"2023-03-06 14:00:00","start_at_display":"2023\/03\/06 14:00","end_at":"2023-03-06 17:00:00","end_at_display":"2023\/03\/06 17:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4525,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230303005001","case_id":5849,"case_no":"IM230303005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.13","erp_labor_cost_amount":"0.00","hours_spent_display":"1.13h","start_at":"2023-03-03 11:00:00","start_at_display":"2023\/03\/03 11:00","end_at":"2023-03-03 12:08:00","end_at_display":"2023\/03\/03 12:08","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4509,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230228002001","case_id":5831,"case_no":"IM230228002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.33","erp_labor_cost_amount":"0.00","hours_spent_display":"1.33h","start_at":"2023-02-28 09:10:00","start_at_display":"2023\/02\/28 09:10","end_at":"2023-02-28 10:30:00","end_at_display":"2023\/02\/28 10:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4501,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230224001001","case_id":5823,"case_no":"IM230224001","project_id":2654,"project_title":"\u8fd0\u7ef4\u670d\u52a1\u7eed\u7b7e","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.50","erp_labor_cost_amount":"0.00","hours_spent_display":"1.50h","start_at":"2023-02-24 09:00:00","start_at_display":"2023\/02\/24 09:00","end_at":"2023-02-24 10:30:00","end_at_display":"2023\/02\/24 10:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":1600,"ticket_type":"preSales","ticket_type_name":"\u552e\u524d","ticket_no":"PS230221006001","case_id":5816,"case_no":"PS230221006","project_id":"","project_title":"","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.95","erp_labor_cost_amount":"0.00","hours_spent_display":"0.95h","start_at":"2023-02-22 09:52:00","start_at_display":"2023\/02\/22 09:52","end_at":"2023-02-22 10:49:00","end_at_display":"2023\/02\/22 10:49","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4487,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230217003001","case_id":5806,"case_no":"IM230217003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.58","erp_labor_cost_amount":"0.00","hours_spent_display":"1.58h","start_at":"2023-02-17 15:15:00","start_at_display":"2023\/02\/17 15:15","end_at":"2023-02-17 16:50:00","end_at_display":"2023\/02\/17 16:50","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4478,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230215001001","case_id":5795,"case_no":"IM230215001","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"5.50","erp_labor_cost_amount":"0.00","hours_spent_display":"5.50h","start_at":"2023-02-15 10:30:00","start_at_display":"2023\/02\/15 10:30","end_at":"2023-02-15 16:00:00","end_at_display":"2023\/02\/15 16:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4463,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230210005001","case_id":5775,"case_no":"IM230210005","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"0.90","erp_labor_cost_amount":"0.00","hours_spent_display":"0.90h","start_at":"2023-02-10 15:20:00","start_at_display":"2023\/02\/10 15:20","end_at":"2023-02-10 16:14:00","end_at_display":"2023\/02\/10 16:14","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4447,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230208003001","case_id":5759,"case_no":"IM230208003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2023-02-08 16:00:00","start_at_display":"2023\/02\/08 16:00","end_at":"2023-02-08 17:00:00","end_at_display":"2023\/02\/08 17:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4423,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230117003001","case_id":5734,"case_no":"IM230117003","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.98","erp_labor_cost_amount":"0.00","hours_spent_display":"1.98h","start_at":"2023-01-18 10:19:16","start_at_display":"2023\/01\/18 10:19","end_at":"2023-01-18 12:18:03","end_at_display":"2023\/01\/18 12:18","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":4422,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM230117002001","case_id":5733,"case_no":"IM230117002","project_id":3029,"project_title":"2022-2023\u5e74\u8fd0\u7ef4\u670d\u52a1","client_id":918,"client_name":"\u4e2d\u56fd\u571f\u6728\u5de5\u7a0b\u96c6\u56e2\u6709\u9650\u516c\u53f8","sales_rep_id":1005,"sales_rep_name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","engineer_id":5296,"engineer_name":"\u8d75\u5b87","work_hours":"1.67","erp_labor_cost_amount":"0.00","hours_spent_display":"1.67h","start_at":"2023-01-17 16:30:00","start_at_display":"2023\/01\/17 16:30","end_at":"2023-01-17 18:10:00","end_at_display":"2023\/01\/17 18:10","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}}],"pagenation":{"totalcount":490,"thispage":5,"pagesize":40}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"mod":0,"ip":"221.216.117.119","ua":"Mozilla\/5.0 (Macintosh; Intel Mac OS X 10.15; rv:151.0) Gecko\/20100101 Firefox\/151.0"}', FALSE, '2026-06-01 11:42:39', 629590272) RETURNING "id"