6a29191290bc3: POST https://beta.jinchangxiao.com/v2/project/list at 2026-06-10 03:58:10 pm by 43.224.72.82

Log Messages

总计120条数据
TimeLevelCategoryMessage
 
15:58:10.592traceyii\base\Application::bootstrapBootstrap with yii\log\Dispatcher
15:58:10.592traceyii\base\Module::getModuleLoading module: debug
15:58:10.592traceyii\base\Application::bootstrapBootstrap with yii\debug\Module::bootstrap()
15:58:10.592traceyii\redis\Connection::openOpening redis DB connection: redis.server.local:6379, database=1
15:58:10.593traceyii\redis\Connection::executeCommandExecuting Redis Command: SELECT
15:58:10.593traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.593infotime tracing start1781078290593313024
15:58:10.593traceyii\web\UrlManager::parseRequestNo matching URL rules. Using default URL parsing logic.
15:58:10.593traceyii\web\Application::handleRequestRoute requested: 'v2/project/list'
15:58:10.593traceyii\base\Module::getModuleLoading module: v2
15:58:10.593infoyii\web\Session::openSession started
15:58:10.594infoyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
15:58:10.594infoyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "access_token"='R8ScrIY1ab3sgHgv8KlMKFukwMtD6QYC'
15:58:10.595traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.595traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:10.595traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.595traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:10.596infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1000
15:58:10.596traceyii\base\Controller::runActionRoute to run: v2/project/list
15:58:10.596traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.597traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
15:58:10.597traceyii\base\InlineAction::runWithParamsRunning action: app\modules\v2\controllers\ProjectController::actionList()
15:58:10.598traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.598infoyii\db\Command::querySELECT 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_projects' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:10.602infoyii\db\Command::queryselect 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_projects' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:10.621traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:10.621traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:10.627traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.627traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.628infoyii\db\Command::querySELECT COUNT(*) FROM (SELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 1001, 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 ("prr"."user_id"=1000) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1000))) GROUP BY "p"."id" ORDER BY "p"."updated_at" DESC) "c"
15:58:10.883infoyii\db\Command::querySELECT p.*, (p.budget / 100 * p.profit_pct) as profits, now() - status_updated_at as remain, now() - progress_updated_at as progress_remain, now() - forecast_updated_at as forecast_remain, extract(epoch from (now() - max(sl.end_at))) / 86400 AS lost_contact_days, max(sl.end_at) as last_contact, extract(epoch from (now() - max(arrive.end_at))) / 86400 AS last_arrive_days, max(arrive.end_at) as last_arrive, case when p.end_at IS NOT NULL THEN p.end_at - p.created_at ELSE now() - p.created_at END as duration, (SELECT sum(amount) FROM a57be577deb434.tbl_invoices i WHERE i.project_id = p.id) as issued_invoices FROM "a57be577deb434"."tbl_projects" "p" LEFT JOIN "a57be577deb434"."tbl_project_remind_receivers" "prr" ON prr.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_clients" "c" ON p.client_id = c.id LEFT JOIN "a57be577deb434"."tbl_clients" "usedclient" ON p.used_client = usedclient.id LEFT JOIN "a57be577deb434"."tbl_sales_group_relationships" "sgr" ON sgr.sales_id = c.sales_rep LEFT JOIN "a57be577deb434"."tbl_work_logs" "arrive" ON (arrive.project_id = p.id) AND ("arrive"."scenario_id"=1) AND ("arrive"."is_draft"=FALSE) AND ("arrive"."location_in_id" IS NOT NULL) AND ("arrive"."location_out_id" IS NOT NULL) AND ("arrive"."client_id" IS NOT NULL) LEFT JOIN "a57be577deb434"."tbl_work_logs" "sl" ON sl.project_id = p.id LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr" ON ttr.object_id = p.id AND ttr.term_id = 10 LEFT JOIN "a57be577deb434"."tbl_term_taxonomy_relationships" "ttr2" ON ttr2.object_id = p.id AND ttr2.term_id = 13 LEFT JOIN "a57be577deb434"."tbl_project_architects" "pa" ON "pa"."project_id" = "p"."id" LEFT JOIN "a57be577deb434"."tbl_engineer_group_relationships" "egr" ON egr.engineer_id = pa.engineer_id WHERE ("c"."deleted"=FALSE) AND (c.id is not null) AND ((c.sales_rep IS NULL) OR ("c"."sales_rep" IN (5049, 5301, 5022, 5209, 5026, 5293, 5309, 5356, 5329, 5299, 5303, 5302, 5332, 5047, 1026, 5096, 5070, 5448, 5420, 1029, 1001, 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 ("prr"."user_id"=1000) OR ("c"."id" IN (SELECT "client_id" FROM "a57be577deb434"."tbl_user_visit_clients" WHERE "user_id"=1000))) GROUP BY "p"."id" ORDER BY "p"."updated_at" DESC LIMIT 10
15:58:10.941infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "logo", "client_type", "client_class", "client_industry", "sales_rep" FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (982, 3465, 3364, 3415, 3462, 93, 2130, 2125, 2128)
15:58:10.943infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 5087, 1005)
15:58:10.944infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5087, 1005))
15:58:10.944infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_client_types" WHERE "id" IN (5, 6, 3, 1)
15:58:10.946infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "notice_days", "color" FROM "a57be577deb434"."tbl_client_classes" WHERE "id" IN (43, 1, 47)
15:58:10.947infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_client_industries" WHERE "id" IN (10, 13, 4, 20, 5, 1, 8)
15:58:10.949infoyii\db\Command::querySELECT "id", "id" AS "key", "type" AS "name" FROM "a57be577deb434"."tbl_contract_types" WHERE "id"=1
15:58:10.950infoyii\db\Command::querySELECT "project_id", "contribution" AS "value", "engineer_id" AS "key", "u"."name" FROM "a57be577deb434"."tbl_project_architects" LEFT JOIN "a57be577deb434"."tbl_users" "u" ON engineer_id = u.id WHERE "a57be577deb434"."tbl_project_architects"."project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854) ORDER BY "contribution" DESC, "engineer_id"
15:58:10.951traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.951infoyii\db\Command::querySELECT 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_project_architects' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:10.954infoyii\db\Command::queryselect 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_project_architects' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:10.968traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:10.968traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:10.968infoyii\db\Command::querySELECT "id", "id" AS "key", "project_status" AS "name", "color" FROM "a57be577deb434"."tbl_project_statuses" WHERE "id" IN (1, 2, 5, 3)
15:58:10.970infoyii\db\Command::querySELECT "id", "id" AS "key", "project_progress" AS "name", "description" FROM "a57be577deb434"."tbl_project_progresses" WHERE "id" IN (3, 2, 5)
15:58:10.970infoyii\db\Command::querySELECT id, product_type_id, product_type_id as key, name, coalesce(budget, 0) as budget, coalesce(pct, 0) as pct, coalesce(profit, 0) as profit, project_id FROM "a57be577deb434"."tbl_project_product_types" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:10.973infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:10.976infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "description" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=13) AND ("id" IN (5, 1, 226, 229, 2, 197, 199, 184, 189, 307, 203, 198, 202, 196, 204, 185, 191, 192, 340, 348, 324, 349, 356, 369, 377, 350, 384, 165, 142, 128, 164, 172, 181, 130)) ORDER BY "sort"
15:58:10.976infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:10.977infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=10) AND ("id" IN (5, 1, 226, 229, 2, 197, 199, 184, 189, 307, 203, 198, 202, 196, 204, 185, 191, 192, 340, 348, 324, 349, 356, 369, 377, 350, 384, 165, 142, 128, 164, 172, 181, 130)) ORDER BY "sort"
15:58:10.977infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_term_taxonomy_relationships" WHERE "object_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:10.978infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_term_taxonomies" WHERE ("term_id"=9) AND ("id" IN (5, 1, 226, 229, 2, 197, 199, 184, 189, 307, 203, 198, 202, 196, 204, 185, 191, 192, 340, 348, 324, 349, 356, 369, 377, 350, 384, 165, 142, 128, 164, 172, 181, 130)) ORDER BY "sort"
15:58:10.978infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 1005, 5087)
15:58:10.979infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5087, 1005))
15:58:10.979infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_departments" WHERE "id" IN (4, 1)
15:58:10.979infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex", "department_id" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1000, 1001, 1011, 1005, 5087)
15:58:10.980infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 1000, 5087, 1005, 1011))
15:58:10.980infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (982, 3465, 3364, 3415, 3462, 93, 2130, 2125, 2128)
15:58:10.983infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (1001, 5087, 1005)
15:58:10.984infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5087, 1005))
15:58:10.984infoyii\db\Command::querySELECT "c"."project_id", sum(ca.points) as points FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", sum(points) as points FROM "a57be577deb434"."tbl_case_assignments" GROUP BY "case_id") "ca" ON ca.case_id = c.id WHERE "c"."project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854) GROUP BY "c"."project_id"
15:58:10.995traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:10.995infoyii\db\Command::querySELECT 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_cases' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:10.998infoyii\db\Command::queryselect 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_cases' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:11.018traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:11.018traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:11.019infoyii\db\Command::querySELECT "project_id", count(id) as count FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "project_id"
15:58:11.019infoyii\db\Command::querySELECT "project_id", count(id) as count FROM "a57be577deb434"."tbl_cases" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854) GROUP BY "project_id"
15:58:11.021infoyii\db\Command::querySELECT "project_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("scenario_id"=1) AND (("location_in_id" IS NOT NULL) AND ("location_out_id" IS NOT NULL) AND ("client_id" IS NOT NULL)) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "project_id"
15:58:11.021infoyii\db\Command::querySELECT "c"."project_id", sum(hours), sum(times) as times FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", EXTRACT(epoch FROM sum(left_at - arrived_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_implement_records" WHERE "is_draft"=FALSE GROUP BY "case_id") "i" ON i.case_id = c.id WHERE ("case_type"=2) AND ("c"."project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "c"."project_id"
15:58:11.032infoyii\db\Command::querySELECT "c"."project_id", sum(hours), sum(times) as times FROM "a57be577deb434"."tbl_cases" "c" LEFT JOIN (SELECT "case_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_pre_sales" WHERE "is_draft"=FALSE GROUP BY "case_id") "i" ON i.case_id = c.id WHERE ("case_type"=1) AND ("c"."project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "c"."project_id"
15:58:11.040infoyii\db\Command::querySELECT "project_id", EXTRACT(epoch FROM sum(end_at - start_at)) /3600 AS hours, count(id) as times FROM "a57be577deb434"."tbl_work_logs" WHERE ("is_draft"=FALSE) AND ("scenario_id"=2) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "project_id"
15:58:11.040infoyii\db\Command::querySELECT "project_id", sum(amount) AS sum FROM "a57be577deb434"."tbl_reimbursements" WHERE ("status" IN (2, 3)) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "project_id"
15:58:11.047infoyii\db\Command::querySELECT "id", "from_project", "payment_collection_remind_ahead", "serial_no", "is_settle", "is_deliver", "is_outbound", "erp_settle_amount", "erp_un_settle_amount", "including_tax", "amount" FROM "a57be577deb434"."tbl_sales_contracts" WHERE "from_project" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:11.055infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=105) AND ("object_id" IN (4496, 4497, 4486, 4491, 4492))
15:58:11.058infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=106) AND ("object_id" IN (4496, 4497, 4486, 4491, 4492))
15:58:11.060infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=107) AND ("object_id" IN (4496, 4497, 4486, 4491, 4492))
15:58:11.062infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_collect_tickets" WHERE ("status"=2) AND ("sales_contract_id" IN (4496, 4497, 4486, 4491, 4492)) ORDER BY "id" DESC
15:58:11.065infoyii\db\Command::querySELECT "id", "id" AS "key", "contract_id", "amount" AS "value", "created_by", "collected_date" FROM (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.wrote_date 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") "r" WHERE "contract_id" IN (4496, 4497, 4486, 4491, 4492) ORDER BY "id" DESC
15:58:11.075infoyii\db\Command::querySELECT "id", "id" AS "key", "contract_id", "amount" AS "value", "attachment_id", "from_date" FROM "a57be577deb434"."tbl_sales_contract_invoices" WHERE "contract_id" IN (4496, 4497, 4486, 4491, 4492) ORDER BY "id"
15:58:11.079infoyii\db\Command::querySELECT "id", "id" AS "key", "contract_id", "remind_date" AS "name", "amount" AS "value", "overdue_days", "status", "remind_date" FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" WHERE "contract_id" IN (4496, 4497, 4486, 4491, 4492) ORDER BY "remind_date"
15:58:11.080infoyii\db\Command::querySELECT "id", "user_id", "user_id" AS "key", "contract_id" FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_receivers" WHERE "contract_id" IN (4496, 4497, 4486, 4491, 4492)
15:58:11.081infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id" IN (5087, 1001, 1005)
15:58:11.081infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5087, 1005))
15:58:11.081infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_supplier_rels" WHERE "contract_id" IN (4496, 4497, 4486, 4491, 4492)
15:58:11.084infoyii\db\Command::querySELECT "id", "user_id", "user_id" AS "key", "project_id" FROM "a57be577deb434"."tbl_project_remind_receivers" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:11.085infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "sex" FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:11.085infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1001)
15:58:11.085infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854) ORDER BY "id"
15:58:11.092infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_products" WHERE "id" IN (2261, 1372, 2265, 2263, 2266, 1558, 2171)
15:58:11.100infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_types" WHERE "id" IN (7, 21, 4, 23, 5)
15:58:11.100infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_components" WHERE "id" IN (159, 229, 52, 195, 221, 26, 43)
15:58:11.102infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_brands" WHERE "id" IN (270, 285, 4, 284, 286, 8, 134)
15:58:11.103infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_series" WHERE "id" IN (1724, 1782, 1769, 1775, 1783, 1344, 1047)
15:58:11.106infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_product_units" WHERE "id" IN (2, 3, 9, 1, 6)
15:58:11.107infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_order_products" WHERE "id" IN (2251, 2252, 2253, 2254, 2255, 2256, 2257, 2258, 2259)
15:58:11.110infoyii\db\Command::querySELECT "object_id", count(*) as comment FROM "a57be577deb434"."tbl_comments" WHERE ("object_type"=1) AND ("object_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "object_id"
15:58:11.153infoyii\db\Command::querySELECT "object_id", count(*) AS unread FROM "a57be577deb434"."tbl_unread_comments" WHERE ("object_type"=1) AND (remind_user_id = 1000 AND is_read = false) AND ("object_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)) GROUP BY "object_id"
15:58:11.172infoyii\db\Command::querySELECT "id", "id" AS "key", "name", "client_id", "supplier_id" FROM "a57be577deb434"."tbl_contacts" WHERE "id" IN (3651, 2639, 3649)
15:58:11.178infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_contact_mobiles" WHERE "contact_id" IN (2639, 3649, 3651)
15:58:11.183infoyii\db\Command::querySELECT "id", "id" AS "key", "name" FROM "a57be577deb434"."tbl_clients" WHERE "id" IN (1296, 982, 579)
15:58:11.184infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_contact_points" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:11.185infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_orders" WHERE ("status" IN (2, 5)) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854))
15:58:11.187infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_used_clients" WHERE "project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854)
15:58:11.192infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_used_client_payment_collection_remind_receivers" WHERE "project_used_client_id" IN (310, 223, 315)
15:58:11.196infoyii\db\Command::querySELECT "id", "id" AS "key", "project_used_client_id", "remind_date", "amount", "remind_date" AS "name", "amount" AS "value", "overdue_days" FROM "a57be577deb434"."tbl_project_used_client_payment_collection_remind_dates" WHERE "project_used_client_id" IN (310, 223, 315)
15:58:11.198infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_used_client_payments" WHERE "project_used_client_id" IN (310, 223, 315)
15:58:11.200infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_used_client_invoices" WHERE "project_used_client_id" IN (310, 223, 315)
15:58:11.202infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_orders" WHERE ("status"=1) AND ("project_id" IN (4184, 4182, 4183, 4181, 4024, 4174, 4146, 3957, 3796, 3854))
15:58:11.203traceuranus\rbac\DbManager::checkAccessFromCacheChecking permission: viewProduct
15:58:11.203traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: StoreKeeper
15:58:11.203traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
15:58:11.203infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"='1001'
15:58:11.203infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id"=1001)
15:58:11.204infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id" IN ('1001', '5295')
15:58:11.204infoyii\db\Command::querySELECT "id", "user_id", "meta_value" AS "name" FROM "a57be577deb434"."tbl_user_meta" WHERE ("meta_key"='avatar') AND ("user_id" IN (1001, 5295))
15:58:11.207traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:11.207traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:11.207infoyii\db\Command::queryINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "version_code", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1000, 6, 177, 'v2/project/list', '{"ProjectSearch":{"keyword":"","projectProductTypes":"","project_progress":"","project_status":"","engineer_id":"","created_by":"","salesForecast":"","period":"","from":"","to":""},"page":"1","pagesize":"10","posttime":"1781078290","access_token":"R8ScrIY1ab3sgHgv8KlMKFukwMtD6QYC","device_type":"6","version_code":"177","token":"7b266f9422c3a6ee0a6e5a6311ca859d"}', '{"code":200,"data":{"list":[{"id":4184,"client_id":982,"project_status":1,"project_progress":3,"budget":"0","profit_pct":"0","bargain_date":"2026-06-10","description":"","created_by":1001,"created_at":"2026-06-10 11:28:48","updated_at":"2026-06-10 11:29:09","engineer_id":null,"project_title":"\u560e\u560e\u560e","collected":"0","status_updated_at":"2026-06-10 11:28:48.063377+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2026-06-10 11:28:48.063377+08","forecast_updated_at":"2026-06-10 11:28:48.063377+08","end_at":"","pinyin_shortcut":"ggg","creator":1000,"used_client":null,"from_contact":3651,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":false,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"0.00000000000000000000","remain":"04:29:22.821526","progress_remain":"04:29:22.821526","forecast_remain":"04:29:22.821526","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"04:29:22.821526","issued_invoices":null,"client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":null,"client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001,"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"clientType":{"id":6,"key":6,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u666e\u901a\uff09"},"clientClass":{"id":1,"key":1,"name":"\u6838\u5fc3\u5ba2\u6237","notice_days":10,"color":"#E89F0E"},"clientIndustry":{"id":4,"key":4,"name":"\u901a\u4fe1"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[{"project_id":4184,"value":"1","key":1023,"name":"\u5468\u5b50\u5065"}],"projectStatus":{"id":1,"key":1,"name":"\u9690\u6027\u9700\u6c42","color":"#ffc000"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectProductTypes":[],"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"opportunityFrom":null,"purchaseType":{"id":130,"key":130,"name":"\u7ade\u4e89\u8c08\u5224"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"projectCreator":{"id":1000,"key":1000,"name":"\u66f9\u6c38\u751f","sex":"M","department_id":10,"avatar":{"id":1,"user_id":1000,"name":"\/files\/cdn\/\/avatar\/618545c1-a2ce-3918-9d51-25924baf6d6f.jpg"}},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":4184,"comment":1},"unreadComments":null,"fromContact":{"id":3651,"key":3651,"name":"\u9648\u521a","client_id":579,"supplier_id":null,"mobiles":[{"id":4307,"contact_id":3651,"mobile":"18610303523","mp_open_id":null}],"client":{"id":579,"key":579,"name":"\u90ae\u653f\u79d1\u5b66\u7814\u7a76\u89c4\u5212\u9662"},"supplier":null},"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":null,"remain_display":0,"progress_remain_display":0,"forecast_remain_display":0,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":0,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u9690\u6027\u9700\u6c42","is_collected":false,"bgcolor":"#ffc000","can_invoice":false,"can_payment":false,"duration_display":1,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"0","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":0,"un_invoiced":0,"object_type":1},{"id":4182,"client_id":982,"project_status":1,"project_progress":3,"budget":"0","profit_pct":"0","bargain_date":"2026-07-08","description":"","created_by":1001,"created_at":"2026-06-08 15:37:04","updated_at":"2026-06-10 09:50:22","engineer_id":null,"project_title":"qwerty","collected":"0","status_updated_at":"2026-06-08 15:37:04.078198+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2026-06-08 15:37:04.078198+08","forecast_updated_at":"2026-06-08 15:37:04.078198+08","end_at":"","pinyin_shortcut":"qwerty","creator":1000,"used_client":null,"from_contact":2639,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":false,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"0.00000000000000000000","remain":"2 days 00:21:06.806705","progress_remain":"2 days 00:21:06.806705","forecast_remain":"2 days 00:21:06.806705","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"2 days 00:21:06.806705","issued_invoices":null,"client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240","logo":null,"client_type":6,"client_class":1,"client_industry":4,"sales_rep":1001,"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"clientType":{"id":6,"key":6,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u666e\u901a\uff09"},"clientClass":{"id":1,"key":1,"name":"\u6838\u5fc3\u5ba2\u6237","notice_days":10,"color":"#E89F0E"},"clientIndustry":{"id":4,"key":4,"name":"\u901a\u4fe1"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[{"project_id":4182,"value":"1","key":1023,"name":"\u5468\u5b50\u5065"}],"projectStatus":{"id":1,"key":1,"name":"\u9690\u6027\u9700\u6c42","color":"#ffc000"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectProductTypes":[],"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"opportunityFrom":null,"purchaseType":{"id":130,"key":130,"name":"\u7ade\u4e89\u8c08\u5224"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"projectCreator":{"id":1000,"key":1000,"name":"\u66f9\u6c38\u751f","sex":"M","department_id":10,"avatar":{"id":1,"user_id":1000,"name":"\/files\/cdn\/\/avatar\/618545c1-a2ce-3918-9d51-25924baf6d6f.jpg"}},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":4182,"comment":1},"unreadComments":null,"fromContact":{"id":2639,"key":2639,"name":"Maggie","client_id":1296,"supplier_id":null,"mobiles":[],"client":{"id":1296,"key":1296,"name":"\u4e2d\u56fd\u6210\u5957\u5de5\u7a0b\u6709\u9650\u516c\u53f8S"},"supplier":null},"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":null,"remain_display":2,"progress_remain_display":2,"forecast_remain_display":2,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":0,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u9690\u6027\u9700\u6c42","is_collected":false,"bgcolor":"#ffc000","can_invoice":false,"can_payment":false,"duration_display":2,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"0","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":0,"un_invoiced":0,"object_type":1},{"id":4183,"client_id":3465,"project_status":2,"project_progress":2,"budget":"18000","profit_pct":"10","bargain_date":"2026-06-09","description":null,"created_by":1001,"created_at":"2026-06-09 17:10:11","updated_at":"2026-06-09 17:10:11","engineer_id":null,"project_title":"\u96f6\u552e001","collected":"0","status_updated_at":"2026-06-09 17:10:11.483295+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2026-06-09 17:10:11.483295+08","forecast_updated_at":"2026-06-09 17:10:11.483295+08","end_at":"","pinyin_shortcut":"ls001","creator":1001,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":1378,"is_sales_order_ready":false,"collected_plan":0,"change_status_to":3,"is_verify":true,"profits":"1800.0000000000000000","remain":"22:47:59.401608","progress_remain":"22:47:59.401608","forecast_remain":"22:47:59.401608","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"22:47:59.401608","issued_invoices":null,"client":{"id":3465,"key":3465,"name":"\u96f6\u552e001","logo":null,"client_type":3,"client_class":43,"client_industry":8,"sales_rep":1001,"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"clientType":{"id":3,"key":3,"name":"\u4e2a\u4eba\u6d88\u8d39\u8005"},"clientClass":{"id":43,"key":43,"name":"\u6f5c\u529b\u5ba2\u6237","notice_days":60,"color":"#1EE6DC"},"clientIndustry":{"id":8,"key":8,"name":"\u7269\u6d41"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":2,"key":2,"name":"\u660e\u786e\u9700\u6c42","color":"#0064ec"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectProductTypes":[{"id":7,"product_type_id":7,"key":7,"name":"\u8f6f\u4ef6","budget":"18000","pct":"10","profit":"1800","project_id":4183}],"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"projectCreator":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[{"id":12137,"project_id":4183,"product_id":2171,"amount":"18000","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"18000","total_cost":null,"erp_sales_order_product_id":2259,"supplier":null,"product":{"id":2171,"name":"\u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1","product_type":7,"product_component":159,"product_brand":270,"product_serie":1724,"product_misc":null,"product_qa":null,"pn":"","description":"","created_by":1013,"created_at":"2025-11-24 16:16:45","updated_at":"2026-06-08 18:14:09","pinyin_shortcut":"jcxCRMrjfw","product_unit":2,"is_renew":false,"in_out_at":"2026-06-08 18:14:09.228693+08","productType":{"id":7,"key":7,"name":"\u8f6f\u4ef6"},"productComponent":{"id":159,"key":159,"name":"\u529e\u516c\u8f6f\u4ef6"},"productBrand":{"id":270,"key":270,"name":"\u91d1\u7545\u900d"},"productSerie":{"id":1724,"key":1724,"name":"\u91d1\u7545\u900dCRM\u8f6f\u4ef6"},"productUnit":{"id":2,"key":2,"name":"\u5957"}},"erpSalesOrderProduct":{"id":2259,"erp_sales_order_id":1721,"erp_store_id":null,"product_id":2171,"description":"","number":"1","outbound":"0","amount":"18000","total_amount":"18000","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}}],"commentCount":{"object_id":4183,"comment":1},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":{"id":1721,"serial_no":"XSDD-20260609-00001","from_date":null,"wrote_date":"2026-06-09","handler":1001,"client_id":3465,"purchase_contract_id":null,"project_id":4183,"sales_contract_id":null,"erp_store_id":null,"status":1,"erp_send_type_id":null,"abstract":null,"description":null,"verify_type":2,"next_verify_user":1001,"next_stop_verify_user":null,"next_cancel_verify_user":null,"verify_at":"","stop_at":null,"cancel_at":null,"refuse_description":null,"is_resubmitted":false,"is_done":false,"number":"1","amount":"18000","created_by":1001,"stop_description":null,"extra":"{\"payment_collection_remind_ahead\":\"1 day\",\"salesContractPaymentCollectionRemindReceivers\":[\"1001\"],\"salesContractPaymentCollectionRemindDates\":[{\"remind_date\":\"2026-06-09\",\"amount\":\"18000\",\"pct\":\"100\"}]}","outbound_status":false,"is_used":false,"is_cancel":false,"is_settle":false,"is_old":false,"created_at":"2026-06-09 17:10:11","updated_at":"2026-06-09 17:10:11","print_times":null,"payment_collection_remind_ahead":"1 day","payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","salesContractPaymentCollectionRemindReceivers":[{"user_id":1001,"user":{"id":1001,"email":"lrc@toast.com.cn","name":"\u5218\u4eba\u8bda","user_status":"1","pinyin_shortcut":"lrc","sex":"M","birth_date":"1977-04-06","entry_date":"2005-06-06","department_id":4,"department_position_id":7,"mobile":"13501128560","telephone":"88864628","created_at":"2017-02-06 13:05:08","updated_at":"2026-04-24 14:52:43","id_number":"220523197704064411","native_place":"\u5409\u6797","graduate_school":"\u5409\u6797\u5de5\u4e1a\u5927\u5b66","specialty":"\u8ba1\u7b97\u673a\u5e94\u7528","education":"\u672c\u79d1","telephone_area_code":"010","telephone_extension_number":"821","leave_date":null,"pinyin1":"liu","pinyin2":"ren","pinyin3":"cheng","pinyin4":null,"namecut1":"\u5218","namecut2":"\u4eba","namecut3":"\u8bda","namecut4":null,"budget_count":"2000425.78","profit_count":"88226.214434000000000000","bargain_count":"5","opportunity_budget_count":"697106.06","opportunity_count":"4","work_log_score":"0","e_implement_count":"0","e_budget_count":"0","e_profit_count":"0","e_client_count":"0","e_project_count":"0","e_point_count":"0","visit_resource_sync":false,"client_lock":false,"view_public":false,"client_remind_alarm_before":null,"work_on_remind":false,"work_off_remind":false,"check_client_same":true,"calendar_view_type":7,"search_all_client":true,"view_product_cost":true,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"salesContractPaymentCollectionRemindDates":[{"name":"2026-06-09","value":"18000","pct":"100","overdue_days":"","collect_status":""}]},"remain_display":0,"progress_remain_display":0,"forecast_remain_display":0,"projectProductTotalAmount":18000,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":false,"projectProductTotalNumber":1,"unissued_invoice":18000,"is_exceeded":true,"can_update":false,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u660e\u786e\u9700\u6c42","is_collected":false,"bgcolor":"#0064ec","can_invoice":false,"can_payment":false,"duration_display":1,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"1.8\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":1,"un_collected":0,"un_invoiced":0,"object_type":1},{"id":4181,"client_id":3364,"project_status":2,"project_progress":2,"budget":"264663","profit_pct":"10","bargain_date":"2026-06-05","description":null,"created_by":1001,"created_at":"2026-06-05 17:59:52","updated_at":"2026-06-05 17:59:52","engineer_id":null,"project_title":"\u623f\u8d37\u9996\u4ed8\u7684","collected":"0","status_updated_at":"2026-06-05 17:59:52.021481+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2026-06-05 17:59:52.021481+08","forecast_updated_at":"2026-06-05 17:59:52.021481+08","end_at":"","pinyin_shortcut":"fdsfd","creator":1001,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":1377,"is_sales_order_ready":false,"collected_plan":0,"change_status_to":3,"is_verify":true,"profits":"26466.3000000000000000","remain":"4 days 21:58:18.863422","progress_remain":"4 days 21:58:18.863422","forecast_remain":"4 days 21:58:18.863422","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"4 days 21:58:18.863422","issued_invoices":null,"client":{"id":3364,"key":3364,"name":"\u5317\u4eac\u6781\u901a\u4e16\u7eaa\u4fe1\u606f\u6280\u672f\u6709\u9650\u516c\u53f8(\u8fc7\u5355)","logo":null,"client_type":5,"client_class":43,"client_industry":13,"sales_rep":1001,"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"clientType":{"id":5,"key":5,"name":"\u836f\u54c1\u96f6\u552e\u4f01\u4e1a\uff08\u5355\u4f53\uff09"},"clientClass":{"id":43,"key":43,"name":"\u6f5c\u529b\u5ba2\u6237","notice_days":60,"color":"#1EE6DC"},"clientIndustry":{"id":13,"key":13,"name":"SI\/ISV"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":2,"key":2,"name":"\u660e\u786e\u9700\u6c42","color":"#0064ec"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectProductTypes":[{"id":5,"product_type_id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907","budget":"264663","pct":"10","profit":"26466.3","project_id":4181}],"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"projectCreator":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[{"id":12134,"project_id":4181,"product_id":1558,"amount":"88221","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"88221","total_cost":null,"erp_sales_order_product_id":2256,"supplier":null,"product":{"id":1558,"name":"PAN-PA-1420","product_type":5,"product_component":26,"product_brand":8,"product_serie":1344,"product_misc":null,"product_qa":null,"pn":"","description":"Palo Alto Networks PA-1420","created_by":1013,"created_at":"2024-04-15 15:38:17","updated_at":"2026-06-08 18:10:24","pinyin_shortcut":"PANPA1420","product_unit":1,"is_renew":false,"in_out_at":"2026-06-08 18:10:24.791713+08","productType":{"id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907"},"productComponent":{"id":26,"key":26,"name":"\u9632\u706b\u5899\u4e3b\u673a"},"productBrand":{"id":8,"key":8,"name":"PaloAlto"},"productSerie":{"id":1344,"key":1344,"name":"PA-1420\u9632\u706b\u5899\u4e3b\u673a"},"productUnit":{"id":1,"key":1,"name":"\u53f0"}},"erpSalesOrderProduct":{"id":2256,"erp_sales_order_id":1720,"erp_store_id":null,"product_id":1558,"description":"","number":"1","outbound":"0","amount":"88221","total_amount":"88221","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12135,"project_id":4181,"product_id":1558,"amount":"88221","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"88221","total_cost":null,"erp_sales_order_product_id":2257,"supplier":null,"product":{"id":1558,"name":"PAN-PA-1420","product_type":5,"product_component":26,"product_brand":8,"product_serie":1344,"product_misc":null,"product_qa":null,"pn":"","description":"Palo Alto Networks PA-1420","created_by":1013,"created_at":"2024-04-15 15:38:17","updated_at":"2026-06-08 18:10:24","pinyin_shortcut":"PANPA1420","product_unit":1,"is_renew":false,"in_out_at":"2026-06-08 18:10:24.791713+08","productType":{"id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907"},"productComponent":{"id":26,"key":26,"name":"\u9632\u706b\u5899\u4e3b\u673a"},"productBrand":{"id":8,"key":8,"name":"PaloAlto"},"productSerie":{"id":1344,"key":1344,"name":"PA-1420\u9632\u706b\u5899\u4e3b\u673a"},"productUnit":{"id":1,"key":1,"name":"\u53f0"}},"erpSalesOrderProduct":{"id":2257,"erp_sales_order_id":1720,"erp_store_id":null,"product_id":1558,"description":"","number":"1","outbound":"0","amount":"88221","total_amount":"88221","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12136,"project_id":4181,"product_id":1558,"amount":"88221","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"88221","total_cost":null,"erp_sales_order_product_id":2258,"supplier":null,"product":{"id":1558,"name":"PAN-PA-1420","product_type":5,"product_component":26,"product_brand":8,"product_serie":1344,"product_misc":null,"product_qa":null,"pn":"","description":"Palo Alto Networks PA-1420","created_by":1013,"created_at":"2024-04-15 15:38:17","updated_at":"2026-06-08 18:10:24","pinyin_shortcut":"PANPA1420","product_unit":1,"is_renew":false,"in_out_at":"2026-06-08 18:10:24.791713+08","productType":{"id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907"},"productComponent":{"id":26,"key":26,"name":"\u9632\u706b\u5899\u4e3b\u673a"},"productBrand":{"id":8,"key":8,"name":"PaloAlto"},"productSerie":{"id":1344,"key":1344,"name":"PA-1420\u9632\u706b\u5899\u4e3b\u673a"},"productUnit":{"id":1,"key":1,"name":"\u53f0"}},"erpSalesOrderProduct":{"id":2258,"erp_sales_order_id":1720,"erp_store_id":null,"product_id":1558,"description":"","number":"1","outbound":"0","amount":"88221","total_amount":"88221","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}}],"commentCount":{"object_id":4181,"comment":1},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":{"id":1720,"serial_no":"XSDD-20260605-00009","from_date":null,"wrote_date":"2026-06-05","handler":1001,"client_id":3364,"purchase_contract_id":null,"project_id":4181,"sales_contract_id":null,"erp_store_id":null,"status":1,"erp_send_type_id":null,"abstract":null,"description":null,"verify_type":2,"next_verify_user":1001,"next_stop_verify_user":null,"next_cancel_verify_user":null,"verify_at":"","stop_at":null,"cancel_at":null,"refuse_description":null,"is_resubmitted":false,"is_done":false,"number":"3","amount":"264663","created_by":1001,"stop_description":null,"extra":"{\"payment_collection_remind_ahead\":\"1 day\",\"salesContractPaymentCollectionRemindReceivers\":[\"1001\",\"5295\"],\"salesContractPaymentCollectionRemindDates\":null}","outbound_status":false,"is_used":false,"is_cancel":false,"is_settle":false,"is_old":false,"created_at":"2026-06-05 17:59:52","updated_at":"2026-06-05 17:59:52","print_times":null,"payment_collection_remind_ahead":"1 day","payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","salesContractPaymentCollectionRemindReceivers":[{"user_id":1001,"user":{"id":1001,"email":"lrc@toast.com.cn","name":"\u5218\u4eba\u8bda","user_status":"1","pinyin_shortcut":"lrc","sex":"M","birth_date":"1977-04-06","entry_date":"2005-06-06","department_id":4,"department_position_id":7,"mobile":"13501128560","telephone":"88864628","created_at":"2017-02-06 13:05:08","updated_at":"2026-04-24 14:52:43","id_number":"220523197704064411","native_place":"\u5409\u6797","graduate_school":"\u5409\u6797\u5de5\u4e1a\u5927\u5b66","specialty":"\u8ba1\u7b97\u673a\u5e94\u7528","education":"\u672c\u79d1","telephone_area_code":"010","telephone_extension_number":"821","leave_date":null,"pinyin1":"liu","pinyin2":"ren","pinyin3":"cheng","pinyin4":null,"namecut1":"\u5218","namecut2":"\u4eba","namecut3":"\u8bda","namecut4":null,"budget_count":"2000425.78","profit_count":"88226.214434000000000000","bargain_count":"5","opportunity_budget_count":"697106.06","opportunity_count":"4","work_log_score":"0","e_implement_count":"0","e_budget_count":"0","e_profit_count":"0","e_client_count":"0","e_project_count":"0","e_point_count":"0","visit_resource_sync":false,"client_lock":false,"view_public":false,"client_remind_alarm_before":null,"work_on_remind":false,"work_off_remind":false,"check_client_same":true,"calendar_view_type":7,"search_all_client":true,"view_product_cost":true,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}},{"user_id":5295,"user":{"id":5295,"email":"weizewen@toast.com.cn","name":"\u9b4f\u6cfd\u6587","user_status":"1","pinyin_shortcut":"wzw","sex":"F","birth_date":"1996-07-26","entry_date":"2021-04-07","department_id":1,"department_position_id":2,"mobile":"18601965887","telephone":"88864628","created_at":"2021-04-07 09:21:31","updated_at":"2021-11-29 16:29:49","id_number":"13112219960726282X","native_place":"\u6cb3\u5317\u7701\u8861\u6c34\u5e02","graduate_school":"\u5929\u6d25\u6e24\u6d77\u804c\u4e1a\u6280\u672f\u5b66\u9662","specialty":"\u836f\u7269\u5236\u5242\u6280\u672f","education":"\u4e13\u79d1","telephone_area_code":"010","telephone_extension_number":"","leave_date":null,"pinyin1":"wei","pinyin2":"ze","pinyin3":"wen","pinyin4":null,"namecut1":"\u9b4f","namecut2":"\u6cfd","namecut3":"\u6587","namecut4":null,"budget_count":"176680.2","profit_count":"37681.430340000000000000","bargain_count":"5","opportunity_budget_count":"623519","opportunity_count":"8","work_log_score":"18","e_implement_count":"0","e_budget_count":"0","e_profit_count":"0","e_client_count":"0","e_project_count":"0","e_point_count":"0","visit_resource_sync":false,"client_lock":false,"view_public":true,"client_remind_alarm_before":4,"work_on_remind":true,"work_off_remind":true,"check_client_same":true,"calendar_view_type":7,"search_all_client":true,"view_product_cost":true,"avatar":{"id":137,"user_id":5295,"name":"\/files\/cdn\/a57be577deb434\/avatar\/85c67d90-6989-3d4e-bbf8-31d69b6e8ffe.jpg"}}}]},"remain_display":4,"progress_remain_display":4,"forecast_remain_display":4,"projectProductTotalAmount":264663,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":false,"projectProductTotalNumber":3,"unissued_invoice":264663,"is_exceeded":true,"can_update":false,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u660e\u786e\u9700\u6c42","is_collected":false,"bgcolor":"#0064ec","can_invoice":false,"can_payment":false,"duration_display":4,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"26.47\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":1,"un_collected":0,"un_invoiced":0,"object_type":1},{"id":4024,"client_id":3415,"project_status":5,"project_progress":2,"budget":"100000","profit_pct":"10","bargain_date":"2026-11-30","description":null,"created_by":1005,"created_at":"2025-10-28 10:42:40","updated_at":"2026-06-05 17:40:43","engineer_id":null,"project_title":"\u6df1\u4fe1\u670d\u9632\u706b\u5899","collected":"0","status_updated_at":"2025-12-21 22:35:11.546194+08","success_rate":null,"comment":"2025\/10\/24\u636e\u5317\u4eac\u4e2d\u91d1\u4fdd\u9669\u7ecf\u7eaa\u6709\u9650\u516c\u53f8IT\u90e8\u7ecf\u7406\u620e\u6cfd\u9e9f\u4ecb\u7ecd\uff1a\u516c\u53f8\u4f7f\u7528\u8fea\u666e\u7684\u5b89\u5168\u4ea7\u54c1\uff0c\u540e\u671f\u60f3\u4f7f\u7528\u6df1\u4fe1\u670d\u4ea7\u54c1\uff0c\u516c\u53f8\u57282026\u5e74Q2 4\u6708\u521d\u4f1a\u91c7\u8d2d\u56fd\u4ea7\u5316\u7684\u8d1f\u8f7d\u5747\u8861\u4ea7\u54c1\uff0c\u4f1a\u9644\u5e26\u4e00\u4e9b\u9632\u706b\u5899\u4ea7\u54c1\uff0c\u5f53\u524d\u540c\u6b65\u505a\u5185\u90e8\u8bc4\u4f30\u548c\u65b0\u7f51\u5efa\u8bbe\u8bc4\u4f30\uff0c\u60f3\u770b\u4e0b\u6709\u54ea\u4e9b\u578b\u53f7\uff0c\u6bd4\u8f83\u5173\u6ce8\u6027\u80fd\u6307\u6807\uff0c\u770b\u8981\u7528\u591a\u5927\u6027\u80fd\u7684\uff0c\u9884\u7b97\u5b89\u5168\u90e8\u5206500-600\u4e07\uff0c\u62db\u6807\u5f62\u5f0f\uff0c\u662f\u5efa\u8bae\u4eba\uff0c\u540c\u610f\u540e\u671f\u9500\u552e\u8054\u7cfb\uff0c\u624b\u673a\u53f7:15801193167\u90ae\u7bb1\uff1aami2222@163.com\u3002","contract_type":1,"progress_updated_at":"2025-11-03 09:46:02.620659+08","forecast_updated_at":"2025-12-21 22:35:11.546194+08","end_at":"2026-06-05 17:40:43","pinyin_shortcut":"sxffhq","creator":1011,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":true,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"10000.0000000000000000","remain":"170 days 17:22:59.338709","progress_remain":"219 days 06:12:08.264244","forecast_remain":"170 days 17:22:59.338709","lost_contact_days":"4.96748709378472","last_contact":"2026-06-05 16:45:00","last_arrive_days":null,"last_arrive":null,"duration":"220 days 06:58:03.570495","issued_invoices":null,"client":{"id":3415,"key":3415,"name":"\u5317\u4eac\u4e2d\u91d1\u4fdd\u9669\u7ecf\u7eaa\u6709\u9650\u516c\u53f8","logo":null,"client_type":5,"client_class":43,"client_industry":10,"sales_rep":null,"salesRep":null,"clientType":{"id":5,"key":5,"name":"\u836f\u54c1\u96f6\u552e\u4f01\u4e1a\uff08\u5355\u4f53\uff09"},"clientClass":{"id":43,"key":43,"name":"\u6f5c\u529b\u5ba2\u6237","notice_days":60,"color":"#1EE6DC"},"clientIndustry":{"id":10,"key":10,"name":"\u91d1\u878d"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":5,"key":5,"name":"\u5546\u673a\u6401\u7f6e","color":"#222222"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectProductTypes":[{"id":5,"product_type_id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907","budget":"100000","pct":"10","profit":"10000","project_id":4024}],"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"createdBy":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","department_id":1,"avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"projectCreator":{"id":1011,"key":1011,"name":"\u97e9\u96c5\u82b3","sex":"F","department_id":3,"avatar":{"id":17,"user_id":1011,"name":"\/files\/cdn\/a57be577deb434\/avatar\/b54747f4-248d-380e-93bc-0f62f769e70d.png"}},"salesRep":null,"casePoints":null,"workLogCount":{"project_id":4024,"count":1},"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":null,"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":4024,"comment":1},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":{"id":223,"project_id":4024,"used_client":null,"budget":null,"profit":null,"profit_pct":null,"collected_plan":null,"remind_ahead":null,"usedClient":null,"projectUsedClientPaymentCollectionRemindReceivers":[],"projectUsedClientPaymentCollectionRemindDates":[],"projectUsedClientPayments":[],"projectUsedClientInvoices":[],"invoiced":0,"collected":0,"un_invoiced":0,"un_collected":0,"remind_ahead_display":"\u4e0d\u63d0\u9192","project_used_client_collected_plan":0,"project_used_client_collected_plan_pct":""},"erpSalesOrderVerify":null,"remain_display":170,"progress_remain_display":219,"forecast_remain_display":170,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":100000,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u5546\u673a\u6401\u7f6e","is_collected":false,"bgcolor":"#222222","can_invoice":false,"can_payment":false,"duration_display":220,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":false,"is_admin":true,"lost_contact_days_display":"4\u5929\u524d","can_view_product":true,"budget_display":"10\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":0,"un_invoiced":0,"object_type":1},{"id":4174,"client_id":3462,"project_status":3,"project_progress":5,"budget":"0","profit_pct":"0","bargain_date":"2026-06-02","description":null,"created_by":1001,"created_at":"2026-06-02 16:52:29","updated_at":"2026-06-05 17:35:57","engineer_id":null,"project_title":"\u9500\u552e\u7ebf\u7d22\u751f\u621020260602001","collected":"0","status_updated_at":"2026-06-04 17:47:55.152553+08","success_rate":null,"comment":"\u4e2a\u7535\u996d\u9505\u591a\u5c11","contract_type":1,"progress_updated_at":"2026-06-04 17:47:55.152553+08","forecast_updated_at":"2026-06-04 17:47:55.152553+08","end_at":"2026-06-05 17:35:57","pinyin_shortcut":"xsxssc20260602001","creator":1001,"used_client":null,"from_contact":3649,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":true,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"0.00000000000000000000","remain":"5 days 22:10:15.73235","progress_remain":"5 days 22:10:15.73235","forecast_remain":"5 days 22:10:15.73235","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"3 days 00:43:27.572504","issued_invoices":null,"client":{"id":3462,"key":3462,"name":"\u5927\u59d1\u8bf4\u7684\u98ce\u683c","logo":null,"client_type":1,"client_class":1,"client_industry":1,"sales_rep":1001,"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"clientType":{"id":1,"key":1,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u5168\u8d44\u8d28\uff09"},"clientClass":{"id":1,"key":1,"name":"\u6838\u5fc3\u5ba2\u6237","notice_days":10,"color":"#E89F0E"},"clientIndustry":{"id":1,"key":1,"name":"\u653f\u5e9c"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":5,"key":5,"name":"\u5546\u52a1\u62a5\u4ef7","description":"\u5b9a\u4e49\uff1a1.\u62a5\u4ef7\u6709\u6548\u671f 2.\u6838\u7b97\u5229\u6da6\u7387 3. \u4ea4\u8d27\u65b9\u5f0f\u53ca\u65f6\u95f4 4.\u9a8c\u6536\u65b9\u5f0f 5.\u6536\u6b3e\u65b9\u5f0f 6.\u8fdd\u7ea6\u6761\u6b3e \n\u65b9\u6cd5\uff1a\u7528\u516c\u53f8\u6807\u51c6\u7684\u62a5\u4ef7\u5355\u6837\u5f0f\u5411\u5ba2\u6237\u63d0\u4f9b\u62a5\u4ef7\u3002"},"projectProductTypes":[{"id":2,"product_type_id":2,"key":2,"name":"\u670d\u52a1\u5668","budget":"0","pct":"0","profit":"0","project_id":4174}],"salesForecast":{"id":181,"key":181,"name":"\u6211\u81ea\u5df1\u505a\u5e84","description":"\u5382\u5546\u542c\u6211\u652f\u914d\uff0c\u7ed9\u6211\u597d\u4ef7\u683c\u3002\n\u5ba2\u6237\u542c\u6211\u652f\u914d\uff0c\u6309\u7167\u6211\u7684\u65b9\u5f0f\u91c7\u8d2d\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"createdBy":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"},"department":{"id":4,"key":4,"name":"\u603b\u7ecf\u7406"}},"projectCreator":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","department_id":4,"avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"salesRep":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":{"id":4486,"from_project":4174,"payment_collection_remind_ahead":"1 day","serial_no":"2026-06-02-001","is_settle":false,"is_deliver":false,"is_outbound":false,"erp_settle_amount":"0","erp_un_settle_amount":"0","including_tax":true,"amount":"0","contractScans":[],"receiptScans":[],"verifyScans":[],"erpCollectTickets":[],"salesContractPayments":[],"salesContractInvoices":[],"salesContractPaymentCollectionRemindDates":[],"salesContractPaymentCollectionRemindReceivers":[{"id":10171,"user_id":1001,"key":1001,"contract_id":4486,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"salesSupplierRels":[],"payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","invoiced":0},"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":4174,"comment":3},"unreadComments":null,"fromContact":{"id":3649,"key":3649,"name":"\u59da\u96ea\u7eaf","client_id":982,"supplier_id":null,"mobiles":[{"id":4388,"contact_id":3649,"mobile":"17610273960","mp_open_id":"oagch6dTsMHJsvajGlohtNzbymvw"}],"client":{"id":982,"key":982,"name":"\u4e2d\u56fd\u4fe1\u606f\u5b89\u5168\u7814\u7a76\u6240"},"supplier":null},"projectContactPoints":[],"erpSalesOrder":{"id":1711,"serial_no":"XSDD-20260602-00001","from_date":null,"wrote_date":"2026-06-02","handler":1001,"client_id":3462,"purchase_contract_id":null,"project_id":4174,"sales_contract_id":4486,"erp_store_id":null,"status":2,"erp_send_type_id":null,"abstract":null,"description":null,"verify_type":2,"next_verify_user":null,"next_stop_verify_user":null,"next_cancel_verify_user":null,"verify_at":"2026-06-02 16:53:15","stop_at":null,"cancel_at":null,"refuse_description":null,"is_resubmitted":false,"is_done":false,"number":"0","amount":"0","created_by":1001,"stop_description":null,"extra":"{\"payment_collection_remind_ahead\":\"1 day\",\"salesContractPaymentCollectionRemindReceivers\":[\"1001\"],\"salesContractPaymentCollectionRemindDates\":null}","outbound_status":false,"is_used":false,"is_cancel":false,"is_settle":false,"is_old":false,"created_at":"2026-06-02 16:53:15","updated_at":"2026-06-02 16:53:15","print_times":null},"projectUsedClient":null,"erpSalesOrderVerify":null,"remain_display":5,"progress_remain_display":5,"forecast_remain_display":5,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":0,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u6536\u6b3e\u5b8c\u6210","is_collected":true,"bgcolor":"#6200fe","can_invoice":true,"can_payment":true,"duration_display":3,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"0","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":"0","un_invoiced":0,"object_type":1},{"id":4146,"client_id":93,"project_status":3,"project_progress":3,"budget":"500000","profit_pct":"15","bargain_date":"2026-06-05","description":null,"created_by":1005,"created_at":"2026-03-20 13:31:49","updated_at":"2026-06-05 11:27:18","engineer_id":null,"project_title":"\u98de\u5854\u96f6\u4fe1\u4efb\u65b0\u8d2d","collected":"0","status_updated_at":"2026-06-05 11:27:18.441125+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2026-03-20 13:31:49.105412+08","forecast_updated_at":"2026-06-05 11:21:31.150777+08","end_at":"","pinyin_shortcut":"ftlxrxg","creator":1005,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":true,"collected_plan":0,"change_status_to":5,"is_verify":true,"profits":"75000.0000000000000000","remain":"5 days 04:30:52.443778","progress_remain":"82 days 02:26:21.779491","forecast_remain":"5 days 04:36:39.734126","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"82 days 02:26:21.779491","issued_invoices":null,"client":{"id":93,"key":93,"name":"\u5eb7\u9f99\u5316\u6210(\u5317\u4eac)\u65b0\u836f\u6280\u672f\u80a1\u4efd\u6709\u9650\u516c\u53f8","logo":"","client_type":3,"client_class":47,"client_industry":5,"sales_rep":1005,"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"clientType":{"id":3,"key":3,"name":"\u4e2a\u4eba\u6d88\u8d39\u8005"},"clientClass":{"id":47,"key":47,"name":"\u76ee\u6807\u5ba2\u6237","notice_days":30,"color":"#EB13C3"},"clientIndustry":{"id":5,"key":5,"name":"\u5236\u9020"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[],"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectProductTypes":[{"id":5,"product_type_id":5,"key":5,"name":"\u5b89\u5168\u8bbe\u5907","budget":"500000","pct":"15","profit":"75000","project_id":4146}],"salesForecast":{"id":172,"key":172,"name":"\u6211\u4e0e\u5382\u5546\u8054\u624b","description":"\u4e0e\u5382\u5546\u8054\u624b\u5171\u540c\u641e\u5b9a\u5ba2\u6237\uff0c\u5229\u6da6\u5404\u536050%"},"opportunityFrom":null,"purchaseType":{"id":164,"key":164,"name":"\u591a\u5bb6\u6bd4\u4ef7"},"createdBy":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","department_id":1,"avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"},"department":{"id":1,"key":1,"name":"\u9500\u552e\u90e8"}},"projectCreator":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","department_id":1,"avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"salesRep":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":{"id":4497,"from_project":4146,"payment_collection_remind_ahead":"1 day","serial_no":"2026-06-05-007","is_settle":false,"is_deliver":false,"is_outbound":false,"erp_settle_amount":"0","erp_un_settle_amount":"500000","including_tax":true,"amount":"500000","contractScans":[],"receiptScans":[],"verifyScans":[],"erpCollectTickets":[],"salesContractPayments":[],"salesContractInvoices":[],"salesContractPaymentCollectionRemindDates":[],"salesContractPaymentCollectionRemindReceivers":[{"id":10168,"user_id":1001,"key":1001,"contract_id":4497,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}},{"id":10169,"user_id":5087,"key":5087,"contract_id":4497,"user":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}}},{"id":10170,"user_id":1005,"key":1005,"contract_id":4497,"user":{"id":1005,"key":1005,"name":"\u8d75\u660e\uff08\u9500\u552e\u4eba\u5458\uff09","sex":"F","avatar":{"id":16,"user_id":1005,"name":"\/files\/cdn\/a57be577deb434\/avatar\/56876dde-37eb-39fc-853a-47eaef6510e5.png"}}}],"salesSupplierRels":[],"payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","invoiced":0},"projectRemindReceivers":[],"projectProductRels":[],"commentCount":{"object_id":4146,"comment":3},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":null,"remain_display":5,"progress_remain_display":82,"forecast_remain_display":5,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":500000,"is_exceeded":false,"can_update":false,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_invoice":true,"can_payment":true,"duration_display":82,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"50\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":2,"un_collected":"500000","un_invoiced":500000,"object_type":1},{"id":3957,"client_id":2130,"project_status":3,"project_progress":2,"budget":"20000000","profit_pct":"20","bargain_date":"2026-06-05","description":null,"created_by":5087,"created_at":"2025-08-29 11:38:51","updated_at":"2026-06-05 11:20:29","engineer_id":null,"project_title":"\u4e2d\u56fd\u4eba\u6c11\u89e3\u653e\u519b\u603b\u53c2\u8c0b\u90e8\u7b2c\u4e94\u5341\u4e00\u7814\u7a76\u6240\u8bd5\u5236\u5de5\u5382-\u9ad8\u6027\u80fd","collected":"0","status_updated_at":"2026-06-05 11:20:29.898501+08","success_rate":null,"comment":"\u9884\u7b972000\u4e07","contract_type":1,"progress_updated_at":"2025-08-29 11:38:51.97137+08","forecast_updated_at":"2025-08-29 11:38:51.97137+08","end_at":"","pinyin_shortcut":"zgrmjfjzcmbdwsyyjsszgcgxn","creator":5087,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":true,"collected_plan":0,"change_status_to":4,"is_verify":true,"profits":"4000000.000000000000","remain":"5 days 04:37:40.986402","progress_remain":"285 days 04:19:18.913533","forecast_remain":"285 days 04:19:18.913533","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"285 days 04:19:18.913533","issued_invoices":null,"client":{"id":2130,"key":2130,"name":"\u5317\u4eac\u4eac\u822a\u8ba1\u7b97\u901a\u8baf\u7814\u7a76\u6240304","logo":null,"client_type":6,"client_class":47,"client_industry":5,"sales_rep":5087,"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"clientType":{"id":6,"key":6,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u666e\u901a\uff09"},"clientClass":{"id":47,"key":47,"name":"\u76ee\u6807\u5ba2\u6237","notice_days":30,"color":"#EB13C3"},"clientIndustry":{"id":5,"key":5,"name":"\u5236\u9020"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[{"project_id":3957,"value":"1","key":1015,"name":"\u5434\u660a"}],"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectProductTypes":[{"id":2,"product_type_id":2,"key":2,"name":"\u670d\u52a1\u5668","budget":"20000000","pct":"20","profit":"4000000","project_id":3957}],"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"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"}},"projectCreator":{"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"}},"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"casePoints":null,"workLogCount":null,"caseCount":null,"salesTimeCount":null,"implementTimeCount":null,"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":null,"buildContract":{"id":4496,"from_project":3957,"payment_collection_remind_ahead":"1 day","serial_no":"2026-06-05-006","is_settle":false,"is_deliver":false,"is_outbound":false,"erp_settle_amount":"0","erp_un_settle_amount":"20000000","including_tax":true,"amount":"20000000","contractScans":[],"receiptScans":[],"verifyScans":[],"erpCollectTickets":[],"salesContractPayments":[],"salesContractInvoices":[],"salesContractPaymentCollectionRemindDates":[],"salesContractPaymentCollectionRemindReceivers":[{"id":10163,"user_id":1001,"key":1001,"contract_id":4496,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}},{"id":10164,"user_id":5087,"key":5087,"contract_id":4496,"user":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}}}],"salesSupplierRels":[],"payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","invoiced":0},"projectRemindReceivers":[{"id":2194,"user_id":1001,"key":1001,"project_id":3957,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"projectProductRels":[],"commentCount":{"object_id":3957,"comment":3},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":null,"projectUsedClient":null,"erpSalesOrderVerify":null,"remain_display":5,"progress_remain_display":285,"forecast_remain_display":285,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":20000000,"is_exceeded":false,"can_update":false,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_invoice":true,"can_payment":true,"duration_display":285,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"2000\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":2,"un_collected":"20000000","un_invoiced":20000000,"object_type":1},{"id":3796,"client_id":2125,"project_status":3,"project_progress":3,"budget":"790000","profit_pct":"25","bargain_date":"2026-06-05","description":null,"created_by":5087,"created_at":"2025-03-09 10:00:35","updated_at":"2026-06-05 11:11:50","engineer_id":null,"project_title":"deepseek\u79c1\u6709\u5316\u90e8\u7f72","collected":"0","status_updated_at":"2026-06-05 11:11:50.793351+08","success_rate":null,"comment":"","contract_type":1,"progress_updated_at":"2025-05-25 16:43:18.119966+08","forecast_updated_at":"2025-05-25 16:43:18.119966+08","end_at":"","pinyin_shortcut":"deepseeksyhbs","creator":5087,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":null,"is_sales_order_ready":true,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"197500.0000000000000000","remain":"5 days 04:46:20.091552","progress_remain":"380 days 23:14:52.764937","forecast_remain":"380 days 23:14:52.764937","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"458 days 05:57:35.753384","issued_invoices":null,"client":{"id":2125,"key":2125,"name":"\u5317\u4eac\u673a\u5668\u5236\u9020\u6709\u9650\u516c\u53f8","logo":null,"client_type":6,"client_class":47,"client_industry":20,"sales_rep":5087,"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"clientType":{"id":6,"key":6,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u666e\u901a\uff09"},"clientClass":{"id":47,"key":47,"name":"\u76ee\u6807\u5ba2\u6237","notice_days":30,"color":"#EB13C3"},"clientIndustry":{"id":20,"key":20,"name":"\u5176\u4ed6"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[{"project_id":3796,"value":"1","key":1015,"name":"\u5434\u660a"}],"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":3,"key":3,"name":"\u65b9\u6848\u8bbe\u8ba1","description":"\u5b9a\u4e49\uff1a\u6839\u636e\u5ba2\u6237\u9762\u4e34\u7684\u95ee\u9898\u53ca\u6311\u6218\uff0c \u63d0\u51fa\u6211\u65b9\u7684\u4ea7\u54c1\u65b9\u6848\u3002\u5177\u4f53\u7684\u54c1\u724c\uff0c \u578b\u53f7\uff0c\u914d\u7f6e\uff0c\u4fdd\u4fee\u3002 \n\u65b9\u6cd5\uff1a\u5c06\u5ba2\u6237\u7684\u95ee\u9898\u53ca\u9700\u6c42\u7528\u6587\u5b57\u63cf\u8ff0\u51fa\u6765\uff0c\u4ea4\u7ed9\u552e\u524d\u6216\u5382\u5546\u3002"},"projectProductTypes":[{"id":2,"product_type_id":2,"key":2,"name":"\u670d\u52a1\u5668","budget":"790000.00","pct":"25","profit":"197500","project_id":3796}],"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"opportunityFrom":null,"purchaseType":{"id":128,"key":128,"name":"\u516c\u5f00\u62db\u6807"},"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"}},"projectCreator":{"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"}},"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"casePoints":{"project_id":3796,"points":"62"},"workLogCount":null,"caseCount":{"project_id":3796,"count":2},"salesTimeCount":null,"implementTimeCount":{"project_id":3796,"sum":"2.46666666666667","times":"2"},"presalesTimeCount":null,"engineerTimeCount":null,"reimbursementAmountSum":{"project_id":3796,"sum":"215.95"},"buildContract":{"id":4492,"from_project":3796,"payment_collection_remind_ahead":"1 day","serial_no":"2026-06-05-002","is_settle":false,"is_deliver":false,"is_outbound":false,"erp_settle_amount":"0","erp_un_settle_amount":"790000","including_tax":true,"amount":"790000","contractScans":[],"receiptScans":[],"verifyScans":[],"erpCollectTickets":[],"salesContractPayments":[],"salesContractInvoices":[],"salesContractPaymentCollectionRemindDates":[],"salesContractPaymentCollectionRemindReceivers":[{"id":10154,"user_id":5087,"key":5087,"contract_id":4492,"user":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}}}],"salesSupplierRels":[],"payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","invoiced":0},"projectRemindReceivers":[{"id":2190,"user_id":1001,"key":1001,"project_id":3796,"user":{"id":1001,"key":1001,"name":"\u5218\u4eba\u8bda","sex":"M","avatar":{"id":2,"user_id":1001,"name":"\/files\/cdn\/\/avatar\/e868e40f-1256-329e-9b1c-74e095049622.png"}}}],"projectProductRels":[],"commentCount":{"object_id":3796,"comment":2},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":{"id":1716,"serial_no":"XSDD-20260605-00005","from_date":null,"wrote_date":"2026-06-05","handler":5087,"client_id":2125,"purchase_contract_id":null,"project_id":3796,"sales_contract_id":4492,"erp_store_id":null,"status":2,"erp_send_type_id":null,"abstract":null,"description":null,"verify_type":2,"next_verify_user":null,"next_stop_verify_user":null,"next_cancel_verify_user":null,"verify_at":"2026-06-05 11:12:45","stop_at":null,"cancel_at":null,"refuse_description":null,"is_resubmitted":false,"is_done":false,"number":"0","amount":"790000","created_by":5087,"stop_description":null,"extra":"{\"payment_collection_remind_ahead\":\"1 day\",\"salesContractPaymentCollectionRemindReceivers\":[\"5087\"],\"salesContractPaymentCollectionRemindDates\":null}","outbound_status":false,"is_used":false,"is_cancel":false,"is_settle":false,"is_old":false,"created_at":"2026-06-05 11:11:50","updated_at":"2026-06-05 11:12:45","print_times":null},"projectUsedClient":{"id":315,"project_id":3796,"used_client":null,"budget":null,"profit":null,"profit_pct":null,"collected_plan":null,"remind_ahead":null,"usedClient":null,"projectUsedClientPaymentCollectionRemindReceivers":[],"projectUsedClientPaymentCollectionRemindDates":[],"projectUsedClientPayments":[],"projectUsedClientInvoices":[],"invoiced":0,"collected":0,"un_invoiced":0,"un_collected":0,"remind_ahead_display":"\u4e0d\u63d0\u9192","project_used_client_collected_plan":0,"project_used_client_collected_plan_pct":""},"erpSalesOrderVerify":null,"remain_display":5,"progress_remain_display":380,"forecast_remain_display":380,"projectProductTotalAmount":0,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":true,"projectProductTotalNumber":0,"unissued_invoice":790000,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_invoice":true,"can_payment":true,"duration_display":458,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"79\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":"790000","un_invoiced":790000,"object_type":1},{"id":3854,"client_id":2128,"project_status":3,"project_progress":2,"budget":"44540520","profit_pct":"25","bargain_date":"2026-06-05","description":null,"created_by":5087,"created_at":"2025-05-13 09:35:09","updated_at":"2026-06-05 11:10:13","engineer_id":null,"project_title":"\u5907\u4efd\u9879\u76ee\u4e8c\u671f","collected":"0","status_updated_at":"2026-06-05 11:10:13.765295+08","success_rate":null,"comment":"\u4e8c\u671f\u6269\u5bb9","contract_type":1,"progress_updated_at":"2026-06-04 12:35:02.427663+08","forecast_updated_at":"2026-06-04 12:35:02.427663+08","end_at":"","pinyin_shortcut":"bfxmeq","creator":5087,"used_client":null,"from_contact":null,"total_contact_point":null,"paid_contact_point":null,"project_product_version_id":1349,"is_sales_order_ready":false,"collected_plan":0,"change_status_to":null,"is_verify":false,"profits":"11135130.000000000000","remain":"5 days 04:47:57.119608","progress_remain":"6 days 03:23:08.45724","forecast_remain":"6 days 03:23:08.45724","lost_contact_days":null,"last_contact":"","last_arrive_days":null,"last_arrive":null,"duration":"393 days 06:23:01.354979","issued_invoices":null,"client":{"id":2128,"key":2128,"name":"\u5317\u4eac\u79d1\u6280\u6709\u9650\u516c\u53f8","logo":null,"client_type":6,"client_class":47,"client_industry":20,"sales_rep":5087,"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"clientType":{"id":6,"key":6,"name":"\u836f\u54c1\u6279\u53d1\u4f01\u4e1a\uff08\u666e\u901a\uff09"},"clientClass":{"id":47,"key":47,"name":"\u76ee\u6807\u5ba2\u6237","notice_days":30,"color":"#EB13C3"},"clientIndustry":{"id":20,"key":20,"name":"\u5176\u4ed6"}},"usedClient":null,"contractType":{"id":1,"key":1,"name":"\u4ea7\u54c1\u9500\u552e"},"projectArchitects":[{"project_id":3854,"value":"1","key":1015,"name":"\u5434\u660a"}],"projectStatus":{"id":3,"key":3,"name":"\u5546\u673a\u6210\u4ea4","color":"#53cd02"},"projectProgress":{"id":2,"key":2,"name":"\u786e\u8ba4\u95ee\u9898","description":"\u5b9a\u4e49\uff1a\u786e\u8ba4\u5ba2\u6237\u5f53\u524d\u9047\u5230\u7684\u5b9e\u9645\u95ee\u9898\uff0c \u6216\u8005\u5f85\u529e\u4efb\u52a1\uff0c\u6216\u8005\u9762\u4e34\u54ea\u4e9b\u6311\u6218\uff1f\n \u65b9\u6cd5\uff1a\u7b2c\u4e00\u6b65\uff1a5why\u6cd5\u8be2\u95ee\u771f\u95ee\u9898 \u7b2c\u4e8c\u6b65\uff1a\u53cd\u95ee\u5982\u679c\u4e0d\u89e3\u51b3\u4f1a\u600e\u6837\uff1f"},"projectProductTypes":[{"id":23,"product_type_id":23,"key":23,"name":"\u793c\u54c1","budget":"53588","pct":"25","profit":"13397","project_id":3854},{"id":21,"product_type_id":21,"key":21,"name":"\u6570\u7801\u8bbe\u5907","budget":"44","pct":"25","profit":"11","project_id":3854},{"id":4,"product_type_id":4,"key":4,"name":"\u7f51\u7edc\u8bbe\u5907 ","budget":"44486888","pct":"25","profit":"11121722","project_id":3854}],"salesForecast":{"id":142,"key":142,"name":"\u6211\u4e0e\u5ba2\u6237\u8054\u624b","description":"\u4e0e\u5ba2\u6237\u8054\u624b\u5411\u5382\u5546\u4e89\u53d6\u6700\u4f18\u60e0\u4ef7\u683c\u3002\u5229\u6da6\u540450%\u3002"},"opportunityFrom":null,"purchaseType":{"id":165,"key":165,"name":"\u534f\u8bae\u4f9b\u8d27"},"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"}},"projectCreator":{"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"}},"salesRep":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}},"casePoints":{"project_id":3854,"points":"113"},"workLogCount":null,"caseCount":{"project_id":3854,"count":3},"salesTimeCount":null,"implementTimeCount":{"project_id":3854,"sum":"8.1","times":"1"},"presalesTimeCount":{"project_id":3854,"sum":"0.05","times":"1"},"engineerTimeCount":null,"reimbursementAmountSum":{"project_id":3854,"sum":"194.66"},"buildContract":{"id":4491,"from_project":3854,"payment_collection_remind_ahead":"1 day","serial_no":"2026-06-05-001","is_settle":false,"is_deliver":false,"is_outbound":false,"erp_settle_amount":"0","erp_un_settle_amount":"44540520","including_tax":true,"amount":"44540520","contractScans":[],"receiptScans":[],"verifyScans":[],"erpCollectTickets":[],"salesContractPayments":[],"salesContractInvoices":[],"salesContractPaymentCollectionRemindDates":[],"salesContractPaymentCollectionRemindReceivers":[{"id":10153,"user_id":5087,"key":5087,"contract_id":4491,"user":{"id":5087,"key":5087,"name":"\u5218\u5fae","sex":"F","avatar":{"id":62,"user_id":5087,"name":"\/files\/cdn\/a57be577deb434\/avatar\/06f75b3a-7b6c-37a8-81c0-b2934104daa7.png"}}}],"salesSupplierRels":[],"payment_collection_remind_ahead_display":"\u63d0\u524d1\u5929","invoiced":0},"projectRemindReceivers":[],"projectProductRels":[{"id":12044,"project_id":3854,"product_id":2261,"amount":"44433443","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"44433443","total_cost":null,"erp_sales_order_product_id":2251,"supplier":null,"product":{"id":2261,"name":"MK-MC300","product_type":4,"product_component":52,"product_brand":4,"product_serie":1769,"product_misc":null,"product_qa":null,"pn":"","description":"MK-MC300\u62fe\u97f3\u9ea6\u514b\u98ce\uff0c\u542b5\u7c73\u7ebf","created_by":1013,"created_at":"2026-03-16 10:07:43","updated_at":"2026-05-21 18:10:51","pinyin_shortcut":"MKMC300","product_unit":3,"is_renew":false,"in_out_at":"2026-05-21 18:10:51.145864+08","productType":{"id":4,"key":4,"name":"\u7f51\u7edc\u8bbe\u5907 "},"productComponent":{"id":52,"key":52,"name":"\u534f\u4f5c"},"productBrand":{"id":4,"key":4,"name":"\u8054\u60f3"},"productSerie":{"id":1769,"key":1769,"name":"\u5168\u5411\u9ea6\u514b\u98ce"},"productUnit":{"id":3,"key":3,"name":"\u4e2a"}},"erpSalesOrderProduct":{"id":2251,"erp_sales_order_id":1715,"erp_store_id":null,"product_id":2261,"description":"","number":"1","outbound":"0","amount":"44433443","total_amount":"44433443","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12045,"project_id":3854,"product_id":1372,"amount":"53445","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"53445","total_cost":null,"erp_sales_order_product_id":2252,"supplier":null,"product":{"id":1372,"name":"LC-LC \u5149\u7ea4\u7ebf 5\u7c73","product_type":4,"product_component":43,"product_brand":134,"product_serie":1047,"product_misc":null,"product_qa":null,"pn":"","description":"","created_by":1013,"created_at":"2024-01-26 16:48:55","updated_at":"2026-04-23 16:19:02","pinyin_shortcut":"LCLCgxx5m","product_unit":6,"is_renew":false,"in_out_at":"2026-04-23 16:19:02.133182+08","productType":{"id":4,"key":4,"name":"\u7f51\u7edc\u8bbe\u5907 "},"productComponent":{"id":43,"key":43,"name":"\u7f51\u7edc\u8bbe\u5907\u914d\u4ef6"},"productBrand":{"id":134,"key":134,"name":"\u7b2c\u4e09\u65b9"},"productSerie":{"id":1047,"key":1047,"name":"LC-LC \u5149\u7ea4\u7ebf 5\u7c73"},"productUnit":{"id":6,"key":6,"name":"\u6761"}},"erpSalesOrderProduct":{"id":2252,"erp_sales_order_id":1715,"erp_store_id":null,"product_id":1372,"description":"","number":"1","outbound":"0","amount":"53445","total_amount":"53445","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12046,"project_id":3854,"product_id":2265,"amount":"53534","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"53534","total_cost":null,"erp_sales_order_product_id":2253,"supplier":null,"product":{"id":2265,"name":"\u6b27\u4e3d\u8587\u5170Olivoila \u6a44\u6984\u6cb9500MLx2 \u7cbe\u9009\u793c\u76d2","product_type":23,"product_component":195,"product_brand":284,"product_serie":1775,"product_misc":null,"product_qa":null,"pn":"","description":"","created_by":1013,"created_at":"2026-03-20 14:34:40","updated_at":"2026-06-08 18:13:58","pinyin_shortcut":"olwlOlivoilagly500MLx2jxlh","product_unit":9,"is_renew":false,"in_out_at":"2026-06-08 18:13:58.834274+08","productType":{"id":23,"key":23,"name":"\u793c\u54c1"},"productComponent":{"id":195,"key":195,"name":"\u8425\u517b\u98df\u54c1\u6ecb\u8865"},"productBrand":{"id":284,"key":284,"name":"\u6b27\u4e3d\u8587\u5170"},"productSerie":{"id":1775,"key":1775,"name":"\u98df\u7528\u6cb9"},"productUnit":{"id":9,"key":9,"name":"\u76d2"}},"erpSalesOrderProduct":{"id":2253,"erp_sales_order_id":1715,"erp_store_id":null,"product_id":2265,"description":"","number":"1","outbound":"0","amount":"53534","total_amount":"53534","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12047,"project_id":3854,"product_id":2263,"amount":"44","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"44","total_cost":null,"erp_sales_order_product_id":2254,"supplier":null,"product":{"id":2263,"name":"\u867e\u76ae\u6295\u5f71\u5e55\u5e03100\u5bf8","product_type":21,"product_component":229,"product_brand":285,"product_serie":1782,"product_misc":null,"product_qa":null,"pn":"","description":"","created_by":1013,"created_at":"2026-03-20 14:32:00","updated_at":"2026-03-20 15:16:21","pinyin_shortcut":"xptymb100c","product_unit":3,"is_renew":false,"in_out_at":"2026-03-20 15:16:21.988041+08","productType":{"id":21,"key":21,"name":"\u6570\u7801\u8bbe\u5907"},"productComponent":{"id":229,"key":229,"name":"\u6570\u7801\u8bbe\u5907\u914d\u4ef6"},"productBrand":{"id":285,"key":285,"name":"\u867e\u76ae"},"productSerie":{"id":1782,"key":1782,"name":"\u6295\u5f71\u5e55\u5e03"},"productUnit":{"id":3,"key":3,"name":"\u4e2a"}},"erpSalesOrderProduct":{"id":2254,"erp_sales_order_id":1715,"erp_store_id":null,"product_id":2263,"description":"","number":"1","outbound":"0","amount":"44","total_amount":"44","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}},{"id":12048,"project_id":3854,"product_id":2266,"amount":"54","number":1,"cost":null,"description":"","supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null,"total_amount":"54","total_cost":null,"erp_sales_order_product_id":2255,"supplier":null,"product":{"id":2266,"name":"\u677e\u4e0b\u7535\u52a8\u5243\u987b\u5200\u5c0f\u65b9\u76d2mini\u4fbf\u643a\u6b3eCM20","product_type":23,"product_component":221,"product_brand":286,"product_serie":1783,"product_misc":null,"product_qa":null,"pn":"","description":"","created_by":1013,"created_at":"2026-03-20 14:38:56","updated_at":"2026-06-08 18:13:58","pinyin_shortcut":"sxddtxdxfhminibxkCM20","product_unit":3,"is_renew":false,"in_out_at":"2026-06-08 18:13:58.834274+08","productType":{"id":23,"key":23,"name":"\u793c\u54c1"},"productComponent":{"id":221,"key":221,"name":"\u7535\u5b50\u4ea7\u54c1"},"productBrand":{"id":286,"key":286,"name":"\u677e\u4e0b"},"productSerie":{"id":1783,"key":1783,"name":"\u7535\u52a8\u5243\u987b\u5200"},"productUnit":{"id":3,"key":3,"name":"\u4e2a"}},"erpSalesOrderProduct":{"id":2255,"erp_sales_order_id":1715,"erp_store_id":null,"product_id":2266,"description":"","number":"1","outbound":"0","amount":"54","total_amount":"54","last_number":null,"last_amount":null,"last_total_amount":null,"cost":null,"total_cost":null,"supplier_id":null,"hardware_from":null,"software_from":null,"maintenance_from":null,"hardware_to":null,"software_to":null,"maintenance_to":null}}],"commentCount":{"object_id":3854,"comment":9},"unreadComments":null,"fromContact":null,"projectContactPoints":[],"erpSalesOrder":{"id":1715,"serial_no":"XSDD-20260605-00004","from_date":null,"wrote_date":"2026-06-05","handler":5087,"client_id":2128,"purchase_contract_id":null,"project_id":3854,"sales_contract_id":4491,"erp_store_id":null,"status":2,"erp_send_type_id":null,"abstract":null,"description":null,"verify_type":2,"next_verify_user":null,"next_stop_verify_user":null,"next_cancel_verify_user":null,"verify_at":"2026-06-05 11:10:13","stop_at":null,"cancel_at":null,"refuse_description":null,"is_resubmitted":false,"is_done":false,"number":"5","amount":"44540520","created_by":5087,"stop_description":null,"extra":"{\"payment_collection_remind_ahead\":\"1 day\",\"salesContractPaymentCollectionRemindReceivers\":[\"5087\"],\"salesContractPaymentCollectionRemindDates\":null}","outbound_status":false,"is_used":false,"is_cancel":false,"is_settle":false,"is_old":false,"created_at":"2026-06-05 11:10:13","updated_at":"2026-06-05 11:10:13","print_times":null},"projectUsedClient":{"id":310,"project_id":3854,"used_client":null,"budget":null,"profit":null,"profit_pct":null,"collected_plan":null,"remind_ahead":null,"usedClient":null,"projectUsedClientPaymentCollectionRemindReceivers":[],"projectUsedClientPaymentCollectionRemindDates":[],"projectUsedClientPayments":[],"projectUsedClientInvoices":[],"invoiced":0,"collected":0,"un_invoiced":0,"un_collected":0,"remind_ahead_display":"\u4e0d\u63d0\u9192","project_used_client_collected_plan":0,"project_used_client_collected_plan_pct":""},"erpSalesOrderVerify":null,"remain_display":5,"progress_remain_display":6,"forecast_remain_display":6,"projectProductTotalAmount":44540520,"projectProductAllAmount":true,"projectProductTotalCost":0,"projectProductAllCost":false,"projectProductTotalNumber":5,"unissued_invoice":44540520,"is_exceeded":false,"can_update":true,"can_delete":true,"unread":0,"last_arrive_days_display":null,"project_status_display":"\u5546\u673a\u6210\u4ea4","is_collected":false,"bgcolor":"#53cd02","can_invoice":true,"can_payment":true,"duration_display":393,"contract_type_display":"\u4ea7\u54c1\u9500\u552e","can_change_status":true,"is_admin":true,"lost_contact_days_display":null,"can_view_product":true,"budget_display":"4454.05\u4e07","contact_points_status_display":"\u672a\u8bbe\u7f6e","total_contact_paid_point":0,"total_contact_un_paid_point":0,"verify_display":0,"un_collected":"44540520","un_invoiced":44540520,"object_type":1}],"pagenation":{"totalcount":3159,"thispage":1,"pagesize":10},"can_create":true},"status":1,"msg":[{"name":"success","success":"\u6210\u529f\u83b7\u53d6\u6570\u636e","error":""}],"ip":"43.224.72.82","ua":"jinchangxiao\/1.0.41 (HUAWEI Mate 60 BRA-AL00; HarmonyOS 6.1.0)"}', FALSE, '2026-06-10 15:58:11', 614397952) RETURNING "id"