| 16:12:55.653 | trace | yii\base\Application::bootstrap | Bootstrap with yii\log\Dispatcher |
| 16:12:55.653 | trace | yii\base\Module::getModule | Loading module: debug |
| 16:12:55.654 | trace | yii\base\Application::bootstrap | Bootstrap with yii\debug\Module::bootstrap() |
| 16:12:55.654 | trace | yii\redis\Connection::open | Opening redis DB connection: redis.server.local:6379, database=1 |
| 16:12:55.654 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SELECT |
| 16:12:55.654 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.655 | info | time tracing start | 1780560775655222784 |
| 16:12:55.655 | trace | yii\web\UrlManager::parseRequest | No matching URL rules. Using default URL parsing logic. |
| 16:12:55.655 | trace | yii\web\Application::handleRequest | Route requested: 'vue/analysis/from-contact-histogram' |
| 16:12:55.655 | trace | yii\base\Module::getModule | Loading module: vue |
| 16:12:55.656 | info | yii\web\Session::open | Session started |
| 16:12:55.657 | info | yii\db\Command::query | SELECT * FROM "global"."vw_user_login" WHERE "id"=1001 |
| 16:12:55.657 | info | yii\db\Connection::open | Opening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta |
| 16:12:55.658 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.658 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 16:12:55.659 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.659 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 16:12:55.659 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001 |
| 16:12:55.660 | trace | yii\base\Controller::runAction | Route to run: vue/analysis/from-contact-histogram |
| 16:12:55.660 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.661 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
| 16:12:55.661 | trace | yii\base\InlineAction::runWithParams | Running action: app\modules\vue\controllers\AnalysisController::actionFromContactHistogram() |
| 16:12:55.661 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.662 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.664 | info | yii\db\Command::query | SELECT
contact.id as c_id,
contact.id as contact_id,
contact.id as from_contact,
sum(ps.point) as point,
sum(p.budget) as budget,
sum(p.profits) AS profits,
sum(p.paid_point) as paid_point,
sum(p.projects) as projects
FROM "a57be577deb434"."tbl_contacts" "contact" LEFT JOIN (SELECT
pcp.contact_id,
sum(point) as point
FROM "a57be577deb434"."tbl_project_contact_points" "pcp" LEFT JOIN (SELECT "p".* FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = p.client_id LEFT JOIN "a57be577deb434"."tbl_contacts" "contact" ON p.from_contact = contact.id WHERE ("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)) AND ("p"."bargain_date" >= '2026-01-01 00:00:00') AND ("p"."bargain_date" <= '2026-12-31 23:59:59') AND (("p"."project_status"=3) OR ((p.budget <= p.collected) AND ("p"."project_status"=3)))) "p" ON p.id = pcp.project_id and p.from_contact = pcp.contact_id WHERE p.id is not null GROUP BY "pcp"."contact_id") "ps" ON ps.contact_id = contact.id LEFT JOIN (SELECT
p.from_contact,
sum(p.budget) as budget,
sum(p.budget / 100 * p.profit_pct) AS profits,
count(distinct p.id) as projects,
sum(p.paid_contact_point) as paid_point
FROM (SELECT "p".* FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = p.client_id LEFT JOIN "a57be577deb434"."tbl_contacts" "contact" ON p.from_contact = contact.id WHERE ("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)) AND ("p"."bargain_date" >= '2026-01-01 00:00:00') AND ("p"."bargain_date" <= '2026-12-31 23:59:59') AND (("p"."project_status"=3) OR ((p.budget <= p.collected) AND ("p"."project_status"=3)))) "p" GROUP BY "p"."from_contact") "p" ON contact.id = p.from_contact WHERE p.from_contact is not null GROUP BY "contact"."id" |
| 16:12:55.669 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.669 | info | yii\db\Command::query | SELECT
d.nspname AS table_schema,
c.relname AS table_name,
a.attname AS column_name,
t.typname AS data_type,
a.attlen AS character_maximum_length,
pg_catalog.col_description(c.oid, a.attnum) AS column_comment,
a.atttypmod AS modifier,
a.attnotnull = false AS is_nullable,
CAST(pg_get_expr(ad.adbin, ad.adrelid) AS varchar) AS column_default,
coalesce(pg_get_expr(ad.adbin, ad.adrelid) ~ 'nextval',false) AS is_autoinc,
array_to_string((select array_agg(enumlabel) from pg_enum where enumtypid=a.atttypid)::varchar[],',') as enum_values,
CASE atttypid
WHEN 21 /*int2*/ THEN 16
WHEN 23 /*int4*/ THEN 32
WHEN 20 /*int8*/ THEN 64
WHEN 1700 /*numeric*/ THEN
CASE WHEN atttypmod = -1
THEN null
ELSE ((atttypmod - 4) >> 16) & 65535
END
WHEN 700 /*float4*/ THEN 24 /*FLT_MANT_DIG*/
WHEN 701 /*float8*/ THEN 53 /*DBL_MANT_DIG*/
ELSE null
END AS numeric_precision,
CASE
WHEN atttypid IN (21, 23, 20) THEN 0
WHEN atttypid IN (1700) THEN
CASE
WHEN atttypmod = -1 THEN null
ELSE (atttypmod - 4) & 65535
END
ELSE null
END AS numeric_scale,
CAST(
information_schema._pg_char_max_length(information_schema._pg_truetypid(a, t), information_schema._pg_truetypmod(a, t))
AS numeric
) AS size,
a.attnum = any (ct.conkey) as is_pkey
FROM
pg_class c
LEFT JOIN pg_attribute a ON a.attrelid = c.oid
LEFT JOIN pg_attrdef ad ON a.attrelid = ad.adrelid AND a.attnum = ad.adnum
LEFT JOIN pg_type t ON a.atttypid = t.oid
LEFT JOIN pg_namespace d ON d.oid = c.relnamespace
LEFT join pg_constraint ct on ct.conrelid=c.oid and ct.contype='p'
WHERE
a.attnum > 0 and t.typname != ''
and c.relname = 'tbl_contacts'
and d.nspname = 'a57be577deb434'
ORDER BY
a.attnum; |
| 16:12:55.705 | info | yii\db\Command::query | select
ct.conname as constraint_name,
a.attname as column_name,
fc.relname as foreign_table_name,
fns.nspname as foreign_table_schema,
fa.attname as foreign_column_name
from
(SELECT ct.conname, ct.conrelid, ct.confrelid, ct.conkey, ct.contype, ct.confkey, generate_subscripts(ct.conkey, 1) AS s
FROM pg_constraint ct
) AS ct
inner join pg_class c on c.oid=ct.conrelid
inner join pg_namespace ns on c.relnamespace=ns.oid
inner join pg_attribute a on a.attrelid=ct.conrelid and a.attnum = ct.conkey[ct.s]
left join pg_class fc on fc.oid=ct.confrelid
left join pg_namespace fns on fc.relnamespace=fns.oid
left join pg_attribute fa on fa.attrelid=ct.confrelid and fa.attnum = ct.confkey[ct.s]
where
ct.contype='f'
and c.relname='tbl_contacts'
and ns.nspname='a57be577deb434'
order by
fns.nspname, fc.relname, a.attnum |
| 16:12:55.719 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 16:12:55.719 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SET |
| 16:12:55.720 | info | yii\db\Command::query | SELECT
sum(total_contact_point) as point,
sum(paid_contact_point) as paid_point,
sum(p.budget) as budget,
sum(p.budget / 100 * p.profit_pct) AS profits,
count(p.id) as projects
FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = p.client_id LEFT JOIN "a57be577deb434"."tbl_contacts" "contact" ON p.from_contact = contact.id WHERE ("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)) AND ("p"."bargain_date" >= '2026-01-01 00:00:00') AND ("p"."bargain_date" <= '2026-12-31 23:59:59') AND (("p"."project_status"=3) OR ((p.budget <= p.collected) AND ("p"."project_status"=3))) AND (p.from_contact is null) |
| 16:12:55.721 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.721 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 16:12:55.722 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_contacts" WHERE "id" IN (SELECT "from_contact" FROM "a57be577deb434"."tbl_contacts" "contact" LEFT JOIN (SELECT
pcp.contact_id,
sum(point) as point
FROM "a57be577deb434"."tbl_project_contact_points" "pcp" LEFT JOIN (SELECT "p".* FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = p.client_id LEFT JOIN "a57be577deb434"."tbl_contacts" "contact" ON p.from_contact = contact.id WHERE ("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)) AND ("p"."bargain_date" >= '2026-01-01 00:00:00') AND ("p"."bargain_date" <= '2026-12-31 23:59:59') AND (("p"."project_status"=3) OR ((p.budget <= p.collected) AND ("p"."project_status"=3)))) "p" ON p.id = pcp.project_id and p.from_contact = pcp.contact_id WHERE p.id is not null GROUP BY "pcp"."contact_id") "ps" ON ps.contact_id = contact.id LEFT JOIN (SELECT
p.from_contact,
sum(p.budget) as budget,
sum(p.budget / 100 * p.profit_pct) AS profits,
count(distinct p.id) as projects,
sum(p.paid_contact_point) as paid_point
FROM (SELECT "p".* FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON c.id = p.client_id LEFT JOIN "a57be577deb434"."tbl_contacts" "contact" ON p.from_contact = contact.id WHERE ("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)) AND ("p"."bargain_date" >= '2026-01-01 00:00:00') AND ("p"."bargain_date" <= '2026-12-31 23:59:59') AND (("p"."project_status"=3) OR ((p.budget <= p.collected) AND ("p"."project_status"=3)))) "p" GROUP BY "p"."from_contact") "p" ON contact.id = p.from_contact WHERE p.from_contact is not null GROUP BY "from_contact") |
| 16:12:55.726 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.726 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 16:12:55.726 | info | yii\db\Command::query | INSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1001, 5, 'vue/analysis/from-contact-histogram', '{"project_status":["3","-1"],"contact_point_status":"","period":"currentfascalyear","web_access_token":"-ooNs73DKJQ01PCpcbuHx_usnaO5SdwJ"}', '{"code":2000,"result":{"category":{"budgetCategory":["\u672a\u8bbe\u7f6e","\u674e\u777f\uff08Rick Li\uff09"],"profitsCategory":["\u672a\u8bbe\u7f6e","\u674e\u777f\uff08Rick Li\uff09"],"projectsCategory":["\u672a\u8bbe\u7f6e","\u674e\u777f\uff08Rick Li\uff09"]},"seriesBudget":[{"key":"0","name":"\u672a\u8bbe\u7f6e","y":"1990.22","data":{"point":"104500","paid_point":"37000","budget":"19902198.59","profits":"8683340.22924000000000000000","projects":35,"from_contact":0,"contact_id":0,"c_id":0}},{"key":5957,"name":"\u674e\u777f\uff08Rick Li\uff09","y":"194.08","data":{"c_id":5957,"contact_id":5957,"from_contact":5957,"point":"","budget":"1940825.78","profits":"32798.214434000000000000","paid_point":"8","projects":"3"}}],"seriesProfits":[{"key":"0","name":"\u672a\u8bbe\u7f6e","y":"868.33","data":{"point":"104500","paid_point":"37000","budget":"19902198.59","profits":"8683340.22924000000000000000","projects":35,"from_contact":0,"contact_id":0,"c_id":0}},{"key":5957,"name":"\u674e\u777f\uff08Rick Li\uff09","y":"3.28","data":{"c_id":5957,"contact_id":5957,"from_contact":5957,"point":"","budget":"1940825.78","profits":"32798.214434000000000000","paid_point":"8","projects":"3"}}],"seriesProjects":[{"key":"0","name":"\u672a\u8bbe\u7f6e","y":35,"data":{"point":"104500","paid_point":"37000","budget":"19902198.59","profits":"8683340.22924000000000000000","projects":35,"from_contact":0,"contact_id":0,"c_id":0}},{"key":5957,"name":"\u674e\u777f\uff08Rick Li\uff09","y":"3","data":{"c_id":5957,"contact_id":5957,"from_contact":5957,"point":"","budget":"1940825.78","profits":"32798.214434000000000000","paid_point":"8","projects":"3"}}],"totalBudget":21843024.37,"totalProfits":8716138.443674,"totalProjects":38,"totalPoint":104500,"totalPaidPoint":37008,"everyPoint":{"0":"104500","5957":""},"everyBudget":{"0":"19902198.59","5957":"1940825.78"},"everyProfits":{"0":"8683340.22924000000000000000","5957":"32798.214434000000000000"},"everyProjects":{"0":35,"5957":"3"}},"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:12:55', 71632128) RETURNING "id" |
| 16:12:55.728 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 16:12:55.728 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SET |