提交
This commit is contained in:
7
.idea/dataSources.xml
generated
7
.idea/dataSources.xml
generated
@@ -8,5 +8,12 @@
|
|||||||
<jdbc-url>jdbc:mysql://114.55.111.44:3306/test_mao</jdbc-url>
|
<jdbc-url>jdbc:mysql://114.55.111.44:3306/test_mao</jdbc-url>
|
||||||
<working-dir>$ProjectFileDir$</working-dir>
|
<working-dir>$ProjectFileDir$</working-dir>
|
||||||
</data-source>
|
</data-source>
|
||||||
|
<data-source source="LOCAL" name="线上服务器" uuid="5cfa2400-e3e1-472e-a0b3-78df34464fd6">
|
||||||
|
<driver-ref>mysql.8</driver-ref>
|
||||||
|
<synchronize>true</synchronize>
|
||||||
|
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
|
||||||
|
<jdbc-url>jdbc:mysql://114.55.111.44:3306/mao</jdbc-url>
|
||||||
|
<working-dir>$ProjectFileDir$</working-dir>
|
||||||
|
</data-source>
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
10
database.js
10
database.js
@@ -14,19 +14,19 @@ const dbConfig = {
|
|||||||
dateStrings: true,
|
dateStrings: true,
|
||||||
// 连接池配置
|
// 连接池配置
|
||||||
connectionLimit: 20, // 连接池最大连接数
|
connectionLimit: 20, // 连接池最大连接数
|
||||||
queueLimit: 10, // 排队等待连接的最大数量,0表示无限制
|
// queueLimit: 10, // 排队等待连接的最大数量,0表示无限制
|
||||||
// 连接超时配置
|
// 连接超时配置
|
||||||
// acquireTimeout: 60000, // 获取连接超时时间 60秒
|
// acquireTimeout: 60000, // 获取连接超时时间 60秒
|
||||||
// timeout: 60000, // 查询超时时间 60秒
|
// timeout: 60000, // 查询超时时间 60秒
|
||||||
// reconnect: true, // 自动重连
|
// reconnect: true, // 自动重连
|
||||||
// 连接保活配置
|
// 连接保活配置
|
||||||
multipleStatements: true,
|
// multipleStatements: true,
|
||||||
// 空闲连接超时配置
|
// 空闲连接超时配置
|
||||||
idleTimeout: 300000, // 5分钟空闲超时
|
// idleTimeout: 300000, // 5分钟空闲超时
|
||||||
// maxLifetime: 1800000, // 30分钟最大生命周期
|
// maxLifetime: 1800000, // 30分钟最大生命周期
|
||||||
// 连接保活设置
|
// 连接保活设置
|
||||||
keepAliveInitialDelay: 0, // 开始保活探测前的延迟时间
|
// keepAliveInitialDelay: 0, // 开始保活探测前的延迟时间
|
||||||
enableKeepAlive: true, // 启用TCP保活
|
// enableKeepAlive: true, // 启用TCP保活
|
||||||
// 添加类型转换配置
|
// 添加类型转换配置
|
||||||
typeCast: function (field, next) {
|
typeCast: function (field, next) {
|
||||||
if (field.type === 'TINY' && field.length === 1) {
|
if (field.type === 'TINY' && field.length === 1) {
|
||||||
|
|||||||
@@ -1988,3 +1988,120 @@
|
|||||||
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:10:08"}
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:10:08"}
|
||||||
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:19:17"}
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:19:17"}
|
||||||
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:37:37"}
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:37:37"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.100","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-10 20:29:02"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"6ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"7ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.0.2","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-10 20:30:33"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"duration":"3ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"duration":"5ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"duration":"3ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.0.2","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-10 20:32:08"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"4ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"6ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"4ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"7ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"3ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"4ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.100","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 20:39:54"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"duration":"4ms","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":404,"timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.0.2","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 21:01:32"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.0.2","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 21:01:32"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 10:12:51"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 11:58:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:08:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:18:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:28:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:03:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:13:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:03:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:13:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:23:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:33:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:07:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:12:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:22:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:32:56"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:42:50"}
|
||||||
|
{"duration":"11ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/user-growth-trend?days=30","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"5ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/stats","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/commission-trend","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"2ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/commission-distribution","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/recent-users","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"1ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-11 16:37:16","url":"/api/agent/recent-commissions","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-11 16:37:31"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:42:54"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:42:54"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:47:57"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:52:57"}
|
||||||
|
{"duration":"3ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":401,"timestamp":"2025-09-12 16:40:28","url":"/api/agents/auth/me","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"duration":"116ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"POST","service":"integrated-system","statusCode":401,"timestamp":"2025-09-15 09:09:47","url":"/api/agents/auth/login","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 09:10:08"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 09:11:59"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 09:15:12"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 09:45:39"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 09:50:44"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 09:51:17"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 09:56:13"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 09:56:38"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:18:27"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 10:19:54"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:22:11"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:23:39"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:25:53"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:28:50"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:30:23"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 10:30:50"}
|
||||||
|
{"agentId":4,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15867461617","service":"integrated-system","timestamp":"2025-09-15 10:36:21"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-15 10:51:43"}
|
||||||
|
{"agentId":4,"error":"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= ?' at line 7","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= ?' at line 7\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:17:39\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:82:5)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:16:52"}
|
||||||
|
{"duration":"58ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":500,"timestamp":"2025-09-15 14:16:52","url":"/api/agent/stats","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":4,"error":"Bind parameters must not contain undefined. To pass SQL NULL specify JS null","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: Bind parameters must not contain undefined. To pass SQL NULL specify JS null\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:29:45\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:19:04"}
|
||||||
|
{"duration":"111ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":500,"timestamp":"2025-09-15 14:19:04","url":"/api/agent/stats","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":4,"error":"Bind parameters must not contain undefined. To pass SQL NULL specify JS null","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: Bind parameters must not contain undefined. To pass SQL NULL specify JS null\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:29:45\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:19:11"}
|
||||||
|
{"duration":"36ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":500,"timestamp":"2025-09-15 14:19:11","url":"/api/agent/stats","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":4,"error":"userIds is not defined","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"ReferenceError: userIds is not defined\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:26:19\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:25:55"}
|
||||||
|
{"duration":"115ms","ip":"::ffff:192.168.1.124","level":"info","message":"HTTP Request","method":"GET","service":"integrated-system","statusCode":500,"timestamp":"2025-09-15 14:25:55","url":"/api/agent/stats","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 15:07:04"}
|
||||||
|
{"agentId":7,"ip":"::ffff:192.168.1.124","level":"info","message":"代理登录成功","phone":"15168182180","service":"integrated-system","timestamp":"2025-09-15 15:08:48"}
|
||||||
|
|||||||
@@ -967,3 +967,61 @@
|
|||||||
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:10:08"}
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:10:08"}
|
||||||
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:19:17"}
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:19:17"}
|
||||||
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:37:37"}
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 16:37:37"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:29:03","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:30:35","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:31:34","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; ADA-AL00U Build/HUAWEIADA-AL00U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.180 Mobile Safari/537.36 XWEB/1380159 MMWEBSDK/20250802 MMWEBID/2967 MicroMessenger/8.0.62.2900(0x28003E59) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:10","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:32:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:35:06","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:39:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.100","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 20:39:54"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:16","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:42:18","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 20:43:46","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755587643290_56041837.jpg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755587643290_56041837.jpg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"ip":"::ffff:127.0.0.1","level":"error","message":"Error occurred: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到","method":"GET","service":"integrated-system","stack":"Error: 路径 /uploads/documents/1755074106968_37210143.jpeg 未找到\n at notFound (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\errorHandler.js:107:17)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at trim_prefix (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:328:13)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:286:9\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\serve-static\\index.js:121:7)\n at SendStream.emit (node:events:519:28)\n at SendStream.error (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:270:17)\n at SendStream.onStatError (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\send\\index.js:417:12)","timestamp":"2025-09-10 21:01:23","url":"/uploads/documents/1755074106968_37210143.jpeg","userAgent":"Mozilla/5.0 (Linux; Android 12; HarmonyOS; ADA-AL00U; HMSCore 6.15.0.332) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.196 HuaweiBrowser/16.0.8.304 Mobile Safari/537.36"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.0.2","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 21:01:32"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.0.2","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-10 21:01:32"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 10:12:51"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 11:58:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:08:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:18:02"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:28:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 12:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:03:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:13:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 13:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:03:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:13:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:23:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:33:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:43:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 14:53:03"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:07:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:12:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:22:50"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:32:56"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 15:42:50"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:42:54"}
|
||||||
|
{"error":"read ECONNRESET","ip":"::ffff:192.168.1.124","level":"error","message":"代理身份验证失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:37:36)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:42:54"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:47:57"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-11 16:52:57"}
|
||||||
|
{"error":"read ECONNRESET","level":"error","message":"获取代理信息失败","service":"integrated-system","stack":"Error: read ECONNRESET\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\auth.js:160:36\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at Route.dispatch (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:119:3)\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:284:15\n at Function.process_params (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:346:12)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:280:10)\n at Function.handle (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\index.js:175:3)","timestamp":"2025-09-15 10:51:43"}
|
||||||
|
{"agentId":4,"error":"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= ?' at line 7","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= ?' at line 7\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:17:39\n at Layer.handle [as handle_request] (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\layer.js:95:5)\n at next (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\express\\lib\\router\\route.js:149:13)\n at agentAuth (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\middleware\\agentAuth.js:82:5)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:16:52"}
|
||||||
|
{"agentId":4,"error":"Bind parameters must not contain undefined. To pass SQL NULL specify JS null","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: Bind parameters must not contain undefined. To pass SQL NULL specify JS null\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:29:45\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:19:04"}
|
||||||
|
{"agentId":4,"error":"Bind parameters must not contain undefined. To pass SQL NULL specify JS null","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"Error: Bind parameters must not contain undefined. To pass SQL NULL specify JS null\n at PromisePool.execute (D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\node_modules\\mysql2\\lib\\promise\\pool.js:54:22)\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:29:45\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:19:11"}
|
||||||
|
{"agentId":4,"error":"userIds is not defined","level":"error","message":"获取代理统计数据失败","service":"integrated-system","stack":"ReferenceError: userIds is not defined\n at D:\\work\\客户\\毛总\\code\\jurong_circle_agent_backend\\routes\\agent.js:26:19\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-09-15 14:25:55"}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
const jwt = require('jsonwebtoken');
|
const jwt = require('jsonwebtoken');
|
||||||
const { getDB } = require('../database');
|
const {getDB} = require('../database');
|
||||||
const { logger } = require('../config/logger');
|
const {logger} = require('../config/logger');
|
||||||
|
|
||||||
// JWT密钥
|
// JWT密钥
|
||||||
const JWT_SECRET = process.env.JWT_SECRET || 'agent_jwt_secret_key_2024';
|
const JWT_SECRET = process.env.JWT_SECRET || 'agent_jwt_secret_key_2024';
|
||||||
@@ -10,105 +10,106 @@ const JWT_SECRET = process.env.JWT_SECRET || 'agent_jwt_secret_key_2024';
|
|||||||
* 验证JWT token并确保用户是激活的代理
|
* 验证JWT token并确保用户是激活的代理
|
||||||
*/
|
*/
|
||||||
const agentAuth = async (req, res, next) => {
|
const agentAuth = async (req, res, next) => {
|
||||||
try {
|
try {
|
||||||
const authHeader = req.header('Authorization');
|
const authHeader = req.header('Authorization');
|
||||||
|
|
||||||
const token = authHeader?.replace('Bearer ', '');
|
const token = authHeader?.replace('Bearer ', '');
|
||||||
if (!token) {
|
if (!token) {
|
||||||
return res.status(401).json({
|
return res.status(401).json({
|
||||||
success: false,
|
success: false,
|
||||||
message: '未提供认证令牌'
|
message: '未提供认证令牌'
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 验证JWT token
|
||||||
|
const decoded = jwt.verify(token, JWT_SECRET);
|
||||||
|
|
||||||
|
|
||||||
|
// 检查是否是代理角色
|
||||||
|
if (decoded.role !== 'agent') {
|
||||||
|
return res.status(403).json({
|
||||||
|
success: false,
|
||||||
|
message: '权限不足,需要代理身份'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询代理信息确认状态
|
||||||
|
const [agents] = await getDB().execute(`
|
||||||
|
SELECT ra.id as agent_id,
|
||||||
|
ra.user_id,
|
||||||
|
ra.agent_code,
|
||||||
|
ra.status,
|
||||||
|
ra.region_id,
|
||||||
|
u.phone,
|
||||||
|
u.real_name,
|
||||||
|
u.user_type
|
||||||
|
FROM regional_agents ra
|
||||||
|
LEFT JOIN users u ON ra.user_id = u.id
|
||||||
|
WHERE ra.id = ?
|
||||||
|
`, [decoded.agentId]);
|
||||||
|
if (agents.length === 0) {
|
||||||
|
return res.status(401).json({
|
||||||
|
success: false,
|
||||||
|
message: '代理账号不存在'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const agent = agents[0];
|
||||||
|
|
||||||
|
// 检查代理状态
|
||||||
|
if (agent.status !== 'active') {
|
||||||
|
return res.status(403).json({
|
||||||
|
success: false,
|
||||||
|
message: '代理账号已被禁用或未激活'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将代理信息添加到请求对象中
|
||||||
|
req.agent = {
|
||||||
|
id: agent.agent_id,
|
||||||
|
userId: agent.user_id,
|
||||||
|
agentCode: agent.agent_code,
|
||||||
|
regionId: agent.region_id,
|
||||||
|
phone: agent.phone,
|
||||||
|
realName: agent.real_name,
|
||||||
|
userType: agent.user_type,
|
||||||
|
};
|
||||||
|
|
||||||
|
req.user = {
|
||||||
|
id: agent.user_id,
|
||||||
|
role: 'agent'
|
||||||
|
};
|
||||||
|
|
||||||
|
next();
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error, 'regional_agents');
|
||||||
|
|
||||||
|
if (error.name === 'JsonWebTokenError') {
|
||||||
|
return res.status(401).json({
|
||||||
|
success: false,
|
||||||
|
message: '无效的认证令牌1'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (error.name === 'TokenExpiredError') {
|
||||||
|
return res.status(401).json({
|
||||||
|
success: false,
|
||||||
|
message: '认证令牌已过期,请重新登录'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
logger.error('代理身份验证失败', {
|
||||||
|
error: error.message,
|
||||||
|
stack: error.stack,
|
||||||
|
ip: req.ip
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(500).json({
|
||||||
|
success: false,
|
||||||
|
message: '身份验证失败'
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 验证JWT token
|
|
||||||
const decoded = jwt.verify(token, JWT_SECRET);
|
|
||||||
|
|
||||||
|
|
||||||
// 检查是否是代理角色
|
|
||||||
if (decoded.role !== 'agent') {
|
|
||||||
return res.status(403).json({
|
|
||||||
success: false,
|
|
||||||
message: '权限不足,需要代理身份'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询代理信息确认状态
|
|
||||||
const [agents] = await getDB().execute(`
|
|
||||||
SELECT
|
|
||||||
ra.id as agent_id,
|
|
||||||
ra.user_id,
|
|
||||||
ra.agent_code,
|
|
||||||
ra.status,
|
|
||||||
ra.region_id,
|
|
||||||
u.phone,
|
|
||||||
u.real_name
|
|
||||||
FROM regional_agents ra
|
|
||||||
LEFT JOIN users u ON ra.user_id = u.id
|
|
||||||
WHERE ra.id = ?
|
|
||||||
`, [decoded.agentId]);
|
|
||||||
if (agents.length === 0) {
|
|
||||||
return res.status(401).json({
|
|
||||||
success: false,
|
|
||||||
message: '代理账号不存在'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
const agent = agents[0];
|
|
||||||
|
|
||||||
// 检查代理状态
|
|
||||||
if (agent.status !== 'active') {
|
|
||||||
return res.status(403).json({
|
|
||||||
success: false,
|
|
||||||
message: '代理账号已被禁用或未激活'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 将代理信息添加到请求对象中
|
|
||||||
req.agent = {
|
|
||||||
id: agent.agent_id,
|
|
||||||
userId: agent.user_id,
|
|
||||||
agentCode: agent.agent_code,
|
|
||||||
regionId: agent.region_id,
|
|
||||||
phone: agent.phone,
|
|
||||||
realName: agent.real_name
|
|
||||||
};
|
|
||||||
|
|
||||||
req.user = {
|
|
||||||
id: agent.user_id,
|
|
||||||
role: 'agent'
|
|
||||||
};
|
|
||||||
|
|
||||||
next();
|
|
||||||
|
|
||||||
} catch (error) {
|
|
||||||
console.log(error,'regional_agents');
|
|
||||||
|
|
||||||
if (error.name === 'JsonWebTokenError') {
|
|
||||||
return res.status(401).json({
|
|
||||||
success: false,
|
|
||||||
message: '无效的认证令牌1'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (error.name === 'TokenExpiredError') {
|
|
||||||
return res.status(401).json({
|
|
||||||
success: false,
|
|
||||||
message: '认证令牌已过期,请重新登录'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
logger.error('代理身份验证失败', {
|
|
||||||
error: error.message,
|
|
||||||
stack: error.stack,
|
|
||||||
ip: req.ip
|
|
||||||
});
|
|
||||||
|
|
||||||
res.status(500).json({
|
|
||||||
success: false,
|
|
||||||
message: '身份验证失败'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -116,59 +117,59 @@ const agentAuth = async (req, res, next) => {
|
|||||||
* 如果提供了token则验证,否则继续执行
|
* 如果提供了token则验证,否则继续执行
|
||||||
*/
|
*/
|
||||||
const optionalAgentAuth = async (req, res, next) => {
|
const optionalAgentAuth = async (req, res, next) => {
|
||||||
try {
|
try {
|
||||||
const token = req.headers.authorization?.replace('Bearer ', '');
|
const token = req.headers.authorization?.replace('Bearer ', '');
|
||||||
|
|
||||||
if (!token) {
|
if (!token) {
|
||||||
return next();
|
return next();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 验证JWT token
|
||||||
|
const decoded = jwt.verify(token, JWT_SECRET);
|
||||||
|
|
||||||
|
if (decoded.role === 'agent') {
|
||||||
|
// 查询代理信息
|
||||||
|
const [agents] = await getDB().execute(`
|
||||||
|
SELECT ra.id as agent_id,
|
||||||
|
ra.user_id,
|
||||||
|
ra.agent_code,
|
||||||
|
ra.status,
|
||||||
|
ra.region_id,
|
||||||
|
u.phone,
|
||||||
|
u.real_name
|
||||||
|
FROM regional_agents ra
|
||||||
|
LEFT JOIN users u ON ra.user_id = u.id
|
||||||
|
WHERE ra.id = ?
|
||||||
|
AND ra.status = 'active'
|
||||||
|
`, [decoded.agentId]);
|
||||||
|
|
||||||
|
if (agents.length > 0) {
|
||||||
|
const agent = agents[0];
|
||||||
|
req.agent = {
|
||||||
|
id: agent.agent_id,
|
||||||
|
userId: agent.user_id,
|
||||||
|
agentCode: agent.agent_code,
|
||||||
|
regionId: agent.region_id,
|
||||||
|
phone: agent.phone,
|
||||||
|
realName: agent.real_name
|
||||||
|
};
|
||||||
|
|
||||||
|
req.user = {
|
||||||
|
id: agent.user_id,
|
||||||
|
role: 'agent'
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
// 可选验证失败时不阻止请求继续
|
||||||
|
next();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 验证JWT token
|
|
||||||
const decoded = jwt.verify(token, JWT_SECRET);
|
|
||||||
|
|
||||||
if (decoded.role === 'agent') {
|
|
||||||
// 查询代理信息
|
|
||||||
const [agents] = await getDB().execute(`
|
|
||||||
SELECT
|
|
||||||
ra.id as agent_id,
|
|
||||||
ra.user_id,
|
|
||||||
ra.agent_code,
|
|
||||||
ra.status,
|
|
||||||
ra.region_id,
|
|
||||||
u.phone,
|
|
||||||
u.real_name
|
|
||||||
FROM regional_agents ra
|
|
||||||
LEFT JOIN users u ON ra.user_id = u.id
|
|
||||||
WHERE ra.id = ? AND ra.status = 'active'
|
|
||||||
`, [decoded.agentId]);
|
|
||||||
|
|
||||||
if (agents.length > 0) {
|
|
||||||
const agent = agents[0];
|
|
||||||
req.agent = {
|
|
||||||
id: agent.agent_id,
|
|
||||||
userId: agent.user_id,
|
|
||||||
agentCode: agent.agent_code,
|
|
||||||
regionId: agent.region_id,
|
|
||||||
phone: agent.phone,
|
|
||||||
realName: agent.real_name
|
|
||||||
};
|
|
||||||
|
|
||||||
req.user = {
|
|
||||||
id: agent.user_id,
|
|
||||||
role: 'agent'
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
next();
|
|
||||||
|
|
||||||
} catch (error) {
|
|
||||||
// 可选验证失败时不阻止请求继续
|
|
||||||
next();
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
agentAuth,
|
agentAuth,
|
||||||
optionalAgentAuth
|
optionalAgentAuth
|
||||||
};
|
};
|
||||||
783
routes/agent.js
783
routes/agent.js
@@ -1,8 +1,8 @@
|
|||||||
const express = require('express');
|
const express = require('express');
|
||||||
const router = express.Router();
|
const router = express.Router();
|
||||||
const { getDB } = require('../database');
|
const {getDB} = require('../database');
|
||||||
const { agentAuth } = require('../middleware/agentAuth');
|
const {agentAuth} = require('../middleware/agentAuth');
|
||||||
const { logger } = require('../config/logger');
|
const {logger} = require('../config/logger');
|
||||||
const dayjs = require('dayjs');
|
const dayjs = require('dayjs');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -10,81 +10,203 @@ const dayjs = require('dayjs');
|
|||||||
* GET /api/agent/stats
|
* GET /api/agent/stats
|
||||||
*/
|
*/
|
||||||
router.get('/stats', agentAuth, async (req, res) => {
|
router.get('/stats', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const {id: agentId, userId} = req.agent;
|
||||||
|
console.log(req.agent)
|
||||||
|
|
||||||
// 获取下级用户统计
|
// 获取下级用户统计
|
||||||
const [userStats] = await getDB().execute(`
|
const [userStats] = await getDB().execute(`
|
||||||
SELECT
|
SELECT COUNT(*) as total_users,
|
||||||
COUNT(*) as total_users,
|
COUNT(CASE WHEN DATE(created_at) = CURDATE() THEN 1 END) as today_new_users
|
||||||
COUNT(CASE WHEN DATE(created_at) = CURDATE() THEN 1 END) as today_new_users,
|
FROM users
|
||||||
COUNT(CASE WHEN updated_at >= DATE_SUB(NOW(), INTERVAL 7 DAY) THEN 1 END) as active_users,
|
WHERE inviter = ?
|
||||||
0 as total_balance
|
`, [userId]);
|
||||||
FROM agent_merchants
|
//获取直推用户的分销用户数量
|
||||||
WHERE agent_id = ?
|
const [userIds] = await getDB().execute(`
|
||||||
`, [agentId]);
|
SELECT id
|
||||||
|
FROM users
|
||||||
|
WHERE inviter = ?
|
||||||
|
`, [userId]);
|
||||||
|
let active_users = 0
|
||||||
|
for (const id of userIds) {
|
||||||
|
const [userTotal] = await getDB().execute(`
|
||||||
|
SELECT COUNT(*) as total_users
|
||||||
|
FROM users
|
||||||
|
WHERE inviter = ?
|
||||||
|
`, [id])
|
||||||
|
active_users += userTotal[0].total_users
|
||||||
|
}
|
||||||
|
userStats[0].active_users = active_users;
|
||||||
|
// 获取佣金统计
|
||||||
|
const [commissionStats] = await getDB().execute(`
|
||||||
|
SELECT COALESCE(SUM(amount), 0) AS total_commission,
|
||||||
|
COALESCE(SUM(CASE
|
||||||
|
WHEN created_at >= DATE_FORMAT(CURDATE(), '%Y-%m-01')
|
||||||
|
AND created_at < DATE_ADD(DATE_FORMAT(CURDATE(), '%Y-%m-01'), INTERVAL 1 MONTH)
|
||||||
|
THEN amount
|
||||||
|
END), 0) AS monthly_commission
|
||||||
|
FROM transfers
|
||||||
|
WHERE to_user_id = ?
|
||||||
|
AND transfer_type = 'user_to_agent'
|
||||||
|
`, [userId]);
|
||||||
|
|
||||||
// 获取佣金统计
|
// 获取转账统计
|
||||||
const [commissionStats] = await getDB().execute(`
|
const [transferStats] = await getDB().execute(`
|
||||||
SELECT
|
SELECT COUNT(*) as total_transfers,
|
||||||
CAST(COALESCE(SUM(commission_amount), 0) AS DECIMAL(10,2)) as total_commission,
|
COUNT(CASE WHEN DATE(t.created_at) = CURDATE() THEN 1 END) as today_transfers,
|
||||||
CAST(COALESCE(SUM(CASE WHEN DATE(created_at) = CURDATE() THEN commission_amount ELSE 0 END), 0) AS DECIMAL(10,2)) as today_commission,
|
CAST(COALESCE(SUM(t.amount), 0) AS DECIMAL(10, 2)) as total_amount,
|
||||||
CAST(COALESCE(SUM(commission_amount), 0) AS DECIMAL(10,2)) as paid_commission,
|
CAST(COALESCE(SUM(CASE WHEN DATE(t.created_at) = CURDATE() THEN t.amount ELSE 0 END),
|
||||||
0 as pending_commission
|
0) AS DECIMAL(10, 2)) as today_amount
|
||||||
FROM agent_commission_records
|
FROM transfers t
|
||||||
WHERE agent_id = ?
|
INNER JOIN agent_merchants am ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
||||||
`, [agentId]);
|
WHERE am.agent_id = ?
|
||||||
|
`, [agentId]);
|
||||||
|
|
||||||
// 获取转账统计
|
const stats = {
|
||||||
const [transferStats] = await getDB().execute(`
|
users: userStats[0] || {
|
||||||
SELECT
|
total_users: 0,
|
||||||
COUNT(*) as total_transfers,
|
today_new_users: 0,
|
||||||
COUNT(CASE WHEN DATE(t.created_at) = CURDATE() THEN 1 END) as today_transfers,
|
active_users: 0
|
||||||
CAST(COALESCE(SUM(t.amount), 0) AS DECIMAL(10,2)) as total_amount,
|
},
|
||||||
CAST(COALESCE(SUM(CASE WHEN DATE(t.created_at) = CURDATE() THEN t.amount ELSE 0 END), 0) AS DECIMAL(10,2)) as today_amount
|
commissions: commissionStats[0] || {
|
||||||
FROM transfers t
|
total_commission: '0.00',
|
||||||
INNER JOIN agent_merchants am ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
today_commission: '0.00',
|
||||||
WHERE am.agent_id = ?
|
paid_commission: '0.00',
|
||||||
`, [agentId]);
|
monthly_commission: '0.00'
|
||||||
|
},
|
||||||
|
transfers: transferStats[0] || {
|
||||||
|
total_transfers: 0,
|
||||||
|
today_transfers: 0,
|
||||||
|
total_amount: '0.00',
|
||||||
|
today_amount: '0.00'
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const stats = {
|
res.json({
|
||||||
users: userStats[0] || {
|
success: true,
|
||||||
total_users: 0,
|
data: stats
|
||||||
today_new_users: 0,
|
});
|
||||||
active_users: 0,
|
|
||||||
total_balance: '0.00'
|
|
||||||
},
|
|
||||||
commissions: commissionStats[0] || {
|
|
||||||
total_commission: '0.00',
|
|
||||||
today_commission: '0.00',
|
|
||||||
paid_commission: '0.00',
|
|
||||||
pending_commission: '0.00'
|
|
||||||
},
|
|
||||||
transfers: transferStats[0] || {
|
|
||||||
total_transfers: 0,
|
|
||||||
today_transfers: 0,
|
|
||||||
total_amount: '0.00',
|
|
||||||
today_amount: '0.00'
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
res.json({
|
} catch (error) {
|
||||||
success: true,
|
logger.error('获取代理统计数据失败', {
|
||||||
data: stats
|
error: error.message,
|
||||||
});
|
stack: error.stack,
|
||||||
|
agentId: req.agent?.id
|
||||||
|
});
|
||||||
|
|
||||||
} catch (error) {
|
res.status(500).json({
|
||||||
logger.error('获取代理统计数据失败', {
|
success: false,
|
||||||
error: error.message,
|
message: '获取统计数据失败'
|
||||||
stack: error.stack,
|
});
|
||||||
agentId: req.agent?.id
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
res.status(500).json({
|
/**
|
||||||
success: false,
|
* 获取代理统计数据-直营代理
|
||||||
message: '获取统计数据失败'
|
* GET /api/agent/stats
|
||||||
});
|
*/
|
||||||
}
|
router.get('/stats_agent_directly', agentAuth, async (req, res) => {
|
||||||
|
try {
|
||||||
|
const {id: agentId, userId} = req.agent;
|
||||||
|
|
||||||
|
// 获取直营用户统计
|
||||||
|
const [userStats] = await getDB().execute(`
|
||||||
|
SELECT COUNT(*) as total_directly_agents,
|
||||||
|
COUNT(CASE WHEN DATE(created_at) = CURDATE() THEN 1 END) as today_new_users
|
||||||
|
FROM users
|
||||||
|
WHERE inviter = ?
|
||||||
|
AND user_type = 'directly_operated'
|
||||||
|
`, [userId]);
|
||||||
|
//获取直营用户的分销用户数量
|
||||||
|
const [userIds] = await getDB().execute(`
|
||||||
|
SELECT id
|
||||||
|
FROM users
|
||||||
|
WHERE inviter = ?
|
||||||
|
AND user_type = 'directly_operated'
|
||||||
|
`, [userId]);
|
||||||
|
//直营商户人数
|
||||||
|
let active_users = 0
|
||||||
|
for (const id of userIds) {
|
||||||
|
const [userTotal] = await getDB().execute(`
|
||||||
|
SELECT COUNT(*) as total_users
|
||||||
|
FROM users
|
||||||
|
WHERE inviter = ?
|
||||||
|
`, [id])
|
||||||
|
active_users += userTotal[0].total_users
|
||||||
|
}
|
||||||
|
userStats[0].active_users = active_users;
|
||||||
|
userStats[0].total_operated = userIds.length;
|
||||||
|
//直销人员分享人数
|
||||||
|
let [agent_share_users] = await getDB().execute(`
|
||||||
|
SELECT id FROM users WHERE inviter=? AND user_type='user'
|
||||||
|
`)
|
||||||
|
let total_share_users = 0
|
||||||
|
for (const id of agent_share_users) {
|
||||||
|
|
||||||
|
}
|
||||||
|
// 获取佣金统计
|
||||||
|
const [commissionStats] = await getDB().execute(`
|
||||||
|
SELECT COALESCE(SUM(amount), 0) AS total_commission,
|
||||||
|
COALESCE(SUM(CASE
|
||||||
|
WHEN created_at >= DATE_FORMAT(CURDATE(), '%Y-%m-01')
|
||||||
|
AND created_at < DATE_ADD(DATE_FORMAT(CURDATE(), '%Y-%m-01'), INTERVAL 1 MONTH)
|
||||||
|
THEN amount
|
||||||
|
END), 0) AS monthly_commission
|
||||||
|
FROM transfers
|
||||||
|
WHERE to_user_id = ?
|
||||||
|
AND transfer_type = 'user_to_agent'
|
||||||
|
`, [userId]);
|
||||||
|
|
||||||
|
// 获取转账统计
|
||||||
|
const [transferStats] = await getDB().execute(`
|
||||||
|
SELECT COUNT(*) as total_transfers,
|
||||||
|
COUNT(CASE WHEN DATE(t.created_at) = CURDATE() THEN 1 END) as today_transfers,
|
||||||
|
CAST(COALESCE(SUM(t.amount), 0) AS DECIMAL(10, 2)) as total_amount,
|
||||||
|
CAST(COALESCE(SUM(CASE WHEN DATE(t.created_at) = CURDATE() THEN t.amount ELSE 0 END),
|
||||||
|
0) AS DECIMAL(10, 2)) as today_amount
|
||||||
|
FROM transfers t
|
||||||
|
INNER JOIN agent_merchants am ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
||||||
|
WHERE am.agent_id = ?
|
||||||
|
`, [agentId]);
|
||||||
|
|
||||||
|
const stats = {
|
||||||
|
users: userStats[0] || {
|
||||||
|
total_directly_agents: 0,
|
||||||
|
today_new_users: 0,
|
||||||
|
active_users: 0,
|
||||||
|
total_operated: userIds.length
|
||||||
|
},
|
||||||
|
commissions: commissionStats[0] || {
|
||||||
|
total_commission: '0.00',
|
||||||
|
today_commission: '0.00',
|
||||||
|
paid_commission: '0.00',
|
||||||
|
monthly_commission: '0.00'
|
||||||
|
},
|
||||||
|
transfers: transferStats[0] || {
|
||||||
|
total_transfers: 0,
|
||||||
|
today_transfers: 0,
|
||||||
|
total_amount: '0.00',
|
||||||
|
today_amount: '0.00'
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
res.json({
|
||||||
|
success: true,
|
||||||
|
data: stats
|
||||||
|
});
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
logger.error('获取代理统计数据失败', {
|
||||||
|
error: error.message,
|
||||||
|
stack: error.stack,
|
||||||
|
agentId: req.agent?.id
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(500).json({
|
||||||
|
success: false,
|
||||||
|
message: '获取统计数据失败'
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -92,112 +214,111 @@ router.get('/stats', agentAuth, async (req, res) => {
|
|||||||
* GET /api/agent/user-growth-trend
|
* GET /api/agent/user-growth-trend
|
||||||
*/
|
*/
|
||||||
router.get('/user-growth-trend', agentAuth, async (req, res) => {
|
router.get('/user-growth-trend', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const {id: agentId, userId} = req.agent;
|
||||||
const { days = 7 } = req.query;
|
const {days = 7} = req.query;
|
||||||
|
|
||||||
const [trendData] = await getDB().execute(`
|
const [trendData] = await getDB().execute(`
|
||||||
SELECT
|
SELECT DATE(created_at) as date,
|
||||||
DATE(created_at) as date,
|
COUNT(*) as count
|
||||||
COUNT(*) as count
|
FROM users
|
||||||
FROM agent_merchants
|
WHERE inviter = ?
|
||||||
WHERE agent_id = ?
|
AND created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
||||||
AND created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
GROUP BY DATE(created_at)
|
||||||
GROUP BY DATE(created_at)
|
ORDER BY date ASC
|
||||||
ORDER BY date ASC
|
`, [userId, parseInt(days)]);
|
||||||
`, [agentId, parseInt(days)]);
|
// 填充缺失的日期(注册数为0)
|
||||||
// 填充缺失的日期(注册数为0)
|
const result = [];
|
||||||
const result = [];
|
|
||||||
|
|
||||||
for (let i = days - 1; i >= 0; i--) {
|
for (let i = days - 1; i >= 0; i--) {
|
||||||
const date = dayjs().subtract(i, 'day');
|
const date = dayjs().subtract(i, 'day');
|
||||||
const dateStr = date.format('YYYY-MM-DD');
|
const dateStr = date.format('YYYY-MM-DD');
|
||||||
|
|
||||||
// 修复日期比较:将数据库返回的Date对象转换为字符串进行比较
|
// 修复日期比较:将数据库返回的Date对象转换为字符串进行比较
|
||||||
const existingData = trendData.find(item => {
|
const existingData = trendData.find(item => {
|
||||||
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
||||||
return itemDateStr === dateStr;
|
return itemDateStr === dateStr;
|
||||||
});
|
});
|
||||||
|
|
||||||
result.push({
|
result.push({
|
||||||
date: date.format('MM-DD'),
|
date: date.format('MM-DD'),
|
||||||
count: existingData ? existingData.count : 0
|
count: existingData ? existingData.count : 0
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
res.json({
|
||||||
|
success: true,
|
||||||
|
data: result
|
||||||
|
});
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
logger.error('获取用户增长趋势失败', {
|
||||||
|
error: error.message,
|
||||||
|
stack: error.stack,
|
||||||
|
agentId: req.agent?.id
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(500).json({
|
||||||
|
success: false,
|
||||||
|
message: '获取趋势数据失败'
|
||||||
|
});
|
||||||
}
|
}
|
||||||
res.json({
|
|
||||||
success: true,
|
|
||||||
data: result
|
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
|
||||||
logger.error('获取用户增长趋势失败', {
|
|
||||||
error: error.message,
|
|
||||||
stack: error.stack,
|
|
||||||
agentId: req.agent?.id
|
|
||||||
});
|
|
||||||
|
|
||||||
res.status(500).json({
|
|
||||||
success: false,
|
|
||||||
message: '获取趋势数据失败'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取佣金收入趋势数据
|
* 获取营收收入趋势数据
|
||||||
* GET /api/agent/commission-trend
|
* GET /api/agent/commission-trend
|
||||||
*/
|
*/
|
||||||
router.get('/commission-trend', agentAuth, async (req, res) => {
|
router.get('/commission-trend', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const {id: agentId, userId} = req.agent;
|
||||||
const { days = 7 } = req.query;
|
const {days = 7} = req.query;
|
||||||
|
|
||||||
const [trendData] = await getDB().execute(`
|
const [trendData] = await getDB().execute(`
|
||||||
SELECT
|
SELECT DATE(created_at) as date,
|
||||||
DATE(created_at) as date,
|
CAST(COALESCE(SUM(amount), 0) AS DECIMAL(10, 2)) as amount
|
||||||
CAST(COALESCE(SUM(commission_amount), 0) AS DECIMAL(10,2)) as amount
|
FROM transfers
|
||||||
FROM agent_commission_records
|
WHERE to_user_id = ?
|
||||||
WHERE agent_id = ?
|
AND created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
||||||
AND created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
AND source_type = 'user_to_agent'
|
||||||
GROUP BY DATE(created_at)
|
GROUP BY DATE(created_at)
|
||||||
ORDER BY date ASC
|
ORDER BY date ASC
|
||||||
`, [agentId, parseInt(days)]);
|
`, [userId, parseInt(days)]);
|
||||||
|
|
||||||
// 填充缺失的日期(佣金为0)
|
// 填充缺失的日期(佣金为0)
|
||||||
const result = [];
|
const result = [];
|
||||||
|
|
||||||
for (let i = days - 1; i >= 0; i--) {
|
for (let i = days - 1; i >= 0; i--) {
|
||||||
const date = dayjs().subtract(i, 'day');
|
const date = dayjs().subtract(i, 'day');
|
||||||
const dateStr = date.format('YYYY-MM-DD');
|
const dateStr = date.format('YYYY-MM-DD');
|
||||||
|
|
||||||
const existingData = trendData.find(item => {
|
const existingData = trendData.find(item => {
|
||||||
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
||||||
return itemDateStr === dateStr;
|
return itemDateStr === dateStr;
|
||||||
});
|
});
|
||||||
|
|
||||||
result.push({
|
result.push({
|
||||||
date: date.format('MM-DD'),
|
date: date.format('MM-DD'),
|
||||||
amount: existingData ? parseFloat(existingData.amount) : 0
|
amount: existingData ? parseFloat(existingData.amount) : 0
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
res.json({
|
||||||
|
success: true,
|
||||||
|
data: result
|
||||||
|
});
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
logger.error('获取佣金趋势失败', {
|
||||||
|
error: error.message,
|
||||||
|
stack: error.stack,
|
||||||
|
agentId: req.agent?.id
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(500).json({
|
||||||
|
success: false,
|
||||||
|
message: '获取趋势数据失败'
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
res.json({
|
|
||||||
success: true,
|
|
||||||
data: result
|
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
|
||||||
logger.error('获取佣金趋势失败', {
|
|
||||||
error: error.message,
|
|
||||||
stack: error.stack,
|
|
||||||
agentId: req.agent?.id
|
|
||||||
});
|
|
||||||
|
|
||||||
res.status(500).json({
|
|
||||||
success: false,
|
|
||||||
message: '获取趋势数据失败'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -205,88 +326,96 @@ router.get('/commission-trend', agentAuth, async (req, res) => {
|
|||||||
* GET /api/agent/user-activity
|
* GET /api/agent/user-activity
|
||||||
*/
|
*/
|
||||||
router.get('/user-activity', agentAuth, async (req, res) => {
|
router.get('/user-activity', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const agentId = req.agent.id;
|
||||||
const { days = 7 } = req.query;
|
const {days = 7} = req.query;
|
||||||
|
|
||||||
// 获取活跃用户趋势(基于转账活动)
|
// 获取活跃用户趋势(基于转账活动)
|
||||||
const [activityTrend] = await getDB().execute(`
|
const [activityTrend] = await getDB().execute(`
|
||||||
SELECT
|
SELECT DATE(t.created_at) as date,
|
||||||
DATE(t.created_at) as date,
|
COUNT(DISTINCT CASE WHEN t.from_user_id = am.merchant_id THEN t.from_user_id END) as active_senders,
|
||||||
COUNT(DISTINCT CASE WHEN t.from_user_id = am.merchant_id THEN t.from_user_id END) as active_senders,
|
COUNT(DISTINCT CASE
|
||||||
COUNT(DISTINCT CASE WHEN t.to_user_id = am.merchant_id THEN t.to_user_id END) as active_receivers,
|
WHEN t.to_user_id = am.merchant_id
|
||||||
COUNT(DISTINCT am.merchant_id) as total_active_users
|
THEN t.to_user_id END) as active_receivers,
|
||||||
FROM transfers t
|
COUNT(DISTINCT am.merchant_id) as total_active_users
|
||||||
INNER JOIN agent_merchants am ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
FROM transfers t
|
||||||
WHERE am.agent_id = ?
|
INNER JOIN agent_merchants am ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
||||||
AND t.created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
WHERE am.agent_id = ?
|
||||||
AND t.status = 'completed'
|
AND t.created_at >= DATE_SUB(CURDATE(), INTERVAL ? DAY)
|
||||||
GROUP BY DATE(t.created_at)
|
AND t.status = 'completed'
|
||||||
ORDER BY date ASC
|
GROUP BY DATE(t.created_at)
|
||||||
`, [agentId, parseInt(days)]);
|
ORDER BY date ASC
|
||||||
|
`, [agentId, parseInt(days)]);
|
||||||
|
|
||||||
// 获取用户活跃度统计
|
// 获取用户活跃度统计
|
||||||
const [activityStats] = await getDB().execute(`
|
const [activityStats] = await getDB().execute(`
|
||||||
SELECT
|
SELECT COUNT(DISTINCT am.merchant_id) as total_users,
|
||||||
COUNT(DISTINCT am.merchant_id) as total_users,
|
COUNT(DISTINCT CASE
|
||||||
COUNT(DISTINCT CASE WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 1 DAY) THEN am.merchant_id END) as daily_active_users,
|
WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 1 DAY)
|
||||||
COUNT(DISTINCT CASE WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY) THEN am.merchant_id END) as weekly_active_users,
|
THEN am.merchant_id END) as daily_active_users,
|
||||||
COUNT(DISTINCT CASE WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 30 DAY) THEN am.merchant_id END) as monthly_active_users,
|
COUNT(DISTINCT CASE
|
||||||
ROUND(
|
WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY)
|
||||||
COUNT(DISTINCT CASE WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY) THEN am.merchant_id END) * 100.0 /
|
THEN am.merchant_id END) as weekly_active_users,
|
||||||
NULLIF(COUNT(DISTINCT am.merchant_id), 0), 2
|
COUNT(DISTINCT CASE
|
||||||
) as weekly_activity_rate
|
WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 30 DAY)
|
||||||
FROM agent_merchants am
|
THEN am.merchant_id END) as monthly_active_users,
|
||||||
LEFT JOIN transfers t ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
ROUND(
|
||||||
AND t.status = 'completed'
|
COUNT(DISTINCT
|
||||||
WHERE am.agent_id = ?
|
CASE WHEN t.created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY) THEN am.merchant_id END) *
|
||||||
`, [agentId]);
|
100.0 /
|
||||||
|
NULLIF(COUNT(DISTINCT am.merchant_id), 0), 2
|
||||||
|
) as weekly_activity_rate
|
||||||
|
FROM agent_merchants am
|
||||||
|
LEFT JOIN transfers t ON (t.from_user_id = am.merchant_id OR t.to_user_id = am.merchant_id)
|
||||||
|
AND t.status = 'completed'
|
||||||
|
WHERE am.agent_id = ?
|
||||||
|
`, [agentId]);
|
||||||
|
|
||||||
// 填充缺失的日期
|
// 填充缺失的日期
|
||||||
const trendResult = [];
|
const trendResult = [];
|
||||||
for (let i = days - 1; i >= 0; i--) {
|
for (let i = days - 1; i >= 0; i--) {
|
||||||
const date = dayjs().subtract(i, 'day');
|
const date = dayjs().subtract(i, 'day');
|
||||||
const dateStr = date.format('YYYY-MM-DD');
|
const dateStr = date.format('YYYY-MM-DD');
|
||||||
|
|
||||||
const existingData = activityTrend.find(item => {
|
const existingData = activityTrend.find(item => {
|
||||||
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
const itemDateStr = dayjs(item.date).format('YYYY-MM-DD');
|
||||||
return itemDateStr === dateStr;
|
return itemDateStr === dateStr;
|
||||||
});
|
});
|
||||||
|
|
||||||
trendResult.push({
|
trendResult.push({
|
||||||
date: date.format('MM-DD'),
|
date: date.format('MM-DD'),
|
||||||
active_users: existingData ? existingData.total_active_users : 0,
|
active_users: existingData ? existingData.total_active_users : 0,
|
||||||
active_senders: existingData ? existingData.active_senders : 0,
|
active_senders: existingData ? existingData.active_senders : 0,
|
||||||
active_receivers: existingData ? existingData.active_receivers : 0
|
active_receivers: existingData ? existingData.active_receivers : 0
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
res.json({
|
|
||||||
success: true,
|
|
||||||
data: {
|
|
||||||
trend: trendResult,
|
|
||||||
stats: activityStats[0] || {
|
|
||||||
total_users: 0,
|
|
||||||
daily_active_users: 0,
|
|
||||||
weekly_active_users: 0,
|
|
||||||
monthly_active_users: 0,
|
|
||||||
weekly_activity_rate: 0
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
res.json({
|
||||||
logger.error('获取用户活跃度失败', {
|
success: true,
|
||||||
error: error.message,
|
data: {
|
||||||
stack: error.stack,
|
trend: trendResult,
|
||||||
agentId: req.agent?.id
|
stats: activityStats[0] || {
|
||||||
});
|
total_users: 0,
|
||||||
|
daily_active_users: 0,
|
||||||
|
weekly_active_users: 0,
|
||||||
|
monthly_active_users: 0,
|
||||||
|
weekly_activity_rate: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
res.status(500).json({
|
} catch (error) {
|
||||||
success: false,
|
logger.error('获取用户活跃度失败', {
|
||||||
message: '获取用户活跃度数据失败'
|
error: error.message,
|
||||||
});
|
stack: error.stack,
|
||||||
}
|
agentId: req.agent?.id
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(500).json({
|
||||||
|
success: false,
|
||||||
|
message: '获取用户活跃度数据失败'
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -294,37 +423,36 @@ router.get('/user-activity', agentAuth, async (req, res) => {
|
|||||||
* GET /api/agent/commission-distribution
|
* GET /api/agent/commission-distribution
|
||||||
*/
|
*/
|
||||||
router.get('/commission-distribution', agentAuth, async (req, res) => {
|
router.get('/commission-distribution', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const agentId = req.agent.id;
|
||||||
|
|
||||||
const [distributionData] = await getDB().execute(`
|
const [distributionData] = await getDB().execute(`
|
||||||
SELECT
|
SELECT commission_type as type,
|
||||||
commission_type as type,
|
COUNT(*) as count,
|
||||||
COUNT(*) as count,
|
CAST(COALESCE(SUM(commission_amount), 0) AS DECIMAL(10, 2)) as amount
|
||||||
CAST(COALESCE(SUM(commission_amount), 0) AS DECIMAL(10,2)) as amount
|
FROM agent_commission_records
|
||||||
FROM agent_commission_records
|
WHERE agent_id = ?
|
||||||
WHERE agent_id = ?
|
GROUP BY commission_type
|
||||||
GROUP BY commission_type
|
ORDER BY amount DESC
|
||||||
ORDER BY amount DESC
|
`, [agentId]);
|
||||||
`, [agentId]);
|
|
||||||
|
|
||||||
res.json({
|
res.json({
|
||||||
success: true,
|
success: true,
|
||||||
data: distributionData
|
data: distributionData
|
||||||
});
|
});
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error('获取佣金分布失败', {
|
logger.error('获取佣金分布失败', {
|
||||||
error: error.message,
|
error: error.message,
|
||||||
stack: error.stack,
|
stack: error.stack,
|
||||||
agentId: req.agent?.id
|
agentId: req.agent?.id
|
||||||
});
|
});
|
||||||
|
|
||||||
res.status(500).json({
|
res.status(500).json({
|
||||||
success: false,
|
success: false,
|
||||||
message: '获取分布数据失败'
|
message: '获取分布数据失败'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -332,45 +460,43 @@ router.get('/commission-distribution', agentAuth, async (req, res) => {
|
|||||||
* GET /api/agent/recent-users
|
* GET /api/agent/recent-users
|
||||||
*/
|
*/
|
||||||
router.get('/recent-users', agentAuth, async (req, res) => {
|
router.get('/recent-users', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const {id: agentId, userId} = req.agent;
|
||||||
const { limit = 10 } = req.query;
|
const {limit = 10} = req.query;
|
||||||
|
|
||||||
const limitValue = Math.max(1, Math.min(100, parseInt(limit))); // 限制在1-100之间
|
const limitValue = Math.max(1, Math.min(100, parseInt(limit))); // 限制在1-100之间
|
||||||
const [recentUsers] = await getDB().execute(`
|
const [recentUsers] = await getDB().execute(`
|
||||||
SELECT
|
SELECT u.id,
|
||||||
u.id,
|
u.username,
|
||||||
u.username,
|
u.real_name,
|
||||||
u.real_name,
|
u.phone,
|
||||||
u.phone,
|
u.avatar,
|
||||||
u.avatar,
|
u.balance,
|
||||||
u.balance,
|
u.created_at,
|
||||||
u.created_at,
|
u.created_at as join_date
|
||||||
am.created_at as join_date
|
FROM users u
|
||||||
FROM agent_merchants am
|
WHERE u.inviter = ?
|
||||||
LEFT JOIN users u ON am.merchant_id = u.id
|
ORDER BY u.created_at DESC
|
||||||
WHERE am.agent_id = ?
|
LIMIT ${limitValue}
|
||||||
ORDER BY am.created_at DESC
|
`, [userId]);
|
||||||
LIMIT ${limitValue}
|
|
||||||
`, [agentId]);
|
|
||||||
|
|
||||||
res.json({
|
res.json({
|
||||||
success: true,
|
success: true,
|
||||||
data: recentUsers
|
data: recentUsers
|
||||||
});
|
});
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error('获取最新用户失败', {
|
logger.error('获取最新用户失败', {
|
||||||
error: error.message,
|
error: error.message,
|
||||||
stack: error.stack,
|
stack: error.stack,
|
||||||
agentId: req.agent?.id
|
agentId: req.agent?.id
|
||||||
});
|
});
|
||||||
|
|
||||||
res.status(500).json({
|
res.status(500).json({
|
||||||
success: false,
|
success: false,
|
||||||
message: '获取最新用户失败'
|
message: '获取最新用户失败'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -378,43 +504,42 @@ router.get('/recent-users', agentAuth, async (req, res) => {
|
|||||||
* GET /api/agent/recent-commissions
|
* GET /api/agent/recent-commissions
|
||||||
*/
|
*/
|
||||||
router.get('/recent-commissions', agentAuth, async (req, res) => {
|
router.get('/recent-commissions', agentAuth, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const agentId = req.agent.id;
|
const {id: agentId, userId} = req.agent;
|
||||||
const { limit = 10 } = req.query;
|
const {limit = 10} = req.query;
|
||||||
|
|
||||||
const limitValue = Math.max(1, Math.min(100, parseInt(limit))); // 限制在1-100之间
|
const limitValue = Math.max(1, Math.min(100, parseInt(limit))); // 限制在1-100之间
|
||||||
const [recentCommissions] = await getDB().execute(`
|
const [recentCommissions] = await getDB().execute(`
|
||||||
SELECT
|
SELECT acr.id,
|
||||||
acr.id,
|
acr.amount as commission_amount,
|
||||||
acr.commission_type,
|
acr.created_at,
|
||||||
acr.commission_amount,
|
u.username,
|
||||||
acr.created_at,
|
u.real_name
|
||||||
u.username,
|
FROM transfers acr
|
||||||
u.real_name
|
LEFT JOIN users u ON acr.from_user_id = u.id
|
||||||
FROM agent_commission_records acr
|
WHERE acr.to_user_id = ?
|
||||||
LEFT JOIN users u ON acr.merchant_id = u.id
|
AND source_type = 'user_to_agent'
|
||||||
WHERE acr.agent_id = ?
|
ORDER BY acr.created_at DESC
|
||||||
ORDER BY acr.created_at DESC
|
LIMIT ${limitValue}
|
||||||
LIMIT ${limitValue}
|
`, [agentId]);
|
||||||
`, [agentId]);
|
|
||||||
|
|
||||||
res.json({
|
res.json({
|
||||||
success: true,
|
success: true,
|
||||||
data: recentCommissions
|
data: recentCommissions
|
||||||
});
|
});
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error('获取最新佣金失败', {
|
logger.error('获取最新佣金失败', {
|
||||||
error: error.message,
|
error: error.message,
|
||||||
stack: error.stack,
|
stack: error.stack,
|
||||||
agentId: req.agent?.id
|
agentId: req.agent?.id
|
||||||
});
|
});
|
||||||
|
|
||||||
res.status(500).json({
|
res.status(500).json({
|
||||||
success: false,
|
success: false,
|
||||||
message: '获取最新佣金失败'
|
message: '获取最新佣金失败'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
@@ -88,7 +88,8 @@ router.post('/login', async (req, res) => {
|
|||||||
userId: agent.user_id,
|
userId: agent.user_id,
|
||||||
agentId: agent.agent_id,
|
agentId: agent.agent_id,
|
||||||
phone: agent.phone,
|
phone: agent.phone,
|
||||||
role: 'agent'
|
role: 'agent',
|
||||||
|
userType: agent.user_type,
|
||||||
},
|
},
|
||||||
JWT_SECRET,
|
JWT_SECRET,
|
||||||
{ expiresIn: '24h' }
|
{ expiresIn: '24h' }
|
||||||
|
|||||||
@@ -170,7 +170,8 @@ router.get('/directly_operated', agentAuth, async (req, res) => {
|
|||||||
// 构建查询条件
|
// 构建查询条件
|
||||||
let whereConditions = ['u.inviter = ?'];
|
let whereConditions = ['u.inviter = ?'];
|
||||||
let queryParams = [agentId];
|
let queryParams = [agentId];
|
||||||
|
whereConditions.push('u.user_type = ?')
|
||||||
|
queryParams.push('directly_operated');
|
||||||
// 添加搜索条件
|
// 添加搜索条件
|
||||||
if (search) {
|
if (search) {
|
||||||
whereConditions.push('(u.username LIKE ? OR u.real_name LIKE ? OR u.phone LIKE ?)');
|
whereConditions.push('(u.username LIKE ? OR u.real_name LIKE ? OR u.phone LIKE ?)');
|
||||||
@@ -324,7 +325,7 @@ router.post('/withdraw', agentAuth, async (req, res) => {
|
|||||||
WHERE id = ?`, [amount, userId])
|
WHERE id = ?`, [amount, userId])
|
||||||
await db.execute(
|
await db.execute(
|
||||||
'INSERT INTO transfers (from_user_id, to_user_id, transfer_type,status,amount,description,source_type) VALUES (?, ?, ?,?,?,?,?)',
|
'INSERT INTO transfers (from_user_id, to_user_id, transfer_type,status,amount,description,source_type) VALUES (?, ?, ?,?,?,?,?)',
|
||||||
[agentId, userId, 'agent_to_operated', 'received', amount, '直营商户提现', 'agent']
|
[agentId, userId, 'agent_to_operated', 'received', amount, '直营商户提现', 'withdraw']
|
||||||
);
|
);
|
||||||
// 提交事务
|
// 提交事务
|
||||||
await db.query('COMMIT');
|
await db.query('COMMIT');
|
||||||
|
|||||||
162
server.js
162
server.js
@@ -7,9 +7,9 @@ const bodyParser = require('body-parser');
|
|||||||
const path = require('path');
|
const path = require('path');
|
||||||
const rateLimit = require('express-rate-limit');
|
const rateLimit = require('express-rate-limit');
|
||||||
const helmet = require('helmet');
|
const helmet = require('helmet');
|
||||||
const { initDB, getDB, dbConfig } = require('./database');
|
const {initDB, getDB, dbConfig} = require('./database');
|
||||||
const { logger } = require('./config/logger');
|
const {logger} = require('./config/logger');
|
||||||
const { errorHandler, notFound } = require('./middleware/errorHandler');
|
const {errorHandler, notFound} = require('./middleware/errorHandler');
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
|
|
||||||
const app = express();
|
const app = express();
|
||||||
@@ -18,80 +18,81 @@ const PORT = process.env.AGENT_PORT || 3002;
|
|||||||
// 确保日志目录存在
|
// 确保日志目录存在
|
||||||
const logDir = path.join(__dirname, 'logs');
|
const logDir = path.join(__dirname, 'logs');
|
||||||
if (!fs.existsSync(logDir)) {
|
if (!fs.existsSync(logDir)) {
|
||||||
fs.mkdirSync(logDir, { recursive: true });
|
fs.mkdirSync(logDir, {recursive: true});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 安全中间件
|
// 安全中间件
|
||||||
app.use(helmet({
|
app.use(helmet({
|
||||||
contentSecurityPolicy: false, // 为了支持前端应用
|
contentSecurityPolicy: false, // 为了支持前端应用
|
||||||
crossOriginEmbedderPolicy: false,
|
crossOriginEmbedderPolicy: false,
|
||||||
crossOriginOpenerPolicy: false, // 禁用 COOP 头部以避免非 HTTPS 环境的警告
|
crossOriginOpenerPolicy: false, // 禁用 COOP 头部以避免非 HTTPS 环境的警告
|
||||||
originAgentCluster: false // 禁用Origin-Agent-Cluster头部
|
originAgentCluster: false // 禁用Origin-Agent-Cluster头部
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// 中间件配置
|
// 中间件配置
|
||||||
// CORS配置 - 允许代理前端访问
|
// CORS配置 - 允许代理前端访问
|
||||||
app.use(cors({
|
app.use(cors({
|
||||||
origin: [
|
origin: [
|
||||||
'http://localhost:5173',
|
'http://192.168.1.43:5175',
|
||||||
'http://localhost:5176',
|
'http://localhost:5173',
|
||||||
'http://localhost:5175',
|
'http://localhost:5176',
|
||||||
'http://localhost:5174',
|
'http://localhost:5175',
|
||||||
'http://localhost:3002',
|
'http://localhost:5174',
|
||||||
'https://agent.zrbjr.com',
|
'http://localhost:3002',
|
||||||
'https://www.zrbjr.com',
|
'https://agent.zrbjr.com',
|
||||||
'https://zrbjr.com'
|
'https://www.zrbjr.com',
|
||||||
],
|
'https://zrbjr.com'
|
||||||
credentials: true,
|
],
|
||||||
methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
|
credentials: true,
|
||||||
allowedHeaders: ['Content-Type', 'Authorization', 'X-Requested-With']
|
methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
|
||||||
|
allowedHeaders: ['Content-Type', 'Authorization', 'X-Requested-With']
|
||||||
}));
|
}));
|
||||||
app.use(bodyParser.json({ limit: '10mb' }));
|
app.use(bodyParser.json({limit: '10mb'}));
|
||||||
app.use(bodyParser.urlencoded({ extended: true, limit: '10mb' }));
|
app.use(bodyParser.urlencoded({extended: true, limit: '10mb'}));
|
||||||
|
|
||||||
// 请求日志中间件
|
// 请求日志中间件
|
||||||
app.use((req, res, next) => {
|
app.use((req, res, next) => {
|
||||||
const start = Date.now();
|
const start = Date.now();
|
||||||
|
|
||||||
res.on('finish', () => {
|
res.on('finish', () => {
|
||||||
const duration = Date.now() - start;
|
const duration = Date.now() - start;
|
||||||
|
|
||||||
// 只记录非正常状态码的请求日志(过滤掉200、304等正常返回)
|
// 只记录非正常状态码的请求日志(过滤掉200、304等正常返回)
|
||||||
if (res.statusCode >= 400 || res.statusCode < 200) {
|
if (res.statusCode >= 400 || res.statusCode < 200) {
|
||||||
logger.info('HTTP Request', {
|
logger.info('HTTP Request', {
|
||||||
method: req.method,
|
method: req.method,
|
||||||
url: req.originalUrl,
|
url: req.originalUrl,
|
||||||
statusCode: res.statusCode,
|
statusCode: res.statusCode,
|
||||||
duration: `${duration}ms`,
|
duration: `${duration}ms`,
|
||||||
ip: req.ip,
|
ip: req.ip,
|
||||||
userAgent: req.get('User-Agent')
|
userAgent: req.get('User-Agent')
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
next();
|
next();
|
||||||
});
|
});
|
||||||
|
|
||||||
// 限流中间件
|
// 限流中间件
|
||||||
const limiter = rateLimit({
|
const limiter = rateLimit({
|
||||||
windowMs: 15 * 60 * 1000, // 15分钟
|
windowMs: 15 * 60 * 1000, // 15分钟
|
||||||
max: 1000, // 限制每个IP 15分钟内最多1000个请求
|
max: 1000, // 限制每个IP 15分钟内最多1000个请求
|
||||||
message: {
|
message: {
|
||||||
success: false,
|
success: false,
|
||||||
error: {
|
error: {
|
||||||
code: 'RATE_LIMIT_EXCEEDED',
|
code: 'RATE_LIMIT_EXCEEDED',
|
||||||
message: '请求过于频繁,请稍后再试'
|
message: '请求过于频繁,请稍后再试'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
});
|
});
|
||||||
app.use('/api', limiter);
|
app.use('/api', limiter);
|
||||||
// 上传文件静态服务
|
// 上传文件静态服务
|
||||||
app.use('/uploads', express.static(path.join(__dirname, 'uploads'), {
|
app.use('/uploads', express.static(path.join(__dirname, 'uploads'), {
|
||||||
setHeaders: (res, filePath) => {
|
setHeaders: (res, filePath) => {
|
||||||
res.setHeader('Access-Control-Allow-Origin', '*');
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
||||||
res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS');
|
res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS');
|
||||||
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
|
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
// API路由 - 代理专用路由
|
// API路由 - 代理专用路由
|
||||||
app.use('/api/auth', require('./routes/auth'));
|
app.use('/api/auth', require('./routes/auth'));
|
||||||
@@ -105,7 +106,6 @@ app.use('/api/upload', require('./routes/upload'));
|
|||||||
app.use('/api/captcha', require('./routes/captcha')); // 验证码路由
|
app.use('/api/captcha', require('./routes/captcha')); // 验证码路由
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 404处理
|
// 404处理
|
||||||
app.use(notFound);
|
app.use(notFound);
|
||||||
|
|
||||||
@@ -114,7 +114,7 @@ app.use(errorHandler);
|
|||||||
|
|
||||||
// 导出app供测试使用
|
// 导出app供测试使用
|
||||||
module.exports = {
|
module.exports = {
|
||||||
app, getDB
|
app, getDB
|
||||||
};
|
};
|
||||||
|
|
||||||
// 初始化全局验证码存储
|
// 初始化全局验证码存储
|
||||||
@@ -122,44 +122,44 @@ global.captchaStore = new Map();
|
|||||||
|
|
||||||
// 启动服务器
|
// 启动服务器
|
||||||
app.listen(PORT, async () => {
|
app.listen(PORT, async () => {
|
||||||
try {
|
try {
|
||||||
// 初始化数据库连接
|
// 初始化数据库连接
|
||||||
await initDB();
|
await initDB();
|
||||||
console.log(`代理后台API服务器运行在端口 ${PORT}`);
|
console.log(`代理后台API服务器运行在端口 ${PORT}`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('服务器启动失败:', error);
|
console.error('服务器启动失败:', error);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 优雅关闭处理
|
// 优雅关闭处理
|
||||||
process.on('SIGTERM', async () => {
|
process.on('SIGTERM', async () => {
|
||||||
console.log('收到SIGTERM信号,正在关闭服务器...');
|
console.log('收到SIGTERM信号,正在关闭服务器...');
|
||||||
try {
|
try {
|
||||||
await closeDB();
|
await closeDB();
|
||||||
console.log('数据库连接已关闭');
|
console.log('数据库连接已关闭');
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('关闭数据库连接时出错:', error);
|
console.error('关闭数据库连接时出错:', error);
|
||||||
}
|
}
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
process.on('SIGINT', async () => {
|
process.on('SIGINT', async () => {
|
||||||
console.log('收到SIGINT信号,正在关闭服务器...');
|
console.log('收到SIGINT信号,正在关闭服务器...');
|
||||||
try {
|
try {
|
||||||
await closeDB();
|
await closeDB();
|
||||||
console.log('数据库连接已关闭');
|
console.log('数据库连接已关闭');
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('关闭数据库连接时出错:', error);
|
console.error('关闭数据库连接时出错:', error);
|
||||||
}
|
}
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
process.on('unhandledRejection', (reason, promise) => {
|
process.on('unhandledRejection', (reason, promise) => {
|
||||||
console.error('未处理的Promise拒绝:', reason);
|
console.error('未处理的Promise拒绝:', reason);
|
||||||
});
|
});
|
||||||
|
|
||||||
process.on('uncaughtException', (error) => {
|
process.on('uncaughtException', (error) => {
|
||||||
console.error('未捕获的异常:', error);
|
console.error('未捕获的异常:', error);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
Reference in New Issue
Block a user