augushong
d5329cdd45
feat(nginx-log): curd 生成 raw/position 后台并改只读
...
- NginxAccessLog + NginxLogPosition Scheme 加 #[Component] 注解
- Scheme Table name 补 ul_ 前缀(curd 严格校验要求)
- curd 生成 nginx 模块完整后台(controller/model/view/js)
- Base/App 双层只读控制器(参照 TimerLogBase 范式)
- AccessLogBase: add/edit/delete/modify 全部 error
- LogPositionBase: 同上
- 视图改造:
- access_log 裁剪到 8 列核心字段(time_local/method/uri/status/remote_addr/request_time/body_bytes_sent/http_user_agent)
- status/request_time 自定义 badge 渲染
- toolbar 清空 + operat 仅保留详情(B 类只读页面)
- log_position 全字段 + 只读化
- HTTP 验证:index 200 OK + add/edit/delete/modify 全部返回错误
2026-07-28 06:21:13 +08:00
augushong
7987001cd2
feat(nginx-log): NginxLogStat dashboard 控制器(Base/App 双层,日/周/月/年聚合)
...
- extend/base/admin/controller/system/NginxLogStatBase.php:完整逻辑
- @ControllerAnnotation(title=Nginx访问统计) + @NodeAnotation(title=访问统计)
- index() 页面/接口同体:isAjax() 返回 JSON,否则 fetch()
- period 解析:day(24h)/week(7d)/month(30d)/year(12m)/custom,invalid 自动 fallback day
- custom start>end 自动 swap
- 整体指标:SUM stat_hour,avg_request_time 按 PV 加权平均
- 趋势:day 按 stat_hour 聚合补 0-23;week/month/custom 按 stat_date 补日期序列;year 按 (stat_date DIV 100) 聚合补 1-12 月
- Top N:sysconfig('nginx_log','topn_default',10),topN=0 不截断
- 跨周期 UV 标注:uv_is_estimate = period !== 'day'
- 空表/空范围不崩(返回 0/[])
- app/admin/controller/system/NginxLogStat.php:App 入口,仅 extends Base
性能:stat_hour 10 万行 + period=year 服务端 < 700ms(< 2s 要求)
依赖:T1 stat 模型、T9 Aggregate;blocks:T13 视图
2026-07-28 06:17:22 +08:00
augushong
0d19881a22
feat(nginx-log): 新增 6 张表 phinx migration + Scheme + model
2026-07-28 00:03:49 +08:00
augushong
908f84ee9f
refactor(timer): TimerLog 控制器迁移到 Base 层 + toolbar 与事件监听修正
...
控制器逻辑移入 extend/base/admin/controller/system/TimerLogBase.php,app 层改为空壳继承。index.js 补 toolbar:[] + defaultToolbar:['filter'](B 类只读页面),修正 ua.table.on → layui.table.on。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 22:39:53 +08:00
augushong
009647f96f
refactor(timer): TimerConfig 控制器与视图迁移到 Base 层
...
控制器逻辑移入 extend/base/admin/controller/system/TimerConfigBase.php,app 层改为空壳继承。9 个视图文件迁移到 extend/base/admin/view/system/timer_config/。index.js 补 toolbar: ['refresh', 'export'] 声明(C 类页面,去掉默认的 add/delete)。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 22:39:20 +08:00
augushong
12fe271ce0
feat(timer): 编辑页并发数配置表单
...
edit 表单放行 concurrency 字段,空值=继承代码默认写 NULL,正整数=覆盖。前端联动提示语义。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 21:58:20 +08:00
augushong
41a0f99735
feat(timer): 列表页节点视角下拉与归属可视化
...
新增节点视角下拉(全局/指定节点),calcOwnership 计算任务归属,触发操作联动节点选择器定向 trigger_node_id,并发列双通道显示(默认/覆盖值)。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 21:58:07 +08:00
augushong
f13384403a
feat(timer): 后台触发/编辑/节点列表控制器改造
...
trigger 定向 trigger_node_id 必填穿透 status;edit/modify 改 concurrency 后 Cache::inc 递增脏标记触发立即 reload(D18);hostList 返回在线节点;normalizeConcurrency 归一化入库值。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 21:57:56 +08:00
augushong
236a343fa9
feat(timer): 新增并发数/触发节点/触发时间三字段及幂等分发
...
Scheme 定义 concurrency(nullable)/trigger_node_id/last_trigger_time 三字段,Model 声明属性,v2.3.0 分发代码幂等 ALTER 保证升级自动同步。
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-25 21:57:14 +08:00
augushong
e558a97e91
fix(host): 防止主节点重复并修复 setMaster 权限
...
Clear all is_master flags before electing new master to prevent multiple master records. Fix setMaster annotation from @auth true to proper @NodeAnotation format so permission node is generated correctly.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-26 18:33:46 +08:00
augushong
a47bbb2c6a
fix(timer): 自动记录执行日志并捕获结果
...
Add execute() wrapper in TimerControllerBase that wraps do() with logStart/logEnd, captures return value to result field. Change site URL routing from /do to /execute with task_name injection. Add result field to system_timer_log scheme.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-26 18:33:45 +08:00
augushong
90e584f5a1
feat(timer): 新增定时器配置、日志和主机的后台管理界面
...
T10: TimerConfig CURD - task management with run_type/status editing,
manual trigger button, task_name read-only, no add/delete
T11: TimerLog CURD - read-only log viewer with filters and color badges
T12: Host list enhanced - is_master column, setMaster button
2026-05-26 18:33:43 +08:00
augushong
25fab093fa
feat(timer): 新增 run_type 调度、host_id 投递和日志清理
...
T7: TimerBase shouldExecuteTask() - main/auto/all/manual/disabled modes
with two-phase DB row lock for auto mode
T8: TimerControllerBase - host_id param, logStart/logEnd methods
TimerServiceBase - inject host_id into site URLs
T9: TimerLogClean command - php think admin:timer:log:clean --days=30
2026-05-26 18:33:42 +08:00
augushong
abeac2c3cb
feat(timer): 新增配置同步到数据库及主节点选举
...
T5: TimerServiceBase.syncConfigToDatabase() - syncs task config to DB
T6: HostServiceBase - auto master election, stale node detection,
getMasterNode/setMasterNode methods
2026-05-26 18:33:41 +08:00
augushong
d719a99d14
feat(timer): 新增多节点定时器协调的 Scheme 定义
2026-05-26 18:33:41 +08:00
augushong
8cc08bcb8c
feat: 发布智能体版
2026-03-26 20:22:34 +08:00
augushong
1a88ff286e
feat(uniapp): 集成 Pinia 状态管理并实现用户认证流程
2026-02-01 12:01:37 +08:00
augushong
6eefa1cd2e
refactor(admin): 重构系统状态模块以支持模块化结构
2026-01-23 00:02:51 +08:00
augushong
3a4194d3e9
feat: 新增系统状态页面功能
2026-01-22 23:28:13 +08:00
augushong
23826cd06e
refactor(scheme): 优化数据库同步逻辑并增加备份表检查
2026-01-09 22:26:34 +08:00
augushong
edeae731f0
refactor: 删除废弃的scheme类文件
2026-01-09 21:40:20 +08:00
augushong
6b4a67aeb4
feat(scheme): 新增多个数据模型类文件
2026-01-09 21:38:25 +08:00
augushong
8de6b99bb3
feat(scheme): 新增数据库表结构同步方案
2026-01-09 21:08:51 +08:00
augushong
b1a6b37ee0
feat: 增加主机节点表结构代码
2025-08-23 22:44:47 +08:00
augushong
d3e85fa552
feat: 升级权限管理模式
2025-03-20 16:57:05 +08:00
augushong
5653f0d485
删除代码无用代码
2023-12-08 14:17:18 +08:00
augushong
9f2d0898ec
发布新版本;增加自动替换脚本
2023-12-08 14:09:13 +08:00
augushong
c941f12884
增加说明
2023-10-18 16:35:30 +08:00
augushong
6195ac6be5
将所有主要逻辑代码迁移到extend中,并在service中注册调用;
2023-10-18 16:32:28 +08:00
augushong
8f1a749b8d
调整源码对比方式;调整更新逻辑
2023-10-18 15:19:05 +08:00
augushong
3dcf336bbc
修改著作信息;修改更新配置文件
2023-09-25 11:12:57 +08:00
augushong
5955a03d2c
实现view的扩展架构;调整think-view依赖;发布新版本
2023-09-25 10:35:03 +08:00
augushong
afd570b910
清理部分无用的代码;调整更新逻辑;发布新版本
2023-09-23 18:05:41 +08:00
augushong
44edefb37b
重新修改主业务逻辑的命名规则
2023-09-23 17:48:36 +08:00
augushong
bee15dfea6
调整admin下的类库代码,将主要逻辑调整到extend下
2023-09-23 17:30:45 +08:00
augushong
08c340a2bf
增加response的事件机制;为login增加事件;发布新版本
2023-09-23 14:50:24 +08:00
augushong
e176ed19e5
增加js的事件处理;增加忘记密码的js替换事件;发布新版本;
2023-09-23 11:47:18 +08:00
augushong
139ff5bda7
修改事件处理函数的逻辑;修改忘记密码提示;忘记密码增加view_replace事件;发布新版本
2023-09-23 10:36:02 +08:00
augushong
135d26623e
调整更新的append的逻辑;为login增加trait扩展机制;发布新版本
2023-09-21 18:09:04 +08:00
augushong
fcaa78f6e9
开始通过git升级版本
2023-09-19 16:29:19 +08:00
augushong
37bbd99861
重新实现filesystem模块,升级到最新版本;
2023-09-19 15:21:40 +08:00
augushong
c7426e4094
修改说明;修改基础代码;
2023-09-18 17:22:30 +08:00
augushong
996f7014ee
修改curd生成单独的js
2023-09-18 16:45:30 +08:00
augushong
ca729da0a9
将js代码架构改为app下渲染;
2023-09-18 16:32:46 +08:00
augushong
4d9434454e
调整统一provider目录;增加content事件的快速登录案例;
2023-09-15 14:33:34 +08:00
augushong
a2c14391b1
清理技术债务;增加后台登录成功事件;
2023-09-09 13:43:29 +08:00
augushong
a12812d858
升级至tp8
2023-09-04 11:50:04 +08:00
augushong
3e2e401308
升级layui版本
2023-09-04 09:53:15 +08:00
augushong
d7f2476cbe
引入格式化工具配置;节点管理新增挂载到控制器注解中的节点;
2023-08-29 17:51:40 +08:00
augushong
1ff847f82e
升级至layui2.8.4;优化文件选择组件;清理tableselect
2023-06-07 16:39:14 +08:00