Log Messages

总计62条数据
TimeLevelCategoryMessage
 
16:11:10.508traceyii\base\Application::bootstrapBootstrap with yii\log\Dispatcher
16:11:10.508traceyii\base\Module::getModuleLoading module: debug
16:11:10.508traceyii\base\Application::bootstrapBootstrap with yii\debug\Module::bootstrap()
16:11:10.509traceyii\redis\Connection::openOpening redis DB connection: redis.server.local:6379, database=1
16:11:10.509traceyii\redis\Connection::executeCommandExecuting Redis Command: SELECT
16:11:10.509traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.509infotime tracing start1780560670509831936
16:11:10.510traceyii\web\UrlManager::parseRequestNo matching URL rules. Using default URL parsing logic.
16:11:10.510traceyii\web\Application::handleRequestRoute requested: 'vue/project/list-all-status'
16:11:10.510traceyii\base\Module::getModuleLoading module: vue
16:11:10.510infoyii\web\Session::openSession started
16:11:10.511infoyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "id"=1001
16:11:10.511infoyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
16:11:10.512traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.512traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:11:10.513traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.513traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:11:10.513infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
16:11:10.514traceyii\base\Controller::runActionRoute to run: vue/project/list-all-status
16:11:10.515traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.516traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
16:11:10.516traceyii\base\InlineAction::runWithParamsRunning action: app\modules\vue\controllers\ProjectController::actionListAllStatus()
16:11:10.516traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.517traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:11:10.517traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'from_contact_name' in 'app\models\search\ProjectSearch'.
16:11:10.518traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.519traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.521infoyii\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.551infoyii\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.555infoyii\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.558infoyii\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.563infoyii\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.567infoyii\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.570infoyii\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.575infoyii\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.588infoyii\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.601infoyii\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.617infoyii\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.617infoyii\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.618infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (5300, 1005, 1001, 1004, 5087)
16:11:10.618infoyii\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.619infoyii\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.619infoyii\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.620infoyii\db\Command::querySELECT "id", "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id"=3
16:11:10.620infoyii\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.621infoyii\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.621infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 1005, 5250, 5016)
16:11:10.621infoyii\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.622infoyii\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.626infoyii\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.629infoyii\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.634infoyii\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.638infoyii\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.641infoyii\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.646infoyii\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.651infoyii\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.656infoyii\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.663traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.663traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:11:10.664infoyii\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.666traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:11:10.666traceyii\redis\Connection::executeCommandExecuting Redis Command: SET