package proto

const (
	//PushFeatureDeal 接收风险特征处置结果接口
	PushFeatureDeal = "/ndToZy/pushFeatureDeal"
	//PushUserInfo 获取用户信息接口
	PushUserInfo = "/ndToZy/pushUserInfo"
	//PushFeatureInfo 推送的风险结果信息
	PushFeatureInfo = "/ndToZy/pushFeatureInfo"
)

//SignServiceRequest 签名服务接口请求格式
type SignServiceRequest struct {
	Obj string `json:"obj"`
}

//ZyBaseRequest 中研服务请求
type ZyBaseRequest struct {
	Data   string `json:"data"`
	Sign   string `json:"sign"`
	Source string `json:"source"`
	Salt   string `json:"salt"`
	Key    string `json:"key"`
}

//PushFeatureDealRequest 接收风险特征处置结果接口
type PushFeatureDealRequest struct {
	FeatureId  string `json:"featureId" description:"风险特征ID"`
	UserId     string `json:"userId" description:"风险触发用户ID"`
	ObjectId   string `json:"objectId" description:"风险对象ID,4.1接口推送的objectId"`
	DealId     string `json:"dealId" description:"处置人ID"`
	DealName   string `json:"dealName" description:"处置人姓名"`
	DealTime   string `json:"dealTime" description:"处置时间,格式YYYY-MM-DD HH:MI:SS"`
	DealStatus string `json:"dealStatus" description:"处置状态(1已处置、0未处置、2不处置)"`
	DealResult string `json:"dealResult" description:"处置结果"`
}

//PushUserInfoRequest 获取用户信息接口
type PushUserInfoRequest struct {
	UserId   string `json:"userId" description:"用户ID"`
	UserName string `json:"userName" description:"用户名"`
	Name     string `json:"name" description:"姓名"`
	Position string `json:"position" description:"岗位"`
	Job      string `json:"job" description:"职务"`
	DeptId   string `json:"deptId" description:"所在部门/业务处室编码"`
	DeptName string `json:"deptName" description:"所在部门/业务处室名称"`
	LogTime  string `json:"logTime" description:"登录时间"`
	LogError string `json:"logError" description:"登录密码错误次数"`
	Regorg   string `json:"regorg" description:"登记机关"`
}

//PushFeatureInfo 推送的风险结果信息
type PushFeatureInfoRequest struct {
	FeatureId     string `json:"featureId" description:"风险特征ID"`
	FeatureName   string `json:"featureName" description:"风险名称"`
	FeatureLevel  string `json:"featureLevel" description:"风险等级"`
	FeatureDeptId string `json:"featureDeptId" description:"风险所属部门"`
	FeatureTime   string `json:"featureTime" description:"触发时间,精确到时分秒"`
	ObjectList    []struct {
		ObjId       string `json:"objId" description:"对象ID(用户ID)"`
		ObjName     string `json:"objName" description:"对象名称(用户姓名)"`
		ObjRegorg   string `json:"objRegorg" description:"对象所在登记机关"`
		ObjDeptid   string `json:"objDeptid" description:"对象所在部门"`
		ObjPosition string `json:"objPosition" description:"对象所在岗位"`
		IsDeal      string `json:"isDeal" description:"是否处置(1已处置;0未处置)"`
		DealId      string `json:"dealId" description:"处置人ID"`
		DealName    string `json:"dealName" description:"处置人姓名"`
		DealTime    string `json:"dealTime" description:"处置时间"`
		DealStatus  string `json:"dealStatus" description:"处置状态(0未处置;1已处置)"`
		DealResult  string `json:"dealResult" description:"处置结果"`
	} `json:"objectList" description:"风险对象列表"`
}

// HealthRequest 健康检查请求结构
type HealthRequest struct{}