Log Messages

总计31条数据
TimeLevelCategoryMessage
 
16:49:45.080traceyii\base\Application::bootstrapBootstrap with yii\log\Dispatcher
16:49:45.080traceyii\base\Module::getModuleLoading module: debug
16:49:45.081traceyii\base\Application::bootstrapBootstrap with yii\debug\Module::bootstrap()
16:49:45.081traceyii\redis\Connection::openOpening redis DB connection: redis.server.local:6379, database=1
16:49:45.081traceyii\redis\Connection::executeCommandExecuting Redis Command: SELECT
16:49:45.081traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.081infotime tracing start1780476585081581056
16:49:45.081traceyii\web\UrlManager::parseRequestNo matching URL rules. Using default URL parsing logic.
16:49:45.081traceyii\web\Application::handleRequestRoute requested: 'vue/analysis/clients'
16:49:45.081traceyii\base\Module::getModuleLoading module: vue
16:49:45.082infoyii\web\Session::openSession started
16:49:45.082infoyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "id"=1001
16:49:45.082infoyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
16:49:45.083traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.084traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:49:45.084traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.084traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:49:45.084infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
16:49:45.085traceyii\base\Controller::runActionRoute to run: vue/analysis/clients
16:49:45.085traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.086traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
16:49:45.086traceyii\base\InlineAction::runWithParamsRunning action: app\modules\vue\controllers\AnalysisController::actionClients()
16:49:45.086traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.087traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.088infoyii\db\Command::querySELECT COUNT(*) FROM (SELECT final.id, final.name, final.sales_rep, final.status3_budgets, final.status3_profits, final.status3_count, final.status3_pct, final.status1_budgets, final.status1_count, final.status2_budgets, final.status2_count, final.pscount, final.ircount, (final.pstime + final.irtime) AS service_time, (final.pscount + final.ircount) AS service_count, (now() - final.created_at) AS sales_rep_time, final.created_at, final.work_time, final.work_count, final.last_bargain_date, final.reimbursement_amount, final.points, CASE WHEN final.cooperated IS NULL THEN false ELSE true END AS cooperated, final.client_industry, final.client_industry_id, final.client_type, final.client_type_id, final.score, final.collected, final.un_collected, final.invoices, final.un_invoices, final.project_count, final.other_budgets, final.used_clients, final.status12_budgets, final.status12_profits, final.work1_time, final.work1_count, final.work2_time, final.work2_count, final.work3_time, final.work3_count, final.work4_time, final.work4_count, final.work5_time, final.work5_count FROM (SELECT c.id, c.name, c.sales_rep, c.created_at, CASE WHEN tmp_project_period.status3_budgets IS NULL THEN 0 ELSE tmp_project_period.status3_budgets END AS status3_budgets, CASE WHEN tmp_project_period.status3_profits IS NULL THEN 0 ELSE tmp_project_period.status3_profits END AS status3_profits, CASE WHEN tmp_project_period.status3_budgets IS NULL OR tmp_project_period.status3_budgets = 0 THEN 0 ELSE tmp_project_period.status3_profits / tmp_project_period.status3_budgets END AS status3_pct, CASE WHEN tmp_project_period.status3_count IS NULL THEN 0 ELSE tmp_project_period.status3_count END AS status3_count, CASE WHEN tmp_project_period.collected IS NULL THEN 0 ELSE tmp_project_period.collected END AS collected, CASE WHEN tmp_project_period.used_clients IS NULL THEN 0 ELSE tmp_project_period.used_clients END AS used_clients, CASE WHEN tmp_project_period.un_collected IS NULL THEN 0 ELSE tmp_project_period.un_collected END AS un_collected, CASE WHEN tmp_project_period.status1_budgets IS NULL THEN 0 ELSE tmp_project_period.status1_budgets END AS status1_budgets, CASE WHEN tmp_project_period.status1_count IS NULL THEN 0 ELSE tmp_project_period.status1_count END AS status1_count, CASE WHEN tmp_project_period.status2_budgets IS NULL THEN 0 ELSE tmp_project_period.status2_budgets END AS status2_budgets, CASE WHEN tmp_project_period.status2_count IS NULL THEN 0 ELSE tmp_project_period.status2_count END AS status2_count, CASE WHEN tmp4.pre_sales_counts IS NULL THEN 0 ELSE tmp4.pre_sales_counts END AS pscount, CASE WHEN tmp5.implement_counts IS NULL THEN 0 ELSE tmp5.implement_counts END AS ircount, CASE WHEN tmp4.pre_sales_times IS NOT NULL THEN EXTRACT(EPOCH FROM tmp4.pre_sales_times)/3600 ELSE 0 END AS pstime, CASE WHEN tmp5.implement_times IS NOT NULL THEN EXTRACT(EPOCH FROM tmp5.implement_times)/3600 ELSE 0 END AS irtime, CASE WHEN tmp6.sales_rep_time IS NOT NULL THEN EXTRACT(EPOCH FROM tmp6.sales_rep_time )/3600 ELSE 0 END AS sales_rep_time, CASE WHEN tmp_work.work_time IS NOT NULL THEN tmp_work.work_time ELSE '00:00:00'::interval END AS work_time, CASE WHEN tmp_work.work_count IS NOT NULL THEN tmp_work.work_count ELSE 0 END AS work_count, CASE WHEN tmp8.reimbursement_amount IS NOT NULL THEN tmp8.reimbursement_amount ELSE 0 END AS reimbursement_amount, tmp_project_period.last_bargain_date, CASE WHEN tmp9.points IS NOT NULL THEN tmp9.points ELSE 0 END AS points, CASE WHEN tmp10.invoices IS NULL THEN 0 ELSE tmp10.invoices END AS invoices, CASE WHEN tmp10.un_invoices IS NULL THEN 0 ELSE tmp10.un_invoices END AS un_invoices, CASE WHEN tmp_project_period.status3_count IS NULL OR tmp_project_period.status3_count = 0 THEN NULL ELSE tmp_project_period.status3_count END AS cooperated, ci.name as client_industry, ci.id as client_industry_id, ct.name as client_type, ct.id as client_type_id, CASE WHEN tmp_project_all.project_count IS NULL THEN 0 ELSE tmp_project_all.project_count END AS project_count, CASE WHEN tmp_project_all.other_budgets IS NULL THEN 0 ELSE tmp_project_all.other_budgets END AS other_budgets, CASE WHEN tmp_project_period.status12_budgets IS NULL THEN 0 ELSE tmp_project_period.status12_budgets END AS status12_budgets, CASE WHEN tmp_project_period.status12_profits IS NULL THEN 0 ELSE tmp_project_period.status12_profits END AS status12_profits, CASE WHEN tmp_work.work1_time IS NOT NULL THEN tmp_work.work1_time ELSE '00:00:00'::interval END AS work1_time, CASE WHEN tmp_work.work1_count IS NOT NULL THEN tmp_work.work1_count ELSE 0 END AS work1_count, CASE WHEN tmp_work.work2_time IS NOT NULL THEN tmp_work.work2_time ELSE '00:00:00'::interval END AS work2_time, CASE WHEN tmp_work.work2_count IS NOT NULL THEN tmp_work.work2_count ELSE 0 END AS work2_count, CASE WHEN tmp_work.work3_time IS NOT NULL THEN tmp_work.work3_time ELSE '00:00:00'::interval END AS work3_time, CASE WHEN tmp_work.work3_count IS NOT NULL THEN tmp_work.work3_count ELSE 0 END AS work3_count, CASE WHEN tmp_work.work4_time IS NOT NULL THEN tmp_work.work4_time ELSE '00:00:00'::interval END AS work4_time, CASE WHEN tmp_work.work4_count IS NOT NULL THEN tmp_work.work4_count ELSE 0 END AS work4_count, CASE WHEN tmp_work.work5_time IS NOT NULL THEN tmp_work.work5_time ELSE '00:00:00'::interval END AS work5_time, CASE WHEN tmp_work.work5_count IS NOT NULL THEN tmp_work.work5_count ELSE 0 END AS work5_count, CASE WHEN c.client_class IS NOT NULL THEN ( (CASE WHEN cc.contact_base > 0 THEN floor(CASE WHEN c.contact_count > cc.contact_base THEN 1 * 15 ELSE c.contact_count * 15 / cc.contact_base END) ELSE 15 END) + floor(c.client_base_info_count * 15 / 9) + (CASE WHEN cc.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 154::float END) / cc.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 154::float END) / cc.visit_base::float) END) ELSE 20 END) + (CASE WHEN cc.cooperate_base > 0 THEN floor(CASE WHEN c.cooperate_count > cc.cooperate_base THEN 1 * 20 ELSE c.cooperate_count * 20 / cc.cooperate_base END) ELSE 20 END) + (CASE WHEN cc.case_pre_sales_base > 0 THEN floor(CASE WHEN c.case_pre_sales_count > cc.case_pre_sales_base THEN 1 * 15 ELSE c.case_pre_sales_count * 15 / cc.case_pre_sales_base END) ELSE 15 END) + (CASE WHEN cc.case_implement_base > 0 THEN floor(CASE WHEN c.case_implement_count > cc.case_implement_base THEN 1 * 15 ELSE c.case_implement_count * 15 / cc.case_implement_base END) ELSE 15 END) ) ELSE NULL END as score FROM "a57be577deb434"."tbl_clients" "c" LEFT JOIN (SELECT p.client_id, sum(CASE WHEN p.project_status = 3 THEN p.budget ELSE 0 END) AS status3_budgets, sum(CASE WHEN p.project_status = 3 THEN p.budget * p.profit_pct / 100 ELSE 0 END) AS status3_profits, max(CASE WHEN p.project_status = 3 THEN p.bargain_date ELSE NULL END) AS last_bargain_date, sum(CASE WHEN p.project_status = 3 AND p.budget >= p.collected THEN p.budget - p.collected ELSE 0 END) AS un_collected, sum(CASE WHEN p.project_status = 3 THEN p.collected ELSE 0 END) AS collected, count(CASE WHEN p.project_status = 3 THEN p.id ELSE NULL END) as status3_count, count(distinct CASE WHEN p.project_status = 3 THEN p.used_client ELSE NULL END) as used_clients, sum(CASE WHEN p.project_status = 1 THEN p.budget ELSE 0 END) AS status1_budgets, count(CASE WHEN p.project_status = 1 THEN p.id ELSE NULL END) as status1_count, sum(CASE WHEN p.project_status = 2 THEN p.budget ELSE 0 END) AS status2_budgets, count(CASE WHEN p.project_status = 2 THEN p.id ELSE NULL END) as status2_count, sum(CASE WHEN p.project_status IN (1, 2) THEN p.budget ELSE 0 END) AS status12_budgets, sum(CASE WHEN p.project_status IN (1, 2) THEN p.budget * p.profit_pct / 100 ELSE 0 END) AS status12_profits FROM "a57be577deb434"."tbl_projects" "p" WHERE "p"."project_status" IN (1, 2, 3) GROUP BY "p"."client_id") "tmp_project_period" ON tmp_project_period.client_id = c.id LEFT JOIN (SELECT p.client_id, count(p.id) as project_count, sum(CASE WHEN p.project_status != 3 THEN p.budget ELSE 0 END) AS other_budgets FROM "a57be577deb434"."tbl_projects" "p" GROUP BY "p"."client_id") "tmp_project_all" ON tmp_project_all.client_id = c.id LEFT JOIN (SELECT sub4.client_id, count(sub4.id) as pre_sales_counts, sum(sub4.pre_sales_time) as pre_sales_times FROM (SELECT "ps"."id", "ps"."client_id", (ps.end_at - ps.start_at) as pre_sales_time FROM "a57be577deb434"."tbl_pre_sales" "ps" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ps.created_by WHERE "ps"."is_draft"=FALSE) "sub4" GROUP BY "sub4"."client_id") "tmp4" ON tmp4.client_id = c.id LEFT JOIN (SELECT sub5.client_id, count(sub5.id) as implement_counts, sum(sub5.implement_time) as implement_times FROM (SELECT "ir"."id", "ir"."client_id", (ir.left_at - ir.arrived_at) as implement_time FROM "a57be577deb434"."tbl_implement_records" "ir" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ir.created_by WHERE "ir"."is_draft"=FALSE) "sub5" GROUP BY "sub5"."client_id") "tmp5" ON tmp5.client_id = c.id LEFT JOIN (SELECT csrr.client_id, csrr.sales_rep, (now() - csrr.start_at) as sales_rep_time FROM "a57be577deb434"."tbl_client_sales_rep_rels" "csrr" WHERE "id" IN (SELECT max(csrrs.id) FROM "a57be577deb434"."tbl_client_sales_rep_rels" "csrrs" WHERE csrrs.end_at is null GROUP BY "csrrs"."client_id")) "tmp6" ON tmp6.client_id = c.id and tmp6.sales_rep = c.sales_rep LEFT JOIN (SELECT wl.client_id, count(CASE WHEN wl.location_in_id IS NOT NULL AND wl.location_out_id IS NOT NULL THEN wl.id ELSE NULL END) as work_count, sum(CASE WHEN wl.location_in_id IS NOT NULL AND wl.location_out_id IS NOT NULL THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work_time, count(CASE WHEN wl.scenario_id = 1 THEN wl.id ELSE NULL END) as work1_count, sum(CASE WHEN wl.scenario_id = 1 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work1_time, count(CASE WHEN wl.scenario_id = 2 THEN wl.id ELSE NULL END) as work2_count, sum(CASE WHEN wl.scenario_id = 2 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work2_time, count(CASE WHEN wl.scenario_id = 3 THEN wl.id ELSE NULL END) as work3_count, sum(CASE WHEN wl.scenario_id = 3 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work3_time, count(CASE WHEN wl.scenario_id = 4 THEN wl.id ELSE NULL END) as work4_count, sum(CASE WHEN wl.scenario_id = 4 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work4_time, count(CASE WHEN wl.scenario_id = 5 THEN wl.id ELSE NULL END) as work5_count, sum(CASE WHEN wl.scenario_id = 5 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work5_time FROM "a57be577deb434"."tbl_work_logs" "wl" WHERE ("wl"."is_draft"=FALSE) AND ("wl"."client_id" IS NOT NULL) GROUP BY "wl"."client_id") "tmp_work" ON tmp_work.client_id = c.id LEFT JOIN (SELECT sub8.client_id, sum(sub8.reimbursement_amount) as reimbursement_amount FROM (SELECT "r"."client_id", "r"."amount" AS "reimbursement_amount" FROM "a57be577deb434"."tbl_reimbursements" "r" WHERE "r"."status" IN (2, 3)) "sub8" GROUP BY "sub8"."client_id") "tmp8" ON tmp8.client_id = c.id LEFT JOIN (SELECT sub9.client_id, sum(sub9.points) as points FROM (SELECT c.client_id, COALESCE(sum(ca.points),0) as points FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN "a57be577deb434"."tbl_case_assignments" "ca" ON ca.case_id = c.id LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ca.engineer_id GROUP BY "c"."id") "sub9" GROUP BY "sub9"."client_id") "tmp9" ON tmp9.client_id = c.id LEFT JOIN (SELECT sub10.client_id, sum(sub10.invoices) as invoices, sum(case when sub10.amount >= sub10.invoices and sub10.including_tax = true THEN sub10.amount - sub10.invoices ELSE 0 END) AS un_invoices FROM (SELECT sc.client_id, sc.including_tax, sc.amount, COALESCE(SUM(sci.amount ),0) AS invoices FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "sci" ON sci.contract_id = sc.id GROUP BY "sc"."id") "sub10" GROUP BY "sub10"."client_id") "tmp10" ON tmp10.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_client_classes" "cc" ON "cc"."id" = "c"."client_class" LEFT JOIN "a57be577deb434"."tbl_client_industries" "ci" ON "ci"."id" = "c"."client_industry" LEFT JOIN "a57be577deb434"."tbl_client_types" "ct" ON "ct"."id" = "c"."client_type" 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)) OR ("c"."sales_rep" IS NULL) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND ("c"."deleted"=FALSE) AND ((lower(c.name) LIKE '%测阿斯顿sd%') OR ("c"."pinyin_shortcut" LIKE '%测阿斯顿sd%'))) "final" ORDER BY "status3_budgets" DESC, "created_at" DESC) "c"
16:49:45.095infoyii\db\Command::querySELECT final.id, final.name, final.sales_rep, final.status3_budgets, final.status3_profits, final.status3_count, final.status3_pct, final.status1_budgets, final.status1_count, final.status2_budgets, final.status2_count, final.pscount, final.ircount, (final.pstime + final.irtime) AS service_time, (final.pscount + final.ircount) AS service_count, (now() - final.created_at) AS sales_rep_time, final.created_at, final.work_time, final.work_count, final.last_bargain_date, final.reimbursement_amount, final.points, CASE WHEN final.cooperated IS NULL THEN false ELSE true END AS cooperated, final.client_industry, final.client_industry_id, final.client_type, final.client_type_id, final.score, final.collected, final.un_collected, final.invoices, final.un_invoices, final.project_count, final.other_budgets, final.used_clients, final.status12_budgets, final.status12_profits, final.work1_time, final.work1_count, final.work2_time, final.work2_count, final.work3_time, final.work3_count, final.work4_time, final.work4_count, final.work5_time, final.work5_count FROM (SELECT c.id, c.name, c.sales_rep, c.created_at, CASE WHEN tmp_project_period.status3_budgets IS NULL THEN 0 ELSE tmp_project_period.status3_budgets END AS status3_budgets, CASE WHEN tmp_project_period.status3_profits IS NULL THEN 0 ELSE tmp_project_period.status3_profits END AS status3_profits, CASE WHEN tmp_project_period.status3_budgets IS NULL OR tmp_project_period.status3_budgets = 0 THEN 0 ELSE tmp_project_period.status3_profits / tmp_project_period.status3_budgets END AS status3_pct, CASE WHEN tmp_project_period.status3_count IS NULL THEN 0 ELSE tmp_project_period.status3_count END AS status3_count, CASE WHEN tmp_project_period.collected IS NULL THEN 0 ELSE tmp_project_period.collected END AS collected, CASE WHEN tmp_project_period.used_clients IS NULL THEN 0 ELSE tmp_project_period.used_clients END AS used_clients, CASE WHEN tmp_project_period.un_collected IS NULL THEN 0 ELSE tmp_project_period.un_collected END AS un_collected, CASE WHEN tmp_project_period.status1_budgets IS NULL THEN 0 ELSE tmp_project_period.status1_budgets END AS status1_budgets, CASE WHEN tmp_project_period.status1_count IS NULL THEN 0 ELSE tmp_project_period.status1_count END AS status1_count, CASE WHEN tmp_project_period.status2_budgets IS NULL THEN 0 ELSE tmp_project_period.status2_budgets END AS status2_budgets, CASE WHEN tmp_project_period.status2_count IS NULL THEN 0 ELSE tmp_project_period.status2_count END AS status2_count, CASE WHEN tmp4.pre_sales_counts IS NULL THEN 0 ELSE tmp4.pre_sales_counts END AS pscount, CASE WHEN tmp5.implement_counts IS NULL THEN 0 ELSE tmp5.implement_counts END AS ircount, CASE WHEN tmp4.pre_sales_times IS NOT NULL THEN EXTRACT(EPOCH FROM tmp4.pre_sales_times)/3600 ELSE 0 END AS pstime, CASE WHEN tmp5.implement_times IS NOT NULL THEN EXTRACT(EPOCH FROM tmp5.implement_times)/3600 ELSE 0 END AS irtime, CASE WHEN tmp6.sales_rep_time IS NOT NULL THEN EXTRACT(EPOCH FROM tmp6.sales_rep_time )/3600 ELSE 0 END AS sales_rep_time, CASE WHEN tmp_work.work_time IS NOT NULL THEN tmp_work.work_time ELSE '00:00:00'::interval END AS work_time, CASE WHEN tmp_work.work_count IS NOT NULL THEN tmp_work.work_count ELSE 0 END AS work_count, CASE WHEN tmp8.reimbursement_amount IS NOT NULL THEN tmp8.reimbursement_amount ELSE 0 END AS reimbursement_amount, tmp_project_period.last_bargain_date, CASE WHEN tmp9.points IS NOT NULL THEN tmp9.points ELSE 0 END AS points, CASE WHEN tmp10.invoices IS NULL THEN 0 ELSE tmp10.invoices END AS invoices, CASE WHEN tmp10.un_invoices IS NULL THEN 0 ELSE tmp10.un_invoices END AS un_invoices, CASE WHEN tmp_project_period.status3_count IS NULL OR tmp_project_period.status3_count = 0 THEN NULL ELSE tmp_project_period.status3_count END AS cooperated, ci.name as client_industry, ci.id as client_industry_id, ct.name as client_type, ct.id as client_type_id, CASE WHEN tmp_project_all.project_count IS NULL THEN 0 ELSE tmp_project_all.project_count END AS project_count, CASE WHEN tmp_project_all.other_budgets IS NULL THEN 0 ELSE tmp_project_all.other_budgets END AS other_budgets, CASE WHEN tmp_project_period.status12_budgets IS NULL THEN 0 ELSE tmp_project_period.status12_budgets END AS status12_budgets, CASE WHEN tmp_project_period.status12_profits IS NULL THEN 0 ELSE tmp_project_period.status12_profits END AS status12_profits, CASE WHEN tmp_work.work1_time IS NOT NULL THEN tmp_work.work1_time ELSE '00:00:00'::interval END AS work1_time, CASE WHEN tmp_work.work1_count IS NOT NULL THEN tmp_work.work1_count ELSE 0 END AS work1_count, CASE WHEN tmp_work.work2_time IS NOT NULL THEN tmp_work.work2_time ELSE '00:00:00'::interval END AS work2_time, CASE WHEN tmp_work.work2_count IS NOT NULL THEN tmp_work.work2_count ELSE 0 END AS work2_count, CASE WHEN tmp_work.work3_time IS NOT NULL THEN tmp_work.work3_time ELSE '00:00:00'::interval END AS work3_time, CASE WHEN tmp_work.work3_count IS NOT NULL THEN tmp_work.work3_count ELSE 0 END AS work3_count, CASE WHEN tmp_work.work4_time IS NOT NULL THEN tmp_work.work4_time ELSE '00:00:00'::interval END AS work4_time, CASE WHEN tmp_work.work4_count IS NOT NULL THEN tmp_work.work4_count ELSE 0 END AS work4_count, CASE WHEN tmp_work.work5_time IS NOT NULL THEN tmp_work.work5_time ELSE '00:00:00'::interval END AS work5_time, CASE WHEN tmp_work.work5_count IS NOT NULL THEN tmp_work.work5_count ELSE 0 END AS work5_count, CASE WHEN c.client_class IS NOT NULL THEN ( (CASE WHEN cc.contact_base > 0 THEN floor(CASE WHEN c.contact_count > cc.contact_base THEN 1 * 15 ELSE c.contact_count * 15 / cc.contact_base END) ELSE 15 END) + floor(c.client_base_info_count * 15 / 9) + (CASE WHEN cc.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 154::float END) / cc.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 154::float END) / cc.visit_base::float) END) ELSE 20 END) + (CASE WHEN cc.cooperate_base > 0 THEN floor(CASE WHEN c.cooperate_count > cc.cooperate_base THEN 1 * 20 ELSE c.cooperate_count * 20 / cc.cooperate_base END) ELSE 20 END) + (CASE WHEN cc.case_pre_sales_base > 0 THEN floor(CASE WHEN c.case_pre_sales_count > cc.case_pre_sales_base THEN 1 * 15 ELSE c.case_pre_sales_count * 15 / cc.case_pre_sales_base END) ELSE 15 END) + (CASE WHEN cc.case_implement_base > 0 THEN floor(CASE WHEN c.case_implement_count > cc.case_implement_base THEN 1 * 15 ELSE c.case_implement_count * 15 / cc.case_implement_base END) ELSE 15 END) ) ELSE NULL END as score FROM "a57be577deb434"."tbl_clients" "c" LEFT JOIN (SELECT p.client_id, sum(CASE WHEN p.project_status = 3 THEN p.budget ELSE 0 END) AS status3_budgets, sum(CASE WHEN p.project_status = 3 THEN p.budget * p.profit_pct / 100 ELSE 0 END) AS status3_profits, max(CASE WHEN p.project_status = 3 THEN p.bargain_date ELSE NULL END) AS last_bargain_date, sum(CASE WHEN p.project_status = 3 AND p.budget >= p.collected THEN p.budget - p.collected ELSE 0 END) AS un_collected, sum(CASE WHEN p.project_status = 3 THEN p.collected ELSE 0 END) AS collected, count(CASE WHEN p.project_status = 3 THEN p.id ELSE NULL END) as status3_count, count(distinct CASE WHEN p.project_status = 3 THEN p.used_client ELSE NULL END) as used_clients, sum(CASE WHEN p.project_status = 1 THEN p.budget ELSE 0 END) AS status1_budgets, count(CASE WHEN p.project_status = 1 THEN p.id ELSE NULL END) as status1_count, sum(CASE WHEN p.project_status = 2 THEN p.budget ELSE 0 END) AS status2_budgets, count(CASE WHEN p.project_status = 2 THEN p.id ELSE NULL END) as status2_count, sum(CASE WHEN p.project_status IN (1, 2) THEN p.budget ELSE 0 END) AS status12_budgets, sum(CASE WHEN p.project_status IN (1, 2) THEN p.budget * p.profit_pct / 100 ELSE 0 END) AS status12_profits FROM "a57be577deb434"."tbl_projects" "p" WHERE "p"."project_status" IN (1, 2, 3) GROUP BY "p"."client_id") "tmp_project_period" ON tmp_project_period.client_id = c.id LEFT JOIN (SELECT p.client_id, count(p.id) as project_count, sum(CASE WHEN p.project_status != 3 THEN p.budget ELSE 0 END) AS other_budgets FROM "a57be577deb434"."tbl_projects" "p" GROUP BY "p"."client_id") "tmp_project_all" ON tmp_project_all.client_id = c.id LEFT JOIN (SELECT sub4.client_id, count(sub4.id) as pre_sales_counts, sum(sub4.pre_sales_time) as pre_sales_times FROM (SELECT "ps"."id", "ps"."client_id", (ps.end_at - ps.start_at) as pre_sales_time FROM "a57be577deb434"."tbl_pre_sales" "ps" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ps.created_by WHERE "ps"."is_draft"=FALSE) "sub4" GROUP BY "sub4"."client_id") "tmp4" ON tmp4.client_id = c.id LEFT JOIN (SELECT sub5.client_id, count(sub5.id) as implement_counts, sum(sub5.implement_time) as implement_times FROM (SELECT "ir"."id", "ir"."client_id", (ir.left_at - ir.arrived_at) as implement_time FROM "a57be577deb434"."tbl_implement_records" "ir" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ir.created_by WHERE "ir"."is_draft"=FALSE) "sub5" GROUP BY "sub5"."client_id") "tmp5" ON tmp5.client_id = c.id LEFT JOIN (SELECT csrr.client_id, csrr.sales_rep, (now() - csrr.start_at) as sales_rep_time FROM "a57be577deb434"."tbl_client_sales_rep_rels" "csrr" WHERE "id" IN (SELECT max(csrrs.id) FROM "a57be577deb434"."tbl_client_sales_rep_rels" "csrrs" WHERE csrrs.end_at is null GROUP BY "csrrs"."client_id")) "tmp6" ON tmp6.client_id = c.id and tmp6.sales_rep = c.sales_rep LEFT JOIN (SELECT wl.client_id, count(CASE WHEN wl.location_in_id IS NOT NULL AND wl.location_out_id IS NOT NULL THEN wl.id ELSE NULL END) as work_count, sum(CASE WHEN wl.location_in_id IS NOT NULL AND wl.location_out_id IS NOT NULL THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work_time, count(CASE WHEN wl.scenario_id = 1 THEN wl.id ELSE NULL END) as work1_count, sum(CASE WHEN wl.scenario_id = 1 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work1_time, count(CASE WHEN wl.scenario_id = 2 THEN wl.id ELSE NULL END) as work2_count, sum(CASE WHEN wl.scenario_id = 2 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work2_time, count(CASE WHEN wl.scenario_id = 3 THEN wl.id ELSE NULL END) as work3_count, sum(CASE WHEN wl.scenario_id = 3 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work3_time, count(CASE WHEN wl.scenario_id = 4 THEN wl.id ELSE NULL END) as work4_count, sum(CASE WHEN wl.scenario_id = 4 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work4_time, count(CASE WHEN wl.scenario_id = 5 THEN wl.id ELSE NULL END) as work5_count, sum(CASE WHEN wl.scenario_id = 5 THEN wl.end_at - wl.start_at ELSE '00:00:00'::interval END) as work5_time FROM "a57be577deb434"."tbl_work_logs" "wl" WHERE ("wl"."is_draft"=FALSE) AND ("wl"."client_id" IS NOT NULL) GROUP BY "wl"."client_id") "tmp_work" ON tmp_work.client_id = c.id LEFT JOIN (SELECT sub8.client_id, sum(sub8.reimbursement_amount) as reimbursement_amount FROM (SELECT "r"."client_id", "r"."amount" AS "reimbursement_amount" FROM "a57be577deb434"."tbl_reimbursements" "r" WHERE "r"."status" IN (2, 3)) "sub8" GROUP BY "sub8"."client_id") "tmp8" ON tmp8.client_id = c.id LEFT JOIN (SELECT sub9.client_id, sum(sub9.points) as points FROM (SELECT c.client_id, COALESCE(sum(ca.points),0) as points FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN "a57be577deb434"."tbl_case_assignments" "ca" ON ca.case_id = c.id LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = ca.engineer_id GROUP BY "c"."id") "sub9" GROUP BY "sub9"."client_id") "tmp9" ON tmp9.client_id = c.id LEFT JOIN (SELECT sub10.client_id, sum(sub10.invoices) as invoices, sum(case when sub10.amount >= sub10.invoices and sub10.including_tax = true THEN sub10.amount - sub10.invoices ELSE 0 END) AS un_invoices FROM (SELECT sc.client_id, sc.including_tax, sc.amount, COALESCE(SUM(sci.amount ),0) AS invoices FROM "a57be577deb434"."tbl_sales_contracts" "sc" LEFT JOIN "a57be577deb434"."tbl_sales_contract_invoices" "sci" ON sci.contract_id = sc.id GROUP BY "sc"."id") "sub10" GROUP BY "sub10"."client_id") "tmp10" ON tmp10.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_client_classes" "cc" ON "cc"."id" = "c"."client_class" LEFT JOIN "a57be577deb434"."tbl_client_industries" "ci" ON "ci"."id" = "c"."client_industry" LEFT JOIN "a57be577deb434"."tbl_client_types" "ct" ON "ct"."id" = "c"."client_type" 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)) OR ("c"."sales_rep" IS NULL) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1001))) AND ("c"."deleted"=FALSE) AND ((lower(c.name) LIKE '%测阿斯顿sd%') OR ("c"."pinyin_shortcut" LIKE '%测阿斯顿sd%'))) "final" ORDER BY "status3_budgets" DESC, "created_at" DESC LIMIT 20
16:49:45.105traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.105traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
16:49:45.106infoyii\db\Command::queryINSERT 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/clients', '{"keyword":"\u6d4b\u963f\u65af\u987fsd","sales_rep":"","group":"","dataUserId":"1001","page":"1","engineer_group":"","engineer":"","period":"","cooperated":"","client_industry_id":"","client_type_id":"","GroupId":"","web_access_token":"3sqoTbqwkHhRmqiLIelKWucsK6N07HRT"}', '{"code":2000,"result":{"list":[],"pagenation":{"totalcount":0,"thispage":1,"pagesize":20}},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"mod":0,"ip":"221.216.117.119","ua":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/148.0.0.0 Safari\/537.36"}', FALSE, '2026-06-03 16:49:45', 24382976) RETURNING "id"
16:49:45.107traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
16:49:45.107traceyii\redis\Connection::executeCommandExecuting Redis Command: SET