package company_request

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

type CompanyauthRecertificationRequest struct {
	// 【单位id】单位id
	Id string `json:"id"`
	// 【单位名称】单位名称
	Name string `json:"name,omitempty"`
	// 【统一社会信用代码/工商注册号】统一社会信用代码/工商注册号
	RegisterNo string `json:"registerNo,omitempty"`
	// 【认证申请人】认证申请人
	Charger string `json:"charger,omitempty"`
	// 【申请人手机号】申请人手机号 【作用】<br>关联申请人账号 【传参方式】<br>手机号允许使用大陆、台湾和香港的手机号，台湾和香港的手机号格式为：区号+空格+手机号，例：852 9xxxxxxx
	Mobile string `json:"mobile,omitempty"`
	// 【法定代表人/负责人姓名】法定代表人/负责人姓名
	LegalPerson string `json:"legalPerson,omitempty"`
	// 【营业执照】营业执照 【作用】<br>上传页面要认证的营业执照 【传参方式】<br>form-data方式的文件上传
	License *os.File `json:"license"`
	// 【法人授权书】法人授权书 【作用】<br>上传页面要认证的法人授权书 【传参方式】<br>form-data方式的文件上传
	LegalAuthorization *os.File `json:"legalAuthorization,omitempty"`
	// 【是否移除原管理员及其相应权限】是否移除原管理员及其相应权限
	RemoveOriginalCharger string `json:"removeOriginalCharger,omitempty"`
	// 【是否立即修改单位认证状态】是否立即修改单位认证状态
	ModifyCompanyStatusImmediately string `json:"modifyCompanyStatusImmediately,omitempty"`
}

func (obj CompanyauthRecertificationRequest) GetUrl() string {
	return "/companyauth/recertification"
}

func (obj CompanyauthRecertificationRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewPostHttpParameter()
	parameter.AddParam("id", obj.Id)
	parameter.AddParam("name", obj.Name)
	parameter.AddParam("registerNo", obj.RegisterNo)
	parameter.AddParam("charger", obj.Charger)
	parameter.AddParam("mobile", obj.Mobile)
	parameter.AddParam("legalPerson", obj.LegalPerson)
	parameter.AddParam("removeOriginalCharger", obj.RemoveOriginalCharger)
	parameter.AddParam("modifyCompanyStatusImmediately", obj.ModifyCompanyStatusImmediately)
	parameter.AddFiles("license", obj.License)
	parameter.AddFiles("legalAuthorization", obj.LegalAuthorization)
	return parameter
}
