Performance Profiling

Total processing time: 160 ms; Peak memory: 5.411 MB. Show Profiling Timeline

总计34条数据
TimeDurationCategoryInfo
  
16:11:10.52129.3 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.60115.5 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget > p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.57512.9 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget > p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.58812.1 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget > p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6565.7 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget <= p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.6514.7 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget <= p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6464.7 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND (p.budget <= p.collected) AND ("p"."project_status"=3) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6414.4 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=5) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.5584.4 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=1) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.5704.3 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=2) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.6294.3 msyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=4) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC LIMIT 20
16:11:10.5513.7 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=1) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.5553.4 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=1) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6223.3 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=4) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6263.3 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=4) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.5633.2 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=2) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.5673.2 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=2) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6343.2 msyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=5) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6383.2 msyii\db\Command::querySELECT SUM(budget) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (1001, 5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5467, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 5476, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("prr"."user_id"=1001) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND (((p.budget > p.collected) AND ("p"."project_status"='3'))) AND ("p"."project_status"=5) GROUP BY "p"."id" ORDER BY "p"."created_at" DESC) "c"
16:11:10.6641.7 msyii\db\Command::queryINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1001, 5, 'vue/project/list-all-status', '{"ProjectSearch":{"project_status":["3"],"group":"1","creator":"","purchaseType":"","engineer_group":"","period":"","budget":"","profit_pct":"","invoice_status":"","payment_status":"","collected_plan":"","project_progress":"","salesForecast":"","projectProductTypes":"","contact_point_status":"","from_contact_name":"","from_contact":"","contract_type":"","is_sales_order_ready":"","created_period":""},"Filter":{"name":"created_at","sort":"DESC","Tsort":"","Tname":""},"page":"1","web_access_token":"-ooNs73DKJQ01PCpcbuHx_usnaO5SdwJ"}', '{"code":2000,"result":{"list1count":0,"list1sum":"","list1":[],"list2count":0,"list2sum":"","list2":[],"list3count":59,"list3sum":"41073624.17","list3":[{"id":4173,"client_id":3311,"project_status":3,"project_progress":2,"budget":"88221","profit_pct":"10","bargain_date":"2026-06-01","description":"","created_by":1001,"created_at":"2026-06-01 12:46:01","updated_at":"2026-06-02 18:12:39","engineer_id":"","project_title":"\u6d4b\u8bd5\u5de5\u5355\u4eba\u5de5\u6210\u672c\u95ee\u9898","collected":"0","status_updated_at":"2026-06-01 12:46:01.516471+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-06-01 12:46:01.516471+08","forecast_updated_at":"2026-06-01 12:46:01.516471+08","end_at":"","pinyin_shortcut":"csgdrgcbwt","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1375,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"8822.1000000000000000","remain":"3 days 03:25:09.08591","progress_remain":"3 days 03:25:09.08591","forecast_remain":"3 days 03:25:09.08591","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"3 days 03:25:09.08591","issued_invoices":"88221","client":{"id":3311,"key":3311,"name":"\u5317\u4eac\u534e\u8fb0\u60a6\u79d1\u6280\u6709\u9650\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":13,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4172,"client_id":3389,"project_status":3,"project_progress":2,"budget":"18000","profit_pct":"80","bargain_date":"2026-05-25","description":"","created_by":1001,"created_at":"2026-05-25 10:12:46","updated_at":"2026-05-25 10:12:46","engineer_id":"","project_title":"\u63a8\u7279\u5982\u56fe","collected":"0","status_updated_at":"2026-05-25 10:12:46.312323+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-05-25 10:12:46.312323+08","forecast_updated_at":"2026-05-25 10:12:46.312323+08","end_at":"","pinyin_shortcut":"ttrt","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1374,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"14400.0000000000000000","remain":"10 days 05:58:24.290058","progress_remain":"10 days 05:58:24.290058","forecast_remain":"10 days 05:58:24.290058","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"10 days 05:58:24.290058","issued_invoices":"","client":{"id":3389,"key":3389,"name":"\u4e2d\u56fd\u8bc1\u5238\u62a5\u6709\u9650\u8d23\u4efb\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":18,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4170,"client_id":3389,"project_status":3,"project_progress":5,"budget":"900","profit_pct":"10","bargain_date":"2026-05-22","description":"","created_by":1001,"created_at":"2026-05-22 17:13:42","updated_at":"2026-06-02 23:12:40","engineer_id":"","project_title":"\u516c\u53f8\u8463\u4e8b","collected":"0","status_updated_at":"2026-06-02 23:12:40.191032+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-06-02 23:12:40.191032+08","forecast_updated_at":"2026-06-02 23:12:40.191032+08","end_at":"","pinyin_shortcut":"gsds","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1372,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"90.0000000000000000","remain":"1 day 16:58:30.411349","progress_remain":"1 day 16:58:30.411349","forecast_remain":"1 day 16:58:30.411349","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"12 days 22:57:27.72957","issued_invoices":"","client":{"id":3389,"key":3389,"name":"\u4e2d\u56fd\u8bc1\u5238\u62a5\u6709\u9650\u8d23\u4efb\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":18,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":5,"key":5,"name":"\u5546\u52a1\u62a5\u4ef7","description":"\u5b9a\u4e49\uff1a1.\u62a5\u4ef7\u6709\u6548\u671f 2.\u6838\u7b97\u5229\u6da6\u7387 3. \u4ea4\u8d27\u65b9\u5f0f\u53ca\u65f6\u95f4 4.\u9a8c\u6536\u65b9\u5f0f 5.\u6536\u6b3e\u65b9\u5f0f 6.\u8fdd\u7ea6\u6761\u6b3e \n\u65b9\u6cd5\uff1a\u7528\u516c\u53f8\u6807\u51c6\u7684\u62a5\u4ef7\u5355\u6837\u5f0f\u5411\u5ba2\u6237\u63d0\u4f9b\u62a5\u4ef7\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4169,"client_id":3389,"project_status":3,"project_progress":2,"budget":"1800","profit_pct":"10","bargain_date":"2026-05-22","description":"","created_by":1001,"created_at":"2026-05-22 17:05:11","updated_at":"2026-05-22 17:05:11","engineer_id":"","project_title":"\u65b9\u5f0f\u5730\u65b9","collected":"0","status_updated_at":"2026-05-22 17:05:11.576531+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-05-22 17:05:11.576531+08","forecast_updated_at":"2026-05-22 17:05:11.576531+08","end_at":"","pinyin_shortcut":"fsdf","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1371,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"180.0000000000000000","remain":"12 days 23:05:59.02585","progress_remain":"12 days 23:05:59.02585","forecast_remain":"12 days 23:05:59.02585","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"12 days 23:05:59.02585","issued_invoices":"","client":{"id":3389,"key":3389,"name":"\u4e2d\u56fd\u8bc1\u5238\u62a5\u6709\u9650\u8d23\u4efb\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":18,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4167,"client_id":982,"project_status":3,"project_progress":3,"budget":"51486","profit_pct":"10","bargain_date":"2026-05-14","description":"","created_by":1001,"created_at":"2026-05-14 10:38:51","updated_at":"2026-05-21 18:03:03","engineer_id":"","project_title":"\u65b0\u5efa\u9879\u76ee","collected":"100","status_updated_at":"2026-05-20 17:28:38.222483+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-05-14 10:38:51.428023+08","forecast_updated_at":"2026-05-14 10:38:51.428023+08","end_at":"","pinyin_shortcut":"xjxm","creator":5064,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1368,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"5148.6000000000000000","remain":"14 days 22:42:32.379898","progress_remain":"21 days 05:32:19.174358","forecast_remain":"21 days 05:32:19.174358","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"21 days 05:32:19.174358","issued_invoices":"","client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":"","client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4166,"client_id":982,"project_status":3,"project_progress":3,"budget":"4000","profit_pct":"12","bargain_date":"2026-05-12","description":"","created_by":1001,"created_at":"2026-04-23 21:19:12","updated_at":"2026-05-20 12:54:15","engineer_id":"","project_title":"9999","collected":"0","status_updated_at":"2026-05-12 14:41:04.902844+08","success_rate":"","comment":"\u89c9\u5f97\u597d\u70e6\u597d\u70e6\u653e\u5047","contract_type":1,"progress_updated_at":"2026-04-23 21:19:12.843009+08","forecast_updated_at":"2026-04-23 21:19:12.843009+08","end_at":"","pinyin_shortcut":"9999","creator":1000,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1358,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"480.0000000000000000","remain":"23 days 01:30:05.699537","progress_remain":"41 days 18:51:57.759372","forecast_remain":"41 days 18:51:57.759372","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"41 days 18:51:57.759372","issued_invoices":"1701","client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":"","client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectRemindReceivers":[{"id":2187,"user_id":5250,"key":5250,"project_id":4166,"user":{"id":5250,"key":5250,"name":"\u8463\u8363","sex":"M","avatar":{"id":157,"user_id":5250,"name":"\/files\/cdn\/a57be577deb434\/avatar\/10f9a0d9-7ea7-3910-9465-6ece76a0dae4.png"}}},{"id":2188,"user_id":5016,"key":5016,"project_id":4166,"user":{"id":5016,"key":5016,"name":"\u9ad8\u90e1\u9633","sex":"M","avatar":{"id":35,"user_id":5016,"name":"\/files\/cdn\/a57be577deb434\/avatar\/404e0bcf-6382-3f63-b93b-4d936f35a4b2.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4164,"client_id":982,"project_status":3,"project_progress":9,"budget":"40878","profit_pct":"10","bargain_date":"2026-04-08","description":"","created_by":1001,"created_at":"2026-04-08 11:18:13","updated_at":"2026-04-29 17:58:05","engineer_id":"","project_title":"\u6d4b\u8bd5\u65b0\u5efa\u5546\u673a\/\u7f16\u8f91\/\u751f\u6210\u5408\u540c","collected":"3","status_updated_at":"2026-04-08 11:18:13.298803+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-04-08 11:18:13.298803+08","forecast_updated_at":"2026-04-08 11:18:13.298803+08","end_at":"","pinyin_shortcut":"csxjsjbjscht","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1350,"is_sales_order_ready":false,"collected_plan":"","change_status_to":5,"is_verify":true,"profits":"4087.8000000000000000","remain":"57 days 04:52:57.303578","progress_remain":"57 days 04:52:57.303578","forecast_remain":"57 days 04:52:57.303578","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"57 days 04:52:57.303578","issued_invoices":"","client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":"","client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[{"id":2177,"user_id":1001,"key":1001,"project_id":4164,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":false,"can_delete":true},{"id":4161,"client_id":982,"project_status":3,"project_progress":9,"budget":"12703473","profit_pct":"45","bargain_date":"2026-04-23","description":"","created_by":1001,"created_at":"2026-04-01 11:36:21","updated_at":"2026-05-21 16:13:22","engineer_id":"","project_title":"3535","collected":"0","status_updated_at":"2026-04-23 16:49:39.894842+08","success_rate":"","comment":"5345","contract_type":1,"progress_updated_at":"2026-04-01 11:36:21.052758+08","forecast_updated_at":"2026-04-01 11:36:21.052758+08","end_at":"","pinyin_shortcut":"3535","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1360,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"5716562.850000000000","remain":"41 days 23:21:30.707539","progress_remain":"64 days 04:34:49.549623","forecast_remain":"64 days 04:34:49.549623","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"64 days 04:34:49.549623","issued_invoices":"1009","client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":"","client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[{"id":2180,"user_id":1001,"key":1001,"project_id":4161,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4157,"client_id":3457,"project_status":3,"project_progress":2,"budget":"33333","profit_pct":"33","bargain_date":"2026-04-01","description":"","created_by":1001,"created_at":"2026-04-01 11:21:52","updated_at":"2026-04-01 11:28:03","engineer_id":"","project_title":"\u9500\u552e\u7ebf\u7d22\u751f\u621020260401002","collected":"555","status_updated_at":"2026-04-01 11:28:03.148616+08","success_rate":"","comment":"\u6d4b\u8bd5","contract_type":1,"progress_updated_at":"2026-04-01 11:27:13.136636+08","forecast_updated_at":"2026-04-01 11:27:13.136636+08","end_at":"","pinyin_shortcut":"xsxssc20260401002","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1343,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"10999.8900000000000000","remain":"64 days 04:43:07.453765","progress_remain":"64 days 04:43:57.465745","forecast_remain":"64 days 04:43:57.465745","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"64 days 04:49:18.13955","issued_invoices":"","client":{"id":3457,"key":3457,"name":"\u65b0\u5bb6\u9500\u552e\u7ebf\u7d22\u6d4b\u8bd5-\u5206\u914d","logo":"","client_type":1,"client_class":1,"client_industry":57,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4155,"client_id":982,"project_status":3,"project_progress":9,"budget":"4555","profit_pct":"67","bargain_date":"2026-03-31","description":"","created_by":1001,"created_at":"2026-03-31 13:59:19","updated_at":"2026-05-25 11:18:55","engineer_id":"","project_title":"\u6d4b\u8bd5\u65b0\u5efa\u5546\u673a","collected":"0","status_updated_at":"2026-05-25 11:18:55.248857+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-31 13:59:19.921319+08","forecast_updated_at":"2026-03-31 13:59:19.921319+08","end_at":"","pinyin_shortcut":"csxjsj","creator":1001,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1341,"is_sales_order_ready":false,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"3051.8500000000000000","remain":"10 days 04:52:15.353524","progress_remain":"65 days 02:11:50.681062","forecast_remain":"65 days 02:11:50.681062","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"65 days 02:11:50.681062","issued_invoices":"","client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":"","client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[{"id":2189,"user_id":1001,"key":1001,"project_id":4155,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4145,"client_id":20,"project_status":3,"project_progress":3,"budget":"2000000","profit_pct":"20","bargain_date":"2026-03-31","description":"","created_by":1005,"created_at":"2026-03-20 13:30:33","updated_at":"2026-03-31 13:59:52","engineer_id":"","project_title":"\u529e\u516c\u5927\u697c\u6539\u9020","collected":"0","status_updated_at":"2026-03-31 13:59:52.690252+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-20 13:30:33.968419+08","forecast_updated_at":"2026-03-20 13:30:33.968419+08","end_at":"","pinyin_shortcut":"bgdlgz","creator":1005,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":"","is_sales_order_ready":true,"collected_plan":"","change_status_to":"","is_verify":false,"profits":"400000.000000000000","remain":"65 days 02:11:17.912129","progress_remain":"76 days 02:40:36.633962","forecast_remain":"76 days 02:40:36.633962","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"76 days 02:40:36.633962","issued_invoices":"","client":{"id":20,"key":20,"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)","logo":"","client_type":6,"client_class":47,"client_industry":5,"sales_rep":1005},"usedClient":{},"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4142,"client_id":3286,"project_status":3,"project_progress":9,"budget":"309425.78","profit_pct":"1.53","bargain_date":"2026-03-17","description":"\u6700\u7ec8\u7528\u6237\u4fe1\u606f\uff1a\n\u4ebf\u5ba2\u884c\u54a8\u8be2\u670d\u52a1(\u5317\u4eac)\u6709\u9650\u516c\u53f8\nExpedia Consulting Service (Beijing) Co., Ltd.","created_by":1001,"created_at":"2026-03-17 14:29:58","updated_at":"2026-04-08 15:49:36","engineer_id":"","project_title":"PA1420 \u4e24\u53f0\u65b0\u8d2d\u9879\u76ee","collected":"0","status_updated_at":"2026-03-23 17:48:01.795913+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-23 17:48:01.795913+08","forecast_updated_at":"2026-03-17 14:29:58.79168+08","end_at":"","pinyin_shortcut":"PA1420ltxgxm","creator":1011,"used_client":"","from_contact":5957,"total_contact_point":"13920","paid_contact_point":"8","project_product_version_id":1334,"is_sales_order_ready":false,"collected_plan":"309425.78","change_status_to":"","is_verify":false,"profits":"4734.214434000000000000","remain":"72 days 22:23:08.806468","progress_remain":"72 days 22:23:08.806468","forecast_remain":"79 days 01:41:11.810701","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"79 days 01:41:11.810701","issued_invoices":"","client":{"id":3286,"key":3286,"name":"\u826f\u56fe\u79d1\u6280(\u4e0a\u6d77)\u6709\u9650\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":13,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4139,"client_id":2182,"project_status":3,"project_progress":9,"budget":"74500","profit_pct":"2863.53","bargain_date":"2026-03-20","description":"","created_by":5300,"created_at":"2026-03-12 15:21:08","updated_at":"2026-03-30 15:26:06","engineer_id":"","project_title":"\u7fa4\u6656\u5907\u4efd\u5b58\u50a8\u91c7\u8d2d-2026","collected":"0","status_updated_at":"2026-03-20 17:58:32.602367+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-20 17:58:32.602367+08","forecast_updated_at":"2026-03-16 14:11:13.711341+08","end_at":"","pinyin_shortcut":"qhbfcccg2026","creator":5300,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1338,"is_sales_order_ready":false,"collected_plan":"74500","change_status_to":"","is_verify":false,"profits":"2133329.850000000000000000","remain":"75 days 22:12:38.000014","progress_remain":"75 days 22:12:38.000014","forecast_remain":"80 days 01:59:56.89104","lost_contact_days":"71.1744282682986","last_contact":"2026-03-25 12:00:00","last_arrive_days":"","last_arrive":"","duration":"84 days 00:50:02.474272","issued_invoices":"","client":{"id":2182,"key":2182,"name":"\u5317\u4eac\u5357\u65b9\u65af\u5948\u514b\u739b\u6da1\u8f6e\u6280\u672f\u6709\u9650\u516c\u53f8","logo":"","client_type":5,"client_class":80,"client_industry":20,"sales_rep":5300},"usedClient":{},"salesRep":{"id":5300,"key":5300,"name":"\u82cf\u6e05\u4e91","sex":"F","avatar":{"id":141,"user_id":5300,"name":"\/files\/cdn\/a57be577deb434\/avatar\/14dfd1a0-6df5-354a-8afd-f0a76fa8e852.png"}},"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[{"id":2162,"user_id":1001,"key":1001,"project_id":4139,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}},{"id":2163,"user_id":1005,"key":1005,"project_id":4139,"user":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4128,"client_id":1172,"project_status":3,"project_progress":9,"budget":"21104.99","profit_pct":"25","bargain_date":"2026-03-13","description":"","created_by":1004,"created_at":"2026-03-01 21:46:25","updated_at":"2026-03-25 11:23:53","engineer_id":"","project_title":"2026AC\u7eed\u4fdd","collected":"0","status_updated_at":"2026-03-22 22:28:21.533287+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-22 22:28:21.533287+08","forecast_updated_at":"2026-03-01 21:46:25.926496+08","end_at":"","pinyin_shortcut":"2026ACxb","creator":1004,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1335,"is_sales_order_ready":false,"collected_plan":"21104.99","change_status_to":"","is_verify":false,"profits":"5276.2475000000000000","remain":"73 days 17:42:49.069094","progress_remain":"73 days 17:42:49.069094","forecast_remain":"94 days 18:24:44.675885","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"94 days 18:24:44.675885","issued_invoices":"","client":{"id":1172,"key":1172,"name":"\u5317\u4eac\u4e2d\u90fd\u661f\u5fbd\u6570\u79d1\u4f9b\u5e94\u94fe\u7ba1\u7406\u6709\u9650\u516c\u53f8","logo":"","client_type":5,"client_class":47,"client_industry":8,"sales_rep":1004},"usedClient":{},"salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0","sex":"M","avatar":{"id":10,"user_id":1004,"name":"\/files\/cdn\/a57be577deb434\/avatar\/1004.jpg"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4127,"client_id":3451,"project_status":3,"project_progress":6,"budget":"29800","profit_pct":"93","bargain_date":"2026-02-28","description":"","created_by":1001,"created_at":"2026-02-28 17:51:43","updated_at":"2026-03-04 16:01:44","engineer_id":"","project_title":"\u91d1\u7545\u900dERP\u8f6f\u4ef6\u4e00\u5957\u91c7\u8d2d\u9879\u76ee","collected":"0","status_updated_at":"2026-03-04 14:51:25.482774+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-02-28 17:51:43.589188+08","forecast_updated_at":"2026-02-28 17:51:43.589188+08","end_at":"","pinyin_shortcut":"jcxERPrjytcgxm","creator":1011,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1329,"is_sales_order_ready":false,"collected_plan":"29800","change_status_to":"","is_verify":false,"profits":"27714.0000000000000000","remain":"92 days 01:19:45.119607","progress_remain":"95 days 22:19:27.013193","forecast_remain":"95 days 22:19:27.013193","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"95 days 22:19:27.013193","issued_invoices":"","client":{"id":3451,"key":3451,"name":"\u5c71\u897f\u534e\u521b\u667a\u884c\u6570\u5b57\u79d1\u6280\u6709\u9650\u516c\u53f8","logo":"","client_type":5,"client_class":43,"client_industry":13,"sales_rep":1001},"usedClient":{},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":6,"key":6,"name":"\u63a8\u52a8\u6210\u4ea4","description":"\u5b9a\u4e49\uff1a\u5ba2\u6237\u786e\u8ba4\u4e86\u65b9\u6848\uff0c\u4e86\u89e3\u4e86\u6210\u4ea4\u4ef7\u683c\u3002 \n\u65b9\u6cd5\uff1a\u901a\u8fc7\u5229\u76ca\u5206\u4eab\uff0c\u5b9e\u529b\u8bc1\u660e\uff0c\u9ad8\u5c42\u62dc\u8bbf\uff0c\u5382\u5546\u62dc\u8bbf\uff0c\u6848\u4f8b\u53c2\u89c2\uff0c\u7a81\u51fa\u6211\u65b9\u4f18\u52bf\uff0c\u6253\u51fb\u5bf9\u624b\u52a3\u52bf\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4123,"client_id":89,"project_status":3,"project_progress":5,"budget":"18600","profit_pct":"14.84","bargain_date":"2026-02-28","description":"","created_by":1005,"created_at":"2026-02-28 10:21:10","updated_at":"2026-03-23 13:29:40","engineer_id":"","project_title":"FAS8300\u786c\u76d8\u6269\u5bb9-6\u5757 1.8T SAS","collected":"0","status_updated_at":"2026-02-28 10:21:52.284047+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-02-28 10:21:10.595161+08","forecast_updated_at":"2026-02-28 10:21:10.595161+08","end_at":"","pinyin_shortcut":"FAS8300ypkr6k18TSAS","creator":1005,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1328,"is_sales_order_ready":true,"collected_plan":"18600","change_status_to":"","is_verify":false,"profits":"2760.240000000000000000","remain":"96 days 05:49:18.318334","progress_remain":"96 days 05:50:00.00722","forecast_remain":"96 days 05:50:00.00722","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"96 days 05:50:00.00722","issued_invoices":"18600","client":{"id":89,"key":89,"name":"\u5c71\u4e1c\u91d1\u8f6f\u79d1\u6280\u80a1\u4efd\u6709\u9650\u516c\u53f8(\u62db\u91d1\u77ff\u4e1a\u80a1\u4efd\u6709\u9650\u516c\u53f8)","logo":"","client_type":6,"client_class":47,"client_industry":16,"sales_rep":1005},"usedClient":{},"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":5,"key":5,"name":"\u5546\u52a1\u62a5\u4ef7","description":"\u5b9a\u4e49\uff1a1.\u62a5\u4ef7\u6709\u6548\u671f 2.\u6838\u7b97\u5229\u6da6\u7387 3. \u4ea4\u8d27\u65b9\u5f0f\u53ca\u65f6\u95f4 4.\u9a8c\u6536\u65b9\u5f0f 5.\u6536\u6b3e\u65b9\u5f0f 6.\u8fdd\u7ea6\u6761\u6b3e \n\u65b9\u6cd5\uff1a\u7528\u516c\u53f8\u6807\u51c6\u7684\u62a5\u4ef7\u5355\u6837\u5f0f\u5411\u5ba2\u6237\u63d0\u4f9b\u62a5\u4ef7\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4118,"client_id":2526,"project_status":3,"project_progress":9,"budget":"3000","profit_pct":"12.5","bargain_date":"2026-02-02","description":"","created_by":5087,"created_at":"2026-02-02 16:24:13","updated_at":"2026-03-22 19:47:19","engineer_id":"","project_title":"\u4e2d\u5b5a\u591a\u529f\u80fd\u5012\u5165\u88c5\u7f6e\u91c7\u8d2d","collected":"0","status_updated_at":"2026-02-02 16:25:34.053388+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-02-02 16:24:13.586679+08","forecast_updated_at":"2026-02-02 16:24:13.586679+08","end_at":"","pinyin_shortcut":"zfdgndrzzcg","creator":5087,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1319,"is_sales_order_ready":true,"collected_plan":"3000","change_status_to":"","is_verify":false,"profits":"375.00000000000000000","remain":"121 days 23:45:36.548993","progress_remain":"121 days 23:46:57.015702","forecast_remain":"121 days 23:46:57.015702","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"121 days 23:46:57.015702","issued_invoices":"","client":{"id":2526,"key":2526,"name":"\u5317\u4eac\u822a\u5929\u6d4b\u63a7\u6280\u672f\u6709\u9650\u516c\u53f8","logo":"","client_type":6,"client_class":43,"client_industry":5,"sales_rep":5087},"usedClient":{},"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":9,"key":9,"name":"\u7b7e\u8ba2\u5408\u540c","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u4ea7\u54c1\u914d\u7f6e\uff0c\u4ea7\u54c1\u6570\u91cf\uff0c\u4ea7\u54c1\u4ef7\u683c\uff0c\u4ed8\u6b3e\u65b9\u5f0f\uff0c\u5230\u8d27\u65e5\u671f\uff0c\u8fdd\u7ea6\u6761\u6b3e\uff0c\u9a8c\u6536\u6807\u51c6\u3002 \n\u65b9\u6cd5\uff1a\u6309\u7167\u516c\u53f8\u5408\u540c\u8303\u672c\u6216\u6309\u7167\u5ba2\u6237\u8303\u672c\u7b7e\u8ba2\u5408\u540c\u3002"},"projectRemindReceivers":[{"id":2113,"user_id":1001,"key":1001,"project_id":4118,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4116,"client_id":3438,"project_status":3,"project_progress":6,"budget":"3837034","profit_pct":"0.61","bargain_date":"2026-01-27","description":"","created_by":1005,"created_at":"2026-01-27 17:20:18","updated_at":"2026-02-06 17:15:32","engineer_id":"","project_title":"\u4e2d\u535a\u6570\u667a\u6db2\u51b7\u5de5\u4f5c\u7ad9-\u4e2d\u77f3\u5316","collected":"0","status_updated_at":"2026-01-27 17:22:47.009829+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-01-27 17:20:18.438458+08","forecast_updated_at":"2026-01-27 17:20:18.438458+08","end_at":"","pinyin_shortcut":"zbszylgzzzsh","creator":1005,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1318,"is_sales_order_ready":true,"collected_plan":"3837034","change_status_to":"","is_verify":false,"profits":"23405.90740000000000","remain":"127 days 22:48:23.592552","progress_remain":"127 days 22:50:52.163923","forecast_remain":"127 days 22:50:52.163923","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"127 days 22:50:52.163923","issued_invoices":"3837034","client":{"id":3438,"key":3438,"name":"\u5927\u8fde\u665f\u4e30\u539f\u4fe1\u606f\u54a8\u8be2\u6709\u9650\u516c\u53f8\uff08\u8fc7\u5355\uff09","logo":"","client_type":5,"client_class":43,"client_industry":12,"sales_rep":1005},"usedClient":{},"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":6,"key":6,"name":"\u63a8\u52a8\u6210\u4ea4","description":"\u5b9a\u4e49\uff1a\u5ba2\u6237\u786e\u8ba4\u4e86\u65b9\u6848\uff0c\u4e86\u89e3\u4e86\u6210\u4ea4\u4ef7\u683c\u3002 \n\u65b9\u6cd5\uff1a\u901a\u8fc7\u5229\u76ca\u5206\u4eab\uff0c\u5b9e\u529b\u8bc1\u660e\uff0c\u9ad8\u5c42\u62dc\u8bbf\uff0c\u5382\u5546\u62dc\u8bbf\uff0c\u6848\u4f8b\u53c2\u89c2\uff0c\u7a81\u51fa\u6211\u65b9\u4f18\u52bf\uff0c\u6253\u51fb\u5bf9\u624b\u52a3\u52bf\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4115,"client_id":57,"project_status":3,"project_progress":6,"budget":"48000","profit_pct":"24.46","bargain_date":"2026-01-26","description":"","created_by":1005,"created_at":"2026-01-26 14:58:47","updated_at":"2026-03-18 13:21:42","engineer_id":"","project_title":"netapp\u5b58\u50a8\u6269\u5bb9","collected":"0","status_updated_at":"2026-01-26 15:00:05.050828+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-01-26 14:58:47.305685+08","forecast_updated_at":"2026-01-27 16:51:53.660487+08","end_at":"","pinyin_shortcut":"netappcckr","creator":1005,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1313,"is_sales_order_ready":true,"collected_plan":"48000","change_status_to":"","is_verify":false,"profits":"11740.800000000000000000","remain":"129 days 01:11:05.551553","progress_remain":"129 days 01:12:23.296696","forecast_remain":"127 days 23:19:16.941894","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"129 days 01:12:23.296696","issued_invoices":"48000","client":{"id":57,"key":57,"name":"\u4fdd\u8bfa\u79d1\u6280(\u5317\u4eac)\u6709\u9650\u516c\u53f8\u3001\u4e0a\u6d77\u6da6\u8bfa\u3001\u4e2d\u56fd\u7535\u5b50\u7cfb\u7edf\u5de5\u7a0b\u7b2c\u4e8c\u5efa\u8bbe\u6709\u9650\u516c\u53f8,\u6851\u8fea\u4e9a\u533b\u836f\u6280\u672f(\u4e0a\u6d77)\u6709\u9650\u8d23\u4efb\u516c\u53f8","logo":"","client_type":5,"client_class":47,"client_industry":5,"sales_rep":1005},"usedClient":{},"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":6,"key":6,"name":"\u63a8\u52a8\u6210\u4ea4","description":"\u5b9a\u4e49\uff1a\u5ba2\u6237\u786e\u8ba4\u4e86\u65b9\u6848\uff0c\u4e86\u89e3\u4e86\u6210\u4ea4\u4ef7\u683c\u3002 \n\u65b9\u6cd5\uff1a\u901a\u8fc7\u5229\u76ca\u5206\u4eab\uff0c\u5b9e\u529b\u8bc1\u660e\uff0c\u9ad8\u5c42\u62dc\u8bbf\uff0c\u5382\u5546\u62dc\u8bbf\uff0c\u6848\u4f8b\u53c2\u89c2\uff0c\u7a81\u51fa\u6211\u65b9\u4f18\u52bf\uff0c\u6253\u51fb\u5bf9\u624b\u52a3\u52bf\u3002"},"projectRemindReceivers":[],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true},{"id":4113,"client_id":2125,"project_status":3,"project_progress":49,"budget":"378880","profit_pct":"41","bargain_date":"2026-01-28","description":"","created_by":5087,"created_at":"2026-01-22 21:24:33","updated_at":"2026-04-22 15:46:14","engineer_id":"","project_title":"\u4f1a\u8bae\u5ba4\u7cfb\u7edf-K","collected":"227328","status_updated_at":"2026-03-09 00:20:28.636358+08","success_rate":"","comment":"","contract_type":1,"progress_updated_at":"2026-03-09 00:20:28.636358+08","forecast_updated_at":"2026-03-09 00:20:28.636358+08","end_at":"","pinyin_shortcut":"hysxtK","creator":5087,"used_client":"","from_contact":"","total_contact_point":"","paid_contact_point":"","project_product_version_id":1321,"is_sales_order_ready":false,"collected_plan":"378880","change_status_to":"","is_verify":false,"profits":"155340.8000000000000000","remain":"87 days 15:50:41.966023","progress_remain":"87 days 15:50:41.966023","forecast_remain":"87 days 15:50:41.966023","lost_contact_days":"","last_contact":"","last_arrive_days":"","last_arrive":"","duration":"132 days 18:46:37.259789","issued_invoices":"","client":{"id":2125,"key":2125,"name":"\u5317\u4eac\u673a\u5668\u5236\u9020\u6709\u9650\u516c\u53f8","logo":"","client_type":6,"client_class":47,"client_industry":20,"sales_rep":5087},"usedClient":{},"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":49,"key":49,"name":"\u6536\u6b3e\u4e2d","description":"\u5b9a\u4e49\uff1a\u5f00\u53d1\u7968\uff0c\u5b8c\u6210\u6536\u6b3e \u3002\n\u65b9\u6cd5\uff1a\u5411\u8d22\u52a1\u7533\u8bf7\u5f00\u53d1\u7968\u3002"},"projectRemindReceivers":[{"id":2105,"user_id":1001,"key":1001,"project_id":4113,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"is_only_cp":false,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_update":true,"can_delete":true}],"list4count":0,"list4sum":"","list4":[],"list5count":0,"list5sum":"","list5":[],"list6count":0,"list6sum":"","list6":[],"thisUser":"","can_create":true,"pagenation":{"totalcount":59,"thispage":1,"pagesize":20}},"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-04 16:11:10', 154080000) RETURNING "id"
16:11:10.5110.8 msyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "id"=1001
16:11:10.5130.6 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
16:11:10.6190.6 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id" IN (4173, 4172, 4170, 4169, 4167, 4166, 4164, 4161, 4157, 4155, 4145, 4142, 4139, 4128, 4127, 4123, 4118, 4116, 4115, 4113)
16:11:10.6170.5 msyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (3311, 3389, 982, 3457, 20, 3286, 2182, 1172, 3451, 89, 2526, 3438, 57, 2125)
16:11:10.6170.3 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "logo", "client_type", "client_class", "client_industry", "sales_rep" FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (3311, 3389, 982, 3457, 20, 3286, 2182, 1172, 3451, 89, 2526, 3438, 57, 2125)
16:11:10.6190.3 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "description" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=13) AND ("id" IN (226, 5, 1, 229, 215, 2, 135, 140, 136, 184, 189, 183, 188, 185, 191, 307, 204, 196, 205, 309, 340, 323, 349, 352, 360, 369, 331, 356, 377, 410, 164, 181, 130, 172, 128, 142, 165)) ORDER BY "sort"
16:11:10.6210.3 msyii\db\Command::querySELECT "id", "user_id", "user_id" AS "key", "project_id" FROM "a57be577deb434"."tbl_project_remind_receivers" WHERE "project_id" IN (4173, 4172, 4170, 4169, 4167, 4166, 4164, 4161, 4157, 4155, 4145, 4142, 4139, 4128, 4127, 4123, 4118, 4116, 4115, 4113)
16:11:10.6180.2 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (5300, 1005, 1001, 1004, 5087)
16:11:10.5110.2 msyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
16:11:10.6180.2 msyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5087, 1004, 1005, 5300))
16:11:10.6210.2 msyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 1005, 5250, 5016)
16:11:10.6210.2 msyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5250, 1005, 5016))
16:11:10.6200.2 msyii\db\Command::querySELECT "id", "id" AS "key", "project_progress" AS "name", "description" FROM "a57be577deb434"."tbl_project_progresses" WHERE "id" IN (2, 5, 3, 9, 6, 49)
16:11:10.6200.2 msyii\db\Command::querySELECT "id", "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id"=3