Log Messages

总计105条数据
TimeLevelCategoryMessage
 
22:17:23.885traceyii\base\Application::bootstrapBootstrap with yii\log\Dispatcher
22:17:23.885traceyii\base\Module::getModuleLoading module: debug
22:17:23.885traceyii\base\Application::bootstrapBootstrap with yii\debug\Module::bootstrap()
22:17:23.885traceyii\redis\Connection::openOpening redis DB connection: redis.server.local:6379, database=1
22:17:23.885traceyii\redis\Connection::executeCommandExecuting Redis Command: SELECT
22:17:23.885traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.886traceyii\base\Module::getModuleLoading module: gii
22:17:23.886traceyii\base\Application::bootstrapBootstrap with yii\gii\Module::bootstrap()
22:17:23.886traceyii\web\UrlManager::parseRequestNo matching URL rules. Using default URL parsing logic.
22:17:23.886traceyii\web\Application::handleRequestRoute requested: 'v2/project/get-edit'
22:17:23.886traceyii\base\Module::getModuleLoading module: v2
22:17:23.886infoyii\web\Session::openSession started
22:17:23.887infoyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
22:17:23.889infoyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "access_token"='rpAaho7HBg3VJ1vNP7yVtm0Uw5j2xu-u'
22:17:23.891traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.892traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.892traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.892traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.892infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1000
22:17:23.893traceyii\base\Controller::runActionRoute to run: v2/project/get-edit
22:17:23.893traceyii\base\InlineAction::runWithParamsRunning action: app\modules\v2\controllers\ProjectController::actionGetEdit()
22:17:23.894infoyii\db\Command::querySELECT p.*, now() - status_updated_at AS remain, now() - progress_updated_at AS progress_remain, now() - forecast_updated_at AS forecast_remain, CASE WHEN p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END AS duration, 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, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices AS i WHERE i.project_id = p.id) AS issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id 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 WHERE "p"."id"='3805' GROUP BY "p"."id"
22:17:23.896traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.897traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.898infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "logo", "client_type", "client_class", "client_industry", "sales_rep" FROM "a57be577deb434"."tbl_clients" WHERE "id"=2815
22:17:23.898infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id"=1004
22:17:23.899infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1004)
22:17:23.899infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_client_types" WHERE "id"=6
22:17:23.899infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "notice_days", "color" FROM "a57be577deb434"."tbl_client_classes" WHERE "id"=47
22:17:23.900infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_client_industries" WHERE "id"=10
22:17:23.900infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_clients" WHERE "id"=3335
22:17:23.900infoyii\db\Command::querySELECT "id", "id" AS "key", "type" AS "name" FROM "a57be577deb434"."tbl_contract_types" WHERE "id"=1
22:17:23.901infoyii\db\Command::querySELECT "project_id", "contribution" AS "value", "engineer_id" AS "key", "u"."name" FROM "a57be577deb434"."tbl_project_architects" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON engineer_id = u.id WHERE "a57be577deb434"."tbl_project_architects"."project_id"=3805 ORDER BY "contribution" DESC, "engineer_id"
22:17:23.902infoyii\db\Command::querySELECT "id", "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id"=1
22:17:23.902infoyii\db\Command::querySELECT "id", "id" AS "key", "project_progress" AS "name", "description" FROM "a57be577deb434"."tbl_project_progresses" WHERE "id"=10
22:17:23.902infoyii\db\Command::querySELECT id, product_type_id, product_type_id as key, name, coalesce(budget, 0) as budget, coalesce(pct, 0) as pct, coalesce(profit, 0) as profit, project_id FROM "a57be577deb434"."tbl_project_product_types" WHERE "project_id"=3805
22:17:23.903infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id"=3805
22:17:23.903infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "description" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=13) AND ("id" IN (5, 130, 181, 184, 200, 374)) ORDER BY "sort"
22:17:23.904infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id"=3805
22:17:23.904infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=10) AND ("id" IN (5, 130, 181, 184, 200, 374)) ORDER BY "sort"
22:17:23.905infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id"=3805
22:17:23.905infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=9) AND ("id" IN (5, 130, 181, 184, 200, 374)) ORDER BY "sort"
22:17:23.905infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id"=1004
22:17:23.906infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1004)
22:17:23.906infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_departments" WHERE "id"=1
22:17:23.906infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id"=1004
22:17:23.907infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1004)
22:17:23.907infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=2815
22:17:23.907infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id"=1004
22:17:23.908infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1004)
22:17:23.908infoyii\db\Command::querySELECT "c"."project_id", sum(ca.points) as points FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", sum(points) as points FROM "a57be577deb434"."tbl_case_assignments" GROUP BY "case_id") "ca" ON ca.case_id = c.id WHERE "c"."project_id"=3805 GROUP BY "c"."project_id"
22:17:23.913traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.913traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.913infoyii\db\Command::querySELECT "project_id", count(id) as count FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("project_id"=3805) GROUP BY "project_id"
22:17:23.914infoyii\db\Command::querySELECT "project_id", count(id) as count FROM "a57be577deb434"."tbl_cases" WHERE "project_id"=3805 GROUP BY "project_id"
22:17:23.915infoyii\db\Command::querySELECT "project_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("scenario_id"=1) AND (("location_in_id" IS NOT NULL) AND ("location_out_id" IS NOT NULL) AND ("client_id" IS NOT NULL)) AND ("project_id"=3805) GROUP BY "project_id"
22:17:23.915infoyii\db\Command::querySELECT "c"."project_id", sum(hours), sum(times) as times FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", EXTRACT(epoch FROM sum(left_at - arrived_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_implement_records" WHERE "is_draft"=FALSE GROUP BY "case_id") "i" ON i.case_id = c.id WHERE ("case_type"=2) AND ("c"."project_id"=3805) GROUP BY "c"."project_id"
22:17:23.920infoyii\db\Command::querySELECT "c"."project_id", sum(hours), sum(times) as times FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_pre_sales" WHERE "is_draft"=FALSE GROUP BY "case_id") "i" ON i.case_id = c.id WHERE ("case_type"=1) AND ("c"."project_id"=3805) GROUP BY "c"."project_id"
22:17:23.923infoyii\db\Command::querySELECT "project_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("scenario_id"=2) AND ("project_id"=3805) GROUP BY "project_id"
22:17:23.923infoyii\db\Command::querySELECT "project_id", sum(amount) AS sum FROM "a57be577deb434"."tbl_reimbursements" WHERE ("status" IN (3, 2)) AND ("project_id"=3805) GROUP BY "project_id"
22:17:23.924infoyii\db\Command::querySELECT "id", "from_project", "payment_collection_remind_ahead", "serial_no", "is_settle", "is_deliver", "is_outbound" FROM "a57be577deb434"."tbl_sales_contracts" WHERE "from_project"=3805
22:17:23.925infoyii\db\Command::querySELECT "id", "user_id", "user_id" AS "key", "project_id" FROM "a57be577deb434"."tbl_project_remind_receivers" WHERE "project_id"=3805
22:17:23.925infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=3805
22:17:23.926infoyii\db\Command::querySELECT "object_id", count(*) as comment FROM "a57be577deb434"."tbl_comments" WHERE ("object_type"=1) AND ("object_id"=3805) GROUP BY "object_id"
22:17:23.943infoyii\db\Command::querySELECT "object_id", count(*) AS unread FROM "a57be577deb434"."tbl_unread_comments" WHERE ("object_type"=1) AND (remind_user_id = 1000 AND is_read = false) AND ("object_id"=3805) GROUP BY "object_id"
22:17:23.958infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_contact_points" WHERE "project_id"=3805
22:17:23.958infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_used_clients" WHERE "project_id"=3805
22:17:23.959infoyii\db\Command::querySELECT s.id, project_id, client_id, schedule_title, complete_at, start_at, end_at, created_by, is_complete, is_closed, complete_description, set_top_at, CASE WHEN is_complete = true THEN 3 WHEN is_complete = false AND end_at <= NOW() THEN 2 ELSE 1 END AS sort FROM "a57be577deb434"."tbl_schedules" "s" LEFT JOIN "a57be577deb434"."tbl_schedule_carbon_copy_rels" "ccr" ON ccr.schedule_id = s.id WHERE (("is_complete"=FALSE) OR ("complete_at" >= '2025-06-10')) AND ((("is_public"=1) AND ("created_by" != 1000)) OR ("created_by"=1000) OR ("ccr"."user_id"=1000)) AND ("s"."project_id"=3805) ORDER BY set_top_at DESC nulls last, sort ASC, CASE WHEN is_complete = true THEN complete_at END DESC, CASE WHEN is_complete = false THEN end_at END ASC, end_at DESC
22:17:23.960traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.960traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.961infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id"=1000
22:17:23.961infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1000)
22:17:23.961infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_schedule_descriptions" WHERE "schedule_id"=17698 ORDER BY "created_at" DESC
22:17:23.963traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.963traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.963infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=2815
22:17:23.963infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_user_visit_clients" WHERE ("user_id"=1000) AND ("client_id"=2815))
22:17:23.964traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.964traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.966traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.966traceuranus\rbac\DbManager::checkAccessFromCacheChecking permission: viewProduct
22:17:23.966traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Accountant
22:17:23.966traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
22:17:23.966infoyii\db\Command::querySELECT "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_types" WHERE "is_delete"=FALSE ORDER BY "order", "id"
22:17:23.967infoyii\db\Command::querySELECT "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=13) AND ("is_delete"=FALSE) ORDER BY "sort", "id"
22:17:23.967infoyii\db\Command::querySELECT "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=9) AND ("is_delete"=FALSE) ORDER BY "sort", "id"
22:17:23.968infoyii\db\Command::querySELECT "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=10) AND ("is_delete"=FALSE) ORDER BY "sort", "id"
22:17:23.968infoyii\db\Command::querySELECT "id" AS "key", "project_progress" AS "name" FROM "a57be577deb434"."tbl_project_progresses" WHERE "is_delete"=FALSE ORDER BY "order"
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking permission: changeProjectStatus3
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: SalesManager
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking permission: changeProjectStatus4
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: SalesManager
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking permission: changeProjectStatus5
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: SalesManager
22:17:23.968traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
22:17:23.968infoyii\db\Command::querySELECT "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id" IN (1, 2, 3, 4, 5) ORDER BY "order"
22:17:23.969infoyii\db\Command::querySELECT "id" AS "key", "type" AS "name" FROM "a57be577deb434"."tbl_contract_types" WHERE "is_delete"=FALSE ORDER BY "sort"
22:17:23.969infoyii\db\Command::querySELECT "user_id" FROM "a57be577deb434"."tbl_user_role_change_logs" "urcl" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON urcl.user_id = u.id WHERE ("role_name"='Engineer') AND (((start_from < end_at) or end_at is null)) AND (tsrange(start_from::TIMESTAMP, end_at::TIMESTAMP, '[)') && '[2025-06-24 22:17:23, 2025-06-24 22:17:23]'::tsrange) GROUP BY "user_id", "pinyin1", "namecut1", "pinyin2", "namecut2", "pinyin3", "namecut3", "pinyin4", "namecut4" ORDER BY pinyin1 nulls first, namecut1 nulls first, pinyin2 nulls first, namecut2 nulls first, pinyin3 nulls first, namecut3 nulls first, pinyin4 nulls first, namecut4 nulls first
22:17:23.970traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.970traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.971traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
22:17:23.971traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
22:17:23.971infoyii\db\Command::queryINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "version_code", "url", "request", "response", "php_error", "time") VALUES (200, 'a57be577deb434', 1000, 2, 1141, 'v2/project/get-edit', '{"access_token":"rpAaho7HBg3VJ1vNP7yVtm0Uw5j2xu-u","device_type":"2","id":"3805","posttime":"1750774656","token":"bf004f6519818095053c1a6c9a9b346a","version_code":"1141"}', '{"code":200,"data":{"model":{"id":3805,"client_id":2815,"project_status":1,"project_progress":10,"budget":"9988","profit_pct":"4","bargain_date":"2025-10-02","description":"","created_by":1004,"created_at":"2025-05-12 10:20:17","updated_at":"2025-06-24 22:16:38","engineer_id":null,"project_title":"\u54c8\u54c8\u7535\u8bdd","collected":"0","status_updated_at":"2025-05-12 10:20:17.599313+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2025-06-24 22:16:16.593381+08","forecast_updated_at":"2025-06-24 22:16:38.743424+08","end_at":"","pinyin_shortcut":"hhdh","creator":1004,"used_client":3335,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":false,"collected_plan":0,"remain":"43 days 11:57:06.296095","progress_remain":"00:01:07.302027","forecast_remain":"00:00:45.151984","duration":"43 days 11:57:06.296095","lost_contact_days":"43.4550450857407","last_contact":"2025-05-12 11:22:08","last_arrive_days":null,"last_arrive":null,"issued_invoices":null,"client":{"id":2815,"key":2815,"name":"\u4e2d\u56fd\u9ec4\u91d1","logo":null,"client_type":6,"client_class":47,"client_industry":10,"sales_rep":1004,"salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0","sex":"M","avatar":{"id":10,"user_id":1004,"name":"\/files\/cdn\/a57be577deb434\/avatar\/fc8d836d-8085-35fc-8a48-54a276f664a6.png"}},"clientType":{"id":6,"key":6,"name":"\u592e\u4f01"},"clientClass":{"id":47,"key":47,"name":"\u76ee\u6807\u5ba2\u6237","notice_days":30,"color":"#EB13C3"},"clientIndustry":{"id":10,"key":10,"name":"\u91d1\u878d"}},"usedClient":{"id":3335,"key":3335,"name":"\u56fd\u9632\u79d1\u6280\u521b\u65b0\u7814\u7a76\u9662"},"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":1,"key":1,"name":"\u9690\u6027\u9700\u6c42","color":"#ffc000"},"projectProgress":{"id":10,"key":10,"name":"\u4ea4\u8d27\u4e2d","description":"\u5b9a\u4e49\uff1a\u5ba2\u6237\u7b7e\u7f72\u7b7e\u6536\u5355\uff0c\u7b7e\u7f72\u9a8c\u6536\u5355 \n\u65b9\u6cd5\uff1a\u8d27\u5230\u5ba2\u6237\u6307\u5b9a\u5730\u70b9\u7b7e\u7f72\u7b7e\u6536\u5355\uff0c \u5b89\u88c5\u90e8\u7f72\u5b8c\u6210\u7b7e\u7f72\u9a8c\u6536\u5355\u3002"},"projectProductTypes":[{"id":2,"product_type_id":2,"key":2,"name":"\u670d\u52a1\u5668","budget":"9988.00","pct":"4","profit":"399.52","project_id":3805}],"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"},"opportunityFrom":null,"purchaseType":{"id":130,"key":130,"name":"\u7ade\u4e89\u8c08\u5224"},"createdBy":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0","sex":"M","department_id":1,"avatar":{"id":10,"user_id":1004,"name":"\/files\/cdn\/a57be577deb434\/avatar\/fc8d836d-8085-35fc-8a48-54a276f664a6.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"projectCreator":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0","sex":"M","department_id":1,"avatar":{"id":10,"user_id":1004,"name":"\/files\/cdn\/a57be577deb434\/avatar\/fc8d836d-8085-35fc-8a48-54a276f664a6.png"}},"salesRep":{"id":1004,"key":1004,"name":"\u4f0a\u5cfb\u8fb0","sex":"M","avatar":{"id":10,"user_id":1004,"name":"\/files\/cdn\/a57be577deb434\/avatar\/fc8d836d-8085-35fc-8a48-54a276f664a6.png"}},"casePoints":{"project_id":3805,"points":"400"},"workLogCount":{"project_id":3805,"count":1},"caseCount":{"project_id":3805,"count":3},"salesTimeCount":null,"implementTimeCount":{"project_id":3805,"sum":"0.0166666666666667","times":"1"},"presalesTimeCount":{"project_id":3805,"sum":"0.1","times":"1"},"engineerTimeCount":null,"reimbursementAmountSum":{"project_id":3805,"sum":"321"},"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":3805,"comment":4},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"projectUsedClient":null,"schedules":[{"id":17698,"project_id":3805,"client_id":2815,"schedule_title":"\u624d\u80fd\u5065\u5eb7","complete_at":"2025-06-21 19:43:36","start_at":"2025-06-21 19:32:00","end_at":"2025-06-22 18:00:00","created_by":1000,"is_complete":true,"is_closed":true,"complete_description":null,"set_top_at":"2025-06-21 19:43:14.526917","sort":3,"createdBy":{"id":1000,"key":1000,"name":"\u66f9\u6c38\u751f","sex":"M","department_id":10,"avatar":{"id":1,"user_id":1000,"name":"\/files\/cdn\/a57be577deb434\/avatar\/e1ebc7f0-3c0e-38f8-a847-b9169d50c361.jpg"}},"scheduleDescriptions":[{"id":12421,"schedule_id":17698,"description":"\u5a1c\u5a1c\u5bb6","created_at":"2025-06-21 19:42:48"},{"id":12420,"schedule_id":17698,"description":"\u4e0d\u53d8","created_at":"2025-06-21 19:42:34"}]}],"remain_display":43,"progress_remain_display":0,"forecast_remain_display":0,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":9988,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u9690\u6027\u9700\u6c42","is_collected":false,"bgcolor":"#ffc000","can_invoice":false,"can_payment":false,"duration_display":43,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":"1\u4e2a\u6708\u524d","can_view_product":true,"budget_display":"9988","contact_points_status_display":"\u672a\u8bbe\u7f6e","is_only_cp":false},"options":[{"key":"Projects[projectProductTypes]","name":"\u5546\u673a\u7c7b\u578b","value":[{"key":2,"name":"\u670d\u52a1\u5668"},{"key":3,"name":"\u5b58\u50a8\u8bbe\u5907"},{"key":4,"name":"\u7f51\u7edc\u8bbe\u5907 "},{"key":5,"name":"\u5b89\u5168\u8bbe\u5907"},{"key":88,"name":"\u79c1\u6709\u4e91"},{"key":8,"name":"\u4e91\u684c\u9762"},{"key":7,"name":"\u8f6f\u4ef6"},{"key":10,"name":"\u56fe\u5f62\u5de5\u4f5c\u7ad9"},{"key":69,"name":"\u5907\u4efd"},{"key":11,"name":"\u4e2a\u4eba\u8ba1\u7b97\u673a"},{"key":12,"name":"\u7b14\u8bb0\u672c"},{"key":13,"name":"\u6253\u5370\u673a"},{"key":14,"name":"UPS"},{"key":16,"name":"\u8fd0\u7ef4\u670d\u52a1"},{"key":17,"name":"\u5de5\u63a7\u673a"},{"key":18,"name":"\u673a\u623f\u8bbe\u5907"},{"key":19,"name":"\u6280\u672f\u670d\u52a1"},{"key":20,"name":"\u529e\u516c\u8bbe\u5907"},{"key":21,"name":"\u6570\u7801\u8bbe\u5907"},{"key":22,"name":"\u670d\u52a1"},{"key":23,"name":"\u793c\u54c1"},{"key":75,"name":"\u8f6f\u4ef6\u5f00\u53d1"}]},{"key":"Projects[salesForecast]","name":"\u9500\u552e\u9884\u6d4b","value":[{"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84"},{"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b"},{"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b"},{"key":232,"name":"\u5382\u5546\u8fc7\u5355"}]},{"key":"Projects[purchaseType]","name":"\u91c7\u8d2d\u65b9\u5f0f","value":[{"key":128,"name":"\u516c\u5f00\u62db\u6807"},{"key":129,"name":"\u7279\u7ea6\u9080\u6807"},{"key":130,"name":"\u7ade\u4e89\u8c08\u5224"},{"key":164,"name":"\u591a\u5bb6\u6bd4\u4ef7"},{"key":165,"name":"\u534f\u8bae\u4f9b\u8d27"},{"key":182,"name":"\u56f4\u6807"}]},{"key":"Projects[opportunityFrom]","name":"\u5546\u673a\u6765\u6e90","value":[{"key":131,"name":"\u5e7f\u544a\u63a8\u5e7f"},{"key":132,"name":"\u5ba2\u6237\u4ecb\u7ecd"},{"key":167,"name":"\u5382\u5546\u4ecb\u7ecd"},{"key":168,"name":"\u670b\u53cb\u4ecb\u7ecd"},{"key":169,"name":"\u540c\u5b66\u4ecb\u7ecd"},{"key":170,"name":"\u601d\u79d1MSO"},{"key":171,"name":"cold call"},{"key":179,"name":"\u8001\u5ba2\u6237"},{"key":180,"name":"\u5382\u5546\u7529\u5355"}]},{"key":"Projects[project_progress]","name":"\u9500\u552e\u9636\u6bb5","value":[{"key":2,"name":"\u786e\u8ba4\u95ee\u9898"},{"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1"},{"key":4,"name":"\u786e\u8ba4\u65b9\u6848"},{"key":5,"name":"\u5546\u52a1\u62a5\u4ef7"},{"key":6,"name":"\u63a8\u52a8\u6210\u4ea4"},{"key":9,"name":"\u7b7e\u8ba2\u5408\u540c"},{"key":10,"name":"\u4ea4\u8d27\u4e2d"},{"key":49,"name":"\u6536\u6b3e\u4e2d"}]},{"key":"Projects[project_status]","name":"\u5546\u673a\u72b6\u6001","value":[{"key":1,"name":"\u9690\u6027\u9700\u6c42","color":"#ffc000"},{"key":2,"name":"\u660e\u786e\u9700\u6c42","color":"#0064ec"},{"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},{"key":4,"name":"\u5546\u673a\u5931\u8d25","color":"#e5000a"},{"key":5,"name":"\u5546\u673a\u6401\u7f6e","color":"#222222"}]},{"key":"Projects[contract_type]","name":"\u5408\u540c\u7c7b\u578b","value":[{"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},{"key":2,"name":"\u8fd0\u7ef4\u670d\u52a1"}]},{"key":"ProjectArchitects[engineer_id]","name":"\u552e\u524d\u652f\u6301","value":[{"key":1017,"name":"\u8f66\u660e\u98de"},{"key":5085,"name":"\u970d\u4e1c\u9633"},{"key":1001,"name":"\u5218\u4eba\u8bda"},{"key":5248,"name":"\u6587\u4f73\u9f99"},{"key":1015,"name":"\u5434\u660a"},{"key":1022,"name":"\u5f90\u7855"},{"key":5296,"name":"\u8d75\u5b87"},{"key":1023,"name":"\u5468\u5b50\u5065"}]},{"key":"Projects[payment_collection_remind_ahead]","name":"\u6536\u6b3e\u63d0\u9192\u65f6\u95f4","value":[{"key":"","name":"\u65e0"},{"key":"1 day","name":"\u63d0\u524d1\u5929"},{"key":"2 days","name":"\u63d0\u524d2\u5929"},{"key":"7 days","name":"\u63d0\u524d7\u5929"},{"key":"15 days","name":"\u63d0\u524d15\u5929"},{"key":"30 days","name":"\u63d0\u524d30\u5929"}]}]},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}]}', FALSE, '2025-06-24 22:17:23') RETURNING "id"