# Kylin Law Case - 法律合规文档

## 一、适用法律法规

### 1.1 《中华人民共和国律师法》(2017.9.1 修订)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第三十八条 | 律师应当保守在执业活动中知悉的国家秘密、商业秘密，不得泄露当事人的隐私 | 客户信息加密（`encrypted_fields = ['id_number', 'phone', 'email']`） |
| 第三十九条 | 律师不得在同一案件中为双方当事人担任代理人，不得代理与本人或者其近亲属有利益冲突的法律事务 | 利益冲突检索（ConflictCheck） |
| 第四十条 | 律师在执业活动中不得私自接受委托、收取费用 | 费用管理（Fee/Invoice） |

### 1.2 《中华人民共和国个人信息保护法》(2021.11.1)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第六条 | 最小必要原则 | 仅收集案件相关的客户信息 |
| 第二十八条 | 敏感个人信息保护 | 身份证号、手机号、邮箱加密存储 |
| 第四十七条 | 保存期限届满时应删除 | 操作日志保留 180 天（`log_retention_days = 180`） |

### 1.3 《中华人民共和国数据安全法》(2021.9.1)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第二十一条 | 建立数据分类分级保护制度 | 案件文档分级管理 |
| 第二十七条 | 加强风险监测 | 审计日志记录所有操作（AuditAccessLog） |

### 1.4 《中华人民共和国网络安全法》(2017.6.1)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第二十一条 | 数据加密措施 | 客户敏感字段加密 |
| 第四十二条 | 不得泄露个人信息 | 会话超时保护（PC 30 分钟，移动端 7 天） |

### 1.5 《中华人民共和国档案法》(2021.1.1)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第十四条 | 应当归档的材料，按照国家有关规定定期向本单位档案机构或者档案工作人员移交 | 案件文档归档管理 |

### 1.6 《中华人民共和国电子签名法》(2019.4.23 修订)

| 条款 | 要求 | 合规要点 |
|------|------|----------|
| 第三条 | 民事活动中的合同或者其他文件、单证等文书，当事人可以约定使用或者不使用电子签名 | 法律文书电子签名支持 |

---

## 二、行业规范

### 2.1 律所管理规范

- 依据 **《律师执业管理办法》**，案件利益冲突检索是强制要求
- 依据 **《律师事务所管理办法》**，案件收费需符合收费标准
- 案件编号需规范可追溯（`CASE-YYYYMMDD-NNN`）

### 2.2 信息安全规范

- 客户敏感信息（身份证号、手机号、邮箱）必须加密存储
- 文档上传需白名单限制（`allowed_document_types`）
- 文档上传大小限制（`max_document_size = 50MB`）
- 操作日志保留至少 6 个月（`log_retention_days = 180`）

### 2.3 时效管理

- 案件时限预警（7 天/3 天/1 天三级）确保不超期
- 庭审排期提醒

---

## 三、合规检查清单

### 3.1 案件管理

- [x] 案件编号规范（`CASE-YYYYMMDD-NNN`）
- [x] 利益冲突检索（ConflictCheck）
- [x] 案件时限预警（7/3/1 天）
- [x] 案件状态变更审计

### 3.2 数据安全

- [x] 客户敏感信息加密（身份证号、手机号、邮箱）
- [x] 文档上传白名单（pdf/doc/docx/xls/xlsx/jpg/png/zip/rar）
- [x] 文档大小限制（50MB）
- [x] 操作日志保留 180 天
- [x] 会话超时（PC 30 分钟，移动端 7 天）

### 3.3 费用管理

- [x] 计费精度（2 位小数）

---

## 四、代码检测报告

### 4.1 检测结果

| 检测项 | 状态 | 说明 |
|------|------|------|
| 敏感信息加密 | ✅ 已通过 | `EncryptionService` + `Encryptable` trait，加密字段配置完整 |
| 利益冲突检索 | ✅ 已通过 | `ConflictCheckService` 实现冲突检测 |
| 案件时限预警 | ✅ 已通过 | `DeadlineWarningService` + `ScanDeadlinesCommand`，三级预警 |
| 文档类型白名单 | ✅ 已通过 | `allowed_document_types` 限制上传类型 |
| 文档大小限制 | ✅ 已通过 | `max_document_size = 50MB` |
| 操作日志 | ✅ 已通过 | `AuditAccessLog` + `OperationLog`，180 天保留 |
| 会话超时 | ✅ 已通过 | PC 30 分钟，移动端 7 天 |
| 案件编号 | ✅ 已通过 | `CASE-YYYYMMDD-NNN` 格式 |
| 案件状态审计 | ✅ 已通过 | `CaseStatusChanged` 事件 + `RecordStatusChange` 监听器 |
| 庭审提醒 | ✅ 已通过 | `ScheduleReminder` + `SendScheduleReminderJob` |
| 数据库迁移文件 | ✅ 已修复 | 新增 `2026_06_01_000001_create_law_case_tables.php`，包含 16 张表（客户/案件/案件-律师关联/文档/文档模板/文档审批/任务/日程/费用/发票/工时/冲突检索/里程碑/状态流转/审计日志/操作日志） |
| 模型表名映射 | ✅ 已修复 | 15 个模型统一添加 `$table` 属性，使用 `kylin_law_` 前缀，避免与系统表冲突 |
| 案件-律师关联表 | ✅ 已修复 | 新增 `kylin_law_case_lawyer` 中间表，CaseModel 关联表名同步更新 |
| 外键约束完整性 | ✅ 已修复 | 迁移文件建立完整外键关系，案件删除级联清理文档/任务/日程/费用等 |

### 4.2 审查结论

本包为律所案件系统核心包，功能覆盖全面，合规性良好。所有关键合规项均已实现。

新增迁移文件与表名修复后，数据持久化层完整：
- 16 张表覆盖客户/案件/文档/任务/日程/费用/工时/冲突检索/审计全流程
- 客户敏感字段（身份证号/电话/邮箱）通过 `Encryptable` Trait 加密存储
- 案件-律师多对多关联通过 `kylin_law_case_lawyer` 中间表实现
- 审计访问日志（AuditAccessLog）和操作日志（OperationLog）满足《网络安全法》第二十一条日志保留要求