| 
									
										
										
										
											2025-07-21 15:13:26 +08:00
										 |  |  |  | package repositories | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | import ( | 
					
						
							|  |  |  |  | 	"context" | 
					
						
							|  |  |  |  | 	"tyapi-server/internal/domains/certification/entities" | 
					
						
							|  |  |  |  | 	"tyapi-server/internal/domains/certification/enums" | 
					
						
							|  |  |  |  | 	"tyapi-server/internal/shared/interfaces" | 
					
						
							|  |  |  |  | ) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | // CertificationCommandRepository 认证命令仓储接口 | 
					
						
							|  |  |  |  | // 专门处理认证数据的变更操作,符合CQRS模式 | 
					
						
							|  |  |  |  | type CertificationCommandRepository interface { | 
					
						
							|  |  |  |  | 	// 基础CRUD操作 | 
					
						
							|  |  |  |  | 	Create(ctx context.Context, cert entities.Certification) error | 
					
						
							|  |  |  |  | 	Update(ctx context.Context, cert entities.Certification) error | 
					
						
							|  |  |  |  | 	Delete(ctx context.Context, id string) error | 
					
						
							| 
									
										
										
										
											2025-07-28 01:46:39 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-21 15:13:26 +08:00
										 |  |  |  | 	// 业务特定的更新操作 | 
					
						
							|  |  |  |  | 	UpdateStatus(ctx context.Context, id string, status enums.CertificationStatus) error | 
					
						
							|  |  |  |  | 	UpdateAuthFlowID(ctx context.Context, id string, authFlowID string) error | 
					
						
							|  |  |  |  | 	UpdateContractInfo(ctx context.Context, id string, contractFileID, esignFlowID, contractURL, contractSignURL string) error | 
					
						
							|  |  |  |  | 	UpdateFailureInfo(ctx context.Context, id string, reason enums.FailureReason, message string) error | 
					
						
							| 
									
										
										
										
											2025-07-28 01:46:39 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-21 15:13:26 +08:00
										 |  |  |  | 	// 批量操作 | 
					
						
							|  |  |  |  | 	BatchUpdateStatus(ctx context.Context, ids []string, status enums.CertificationStatus) error | 
					
						
							| 
									
										
										
										
											2025-07-28 01:46:39 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-21 15:13:26 +08:00
										 |  |  |  | 	// 事务支持 | 
					
						
							|  |  |  |  | 	WithTx(tx interfaces.Transaction) CertificationCommandRepository | 
					
						
							| 
									
										
										
										
											2025-07-28 01:46:39 +08:00
										 |  |  |  | } |