11:14:54.012 | trace | yii\base\Application::bootstrap | Bootstrap with yii\log\Dispatcher |
11:14:54.012 | trace | yii\base\Module::getModule | Loading module: debug |
11:14:54.013 | trace | yii\base\Application::bootstrap | Bootstrap with yii\debug\Module::bootstrap() |
11:14:54.013 | trace | yii\redis\Connection::open | Opening redis DB connection: redis.server.local:6379, database=1 |
11:14:54.013 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SELECT |
11:14:54.013 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.013 | trace | yii\base\Module::getModule | Loading module: gii |
11:14:54.013 | trace | yii\base\Application::bootstrap | Bootstrap with yii\gii\Module::bootstrap() |
11:14:54.014 | trace | yii\web\UrlManager::parseRequest | No matching URL rules. Using default URL parsing logic. |
11:14:54.014 | trace | yii\web\Application::handleRequest | Route requested: 'v2/client/list' |
11:14:54.014 | trace | yii\base\Module::getModule | Loading module: v2 |
11:14:54.014 | info | yii\web\Session::open | Session started |
11:14:54.014 | info | yii\db\Connection::open | Opening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta |
11:14:54.016 | info | yii\db\Command::query | SELECT * FROM "global"."vw_user_login" WHERE "access_token"='aqasSz_RSaWdjUP8D1Z84eLdkCaCqi8b' |
11:14:54.019 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.019 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
11:14:54.019 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.020 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
11:14:54.020 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=5295 |
11:14:54.021 | trace | yii\base\Controller::runAction | Route to run: v2/client/list |
11:14:54.021 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking permission: viewClient |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Accountant |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Engineer |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: TechDirector |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: ProjectManager |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: 电话销售 |
11:14:54.022 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: AccountManager |
11:14:54.022 | trace | yii\base\InlineAction::runWithParams | Running action: app\modules\v2\controllers\ClientController::actionList() |
11:14:54.022 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.022 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
11:14:54.023 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.023 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.025 | info | yii\db\Command::query | SELECT COUNT(*) FROM (SELECT
c.*,
CASE WHEN p.client_id IS NULL THEN false ELSE true END AS cooperated,
CASE WHEN c.sales_rep IS NULL THEN 0 ELSE 1 END AS is_public,
sl.lost_contact_days,
extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days,
sl.last_contact,
max(arrive.end_at) as last_arrive,
CASE WHEN c.client_class IS NOT NULL THEN (
(CASE WHEN cl.contact_base > 0 THEN floor(CASE WHEN c.contact_count > cl.contact_base THEN 1 * 15 ELSE c.contact_count * 15 / cl.contact_base END) ELSE 15 END)
+
floor(c.client_base_info_count * 15 / 9)
+
(CASE WHEN cl.visit_base > 0 THEN floor(CASE WHEN c.visit_count > ceil((CASE WHEN extract(year from now()) = extract(year from c.created_at::date) THEN (now()::date - c.created_at::date + 1)::float ELSE 176::float END) / cl.visit_base::float) THEN 1 * 20 ELSE c.visit_count * 20 / ceil((CASE WHEN extract(year from now()) = extract(year from c.created_at::date) THEN (now()::date - c.created_at::date + 1)::float ELSE 176::float END) / cl.visit_base::float) END) ELSE 20 END)
+
(CASE WHEN cl.cooperate_base > 0 THEN floor(CASE WHEN c.cooperate_count > cl.cooperate_base THEN 1 * 20 ELSE c.cooperate_count * 20 / cl.cooperate_base END) ELSE 20 END)
+
(CASE WHEN cl.case_pre_sales_base > 0 THEN floor(CASE WHEN c.case_pre_sales_count > cl.case_pre_sales_base THEN 1 * 15 ELSE c.case_pre_sales_count * 15 / cl.case_pre_sales_base END) ELSE 15 END)
+
(CASE WHEN cl.case_implement_base > 0 THEN floor(CASE WHEN c.case_implement_count > cl.case_implement_base THEN 1 * 15 ELSE c.case_implement_count * 15 / cl.case_implement_base END) ELSE 15 END)
) ELSE NULL END as score
FROM "a57be577deb434"."tbl_clients" "c" LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_client_classes" "cl" ON cl.id = c.client_class LEFT JOIN "a57be577deb434"."tbl_client_address_rels" "car" ON car.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_addresses" "a" ON car.address_id = a.id LEFT JOIN (SELECT "client_id" FROM "a57be577deb434"."tbl_projects" WHERE "project_status"=3 GROUP BY "client_id") "p" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.client_id = c.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 (SELECT extract(epoch from (now() - max(end_at))) / 86400 AS lost_contact_days, max(end_at) as last_contact, client_id FROM "a57be577deb434"."tbl_work_logs" WHERE "is_draft"=FALSE GROUP BY "client_id") "sl" ON sl.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = c.id AND ttr.term_id = 14 LEFT JOIN (SELECT "client_id" FROM "a57be577deb434"."tbl_contacts" WHERE lower(name) LIKE '%%' GROUP BY "client_id") "cc" ON cc.client_id = c.id WHERE (("c"."sales_rep" IN (5295, 5311)) OR ("c"."sales_rep" IS NULL) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=5295))) AND ("client_class"='1') AND ("client_industry"='2') AND ("deleted"=FALSE) GROUP BY "c"."id", "cl"."id", "cooperated", "lost_contact_days", "last_contact" ORDER BY "is_public" DESC, lost_contact_days ASC NULLS LAST, "c"."created_at" DESC) "c" |
11:14:54.031 | info | yii\db\Command::query | SELECT
c.*,
CASE WHEN p.client_id IS NULL THEN false ELSE true END AS cooperated,
CASE WHEN c.sales_rep IS NULL THEN 0 ELSE 1 END AS is_public,
sl.lost_contact_days,
extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days,
sl.last_contact,
max(arrive.end_at) as last_arrive,
CASE WHEN c.client_class IS NOT NULL THEN (
(CASE WHEN cl.contact_base > 0 THEN floor(CASE WHEN c.contact_count > cl.contact_base THEN 1 * 15 ELSE c.contact_count * 15 / cl.contact_base END) ELSE 15 END)
+
floor(c.client_base_info_count * 15 / 9)
+
(CASE WHEN cl.visit_base > 0 THEN floor(CASE WHEN c.visit_count > ceil((CASE WHEN extract(year from now()) = extract(year from c.created_at::date) THEN (now()::date - c.created_at::date + 1)::float ELSE 176::float END) / cl.visit_base::float) THEN 1 * 20 ELSE c.visit_count * 20 / ceil((CASE WHEN extract(year from now()) = extract(year from c.created_at::date) THEN (now()::date - c.created_at::date + 1)::float ELSE 176::float END) / cl.visit_base::float) END) ELSE 20 END)
+
(CASE WHEN cl.cooperate_base > 0 THEN floor(CASE WHEN c.cooperate_count > cl.cooperate_base THEN 1 * 20 ELSE c.cooperate_count * 20 / cl.cooperate_base END) ELSE 20 END)
+
(CASE WHEN cl.case_pre_sales_base > 0 THEN floor(CASE WHEN c.case_pre_sales_count > cl.case_pre_sales_base THEN 1 * 15 ELSE c.case_pre_sales_count * 15 / cl.case_pre_sales_base END) ELSE 15 END)
+
(CASE WHEN cl.case_implement_base > 0 THEN floor(CASE WHEN c.case_implement_count > cl.case_implement_base THEN 1 * 15 ELSE c.case_implement_count * 15 / cl.case_implement_base END) ELSE 15 END)
) ELSE NULL END as score
FROM "a57be577deb434"."tbl_clients" "c" LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_client_classes" "cl" ON cl.id = c.client_class LEFT JOIN "a57be577deb434"."tbl_client_address_rels" "car" ON car.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_addresses" "a" ON car.address_id = a.id LEFT JOIN (SELECT "client_id" FROM "a57be577deb434"."tbl_projects" WHERE "project_status"=3 GROUP BY "client_id") "p" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.client_id = c.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 (SELECT extract(epoch from (now() - max(end_at))) / 86400 AS lost_contact_days, max(end_at) as last_contact, client_id FROM "a57be577deb434"."tbl_work_logs" WHERE "is_draft"=FALSE GROUP BY "client_id") "sl" ON sl.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = c.id AND ttr.term_id = 14 LEFT JOIN (SELECT "client_id" FROM "a57be577deb434"."tbl_contacts" WHERE lower(name) LIKE '%%' GROUP BY "client_id") "cc" ON cc.client_id = c.id WHERE (("c"."sales_rep" IN (5295, 5311)) OR ("c"."sales_rep" IS NULL) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=5295))) AND ("client_class"='1') AND ("client_industry"='2') AND ("deleted"=FALSE) GROUP BY "c"."id", "cl"."id", "cooperated", "lost_contact_days", "last_contact" ORDER BY "is_public" DESC, lost_contact_days ASC NULLS LAST, "c"."created_at" DESC LIMIT 10 |
11:14:54.036 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking permission: createClient |
11:14:54.036 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: ProjectManager |
11:14:54.036 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: 电话销售 |
11:14:54.036 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: AccountManager |
11:14:54.036 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
11:14:54.036 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
11:14:54.036 | info | yii\db\Command::query | INSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "version_code", "url", "request", "response", "php_error", "time") VALUES (200, 'a57be577deb434', 5295, 2, 1141, 'v2/client/list', '{"ClientSearch":{"client_class":"1","client_industry":"2","client_type":"","company_nature":"","contact_status":"","cooperated":"","sales_rep":""},"Filter":{"name":"","sort":""},"access_token":"aqasSz_RSaWdjUP8D1Z84eLdkCaCqi8b","device_type":"2","lat":"30.52062961154514","lng":"104.0833680555556","posttime":"1750821248","token":"bbdf13ac0114cb6410bfb8b5c1c8ac57","version_code":"1141"}', '{"code":200,"data":{"list":[],"pagenation":{"totalcount":0,"thispage":1,"pagesize":10},"can_create":true},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}]}', FALSE, '2025-06-25 11:14:54') RETURNING "id" |