package others_request

import (
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/http"
)

type QrloginQrcodeImageRequest struct {
	// 【二维码链接过期时间】二维码链接过期时间 【传参】 1、最小值：1（包含）。单位：秒。不传值默认为：600。
	ExpireTime *int64 `json:"expireTime,omitempty"`
	// 【钉钉系统标识】钉钉系统标识 【作用】 系统可以集成多套钉钉，通过系统标识来确认是哪套钉钉（只集成一套钉钉时，无需传入）
	SystemCode string `json:"systemCode,omitempty"`
	// 【指定扫码APP】指定扫码APP 【作用】 1、可指定用户扫码登录的APP，指定后用户仅能通过指定的APP扫码登录 2、默认电子签约APP（即当前私有云系统的APP）：扫码后授权登录 3、企业微信：需当前私有云系统已经集成企业微信，且已同步的成员才可使用企业微信APP扫码登陆后授权 4、钉钉：需当前私有云系统已经集成钉钉，且已同步的成员才可使用钉钉APP扫码登陆后授权 【传参】 单选；取值范围：WORK_WEIXIN（企业微信），DINGTALK（钉钉），APP（电子签约APP）；不传值默认为：APP（电子签约APP）
	Client string `json:"client,omitempty"`
	// 【扫码页面标题】扫码页面标题 【作用】 扫码时，确认登录页面的标题
	Title string `json:"title,omitempty"`
	// 【扫码页面内容】扫码页面内容 【作用】 用户扫码后，打开登录授权页面的文字提示
	Content string `json:"content,omitempty"`
}

func (obj QrloginQrcodeImageRequest) GetUrl() string {
	return "/qrlogin/qrcode/image"
}

func (obj QrloginQrcodeImageRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewGetHttpParameter()
	parameter.AddParam("expireTime", obj.ExpireTime)
	parameter.AddParam("systemCode", obj.SystemCode)
	parameter.AddParam("client", obj.Client)
	parameter.AddParam("title", obj.Title)
	parameter.AddParam("content", obj.Content)
	return parameter
}
