All Latest
6a2a6a9abcdd0: POST https://beta.jinchangxiao.com/vue/sales-contract/save-edit at 2026-06-11 03:58:18 pm by 221.216.117.119

Log Messages

总计319条数据
TimeLevelCategoryMessage
 
15:58:18.772traceyii\base\Application::bootstrapBootstrap with yii\log\Dispatcher
15:58:18.772traceyii\base\Module::getModuleLoading module: debug
15:58:18.773traceyii\base\Application::bootstrapBootstrap with yii\debug\Module::bootstrap()
15:58:18.773traceyii\redis\Connection::openOpening redis DB connection: redis.server.local:6379, database=1
15:58:18.774traceyii\redis\Connection::executeCommandExecuting Redis Command: SELECT
15:58:18.774traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.774infotime tracing start1781164698774651904
15:58:18.774traceyii\web\UrlManager::parseRequestNo matching URL rules. Using default URL parsing logic.
15:58:18.774traceyii\web\Application::handleRequestRoute requested: 'vue/sales-contract/save-edit'
15:58:18.774traceyii\base\Module::getModuleLoading module: vue
15:58:18.775infoyii\web\Session::openSession started
15:58:18.777infoyii\db\Command::querySELECT * FROM "global"."vw_user_login" WHERE "id"=1001
15:58:18.777infoyii\db\Connection::openOpening DB connection: pgsql:host=postgresql.server.local;port=5432;dbname=beta
15:58:18.778traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.778traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.779traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.779traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.779infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.780traceyii\base\Controller::runActionRoute to run: vue/sales-contract/save-edit
15:58:18.781traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.783traceuranus\rbac\DbManager::checkAccessFromCacheChecking role: Admin
15:58:18.783traceyii\base\InlineAction::runWithParamsRunning action: app\modules\vue\controllers\SalesContractController::actionSaveEdit()
15:58:18.783infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "id"='4486'
15:58:18.784traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.784traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.784traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.785traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'id' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'project_name' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'budget' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'profit' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'profit_pct' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'project_product_version_id' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'salesContractPayments' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'salesContractPaymentCollectionRemindReceivers' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'client_name' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'projectContactPoints' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'projectContactPointRels' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'contractScans' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'serviceContractRemindDates' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'salesSupplierRels' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'projectProductRels' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'salesContractInvoices' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'projectProductTypes' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'salesContractRemindReceivers' in 'app\models\SalesContracts'.
15:58:18.788traceyii\base\Model::onUnsafeAttributeFailed to set unsafe attribute 'serviceContractRemindReceivers' in 'app\models\SalesContracts'.
15:58:18.788infoyii\db\Command::querySELECT "id" FROM "a57be577deb434"."tbl_sales_contracts" WHERE "serial_no"='2026-06-02-001' LIMIT 2
15:58:18.789infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"='3462')
15:58:18.790infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_contract_types" WHERE "id"='1')
15:58:18.790infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"='4174')
15:58:18.791infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001)
15:58:18.791infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001)
15:58:18.792infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174)
15:58:18.792traceyii\db\Transaction::beginBegin transaction
15:58:18.793traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.793traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.793infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:18.794infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_types" WHERE "project_id"=4174
15:58:18.795traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.795infoyii\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_product_types' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.802infoyii\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_product_types' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.830traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.830traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.830traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.830infoyii\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_product_types' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.834infoyii\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_product_types' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.849traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.849traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.850infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_product_types" WHERE "id"=7
15:58:18.850infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_product_types" WHERE "id"=2
15:58:18.851infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.852traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.852traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.852infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'projectProductTypes', 4174, 1, 1001, 'now()', '[["\u8f6f\u4ef6:18000\u5143 10%"]]', '[["\u670d\u52a1\u5668:0\u5143 0%"]]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u5546\u673a\u91d1\u989d","d4":["\u670d\u52a1\u5668:0\u5143 0%; <b>\u53d8\u4e3a<\/b> \u8f6f\u4ef6:18000\u5143 10%;"]}')
15:58:18.853infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:18.854traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.854traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.855infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.856traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.856infoyii\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_user_action_logs' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.859infoyii\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_user_action_logs' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.875traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.875traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.875infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_user_action_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "users", "description") VALUES (2, 'projectProductTypes', 4174, 1, 1001, 'now()', '[["\u8f6f\u4ef6:18000\u5143 10%"]]', '[["\u670d\u52a1\u5668:0\u5143 0%"]]', array[1001], '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u5546\u673a\u91d1\u989d","d4":["\u670d\u52a1\u5668:0\u5143 0%; <b>\u53d8\u4e3a<\/b> \u8f6f\u4ef6:18000\u5143 10%;"]}')
15:58:18.882infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "from_project"=4174
15:58:18.883infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.884infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'projectProductTypes', 4486, 7, 1001, 'now()', '[["\u8f6f\u4ef6:18000\u5143 10%"]]', '[["\u670d\u52a1\u5668:0\u5143 0%"]]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u5408\u540c\u91d1\u989d","d4":["\u670d\u52a1\u5668:0\u5143 0%; <b>\u53d8\u4e3a<\/b> \u8f6f\u4ef6:18000\u5143 10%;"]}')
15:58:18.885infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_project_product_types" WHERE "project_id"=4174
15:58:18.886infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_product_types" WHERE "id"=7
15:58:18.886infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_project_product_types" ("project_id", "product_type_id", "name", "budget", "pct", "profit") VALUES (4174, 7, '软件', '18000', 10, '1800')
15:58:18.892infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_contact_points" WHERE "project_id"=4174
15:58:18.892infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_project_contact_points" WHERE "project_id"=4174
15:58:18.893infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_contact_point_rels" WHERE "project_id"=4174
15:58:18.894infoyii\db\Command::querySELECT "id" FROM "a57be577deb434"."tbl_project_contact_point_rels" WHERE "project_id"=4174
15:58:18.894infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_project_contact_point_rels" WHERE 0=1
15:58:18.895infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=4174 ORDER BY "id"
15:58:18.896traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.896traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.896infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_products" WHERE "id"='2171'
15:58:18.898infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_product_units" WHERE "id"=2
15:58:18.898traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.898infoyii\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_product_units' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.901infoyii\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_product_units' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.917traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.917traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.918infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.918infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'projectProducts', 4174, 1, 1001, 'now()', '[["\u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -"]]', '[[]]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u4ea7\u54c1\u6e05\u5355","d4":["(\u672a\u8bbe\u7f6e) <b>\u53d8\u4e3a<\/b> \u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -;"]}')
15:58:18.919infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.920infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_user_action_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "users", "description") VALUES (2, 'projectProducts', 4174, 1, 1001, 'now()', '[["\u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -"]]', '[[]]', array[1001], '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u4ea7\u54c1\u6e05\u5355","d4":["(\u672a\u8bbe\u7f6e) <b>\u53d8\u4e3a<\/b> \u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -;"]}')
15:58:18.920infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "id"=4486
15:58:18.921infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_orders" WHERE "sales_contract_id"=4486 ORDER BY "id" DESC
15:58:18.923traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.923infoyii\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_erp_sales_orders' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.928infoyii\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_erp_sales_orders' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.961traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.961traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.961infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:18.962infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'erpSalesOrderProducts', 1711, 20007, 1001, 'now()', '[["\u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -"]]', '[[]]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u4ea7\u54c1\u6e05\u5355","d4":["(\u672a\u8bbe\u7f6e) <b>\u53d8\u4e3a<\/b> \u91d1\u7545\u900dCRM\u8f6f\u4ef6\u670d\u52a1:\u5408\u540c\u5355\u4ef7 18000\u5143 \u6570\u91cf 1\u5957\u5143 \u5907\u6ce8:- \u4f9b\u5e94\u5546 - \u786c\u4ef6\u8d28\u4fdd - \u8f6f\u4ef6\u8d28\u4fdd - \u8fd0\u7ef4\u670d\u52a1 -;"]}')
15:58:18.963infoyii\db\Command::querySELECT "id" FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=4174
15:58:18.963traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:18.964infoyii\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_product_rels' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:18.967infoyii\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_product_rels' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:18.991traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:18.992traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:18.992infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_project_product_rels" ("project_id", "product_id", "amount", "number", "total_amount", "description", "supplier_id", "hardware_from", "software_from", "maintenance_from", "hardware_to", "software_to", "maintenance_to") VALUES (4174, 2171, '18000', 1, '18000', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL)
15:58:18.995infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_project_product_rels" WHERE 0=1
15:58:19.024infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_projects" SET "budget"='18000', "profit_pct"='10', "description"='', "project_product_version_id"=NULL WHERE "id"=4174
15:58:19.027infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.035traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.035infoyii\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_change_logs' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.038infoyii\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_change_logs' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.055traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.055traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.055infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_project_change_logs" SET "end_at"='now()' WHERE "id"=17842
15:58:19.058traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.058traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.058infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\ProjectChangeLogs', 17842, 'a:1:{s:6:"end_at";s:19:"1970-01-01 08:00:00";}', '', 1001, '221.216.117.119')
15:58:19.061infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_project_change_logs" ("project_id", "project_status", "budget", "profit_pct", "collected", "start_from", "end_at") VALUES (4174, 3, '18000', '10', '0', 'now()', NULL) RETURNING "id"
15:58:19.064infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\ProjectChangeLogs', 17878, 'a:8:{s:2:"id";i:17878;s:10:"project_id";i:4174;s:14:"project_status";i:3;s:6:"budget";d:18000;s:10:"profit_pct";d:10;s:9:"collected";s:1:"0";s:10:"start_from";s:5:"now()";s:6:"end_at";N;}', '', 1001, '221.216.117.119')
15:58:19.065infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:3:{s:6:"end_at";s:19:"2026-06-05 17:35:57";s:6:"budget";d:18000;s:10:"profit_pct";d:10;}', '', 1001, '221.216.117.119')
15:58:19.065infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.066infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.067infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=4174 ORDER BY "id"
15:58:19.069traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.069infoyii\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_product_versions' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.072infoyii\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_product_versions' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.092traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.092traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.093infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_project_product_versions" ("project_id", "created_by", "created_at") VALUES (4174, 1001, '2026-06-11 15:58:19') RETURNING "id"
15:58:19.098infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\ProjectProductVersions', 1379, 'a:4:{s:2:"id";i:1379;s:10:"project_id";i:4174;s:10:"created_by";i:1001;s:10:"created_at";s:19:"2026-06-11 15:58:19";}', '', 1001, '221.216.117.119')
15:58:19.099infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.099infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "target_id", "target_object_type", "created_by", "new_value", "old_value", "description") VALUES (1, 'create', 4174, 1, 1379, 112, 1001, '[1379]', '[1379]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u521b\u5efa\u4e86","d3":"\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355","d4":["2026-06-11 15:58\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355"]}') RETURNING "id"
15:58:19.100infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\ObjectChangeLogs', 641734, 'a:13:{s:2:"id";i:641734;s:9:"object_id";i:4174;s:11:"object_type";i:1;s:9:"target_id";i:1379;s:18:"target_object_type";i:112;s:3:"act";i:1;s:9:"attribute";s:6:"create";s:9:"old_value";s:6:"[1379]";s:9:"new_value";s:6:"[1379]";s:11:"description";s:183:"{"d1":"\u5218\u4eba\u8bda","d2":"\u521b\u5efa\u4e86","d3":"\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355","d4":["2026-06-11 15:58\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355"]}";s:10:"created_by";i:1001;s:10:"created_at";N;s:9:"is_delete";N;}', '', 1001, '221.216.117.119')
15:58:19.101infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "from_project"=4174
15:58:19.102infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.103infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "target_id", "target_object_type", "created_by", "new_value", "old_value", "description") VALUES (1, 'create', 4486, 7, 4174, 112, 1001, '[4174]', '[4174]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u521b\u5efa\u4e86","d3":"\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355","d4":["2026-06-11 15:58\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355"]}') RETURNING "id"
15:58:19.103infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\ObjectChangeLogs', 641735, 'a:13:{s:2:"id";i:641735;s:9:"object_id";i:4486;s:11:"object_type";i:7;s:9:"target_id";i:4174;s:18:"target_object_type";i:112;s:3:"act";i:1;s:9:"attribute";s:6:"create";s:9:"old_value";s:6:"[4174]";s:9:"new_value";s:6:"[4174]";s:11:"description";s:183:"{"d1":"\u5218\u4eba\u8bda","d2":"\u521b\u5efa\u4e86","d3":"\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355","d4":["2026-06-11 15:58\u4ea7\u54c1\u5386\u53f2\u62a5\u4ef7\u6e05\u5355"]}";s:10:"created_by";i:1001;s:10:"created_at";N;s:9:"is_delete";N;}', '', 1001, '221.216.117.119')
15:58:19.105infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_projects" SET "project_product_version_id"=1379 WHERE "id"=4174
15:58:19.109infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.111infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:2:{s:6:"end_at";s:19:"2026-06-05 17:35:57";s:26:"project_product_version_id";i:1379;}', '', 1001, '221.216.117.119')
15:58:19.112infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.114traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.114infoyii\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_product_version_rels' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.118infoyii\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_product_version_rels' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.139traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.140traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.140infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_project_product_version_rels" ("project_product_version_id", "product_id", "amount", "number", "total_amount", "description", "supplier_id", "hardware_from", "software_from", "maintenance_from", "hardware_to", "software_to", "maintenance_to") VALUES (1379, 2171, '18000', 1, '18000', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL)
15:58:19.145infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.146infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=4174 ORDER BY "id"
15:58:19.148infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_order_items" WHERE ("project_id"=4174) AND (erp_sales_outbound_id is not null)
15:58:19.155infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_projects" SET "is_sales_order_ready"=FALSE WHERE "id"=4174
15:58:19.157infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.160infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:1:{s:6:"end_at";s:19:"2026-06-05 17:35:57";}', '', 1001, '221.216.117.119')
15:58:19.161infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.161infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_orders" WHERE "sales_contract_id"=4486 ORDER BY "id" DESC
15:58:19.162infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.163infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'number', 1711, 20007, 1001, 'now()', '[1]', '["0"]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u4ea7\u54c1\u6570\u91cf","d4":["(\u672a\u8bbe\u7f6e) <b>\u53d8\u4e3a<\/b> 1"]}'), (2, 'amount', 1711, 20007, 1001, 'now()', '[18000]', '["0"]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u4ea7\u54c1\u91d1\u989d","d4":["(\u672a\u8bbe\u7f6e) <b>\u53d8\u4e3a<\/b> 18000"]}')
15:58:19.164infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_erp_sales_orders" SET "description"='', "number"='1', "amount"='18000' WHERE "id"=1711
15:58:19.165infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\ErpSalesOrders', 1711, 'a:2:{s:6:"number";d:1;s:6:"amount";d:18000;}', '', 1001, '221.216.117.119')
15:58:19.165infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_sales_contracts" SET "client_id"=3462, "amount"='18000', "description"='', "updated_at"='now()', "contract_scan"=NULL, "receipt_scan"=NULL, "contract_type"=1, "project_id"=4174, "expire_date"=NULL, "sla"='', "remind_ahead"='0 day', "expire_remind_ahead"='0 day', "including_tax"=TRUE, "is_settle"=FALSE, "is_deliver"=FALSE, "is_outbound"=FALSE, "is_draft"=TRUE, "is_edit_verify"=TRUE WHERE "id"=4486
15:58:19.166infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\SalesContracts', 4486, 'a:3:{s:6:"amount";d:18000;s:12:"remind_ahead";s:5:"0 day";s:19:"expire_remind_ahead";s:5:"0 day";}', '', 1001, '221.216.117.119')
15:58:19.167infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"='3462'
15:58:19.167infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"='4174'
15:58:19.168infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_product_rels" WHERE "project_id"=4174 ORDER BY "id"
15:58:19.169traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.169infoyii\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_erp_sales_order_verify_rels' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.172infoyii\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_erp_sales_order_verify_rels' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.189traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.189traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.189infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_erp_sales_order_verify_rels" SET "status"=3 WHERE ("erp_sales_order_id"=1711) AND ("status"=0)
15:58:19.190infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_erp_sales_order_stop_verify_rels" WHERE "erp_sales_order_id"=1711
15:58:19.192infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_erp_sales_order_stop_products" WHERE "erp_sales_order_id"=1711
15:58:19.195infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_erp_sales_orders" SET "stop_at"='now()' WHERE "id"=1711
15:58:19.196infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\ErpSalesOrders', 1711, 'a:1:{s:7:"stop_at";s:5:"now()";}', '', 1001, '221.216.117.119')
15:58:19.197traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.197infoyii\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_erp_sales_order_stop_products' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.201infoyii\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_erp_sales_order_stop_products' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.229traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.229traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.229infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_erp_sales_order_stop_products" ("erp_sales_order_id", "erp_sales_order_product_id", "product_id", "amount", "total_amount", "number", "description", "supplier_id", "hardware_from", "software_from", "maintenance_from", "hardware_to", "software_to", "maintenance_to") VALUES (1711, NULL, 2171, '18000', '18000', '1', '', NULL, NULL, NULL, NULL, NULL, NULL, NULL)
15:58:19.235traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.235traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.235infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_verify_processes" WHERE "id"=6
15:58:19.236infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE ("id"='1001') AND ("user_status"='1') ORDER BY array_position(array[1001], id)
15:58:19.237traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.237infoyii\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_erp_sales_order_stop_verify_rels' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.241infoyii\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_erp_sales_order_stop_verify_rels' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.259traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.260traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.260infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_erp_sales_order_stop_verify_rels" ("erp_sales_order_id", "user_id", "status") VALUES (1711, 1001, 0)
15:58:19.265infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_order_stop_verify_rels" WHERE ("erp_sales_order_id"=1711) AND ("status"=0) ORDER BY "id"
15:58:19.265infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_erp_sales_orders" SET "status"=5, "next_stop_verify_user"=1001, "updated_at"='now()' WHERE "id"=1711
15:58:19.266infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\ErpSalesOrders', 1711, 'a:1:{s:6:"status";i:5;}', '', 1001, '221.216.117.119')
15:58:19.267infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.267infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_order_stop_verify_rels" WHERE ("status"=0) AND ("erp_sales_order_id"=1711) ORDER BY "id"
15:58:19.268infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_order_stop_verify_rels" WHERE ("status"=0) AND ("erp_sales_order_id"=1711) ORDER BY "id"
15:58:19.269infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\ErpSalesOrders', 1711, 'a:0:{}', '', 1001, '221.216.117.119')
15:58:19.269infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.270infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.270infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (11, 'status', 1711, 20007, 1001, 'now()', '["\u5218\u4eba\u8bda"]', '[]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u7f16\u8f91\u4e86","d3":"\u9500\u552e\u8ba2\u5355\u7533\u8bf7","d4":""}')
15:58:19.272infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_projects" SET "contract_type"=1 WHERE "id"=4174
15:58:19.273infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.275infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:1:{s:6:"end_at";s:19:"2026-06-05 17:35:57";}', '', 1001, '221.216.117.119')
15:58:19.276infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.277infoyii\db\Command::querySELECT "id" FROM "a57be577deb434"."tbl_sales_contract_invoices" WHERE "contract_id"=4486
15:58:19.278infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contract_invoices" WHERE 0=1
15:58:19.278infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_sales_contract_invoices" WHERE 0=1
15:58:19.279infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.280infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_invoices" WHERE "project_id"=4174
15:58:19.284infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contract_invoices" WHERE "contract_id"=4486
15:58:19.284infoyii\db\Command::execute
15:58:19.285infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_erp_sales_orders" WHERE "sales_contract_id"=4486 ORDER BY "id" DESC
15:58:19.286infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_erp_sales_order_products" WHERE "erp_sales_order_id"=1711)
15:58:19.292infoyii\db\Command::execute
15:58:19.292infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_sales_contracts" SET "is_outbound"=FALSE WHERE "id"=4486
15:58:19.293infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\SalesContracts', 4486, 'a:0:{}', '', 1001, '221.216.117.119')
15:58:19.294infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"='3462'
15:58:19.295infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"='4174'
15:58:19.295infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_supplier_rels" WHERE "contract_id"=4486
15:58:19.296infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_sales_supplier_rels" WHERE "contract_id"=4486
15:58:19.299infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_purchase_client_rels" WHERE "project_id"=4174
15:58:19.301infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=105) AND ("object_id"=4486)
15:58:19.305infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_type"=105) AND ("object_id"=4486)
15:58:19.309infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contract_remind_receivers" WHERE "contract_id"=4486
15:58:19.310infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_sales_contract_remind_receivers" WHERE "contract_id"=4486
15:58:19.311infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_receivers" WHERE "contract_id"=4486
15:58:19.311traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.312infoyii\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_sales_contract_payment_collection_remind_receivers' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.315infoyii\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_sales_contract_payment_collection_remind_receivers' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.334traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.335traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.335infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_receivers" WHERE "contract_id"=4486
15:58:19.336infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_sales_contract_payment_collection_remind_receivers" ("contract_id", "user_id") VALUES (4486, 1001) RETURNING "id"
15:58:19.344infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\SalesContractPaymentCollectionRemindReceivers', 10172, 'a:3:{s:2:"id";i:10172;s:11:"contract_id";i:4486;s:7:"user_id";s:4:"1001";}', '', 1001, '221.216.117.119')
15:58:19.345infoyii\db\Command::querySELECT "remind_date" FROM "a57be577deb434"."tbl_service_contract_remind_dates" WHERE "contract_id"=4486
15:58:19.346infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_service_contract_remind_dates" WHERE ("contract_id"=4486) AND (0=1)
15:58:19.347infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_service_contract_remind_receivers" WHERE "contract_id"=4486
15:58:19.347infoyii\db\Command::executeDELETE FROM "a57be577deb434"."tbl_service_contract_remind_receivers" WHERE "contract_id"=4486
15:58:19.348infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "id"=4486
15:58:19.349infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (2, 5))
15:58:19.350infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."status" IN (2, 5))
15:58:19.352infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."status" IN (2, 5)) AND ("t"."is_payment_settle"=TRUE)
15:58:19.353infoyii\db\Command::querySELECT EXISTS(SELECT "r".* 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"=4486) AND ("t"."status"=1))
15:58:19.354infoyii\db\Command::querySELECT EXISTS(SELECT "r".* 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"=4486) AND ("t"."status"=1))
15:58:19.355infoyii\db\Command::querySELECT EXISTS(SELECT "r".* 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"=4486) AND ("t"."status"=1))
15:58:19.356infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."is_payment_settle"=TRUE) AND ("t"."status" IN (1, 2, 5))
15:58:19.356infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."status" IN (1, 2, 5))
15:58:19.357infoyii\db\Command::querySELECT SUM(r.amount) 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"=4486) AND ("t"."status" IN (1, 2, 5))
15:58:19.359infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_sales_contracts" SET "erp_settle_amount"='0', "erp_un_settle_amount"='18000', "erp_all_settle_amount"='0' WHERE "id"=4486
15:58:19.360infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\SalesContracts', 4486, 'a:0:{}', '', 1001, '221.216.117.119')
15:58:19.361infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.361infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.362infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.364infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_projects" SET "collected"='0', "end_at"=NULL WHERE "id"=4174
15:58:19.365infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.367infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:1:{s:6:"end_at";s:28:"2026-06-05 17:35:57.03445+08";}', '', 1001, '221.216.117.119')
15:58:19.368infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.372infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_status_logs" WHERE "project_id"=4174 ORDER BY "created_at" DESC
15:58:19.377traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.377infoyii\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_status_logs' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.381infoyii\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_status_logs' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.400traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.400traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.401infoyii\db\Command::queryINSERT INTO "a57be577deb434"."tbl_project_status_logs" ("project_id", "old_status", "new_status", "created_by", "created_at") VALUES (4174, 0, 3, 1001, 'now()') RETURNING "id"
15:58:19.404infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('INSERT', 'app\models\ProjectStatusLogs', 4381, 'a:6:{s:2:"id";i:4381;s:10:"project_id";i:4174;s:10:"new_status";i:3;s:10:"old_status";i:0;s:10:"created_by";i:1001;s:10:"created_at";s:19:"1970-01-01 08:00:00";}', '', 1001, '221.216.117.119')
15:58:19.404infoyii\db\Command::querySELECT "id" FROM "a57be577deb434"."tbl_sales_contracts" WHERE "project_id"=4174
15:58:19.405traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.406infoyii\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_sales_contract_payment_collection_remind_dates' and d.nspname = 'a57be577deb434' ORDER BY a.attnum;
15:58:19.409infoyii\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_sales_contract_payment_collection_remind_dates' and ns.nspname='a57be577deb434' order by fns.nspname, fc.relname, a.attnum
15:58:19.426traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.426traceyii\redis\Connection::executeCommandExecuting Redis Command: SET
15:58:19.427infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" SET "reminded"=FALSE WHERE ("contract_id"=4486) AND (remind_date > now())
15:58:19.428infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.429infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_object_change_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "description") VALUES (2, 'project_status', 4174, 1, 1001, 'now()', '["\u5546\u673a\u6210\u4ea4"]', '["\u6536\u6b3e\u5b8c\u6210"]', '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u5546\u673a\u72b6\u6001","d4":["\u6536\u6b3e\u5b8c\u6210 <b>\u53d8\u4e3a<\/b> \u5546\u673a\u6210\u4ea4"]}')
15:58:19.430infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.431infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_users" WHERE "id"=1001
15:58:19.431infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_user_action_logs" ("act", "attribute", "object_id", "object_type", "created_by", "created_at", "new_value", "old_value", "users", "description") VALUES (2, 'project_status', 4174, 1, 1001, 'now()', '["\u5546\u673a\u6210\u4ea4"]', '["\u6536\u6b3e\u5b8c\u6210"]', array[1001], '{"d1":"\u5218\u4eba\u8bda","d2":"\u66f4\u65b0\u4e86","d3":"\u5546\u673a\u72b6\u6001","d4":["\u6536\u6b3e\u5b8c\u6210 <b>\u53d8\u4e3a<\/b> \u5546\u673a\u6210\u4ea4"]}')
15:58:19.432infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contracts" WHERE "id"=4486
15:58:19.433infoyii\db\Command::executeUPDATE "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" SET "paid_amount"='0', "status"=0, "overdue_days"=NULL WHERE "contract_id"=4486
15:58:19.433infoyii\db\Command::querySELECT r.amount, t.created_at 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"=4486) AND ("t"."status" IN (2, 5, 1))
15:58:19.434infoyii\db\Command::querySELECT r.amount, t.wrote_date as created_at 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"=4486) AND ("t"."status" IN (2, 5, 1))
15:58:19.435infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.435infoyii\db\Command::querySELECT SUM(amount) FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" WHERE "contract_id"=4486
15:58:19.437infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_project_change_logs" WHERE ("project_id"=4174) AND ("end_at" IS NULL) ORDER BY "id" DESC LIMIT 1
15:58:19.440infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\Projects', 4174, 'a:0:{}', '', 1001, '221.216.117.119')
15:58:19.441infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.442infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_sales_contract_payment_collection_remind_dates" WHERE ("contract_id"=4486) AND (amount > paid_amount) ORDER BY "remind_date"
15:58:19.442infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_id"=4486) AND ("object_type"=106))
15:58:19.446infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_id"=4486) AND ("object_type"=107))
15:58:19.450infoyii\db\Command::querySELECT EXISTS(SELECT * FROM "a57be577deb434"."tbl_attachement_relationships" WHERE ("object_id"=4486) AND ("object_type"=105))
15:58:19.453infoyii\db\Command::executeINSERT INTO "a57be577deb434"."tbl_action_logs" ("action", "object_type", "object_id", "new_value", "old_value", "created_by", "ip_address") VALUES ('UPDATE', 'app\models\SalesContracts', 4486, 'a:0:{}', '', 1001, '221.216.117.119')
15:58:19.454infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_clients" WHERE "id"=3462
15:58:19.455infoyii\db\Command::querySELECT * FROM "a57be577deb434"."tbl_projects" WHERE "id"=4174
15:58:19.455traceyii\db\Transaction::commitCommit transaction
15:58:19.465traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.466traceyii\redis\Connection::executeCommandExecuting Redis Command: MGET
15:58:19.466infoyii\db\Command::queryINSERT INTO "global"."tbl_api_log" ("code", "schema", "user_id", "device_type", "url", "request", "response", "php_error", "time", "duration") VALUES (200, 'a57be577deb434', 1001, 5, 'vue/sales-contract/save-edit', '{"SalesContracts":{"id":"4486","client_id":"3462","project_id":"4174","project_name":"\u9500\u552e\u7ebf\u7d22\u751f\u621020260602001","amount":"0","contract_scan":"","receipt_scan":"","contract_type":"1","serial_no":"2026-06-02-001","signed_at":"2026-06-02","budget":"0","profit":"1800","profit_pct":"10.00","description":"","expire_date":"","expire_remind_ahead":"","project_product_version_id":"","salesContractPayments":{"new":[""]},"payment_collection_remind_ahead":"1 day","salesContractPaymentCollectionRemindReceivers":["1001"],"sla":"","including_tax":"1","remind_ahead":"","is_draft":"1","is_settle":"0","is_deliver":"0","is_outbound":"0","client_name":"\u5927\u59d1\u8bf4\u7684\u98ce\u683c","projectContactPoints":"","projectContactPointRels":"","contractScans":"","serviceContractRemindDates":"","salesSupplierRels":"","projectProductRels":{"new":[{"product_id":"2171","amount":"18000","total_amount":"18000","number":"1","description":"","hardware_from":"","hardware_to":"","maintenance_from":"","maintenance_to":"","software_from":"","software_to":"","supplier_id":""}]},"salesContractInvoices":"","projectProductTypes":{"7":{"budget":"18000","profit":"1800","pct":"10"}},"salesContractRemindReceivers":"","serviceContractRemindReceivers":""},"web_access_token":"2SCKb3BYAaSLDxSx0sIX1KfVKBB-1lWj"}', '{"code":2000,"result":"","status":1,"msg":[{"name":"success","success":"\u9500\u552e\u5408\u540c\u5df2\u88ab\u6210\u529f\u4fee\u6539","error":""}],"mod":0,"ip":"221.216.117.119","ua":"Mozilla\/5.0 (Macintosh; Intel Mac OS X 10.15; rv:151.0) Gecko\/20100101 Firefox\/151.0"}', FALSE, '2026-06-11 15:58:19', 691692288) RETURNING "id"
15:58:19.468traceyii\redis\Connection::executeCommandExecuting Redis Command: GET
15:58:19.469traceyii\redis\Connection::executeCommandExecuting Redis Command: SET