package qiyuesuosdk import "time" // OrgCertParams 机构法人认证页参数;OpenCompanyID 通常等于平台 tenant_id。 type OrgCertParams struct { CompanyName string Charger string Mobile string OpenCompanyID string } // CompanyAuthStatus 法人单位认证状态查询结果。 type CompanyAuthStatus struct { CompanyName string RegisterNo string LegalPerson string Charger string Mobile string AuthEndTime string Status string // result.status,AUTH_PASSED 表示认证成功 Reason string } // CreateUserParams 在契约锁创建内部用户(医生等需个人签名的成员)。 type CreateUserParams struct { Name string OpenUserID string AccountNo string Password string Mobile string } // UserInfo 契约锁用户基本信息。 type UserInfo struct { Name string } // CompanySealSpec 企业公章关键字签署位置。 type CompanySealSpec struct { CompanyName string Keyword string OffsetX string OffsetY string RotateDegree int64 Page string // 空则不限页;双章场景可设 "1" } // PersonalSealSpec 个人签名关键字签署位置。 type PersonalSealSpec struct { OpenUserID string Keyword string } // SignDocumentRequest PDF 静默签章请求(机构章 + 可选个人签)。 type SignDocumentRequest struct { PDF []byte Subject string ProcessID string // 空则使用 Client 初始化时的 SignDefaults Launcher string CompanySeal CompanySealSpec PersonalSeals []PersonalSealSpec } // SignDualCompanyRequest 双企业公章签署(如账单合同甲乙双方)。 type SignDualCompanyRequest struct { PDF []byte Subject string ProcessID string Launcher string CompanySeals []CompanySealSpec } // Callback request / event types — 与契约锁开放平台事件名一致。 const ( EventCompanyAuthSuccess = "COMPANY_AUTH_SUCCESS" EventCompanySealAuthSuccess = "COMPANY_SIGN_SILENT_AUTH" EventUserAuthSuccess = "USER_AUTH_SUCCESS" EventPersonalSealAuthSuccess = "PERSONAL_SIGN_SILENT_AUTH" EventCallbackCheck = "CALLBACK_CHECK" ) // CallbackRequest 契约锁 HTTP 回调原始载荷。 type CallbackRequest struct { Signature string `json:"signature"` Timestamp string `json:"timestamp"` Nonce string `json:"nonce"` Encrypted string `json:"encrypted"` } // CallbackEvent 解密验签后的回调事件。 type CallbackEvent struct { Type EventType Data any } // EventType 回调事件类型。 type EventType string // CompanyCertificationData 机构认证成功回调。 type CompanyCertificationData struct { CompanyID string `json:"companyId"` CompanyName string `json:"companyName"` OpenCompanyID string `json:"openCompanyId"` RegisterNo string `json:"registerNo"` ApplicantName string `json:"applicantName"` ApplicantPhone string `json:"applicantPhone"` AuthEndTime string `json:"authEndTime"` CallbackTime string `json:"callbackTime"` } // CompanySealAuthData 机构印章静默授权回调。 type CompanySealAuthData struct { UserName string `json:"userName"` UserMobile string `json:"userMobile"` AuthTime string `json:"authTime"` Status string `json:"status"` AuthCompanyID string `json:"authCompanyId"` AuthCompanyName string `json:"authCompanyName"` CallbackTime string `json:"callbackTime"` } // PersonalSealAuthData 个人签名静默授权回调。 type PersonalSealAuthData struct { UserName string `json:"userName"` UserMobile string `json:"userMobile"` UserEmail string `json:"userEmail"` UserID string `json:"userId"` OpenUserID string `json:"openUserId"` AuthTime string `json:"authTime"` Status string `json:"status"` CallbackTime string `json:"callbackTime"` } // AuthRecord 静默授权记录摘要。 type AuthRecord struct { Status string StartTime string EndTime string AuthScope string } // DefaultPersonalAuthDuration 个人静默授权默认时长(旧系统 10 个月,避免跨年重叠)。 const DefaultPersonalAuthDuration = 10 * 30 * 24 * time.Hour // DefaultCompanySealAuthDuration 机构印章静默授权默认时长(旧系统 1 年)。 const DefaultCompanySealAuthDuration = 365 * 24 * time.Hour