| 13:21:55.893 | trace | yii\base\Application::bootstrap | Bootstrap with yii\log\Dispatcher |
| 13:21:55.893 | trace | yii\base\Module::getModule | Loading module: debug |
| 13:21:55.893 | trace | yii\base\Application::bootstrap | Bootstrap with yii\debug\Module::bootstrap() |
| 13:21:55.893 | trace | yii\redis\Connection::open | Opening redis DB connection: redis.server.local:6379, database=1 |
| 13:21:55.893 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SELECT |
| 13:21:55.893 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.894 | trace | yii\base\Module::getModule | Loading module: gii |
| 13:21:55.894 | trace | yii\base\Application::bootstrap | Bootstrap with yii\gii\Module::bootstrap() |
| 13:21:55.894 | trace | yii\web\UrlManager::parseRequest | No matching URL rules. Using default URL parsing logic. |
| 13:21:55.894 | trace | yii\web\Application::handleRequest | Route requested: 'vue/analysis/sales-payment-collection' |
| 13:21:55.894 | trace | yii\base\Module::getModule | Loading module: vue |
| 13:21:55.894 | info | yii\web\Session::open | Session started |
| 13:21:55.895 | info | yii\db\Command::query | SELECT * FROM "global"."vw_user_login" WHERE "id"=1001 |
| 13:21:55.895 | info | yii\db\Connection::open | Opening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta |
| 13:21:55.899 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.899 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 13:21:55.900 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.900 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 13:21:55.900 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001 |
| 13:21:55.902 | trace | yii\base\Controller::runAction | Route to run: vue/analysis/sales-payment-collection |
| 13:21:55.902 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.903 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
| 13:21:55.903 | trace | yii\base\InlineAction::runWithParams | Running action: app\modules\vue\controllers\AnalysisController::actionSalesPaymentCollection() |
| 13:21:55.903 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.904 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.905 | info | yii\db\Command::query | SELECT COUNT(*) FROM (SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC) "c" |
| 13:21:55.914 | info | yii\db\Command::query | SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC LIMIT 20 OFFSET 20 |
| 13:21:55.933 | info | yii\db\Command::query | SELECT sum(case when sub.need_analysis = true THEN amount ELSE 0 END) as amount, sum(uncollected) as uncollected, sum(overdue) as overdue FROM (SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC) "sub" |
| 13:21:55.940 | info | yii\db\Command::query | SELECT sum(collected) as collected FROM (SELECT coalesce(scp.collected, 0) as collected FROM (SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC) "sc" LEFT JOIN (SELECT "id" AS "contract_id", "erp_settle_amount" AS "collected" FROM "a57be577deb434"."tbl_sales_contracts" GROUP BY "id") "scp" ON scp.contract_id = sc.id2 WHERE "sc"."need_analysis"=FALSE GROUP BY "sc"."id2", "scp"."collected") "sub" |
| 13:21:55.948 | info | yii\db\Command::query | SELECT sum(case when need_analysis = true THEN amount ELSE 0 END) as amount, sum(collected) as collected, sum(uncollected) as uncollected, sum(overdue) as overdue FROM (SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC) "sub" |
| 13:21:55.957 | info | yii\db\Command::query | SELECT sum(collected) as collected, count(distinct client_id) as client_count, sum(collected_count) as collected_count, sum(overdue_collect_amount) as overdue FROM (SELECT
(sc.id::varchar || ( CASE WHEN scpcrds.id is not null THEN scpcrds.id::varchar ELSE ''::varchar END)) as id,
sc.id as id2,
sc.serial_no,
sc.project_id,
sc.client_id,
sc.need_analysis,
p.bargain_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.paid_amount ELSE sc.erp_settle_amount END as collected,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE null END as remind_date,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount ELSE sc.amount END as amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.status ELSE (CASE WHEN sc.erp_un_settle_amount != 0 THEN 0 ELSE 1 END) END as status,
CASE WHEN scpcrds.id is not null THEN scpcrds.amount - scpcrds.paid_amount ELSE (CASE WHEN sc.need_analysis = true THEN sc.erp_un_settle_amount ELSE 0 END) END as uncollected,
CASE WHEN scpcrds.id is not null AND scpcrds.remind_date <= '2025-12-18'THEN scpcrds.amount - scpcrds.paid_amount ELSE null END as overdue,
sci.invoiced,
scpcrds.overdue_days,
tcollect.collected_count as collected_count,
(sc.amount - sci.invoiced) as uninvoiced,
CASE WHEN scpcrds.id is not null THEN (CASE WHEN (scpcrds.remind_date <= '2025-12-18' AND scpcrds.status = 0) OR scpcrds.overdue_days is not null THEN scpcrds.paid_amount ELSE null END) ELSE ovsub.amount END as overdue_collect_amount,
CASE WHEN scpcrds.id is not null THEN scpcrds.remind_date ELSE sc.signed_at END as c_date
FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN (SELECT t0.* FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) GROUP BY "t0"."id") "scpcrds" ON scpcrds.contract_id = sc.id LEFT JOIN (SELECT t0.id AS contract_id, CASE WHEN t0.including_tax = true THEN COALESCE(sum(t1.amount), 0) ELSE t0.amount END AS invoiced FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "t1" ON t0.id = t1.contract_id WHERE t0.need_analysis = true GROUP BY "t0"."id") "sci" ON sci.contract_id = sc.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON sc.from_project = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON sc.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN (SELECT t0.id AS contract_id, COALESCE(sum(t1.amount), 0) AS this_collected, count(t1.id) as collected_count FROM "a57be577deb434"."tbl_sales_contracts" "t0" LEFT JOIN (SELECT * FROM ((SELECT
'1' || r.id::varchar as id,
1 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_collect_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_collect_tickets" "t" ON r.erp_collect_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."status" IN (2, 5))) UNION ALL ( SELECT
'2' || r.id::varchar as id,
2 as ticket_type,
r.sales_contract_id as contract_id,
r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_cash_cost_ticket_sales_contract_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" ON r.erp_cash_cost_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) ) UNION ALL ( SELECT
'3' || r.id::varchar as id,
3 as ticket_type,
r.sales_contract_id as contract_id,
0 - r.amount as amount,
t.created_at as collected_date,
t.created_at,
t.created_by,
t.abstract as description
FROM "a57be577deb434"."tbl_erp_payment_ticket_settles" "r" LEFT JOIN "a57be577deb434"."tbl_erp_payment_tickets" "t" ON r.erp_payment_ticket_id = t.id WHERE (r.sales_contract_id is not null) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5)) )) "sub") "t1" ON t0.id = t1.contract_id GROUP BY "t0"."id") "tcollect" ON tcollect.contract_id = sc.id LEFT JOIN (SELECT t1.id, sum(t0.paid_amount) as amount FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" "t0" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "t1" ON t0.contract_id = t1.id LEFT JOIN "a57be577deb434"."tbl_projects" "p" ON t1.from_project = p.id WHERE (t1.need_analysis = true) AND (t1.from_project is not null) AND (p.project_status = 3) AND (((t0.status = 1) AND (t0.overdue_days is not null)) OR ((t0.status = 0) AND ("t0"."remind_date" <= '2025-12-18'))) GROUP BY "t1"."id") "ovsub" ON ovsub.id = sc.id WHERE (("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, 5294, 5357, 5044, 1030, 5076, 5300, 5027, 5089, 5311, 5066, 5069, 5364, 1009, 5295, 1013, 5128, 5203, 1025, 5032, 5075, 1004, 5072, 5033, 5359, 5409, 5412, 5229, 1005, 5304, 5449, 5358, 1006, 5093)) OR ("sales_rep" IS NULL)) AND ("sc"."build_by_project"=TRUE) AND (sc.need_analysis = false) ORDER BY "c_date" DESC) "sub" |
| 13:21:55.974 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.974 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 13:21:55.975 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_visit_module_histories" WHERE ("user_id"=1001) AND ("object_type"=23) AND ("visit_date"='2025-12-18') |
| 13:21:55.983 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.983 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
| 13:21:55.983 | info | yii\db\Command::execute | UPDATE "a57be577deb434"."tbl_visit_module_histories" SET "num"=43, "last_visit_at"='now()' WHERE "id"=59594 |
| 13:21:55.984 | 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/analysis/sales-payment-collection', '{"status":"-2","period":"","to":"","from":"","is_paid":"0","dataUserId":"","group":"","page":"2"}', '{"code":2000,"result":{"list":[],"count":{"amount":"0","uncollected":"0","overdue":"","chargeback_amount":"0"},"count_days":{"amount":"0","collected":"0","uncollected":"0","overdue":""},"count_pay":{"collected":"0","client_count":11,"collected_count":"2","overdue":""},"pagenation":{"totalcount":16,"thispage":2,"pagesize":20}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"mod":0,"ip":"223.72.15.22","ua":"Mozilla\/5.0 (Macintosh; Intel Mac OS X 10.15; rv:146.0) Gecko\/20100101 Firefox\/146.0"}', FALSE, '2025-12-18 13:21:55') RETURNING "id" |
| 13:21:55.986 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
| 13:21:55.986 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SET |