All Latest
6a1d3c52ab08a: POST https://beta.jinchangxiao.com/vue/erp-analysis/list-case-ticket at 2026-06-01 04:01:22 pm by 221.216.117.119

Database Queries

总计6条数据
TimeDurationTypeQuery
  
16:01:22.7040.8 msSELECTSELECT * FROM "global"."vw_user_login" WHERE "id"=1001

16:01:22.7060.5 msSELECTSELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001

16:01:22.710229.6 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"."engineer_id"='1023') "summary"

16:01:22.9409.0 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"."engineer_id"='1023' ORDER BY ct.start_at DESC, ct.ticket_id DESC) "c"

16:01:22.950225.4 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"."engineer_id"='1023' ORDER BY ct.start_at DESC, ct.ticket_id DESC LIMIT 40 OFFSET 200

16:01:23.1772.1 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', '{"user_id":"1023","created_at_period":"","created_at_to":"","created_at_from":"","page":"6","pageSize":"40","listReload":"undefined","web_access_token":"XCfRahmCFXcXmdIMLA2cYqURDbuJi7wa"}', '{"code":2000,"result":{"erp_labor_cost_amount":"2735.64","work_hours":"5805.26","average_labor_cost_per_hour":"0.47","list":[{"ticket_id":6971,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250716004001","case_id":8622,"case_no":"IM250716004","project_id":3822,"project_title":"2025\u7f51\u7edc\u6280\u672f\u670d\u52a1","client_id":1301,"client_name":"\u591a\u7ef4\u8054\u5408\u96c6\u56e2\u80a1\u4efd\u6709\u9650\u516c\u53f8(\u591a\u7ef4\u7eff\u5efa\u79d1\u6280(\u5929\u6d25)\u6709\u9650\u516c\u53f8\u3001\u5317\u4eac\u591a\u7ef4\u827e\u65af\u7279\u56fd\u9645\u5de5\u7a0b\u6280\u672f\u6709\u9650\u516c\u53f8)","sales_rep_id":5295,"sales_rep_name":"\u9b4f\u6cfd\u6587","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"6.58","erp_labor_cost_amount":"0.00","hours_spent_display":"6.58h","start_at":"2025-07-16 16:00:00","start_at_display":"2025\/07\/16 16:00","end_at":"2025-07-16 22:35:00","end_at_display":"2025\/07\/16 22:35","salesRep":{"id":5295,"key":5295,"name":"\u9b4f\u6cfd\u6587"}},{"ticket_id":6967,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250716002001","case_id":8620,"case_no":"IM250716002","project_id":3626,"project_title":"\u5b58\u50a8\u6269\u5bb9-K","client_id":85,"client_name":"\u5317\u4eac\u52a8\u529b\u673a\u68b0\u7814\u7a76\u624031\u6240","sales_rep_id":5087,"sales_rep_name":"\u5218\u5fae","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.22","erp_labor_cost_amount":"0.00","hours_spent_display":"1.22h","start_at":"2025-07-16 14:38:00","start_at_display":"2025\/07\/16 14:38","end_at":"2025-07-16 15:51:00","end_at_display":"2025\/07\/16 15:51","salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae"}},{"ticket_id":6961,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250715002001","case_id":8614,"case_no":"IM250715002","project_id":3873,"project_title":"2025\u5e74\u6570\u636e\u4e2d\u5fc3\u7ef4\u4fdd","client_id":48,"client_name":"\u4e2d\u90fd\u6570\u79d1\u4f9b\u5e94\u94fe\u7ba1\u7406\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.20","erp_labor_cost_amount":"0.00","hours_spent_display":"1.20h","start_at":"2025-07-15 14:02:00","start_at_display":"2025\/07\/15 14:02","end_at":"2025-07-15 15:14:00","end_at_display":"2025\/07\/15 15:14","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6962,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250715001001","case_id":8613,"case_no":"IM250715001","project_id":3916,"project_title":"\u65b0\u8d2dHP\u5b58\u50a8\u786c\u76d8","client_id":3383,"client_name":"\u5317\u4eac\u601d\u8054\u79d1\u8baf\u79d1\u6280\u6709\u9650\u516c\u53f8-\u9b4f\u6cfd\u6587\uff08\u8fc7\u5355\uff09","sales_rep_id":5295,"sales_rep_name":"\u9b4f\u6cfd\u6587","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.50","erp_labor_cost_amount":"0.00","hours_spent_display":"0.50h","start_at":"2025-07-15 08:30:00","start_at_display":"2025\/07\/15 08:30","end_at":"2025-07-15 09:00:00","end_at_display":"2025\/07\/15 09:00","salesRep":{"id":5295,"key":5295,"name":"\u9b4f\u6cfd\u6587"}},{"ticket_id":6957,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250714008001","case_id":8610,"case_no":"IM250714008","project_id":3916,"project_title":"\u65b0\u8d2dHP\u5b58\u50a8\u786c\u76d8","client_id":3383,"client_name":"\u5317\u4eac\u601d\u8054\u79d1\u8baf\u79d1\u6280\u6709\u9650\u516c\u53f8-\u9b4f\u6cfd\u6587\uff08\u8fc7\u5355\uff09","sales_rep_id":5295,"sales_rep_name":"\u9b4f\u6cfd\u6587","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.85","erp_labor_cost_amount":"0.00","hours_spent_display":"1.85h","start_at":"2025-07-14 15:56:00","start_at_display":"2025\/07\/14 15:56","end_at":"2025-07-14 17:47:00","end_at_display":"2025\/07\/14 17:47","salesRep":{"id":5295,"key":5295,"name":"\u9b4f\u6cfd\u6587"}},{"ticket_id":6956,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250714001001","case_id":8603,"case_no":"IM250714001","project_id":3873,"project_title":"2025\u5e74\u6570\u636e\u4e2d\u5fc3\u7ef4\u4fdd","client_id":48,"client_name":"\u4e2d\u90fd\u6570\u79d1\u4f9b\u5e94\u94fe\u7ba1\u7406\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.75","erp_labor_cost_amount":"0.00","hours_spent_display":"0.75h","start_at":"2025-07-14 08:15:00","start_at_display":"2025\/07\/14 08:15","end_at":"2025-07-14 09:00:00","end_at_display":"2025\/07\/14 09:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6948,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250709003001","case_id":8586,"case_no":"IM250709003","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"4.33","erp_labor_cost_amount":"0.00","hours_spent_display":"4.33h","start_at":"2025-07-10 19:00:00","start_at_display":"2025\/07\/10 19:00","end_at":"2025-07-10 23:20:00","end_at_display":"2025\/07\/10 23:20","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6940,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250709004001","case_id":8587,"case_no":"IM250709004","project_id":3832,"project_title":"\u98de\u5854\u9632\u706b\u5899\u7eed\u4fdd-2025\u5e74","client_id":89,"client_name":"\u5c71\u4e1c\u91d1\u8f6f\u79d1\u6280\u80a1\u4efd\u6709\u9650\u516c\u53f8(\u62db\u91d1\u77ff\u4e1a\u80a1\u4efd\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.50","erp_labor_cost_amount":"0.00","hours_spent_display":"1.50h","start_at":"2025-07-09 15:00:00","start_at_display":"2025\/07\/09 15:00","end_at":"2025-07-09 16:30:00","end_at_display":"2025\/07\/09 16:30","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6939,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250709002001","case_id":8585,"case_no":"IM250709002","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2025-07-09 10:00:00","start_at_display":"2025\/07\/09 10:00","end_at":"2025-07-09 11:00:00","end_at_display":"2025\/07\/09 11:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6936,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250708003001","case_id":8579,"case_no":"IM250708003","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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.75","erp_labor_cost_amount":"0.00","hours_spent_display":"2.75h","start_at":"2025-07-08 14:00:00","start_at_display":"2025\/07\/08 14:00","end_at":"2025-07-08 16:45:00","end_at_display":"2025\/07\/08 16:45","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6923,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250703003001","case_id":8562,"case_no":"IM250703003","project_id":3823,"project_title":"\u4fe1\u521b\u5e73\u53f0\u6269\u5bb9-2025\u5e74","client_id":20,"client_name":"\u4e2d\u56fd\u91cd\u578b\u673a\u68b0\u6709\u9650\u516c\u53f8\u3001\u56fd\u673a\u91cd\u578b\u88c5\u5907(\u67ec\u57d4\u5be8\u8fbe\u5cb1\u6c34\u7535\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.17","erp_labor_cost_amount":"0.00","hours_spent_display":"1.17h","start_at":"2025-07-03 13:46:00","start_at_display":"2025\/07\/03 13:46","end_at":"2025-07-03 14:56:00","end_at_display":"2025\/07\/03 14:56","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6918,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250701002001","case_id":8552,"case_no":"IM250701002","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"5.02","erp_labor_cost_amount":"0.00","hours_spent_display":"5.02h","start_at":"2025-07-02 13:19:00","start_at_display":"2025\/07\/02 13:19","end_at":"2025-07-02 18:20:00","end_at_display":"2025\/07\/02 18:20","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6916,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250701001001","case_id":8551,"case_no":"IM250701001","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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.88","erp_labor_cost_amount":"0.00","hours_spent_display":"0.88h","start_at":"2025-07-01 12:15:00","start_at_display":"2025\/07\/01 12:15","end_at":"2025-07-01 13:08:00","end_at_display":"2025\/07\/01 13:08","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6914,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250630005001","case_id":8549,"case_no":"IM250630005","project_id":"","project_title":"","client_id":3336,"client_name":"\u58f9\u8fdb\u5236\uff08\u5382\u5546\uff09","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.68","erp_labor_cost_amount":"0.00","hours_spent_display":"2.68h","start_at":"2025-07-01 08:06:00","start_at_display":"2025\/07\/01 08:06","end_at":"2025-07-01 10:47:00","end_at_display":"2025\/07\/01 10:47","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6913,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250630003001","case_id":8547,"case_no":"IM250630003","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"2025-06-30 10:00:00","start_at_display":"2025\/06\/30 10:00","end_at":"2025-06-30 12:00:00","end_at_display":"2025\/06\/30 12:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6911,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250630001001","case_id":8545,"case_no":"IM250630001","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"2025-06-30 09:00:00","start_at_display":"2025\/06\/30 09:00","end_at":"2025-06-30 10:00:00","end_at_display":"2025\/06\/30 10:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6909,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250627004001","case_id":8542,"case_no":"IM250627004","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","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":"2025-06-27 15:00:00","start_at_display":"2025\/06\/27 15:00","end_at":"2025-06-27 17:30:00","end_at_display":"2025\/06\/27 17:30","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6906,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250627003001","case_id":8541,"case_no":"IM250627003","project_id":3858,"project_title":"\u5b9e\u9a8c\u5ba4\u5b58\u50a8\u7eed\u4fdd","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"6.00","erp_labor_cost_amount":"0.00","hours_spent_display":"6h","start_at":"2025-06-27 09:00:00","start_at_display":"2025\/06\/27 09:00","end_at":"2025-06-27 15:00:00","end_at_display":"2025\/06\/27 15:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6905,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250627001001","case_id":8539,"case_no":"IM250627001","project_id":3731,"project_title":"2024veeam\u548c\u5b58\u50a8\u7eed\u4fdd","client_id":90,"client_name":"\u82cf\u9ece\u4e16\u8d22\u4ea7\u4fdd\u9669(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\uff08\u82cf\u9ece\u4e16\u8d22\u4ea7\u4fdd\u9669(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\u5317\u4eac\u5206\u516c\u53f8 \uff09","sales_rep_id":5295,"sales_rep_name":"\u9b4f\u6cfd\u6587","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2025-06-27 08:00:00","start_at_display":"2025\/06\/27 08:00","end_at":"2025-06-27 09:00:00","end_at_display":"2025\/06\/27 09:00","salesRep":{"id":5295,"key":5295,"name":"\u9b4f\u6cfd\u6587"}},{"ticket_id":6908,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250627005001","case_id":8543,"case_no":"IM250627005","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"5.00","erp_labor_cost_amount":"0.00","hours_spent_display":"5h","start_at":"2025-06-26 18:00:00","start_at_display":"2025\/06\/26 18:00","end_at":"2025-06-26 23:00:00","end_at_display":"2025\/06\/26 23:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":1872,"ticket_type":"preSales","ticket_type_name":"\u552e\u524d","ticket_no":"PS250625002001","case_id":8536,"case_no":"PS250625002","project_id":3883,"project_title":"\u673a\u623f\u642c\u8fc1-K-2025","client_id":2182,"client_name":"\u5317\u4eac\u5357\u65b9\u65af\u5948\u514b\u739b\u6da1\u8f6e\u6280\u672f\u6709\u9650\u516c\u53f8","sales_rep_id":5300,"sales_rep_name":"\u82cf\u6e05\u4e91","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.30","erp_labor_cost_amount":"0.00","hours_spent_display":"0.30h","start_at":"2025-06-26 14:02:00","start_at_display":"2025\/06\/26 14:02","end_at":"2025-06-26 14:20:00","end_at_display":"2025\/06\/26 14:20","salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91"}},{"ticket_id":6902,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250625001001","case_id":8535,"case_no":"IM250625001","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.68","erp_labor_cost_amount":"0.00","hours_spent_display":"0.68h","start_at":"2025-06-25 13:49:00","start_at_display":"2025\/06\/25 13:49","end_at":"2025-06-25 14:30:00","end_at_display":"2025\/06\/25 14:30","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6898,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250624005001","case_id":8533,"case_no":"IM250624005","project_id":2674,"project_title":"\u8fd0\u7ef4\u670d\u52a1","client_id":12,"client_name":"smc(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\/SMC(\u5317\u4eac)\u5236\u9020\u6709\u9650\u516c\u53f8","sales_rep_id":5300,"sales_rep_name":"\u82cf\u6e05\u4e91","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2025-06-24 14:00:00","start_at_display":"2025\/06\/24 14:00","end_at":"2025-06-24 15:00:00","end_at_display":"2025\/06\/24 15:00","salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91"}},{"ticket_id":6899,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250624004001","case_id":8532,"case_no":"IM250624004","project_id":3841,"project_title":"2025PA\u9632\u706b\u5899\u66ff\u6362","client_id":3343,"client_name":"\u5317\u4eac\u5317\u6c7d\u79d1\u6280\u670d\u52a1\u6709\u9650\u516c\u53f8(\u4e2d\u90fd\u4e09\u4ea7\uff09","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"5.00","erp_labor_cost_amount":"0.00","hours_spent_display":"5h","start_at":"2025-06-24 08:00:00","start_at_display":"2025\/06\/24 08:00","end_at":"2025-06-24 13:00:00","end_at_display":"2025\/06\/24 13:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6895,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250623004001","case_id":8526,"case_no":"IM250623004","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"3.00","erp_labor_cost_amount":"0.00","hours_spent_display":"3h","start_at":"2025-06-23 13:00:00","start_at_display":"2025\/06\/23 13:00","end_at":"2025-06-23 16:00:00","end_at_display":"2025\/06\/23 16:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6894,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250623005001","case_id":8527,"case_no":"IM250623005","project_id":3665,"project_title":"24\u5e74\u865a\u62df\u5316\u7eed\u4fdd\u53ca\u670d\u52a1","client_id":25,"client_name":"\u5317\u4eac\u5e02\u6d77\u6dc0\u533a\u6559\u5e08\u8fdb\u4fee\u5b66\u6821","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":"5.00","erp_labor_cost_amount":"0.00","hours_spent_display":"5h","start_at":"2025-06-22 09:00:00","start_at_display":"2025\/06\/22 09:00","end_at":"2025-06-22 14:00:00","end_at_display":"2025\/06\/22 14:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6892,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250620002001","case_id":8522,"case_no":"IM250620002","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"4.17","erp_labor_cost_amount":"0.00","hours_spent_display":"4.17h","start_at":"2025-06-20 23:24:00","start_at_display":"2025\/06\/20 23:24","end_at":"2025-06-21 03:34:00","end_at_display":"2025\/06\/21 03:34","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6891,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250619003001","case_id":8520,"case_no":"IM250619003","project_id":3556,"project_title":"2024\u5e74\u670d\u52a1\u5668\u53ca\u5b58\u50a8\u8fd0\u7ef4\u670d\u52a1","client_id":48,"client_name":"\u4e2d\u90fd\u6570\u79d1\u4f9b\u5e94\u94fe\u7ba1\u7406\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"3.00","erp_labor_cost_amount":"0.00","hours_spent_display":"3h","start_at":"2025-06-20 09:00:00","start_at_display":"2025\/06\/20 09:00","end_at":"2025-06-20 12:00:00","end_at_display":"2025\/06\/20 12:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6888,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250619001001","case_id":8518,"case_no":"IM250619001","project_id":3150,"project_title":"2023\u5e74\u786c\u4ef6\u7eed\u4fdd-C","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.82","erp_labor_cost_amount":"0.00","hours_spent_display":"2.82h","start_at":"2025-06-19 13:07:00","start_at_display":"2025\/06\/19 13:07","end_at":"2025-06-19 15:56:00","end_at_display":"2025\/06\/19 15:56","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6884,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250616007001","case_id":8510,"case_no":"IM250616007","project_id":3719,"project_title":"\u601d\u79d1\u786c\u4ef6\u7ef4\u4fdd1\u5e74-K-2024","client_id":12,"client_name":"smc(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\/SMC(\u5317\u4eac)\u5236\u9020\u6709\u9650\u516c\u53f8","sales_rep_id":5300,"sales_rep_name":"\u82cf\u6e05\u4e91","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"3.83","erp_labor_cost_amount":"0.00","hours_spent_display":"3.83h","start_at":"2025-06-18 08:00:00","start_at_display":"2025\/06\/18 08:00","end_at":"2025-06-18 11:50:00","end_at_display":"2025\/06\/18 11:50","salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91"}},{"ticket_id":6879,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250616006001","case_id":8509,"case_no":"IM250616006","project_id":3151,"project_title":"2023\u5e74\u8f6f\u4ef6\u7eed\u4fdd\u9879\u76ee","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"4.00","erp_labor_cost_amount":"0.00","hours_spent_display":"4h","start_at":"2025-06-17 12:00:00","start_at_display":"2025\/06\/17 12:00","end_at":"2025-06-17 16:00:00","end_at_display":"2025\/06\/17 16:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6878,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250616005001","case_id":8508,"case_no":"IM250616005","project_id":3873,"project_title":"2025\u5e74\u6570\u636e\u4e2d\u5fc3\u7ef4\u4fdd","client_id":48,"client_name":"\u4e2d\u90fd\u6570\u79d1\u4f9b\u5e94\u94fe\u7ba1\u7406\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.20","erp_labor_cost_amount":"0.00","hours_spent_display":"1.20h","start_at":"2025-06-17 09:16:00","start_at_display":"2025\/06\/17 09:16","end_at":"2025-06-17 10:28:00","end_at_display":"2025\/06\/17 10:28","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6880,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250616004001","case_id":8507,"case_no":"IM250616004","project_id":3151,"project_title":"2023\u5e74\u8f6f\u4ef6\u7eed\u4fdd\u9879\u76ee","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"6.00","erp_labor_cost_amount":"0.00","hours_spent_display":"6h","start_at":"2025-06-16 11:00:00","start_at_display":"2025\/06\/16 11:00","end_at":"2025-06-16 17:00:00","end_at_display":"2025\/06\/16 17:00","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6874,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250609004001","case_id":8486,"case_no":"IM250609004","project_id":"","project_title":"","client_id":12,"client_name":"smc(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\/SMC(\u5317\u4eac)\u5236\u9020\u6709\u9650\u516c\u53f8","sales_rep_id":5300,"sales_rep_name":"\u82cf\u6e05\u4e91","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.58","erp_labor_cost_amount":"0.00","hours_spent_display":"1.58h","start_at":"2025-06-13 14:44:00","start_at_display":"2025\/06\/13 14:44","end_at":"2025-06-13 16:19:00","end_at_display":"2025\/06\/13 16:19","salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91"}},{"ticket_id":6872,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250612003001","case_id":8501,"case_no":"IM250612003","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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":"2025-06-12 09:00:00","start_at_display":"2025\/06\/12 09:00","end_at":"2025-06-12 11:00:00","end_at_display":"2025\/06\/12 11:00","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6865,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250611004001","case_id":8494,"case_no":"IM250611004","project_id":"","project_title":"","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"0.77","erp_labor_cost_amount":"0.00","hours_spent_display":"0.77h","start_at":"2025-06-11 15:31:00","start_at_display":"2025\/06\/11 15:31","end_at":"2025-06-11 16:17:00","end_at_display":"2025\/06\/11 16:17","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6864,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250611002001","case_id":8492,"case_no":"IM250611002","project_id":"","project_title":"","client_id":12,"client_name":"smc(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\/SMC(\u5317\u4eac)\u5236\u9020\u6709\u9650\u516c\u53f8","sales_rep_id":5300,"sales_rep_name":"\u82cf\u6e05\u4e91","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.00","erp_labor_cost_amount":"0.00","hours_spent_display":"1h","start_at":"2025-06-11 13:30:00","start_at_display":"2025\/06\/11 13:30","end_at":"2025-06-11 14:30:00","end_at_display":"2025\/06\/11 14:30","salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91"}},{"ticket_id":6862,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250611003001","case_id":8493,"case_no":"IM250611003","project_id":3151,"project_title":"2023\u5e74\u8f6f\u4ef6\u7eed\u4fdd\u9879\u76ee","client_id":5,"client_name":"\u4e2d\u7535\u79d1\u592a\u529b\u901a\u4fe1\u79d1\u6280\u6709\u9650\u516c\u53f8","sales_rep_id":1004,"sales_rep_name":"\u4f0a\u5cfb\u8fb0","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"2.95","erp_labor_cost_amount":"0.00","hours_spent_display":"2.95h","start_at":"2025-06-11 08:00:00","start_at_display":"2025\/06\/11 08:00","end_at":"2025-06-11 10:57:00","end_at_display":"2025\/06\/11 10:57","salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0"}},{"ticket_id":6856,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250609001001","case_id":8483,"case_no":"IM250609001","project_id":3810,"project_title":"NETAPP\u5b58\u50a8\u7eed\u4fdd\u670d\u52a1-2025\u5e74","client_id":1492,"client_name":"\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u751f\u7269\u6280\u672f\u6709\u9650\u516c\u53f8(\u5317\u4eac\u8d1d\u745e\u548c\u5eb7\u533b\u5b66\u68c0\u9a8c\u5b9e\u9a8c\u5ba4\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.72","erp_labor_cost_amount":"0.00","hours_spent_display":"2.72h","start_at":"2025-06-09 09:49:00","start_at_display":"2025\/06\/09 09:49","end_at":"2025-06-09 12:32:00","end_at_display":"2025\/06\/09 12:32","salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09"}},{"ticket_id":6854,"ticket_type":"implementRecords","ticket_type_name":"\u5b9e\u65bd","ticket_no":"IM250607001001","case_id":8482,"case_no":"IM250607001","project_id":"","project_title":"","client_id":90,"client_name":"\u82cf\u9ece\u4e16\u8d22\u4ea7\u4fdd\u9669(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\uff08\u82cf\u9ece\u4e16\u8d22\u4ea7\u4fdd\u9669(\u4e2d\u56fd)\u6709\u9650\u516c\u53f8\u5317\u4eac\u5206\u516c\u53f8 \uff09","sales_rep_id":5295,"sales_rep_name":"\u9b4f\u6cfd\u6587","engineer_id":1023,"engineer_name":"\u5468\u5b50\u5065","work_hours":"1.33","erp_labor_cost_amount":"0.00","hours_spent_display":"1.33h","start_at":"2025-06-07 12:00:00","start_at_display":"2025\/06\/07 12:00","end_at":"2025-06-07 13:20:00","end_at_display":"2025\/06\/07 13:20","salesRep":{"id":5295,"key":5295,"name":"\u9b4f\u6cfd\u6587"}}],"pagenation":{"totalcount":1843,"thispage":6,"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 16:01:23', 474885888) RETURNING "id"