16:56:16.275 | trace | yii\base\Application::bootstrap | Bootstrap with yii\log\Dispatcher |
16:56:16.275 | trace | yii\base\Module::getModule | Loading module: debug |
16:56:16.276 | trace | yii\base\Application::bootstrap | Bootstrap with yii\debug\Module::bootstrap() |
16:56:16.277 | trace | yii\redis\Connection::open | Opening redis DB connection: redis.server.local:6379, database=1 |
16:56:16.278 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SELECT |
16:56:16.278 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.279 | trace | yii\base\Module::getModule | Loading module: gii |
16:56:16.280 | trace | yii\base\Application::bootstrap | Bootstrap with yii\gii\Module::bootstrap() |
16:56:16.280 | trace | yii\web\UrlManager::parseRequest | No matching URL rules. Using default URL parsing logic. |
16:56:16.280 | trace | yii\web\Application::handleRequest | Route requested: 'vue/project/list' |
16:56:16.280 | trace | yii\base\Module::getModule | Loading module: vue |
16:56:16.343 | info | yii\web\Session::open | Session started |
16:56:16.343 | info | yii\db\Command::query | SELECT * FROM "global"."vw_user_login" WHERE "id"=1001 |
16:56:16.343 | info | yii\db\Connection::open | Opening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta |
16:56:16.354 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.354 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
16:56:16.354 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.355 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
16:56:16.355 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001 |
16:56:16.358 | trace | yii\base\Controller::runAction | Route to run: vue/project/list |
16:56:16.359 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.360 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
16:56:16.360 | trace | yii\base\InlineAction::runWithParams | Running action: app\modules\vue\controllers\ProjectController::actionList() |
16:56:16.360 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.360 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
16:56:16.360 | trace | yii\base\Model::onUnsafeAttribute | Failed to set unsafe attribute 'from_contact_name' in 'app\models\search\ProjectSearch'. |
16:56:16.361 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.362 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.363 | info | yii\db\Command::query | SELECT 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 (("pa"."engineer_id"='1001')) 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, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 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 (("c"."sales_rep"='1001')) GROUP BY "p"."id" ORDER BY p.bargain_date DESC NULLS LAST, p.created_at DESC) "c" |
16:56:16.379 | info | yii\db\Command::query | 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 (("pa"."engineer_id"='1001')) 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, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 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 (("c"."sales_rep"='1001')) GROUP BY "p"."id" ORDER BY p.bargain_date DESC NULLS LAST, p.created_at DESC LIMIT 20 |
16:56:16.400 | info | yii\db\Command::query | SELECT count(*) as count, sum(budget), "project_status" FROM (SELECT p.budget,
CASE WHEN project_status = 3 and p.budget <= collected THEN -1
WHEN project_status = 3 and p.budget > collected THEN 3
ELSE project_status END as project_status 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 (("pa"."engineer_id"='1001')) 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, 5420, 1029, 5037, 5087, 1008, 5048, 5043, 5045, 5230, 5031, 5088, 5208, 1003, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5412, 5409, 5229, 1005, 5304, 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 (("c"."sales_rep"='1001')) GROUP BY "p"."id") "sub" GROUP BY "project_status" |
16:56:16.416 | info | yii\db\Command::query | SELECT "id", "name" FROM "a57be577deb434"."tbl_users" WHERE "id"='1001' |
16:56:16.424 | info | yii\db\Command::query | SELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1001) |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking permission: changeProjectStatus3 |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: SalesManager |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking permission: changeProjectStatus4 |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: SalesManager |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking permission: changeProjectStatus5 |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: SalesManager |
16:56:16.426 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
16:56:16.427 | info | yii\db\Command::query | SELECT "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id" IN (1, 2, 3, 4, 5) ORDER BY "order" |
16:56:16.428 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.428 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
16:56:16.428 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_visit_module_histories" WHERE ("user_id"=1001) AND ("object_type"=1) AND ("visit_date"='2025-06-30') |
16:56:16.437 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.442 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
16:56:16.442 | info | yii\db\Command::execute | UPDATE "a57be577deb434"."tbl_visit_module_histories" SET "num"=15, "last_visit_at"='now()' WHERE "id"=49762 |
16:56:16.444 | info | yii\db\Command::query | INSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "url", "request", "response", "php_error", "time") VALUES (200, 'a57be577deb434', 1001, 5, 'vue/project/list', '{"ProjectSearch":{"created_by":["1001"],"engineer_id":["1001"],"group":"1","project_status":"","creator":"","purchaseType":"","engineer_group":"1","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":"bargain_date","sort":"DESC"},"page":"1","web_access_token":"SXPCUp7Z_YgHJ45TnvuyG1o7l8nwuHKC"}', '{"code":2000,"result":{"count":{"statusCount":[{"count":0,"key":1,"name":"\u9690\u6027\u9700\u6c42","color":"#f49b00","sum":0},{"count":0,"key":2,"name":"\u660e\u786e\u9700\u6c42","color":"#4e6ef2","sum":0},{"count":0,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#3fad00","sum":0},{"count":0,"key":4,"name":"\u5546\u673a\u5931\u8d25","color":"#e5000a","sum":0},{"count":0,"key":5,"name":"\u5546\u673a\u6401\u7f6e","color":"#222222","sum":0},{"count":0,"key":-1,"name":"\u6536\u6b3e\u5b8c\u6210","color":"#6200fe","sum":0}]},"list":[],"thisUser":{"id":1001,"name":"\u5218\u4eba\u8bda","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/a57be577deb434\/avatar\/9f73cfbd-bae6-3b50-b7ac-61b936c40727.png"}},"options":{"Projects[project_status]":{"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"}]}},"can_create":true,"can_create_work_log":true,"can_create_schedule":true,"pagenation":{"totalcount":0,"thispage":1,"pagesize":20}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"mod":0}', FALSE, '2025-06-30 16:56:16') RETURNING "id" |
16:56:16.454 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
16:56:16.454 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SET |