Commit Graph

31 Commits

Author SHA1 Message Date
zhengxuan.zhang 741874e85d 基于角色的权限控制
1、用户角色枚举、权限枚举、结果记录和密码存储模型
IPermissionService 接口及包含认证、权限检查、密码管理和登出功能的 PermissionService 单例
2、支持层级化角色-权限映射的权限矩阵(SuperAdmin ⊇ Admin ⊇ User)
密码持久化至 passwords.json 文件,并提供工厂默认值回退机制
3、UI 层
LoginDialog — 启动时弹出模态登录对话框,支持密码掩码输入、错误提示以及取消退出功能
RibbonStatusAreaView — 在Ribbon右侧区域始终显示角色标签和“切换用户”按钮
权限感知的CncEditorViewModel — 用户角色无法使用CNC编辑控件
权限感知的CncInspectionModulePipelineViewModel — 用户角色无法进行流程编辑
设置导航可见性 — Admin/User角色隐藏Factory_Settings,User角色隐藏Report_Settings
PasswordManagementView — 仅SuperAdmin可访问的修改角色密码对话框
PermissionTooltipHelper — 附加属性,在禁用控件上显示“当前角色无权访问此功能”提示
2026-06-01 17:15:59 +08:00
zhengxuan.zhang 92213ffd0d Merge branch 'Develop/XP' into turbo-002-cnc
# Conflicts:
#	XplorePlane/Views/Main/MainWindow.xaml
2026-05-22 17:17:29 +08:00
QI Mingxuan e3cfac5f09 Merged PR 82: 授权服务功能合并至开发分支
新增授权服务,XplorePlane 模块 ID 4、零件号 LS950-0071-5-1。
- 支持两种授权模式:CLMS 授权 (0) 和临时测试15分钟模式 (885);
- 支持通过接口查询授权信息。

配置项目如下:
```xml
<appSettings>
  <!-- 授权配置 | License configuration -->
  <add key="License:LicenseMode" value="0" />     <!-- 授权模式:0=CLMS 正式授权,885=临时测试模式 -->
  <add key="License:ModuleId" value="4" />        <!-- 模块 ID,XplorePlane 固定为 4 -->
  <add key="License:UseSma" value="false" />      <!-- 是否启用 SMA 检查 -->
  <add key="License:LicenseState" value="20" />   <!-- 上次授权状态:10=成功,20=失败(运行时由 LicenseService 自动写回)-->
</appSettings>
```

Readme文档详见 `XplorePlane\XP.Common\Documents\License.README.md`。
2026-05-20 10:11:10 +08:00
zhengxuan.zhang c5ec105890 修复错误 2026-05-18 15:56:48 +08:00
zhengxuan.zhang dcc15f62d1 修复测试用例错误 2026-05-18 15:32:00 +08:00
zhengxuan.zhang f3ae01e60d 修复测试用例错误 2026-05-18 13:10:37 +08:00
zhengxuan.zhang 6b87b51938 增加测试用例 2026-05-18 11:26:04 +08:00
zhengxuan.zhang 0ccf9c529e 新增调试页面 2026-05-16 13:44:36 +08:00
QI Mingxuan 94f0649af8 XP.Common 类库中新增授权管理(License Management)功能模块,支持两种授权模式:CLMS 正式授权和临时测试模式。开发统一的授权服务接口,并在主项目中完成集成。 2026-05-15 15:50:35 +08:00
zhengxuan.zhang 49c6785682 手动数据源、存图、流程计算 2026-05-15 15:29:53 +08:00
zhengxuan.zhang f07d891346 位置节点增加保存图像到本地的功能;支持输入图像 2026-05-15 13:44:37 +08:00
zhengxuan.zhang 455e452ec2 修复测试用例 2026-05-14 20:28:31 +08:00
zhengxuan.zhang d3e75f3fac 在现有的 位置节点属性中新增一个 checkbox 按钮,来确认是否保存图片 2026-05-14 17:04:29 +08:00
zhengxuan.zhang 4d25045d59 修复测试用例错误 2026-05-13 16:20:47 +08:00
zhengxuan.zhang 78ab5bb54a 测试环境中 H.264 编码器(avc1 fourcc)不可用 2026-05-12 20:48:40 +08:00
zhengxuan.zhang 318d1813b8 录屏功能 2026-05-07 15:12:06 +08:00
zhengxuan.zhang d56caf1ab5 双队列的打通 实时按钮的切换 补充测试用例 2026-05-06 23:25:37 +08:00
zhengxuan.zhang bd9b24beb1 探测器双队列的打通与实时按钮的切换 2026-05-06 23:18:28 +08:00
zhengxuan.zhang e3a1184805 主视口没有可用图像时,回退到 IAppStateService.LatestDetectorFrame 2026-05-06 20:31:07 +08:00
zhengxuan.zhang b740f8d453 修复探测器的订阅与获取 2026-05-06 18:20:52 +08:00
zhengxuan.zhang aeef1feee3 以硬件库层面运动硬件轴定义为准,同步修改appstate, 包括CNC 节点属性面板和 XP导出 2026-05-06 17:11:35 +08:00
zhengxuan.zhang 1ef876db2c 调整硬件appstate 保持与硬件库层面定义一致 2026-05-06 16:48:09 +08:00
zhengxuan.zhang 3bee2898c5 Plan 用于 CNC 默认保存和加载,Tools 用于流程图配方 xpm,Data 用于执行结果和中间图像,Report 为报告预留目录 2026-05-06 14:56:07 +08:00
zhengxuan.zhang fd9784ecb6 #调整页面布局,新增操作 Tab; 图像算子改为Tab页选择; 2026-04-30 13:56:35 +08:00
zhengxuan.zhang 2a64d48b54 CNC执行逻辑的开发,点击运行,停止 2026-04-27 16:18:47 +08:00
zhengxuan.zhang 238e97d110 CNC数据存储问题,包括中间的处理情况的缓存 2026-04-21 07:32:28 +08:00
zhengxuan.zhang 1c6c2ac675 修复流程图编辑器界面及初步的功能 2026-04-20 11:07:00 +08:00
李伟 ace1c70ddf 规范类名及命名空间名称 2026-04-13 14:36:18 +08:00
zhengxuan.zhang 687d0b2a87 #0044 使用基础库层面的日志功能 2026-03-23 14:04:53 +08:00
zhengxuan.zhang 180501808e #0040 增加测试用例 2026-03-18 20:41:05 +08:00
zhengxuan.zhang 67898edc3f #0039 全局数据结构设计 2026-03-18 20:14:08 +08:00