09:24:54.779 | trace | yii\base\Application::bootstrap | Bootstrap with yii\log\Dispatcher |
09:24:54.779 | trace | yii\base\Module::getModule | Loading module: debug |
09:24:54.780 | trace | yii\base\Application::bootstrap | Bootstrap with yii\debug\Module::bootstrap() |
09:24:54.780 | trace | yii\redis\Connection::open | Opening redis DB connection: redis.server.local:6379, database=1 |
09:24:54.780 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SELECT |
09:24:54.780 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.780 | trace | yii\base\Module::getModule | Loading module: gii |
09:24:54.780 | trace | yii\base\Application::bootstrap | Bootstrap with yii\gii\Module::bootstrap() |
09:24:54.781 | trace | yii\web\UrlManager::parseRequest | No matching URL rules. Using default URL parsing logic. |
09:24:54.781 | trace | yii\web\Application::handleRequest | Route requested: 'vue/erp-analysis/list-sales-cost' |
09:24:54.781 | trace | yii\base\Module::getModule | Loading module: vue |
09:24:54.781 | info | yii\web\Session::open | Session started |
09:24:54.782 | info | yii\db\Command::query | SELECT * FROM "global"."vw_user_login" WHERE "id"=1001 |
09:24:54.782 | info | yii\db\Connection::open | Opening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta |
09:24:54.786 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.786 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
09:24:54.787 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.787 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
09:24:54.787 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001 |
09:24:54.789 | trace | yii\base\Controller::runAction | Route to run: vue/erp-analysis/list-sales-cost |
09:24:54.789 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.790 | trace | uranus\rbac\DbManager::checkAccessFromCache | Checking role: Admin |
09:24:54.790 | trace | yii\base\InlineAction::runWithParams | Running action: app\modules\vue\controllers\ErpAnalysisController::actionListSalesCost() |
09:24:54.791 | info | yii\db\Command::query | SELECT COUNT(*) FROM (SELECT p.*,
CASE WHEN p.erp_sales_amount != 0 THEN erp_j_profit_amount / erp_sales_amount ELSE NULL END as erp_j_profit_pct,
CASE WHEN p.erp_sales_amount != 0 THEN erp_profit_amount / erp_sales_amount ELSE NULL END as erp_profit_pct
FROM (SELECT
p.id,
p.project_title,
p.client_id,
p.budget,
p.updated_at,
p.created_at,
p.bargain_date,
p.collected,
p.budget - p.collected AS un_collected,
p.pinyin_shortcut,
p.description,
(p.id::varchar || pd.user_id::varchar) as id,
p.id as id2,
(CASE WHEN pd.user_id IS NOT NULL THEN pd.user_id ELSE p.created_by END) as created_by,
(COALESCE(sum(o.outbound_cost), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_cost_amount,
(COALESCE(sum(o.outbound_amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_sales_amount,
(COALESCE(sum(ecta.amount), 0) + COALESCE(sum(ecctasc.amount), 0) + COALESCE(sum(eccrta.amount), 0) + COALESCE(sum(esgs.amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_use_amount,
(COALESCE(sum(o.outbound_amount - o.outbound_cost), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_profit_amount,
(COALESCE(sum(o.outbound_amount - o.outbound_cost), 0) - COALESCE(sum(ecta.amount), 0) - COALESCE(sum(ecctasc.amount), 0) - COALESCE(sum(eccrta.amount), 0) - COALESCE(sum(esgs.amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_j_profit_amount
FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.from_project = p.id LEFT JOIN (SELECT t.project_id, r.user_id, sum(r.pct) as pct FROM "a57be577deb434"."tbl_erp_profit_distributes" "t" LEFT JOIN "a57be577deb434"."tbl_erp_profit_distribute_pcts" "r" ON t.id = r.erp_profit_distribute_id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id", "r"."user_id") "pd" ON pd.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_users" "u" ON u.id = pd.user_id LEFT JOIN "a57be577deb434"."tbl_users" "u2" ON u2.id = p.created_by LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN (SELECT t.project_id, COALESCE(sum(eipss.actual_total_amount), 0) as outbound_cost, COALESCE(sum(eipss.total_amount), 0) as outbound_amount FROM "a57be577deb434"."tbl_erp_sales_outbounds" "t" LEFT JOIN "a57be577deb434"."tbl_erp_inventory_product_spents" "eipss" ON eipss.erp_sales_outbound_id = t.id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "o" ON p.id = o.project_id LEFT JOIN (SELECT t.project_id, COALESCE(sum(t.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_cost_tickets" "t" WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "ecta" ON p.id = ecta.project_id LEFT JOIN (SELECT sc.from_project as project_id, COALESCE(sum(t.amount),0) as amount FROM "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.id = t.sales_contract_id WHERE ("t"."status"=2) AND (sc.from_project IS NOT NULL) GROUP BY "sc"."from_project") "ecctasc" ON p.id = ecctasc.project_id LEFT JOIN (SELECT sc.from_project as project_id, COALESCE(sum(t.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_cost_convert_tickets" "t" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.id = t.sales_contract_id WHERE ("t"."status"=2) AND (sc.from_project IS NOT NULL) GROUP BY "sc"."from_project") "eccrta" ON p.id = eccrta.project_id LEFT JOIN (SELECT t.project_id, COALESCE(sum(eipss.actual_total_amount - eipss.total_amount), 0) as amount FROM "a57be577deb434"."tbl_erp_sales_gifts" "t" LEFT JOIN "a57be577deb434"."tbl_erp_inventory_product_spents" "eipss" ON eipss.erp_sales_gift_id = t.id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "esgs" ON p.id = esgs.project_id WHERE "project_status"=3 GROUP BY "p"."id", "pd"."user_id", "pd"."pct") "p" LEFT JOIN "a57be577deb434"."tbl_users" "u2" ON u2.id = p.created_by LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id WHERE ("c"."name" ILIKE '%33所%') OR ("c"."pinyin_shortcut" ILIKE '%33所%') OR ("p"."pinyin_shortcut" ILIKE '%33所%') OR ("p"."project_title" ILIKE '%33所%') OR ("u2"."name" ILIKE '%33所%') ORDER BY "p"."bargain_date" DESC, "p"."updated_at" DESC) "c" |
09:24:54.806 | info | yii\db\Command::query | SELECT p.*,
CASE WHEN p.erp_sales_amount != 0 THEN erp_j_profit_amount / erp_sales_amount ELSE NULL END as erp_j_profit_pct,
CASE WHEN p.erp_sales_amount != 0 THEN erp_profit_amount / erp_sales_amount ELSE NULL END as erp_profit_pct
FROM (SELECT
p.id,
p.project_title,
p.client_id,
p.budget,
p.updated_at,
p.created_at,
p.bargain_date,
p.collected,
p.budget - p.collected AS un_collected,
p.pinyin_shortcut,
p.description,
(p.id::varchar || pd.user_id::varchar) as id,
p.id as id2,
(CASE WHEN pd.user_id IS NOT NULL THEN pd.user_id ELSE p.created_by END) as created_by,
(COALESCE(sum(o.outbound_cost), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_cost_amount,
(COALESCE(sum(o.outbound_amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_sales_amount,
(COALESCE(sum(ecta.amount), 0) + COALESCE(sum(ecctasc.amount), 0) + COALESCE(sum(eccrta.amount), 0) + COALESCE(sum(esgs.amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_use_amount,
(COALESCE(sum(o.outbound_amount - o.outbound_cost), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_profit_amount,
(COALESCE(sum(o.outbound_amount - o.outbound_cost), 0) - COALESCE(sum(ecta.amount), 0) - COALESCE(sum(ecctasc.amount), 0) - COALESCE(sum(eccrta.amount), 0) - COALESCE(sum(esgs.amount), 0)) * (CASE WHEN pd.pct IS NOT NULL THEN pd.pct / 100 ELSE 1 END) as erp_j_profit_amount
FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.from_project = p.id LEFT JOIN (SELECT t.project_id, r.user_id, sum(r.pct) as pct FROM "a57be577deb434"."tbl_erp_profit_distributes" "t" LEFT JOIN "a57be577deb434"."tbl_erp_profit_distribute_pcts" "r" ON t.id = r.erp_profit_distribute_id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id", "r"."user_id") "pd" ON pd.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_users" "u" ON u.id = pd.user_id LEFT JOIN "a57be577deb434"."tbl_users" "u2" ON u2.id = p.created_by LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN (SELECT t.project_id, COALESCE(sum(eipss.actual_total_amount), 0) as outbound_cost, COALESCE(sum(eipss.total_amount), 0) as outbound_amount FROM "a57be577deb434"."tbl_erp_sales_outbounds" "t" LEFT JOIN "a57be577deb434"."tbl_erp_inventory_product_spents" "eipss" ON eipss.erp_sales_outbound_id = t.id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "o" ON p.id = o.project_id LEFT JOIN (SELECT t.project_id, COALESCE(sum(t.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_cost_tickets" "t" WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "ecta" ON p.id = ecta.project_id LEFT JOIN (SELECT sc.from_project as project_id, COALESCE(sum(t.amount),0) as amount FROM "a57be577deb434"."tbl_erp_cash_cost_tickets" "t" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.id = t.sales_contract_id WHERE ("t"."status"=2) AND (sc.from_project IS NOT NULL) GROUP BY "sc"."from_project") "ecctasc" ON p.id = ecctasc.project_id LEFT JOIN (SELECT sc.from_project as project_id, COALESCE(sum(t.amount), 0) as amount FROM "a57be577deb434"."tbl_erp_cost_convert_tickets" "t" LEFT JOIN "a57be577deb434"."tbl_sales_contracts" "sc" ON sc.id = t.sales_contract_id WHERE ("t"."status"=2) AND (sc.from_project IS NOT NULL) GROUP BY "sc"."from_project") "eccrta" ON p.id = eccrta.project_id LEFT JOIN (SELECT t.project_id, COALESCE(sum(eipss.actual_total_amount - eipss.total_amount), 0) as amount FROM "a57be577deb434"."tbl_erp_sales_gifts" "t" LEFT JOIN "a57be577deb434"."tbl_erp_inventory_product_spents" "eipss" ON eipss.erp_sales_gift_id = t.id WHERE ("t"."status"=2) AND (t.project_id IS NOT NULL) GROUP BY "t"."project_id") "esgs" ON p.id = esgs.project_id WHERE "project_status"=3 GROUP BY "p"."id", "pd"."user_id", "pd"."pct") "p" LEFT JOIN "a57be577deb434"."tbl_users" "u2" ON u2.id = p.created_by LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id WHERE ("c"."name" ILIKE '%33所%') OR ("c"."pinyin_shortcut" ILIKE '%33所%') OR ("p"."pinyin_shortcut" ILIKE '%33所%') OR ("p"."project_title" ILIKE '%33所%') OR ("u2"."name" ILIKE '%33所%') ORDER BY "p"."bargain_date" DESC, "p"."updated_at" DESC LIMIT 40 |
09:24:54.827 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.828 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
09:24:54.828 | info | yii\db\Command::query | SELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (2128, 2762) |
09:24:54.828 | info | yii\db\Command::query | SELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 5087) |
09:24:54.829 | 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" IN (1001, 5087)) |
09:24:54.829 | info | yii\db\Command::query | SELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_departments" WHERE "id" IN (4, 1) |
09:24:54.830 | info | yii\db\Command::query | SELECT "id", "from_project", "is_outbound" FROM "a57be577deb434"."tbl_sales_contracts" WHERE "from_project" IN (3854, 3910, 2775, 2882) |
09:24:54.831 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.831 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.832 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.832 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
09:24:54.832 | info | yii\db\Command::query | SELECT * FROM "a57be577deb434"."tbl_visit_module_histories" WHERE ("user_id"=1001) AND ("object_type"=20000) AND ("visit_date"='2025-09-19') |
09:24:54.836 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.836 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: MGET |
09:24:54.837 | info | yii\db\Command::execute | UPDATE "a57be577deb434"."tbl_visit_module_histories" SET "num"=89, "last_visit_at"='now()' WHERE "id"=56635 |
09:24:54.838 | 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/erp-analysis/list-sales-cost', '{"created_at_period":"","created_by":"","collected":"","keyword":"33\u6240","page":"1","web_access_token":"Hlt1ZmLXNhK2kSIyrIUGksUdIH0iseH7"}', '{"code":2000,"result":{"list":[{"id":3854,"project_title":"\u58f9\u8fdb\u5236\u5907\u4efd\u4e8c\u671f","client_id":2128,"budget":"1150000","updated_at":"2025-09-16 17:06:04","created_at":"2025-05-13 09:35:09","bargain_date":"2025-09-10","collected":"0","un_collected":1150000,"pinyin_shortcut":"yjzbfeq","description":"","id2":3854,"created_by":1001,"erp_cost_amount":"0","erp_sales_amount":"0","erp_use_amount":"0","erp_profit_amount":"0","erp_j_profit_amount":"0","erp_j_profit_pct":"","erp_profit_pct":"","client":{"id":2128,"key":2128,"name":"\u5317\u4eac\u81ea\u52a8\u5316\u63a7\u5236\u8bbe\u5907\u7814\u7a76\u624033\u6240"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/a57be577deb434\/avatar\/9f73cfbd-bae6-3b50-b7ac-61b936c40727.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"buildContract2":{"id":4144,"from_project":3854,"is_outbound":false},"buildContract":{"id":4144,"from_project":3854,"is_outbound":false}},{"id":3910,"project_title":"33\u6240\u9ad8\u6027\u80fd\u9879\u76ee","client_id":2762,"budget":"3003980","updated_at":"2025-08-31 22:45:17","created_at":"2025-07-09 21:28:44","bargain_date":"2025-07-11","collected":"2102786","un_collected":901194,"pinyin_shortcut":"33sgxnxm","description":"","id2":3910,"created_by":5087,"erp_cost_amount":"2117117","erp_sales_amount":"2803980","erp_use_amount":"12430.92","erp_profit_amount":"686863","erp_j_profit_amount":"674432.08","erp_j_profit_pct":24.05,"erp_profit_pct":24.5,"client":{"id":2762,"key":2762,"name":"\u4e0a\u6d77\u534e\u8baf\u7f51\u7edc\u7cfb\u7edf\u6709\u9650\u516c\u53f8\uff08\u8fc7\u5355\uff09"},"createdBy":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","department_id":1,"avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"buildContract2":{"id":4024,"from_project":3910,"is_outbound":false},"buildContract":{"id":4024,"from_project":3910,"is_outbound":false}},{"id":2775,"project_title":"\u8fd0\u7ef4\u5e73\u53f0-k","client_id":2128,"budget":"260000","updated_at":"2025-01-20 10:59:57","created_at":"2022-03-06 22:04:56","bargain_date":"2023-01-16","collected":"260000","un_collected":0,"pinyin_shortcut":"ywptk","description":"\u8fd0\u7ef4\u7ba1\u7406\u5e73\u53f01 \u6d41\u7a0b\u7ba1\u7406 2\u76d1\u63a73\u7f51\u7edcNAC\u51c6\u5165","id2":2775,"created_by":5087,"erp_cost_amount":"0","erp_sales_amount":"0","erp_use_amount":"196.98","erp_profit_amount":"0","erp_j_profit_amount":"-196.98","erp_j_profit_pct":"","erp_profit_pct":"","client":{"id":2128,"key":2128,"name":"\u5317\u4eac\u81ea\u52a8\u5316\u63a7\u5236\u8bbe\u5907\u7814\u7a76\u624033\u6240"},"createdBy":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","department_id":1,"avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"buildContract2":{"id":2818,"from_project":2775,"is_outbound":true},"buildContract":{"id":2818,"from_project":2775,"is_outbound":true}},{"id":2882,"project_title":"\u8d1f\u8f7d\u5747\u8861","client_id":2128,"budget":"590000","updated_at":"2023-04-09 21:56:44","created_at":"2022-06-22 15:55:02","bargain_date":"2022-07-31","collected":"590000","un_collected":0,"pinyin_shortcut":"fzjh","description":"","id2":2882,"created_by":5087,"erp_cost_amount":"0","erp_sales_amount":"0","erp_use_amount":"2398.86","erp_profit_amount":"0","erp_j_profit_amount":"-2398.86","erp_j_profit_pct":"","erp_profit_pct":"","client":{"id":2128,"key":2128,"name":"\u5317\u4eac\u81ea\u52a8\u5316\u63a7\u5236\u8bbe\u5907\u7814\u7a76\u624033\u6240"},"createdBy":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","department_id":1,"avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"buildContract2":{"id":2358,"from_project":2882,"is_outbound":false},"buildContract":{"id":2358,"from_project":2882,"is_outbound":false}}],"pagenation":{"totalcount":4,"thispage":1,"pagesize":40}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"mod":0}', FALSE, '2025-09-19 09:24:54') RETURNING "id" |
09:24:54.839 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: GET |
09:24:54.839 | trace | yii\redis\Connection::executeCommand | Executing Redis Command: SET |