package protocol

import (
	"gitlab.fjmaimaimai.com/mmm-go/partner/pkg/domain"
)

/*用户信息 UserInfo */
type UserInfoRequest struct {
}
type UserInfoResponse struct {
	User User `json:"user"`
}

type User struct {
	Id int64 `json:"uid"`
	//用户名称
	PartnerName string `json:"uname"`
	//手机号
	Phone string `json:"phone"`
	//合作公司
	CooperateCompany Company `json:"company"`
	// 合伙类别 (1.研发合伙人 2.业务合伙人  3.事业)
	JoinWay *domain.PartnerCategoryInfo `json:"joinWay"`
	//合作区域
	District interface{} `json:"district"`
	//合作编码
	SerialNo int64 `json:"serialNo"`
	//合作时间
	CooperateTime int64 `json:"cooperationTime"`
	//销售人员
	Salesman interface{} `json:"salesman"`
	// 网易云信
	AccountID int64 `json:"accid"`
	//网易云信Token
	ImToken string `json:"imToken"`
	//分配的客服ID
	CsAccountID string `json:"csAccountID"`
}

type Company struct {
	Id    int64  `json:"id"`
	Name  string `json:"name"`
	Phone string `json:"phone"`
}

/*修改手机号-验证旧手机验证码 */
type CheckSmsCodeRequest struct {
	Captcha string `json:"captcha" valid:"Required"`
}
type CheckSmsCodeResponse struct {
}

/*修改手机号*/
type ChangePhoneRequest struct {
	Phone   string `json:"phone" valid:"Required"`
	Captcha string `json:"captcha" valid:"Required"`

	OldPhone string `json:"oldPhone" valid:"Required"`
	//CaptchaCertificate string `json:"captchaCertificate" valid:"Required"`
}

type ChangePhoneResponse struct {
}

type ChangePhoneAllCompanyRequest struct {
	// position:职位,department:部门,employee:员工,company:公司,profile员工档案
	Module string `json:"module" valid:"Required"`
	// add:添加,edit:编辑,delete删除,batchDelete:批量删除,setCompanyCharge:更改公司主管,batchForbid:批量禁用用户,batchRemove:批量更改用户部门,changeAdmin换管理员
	Action string `json:"action" valid:"Required"`
	// 具体的对象JSON数据
	Data string `json:"data" valid:"Required"`
}

type ChangePhoneAllCompanyResponse struct {}

/*ResetPassword */
type ResetPasswordRequest struct {
	//Captcha    string `json:"captcha" valid:"Required"`
	NewPwd     string `json:"newPwd" valid:"Required"`
	ConfirmPwd string `json:"confirmPwd" valid:"Required"`

	Phone              string `json:"phone" valid:"Required"`
	CaptchaCertificate string `json:"captchaCertificate" valid:"Required"`
}
type ResetPasswordResponse struct {
}

/*ChangePassword */
type ChangePasswordRequest struct {
	NewPwd     string `json:"newPwd" valid:"Required"`
	ConfirmPwd string `json:"confirmPwd" valid:"Required"`
	OldPwd     string `json:"oldPwd" valid:"Required"`
	Phone      string `json:"phone" valid:"Required"`
}
type ChangePasswordResponse struct {
}