package request

import (
	"miniapp/model/common/constant"
	"miniapp/model/common/request"
)

type BindingWeChat struct {
	Code string `json:"code" form:"code" binding:"required"` // 微信code
}

// GetUserList 获取普通用户
type GetUserList struct {
	request.PageInfo
	Phone   string `json:"phone" form:"phone"`                                     // 手机号
	Status  string `json:"status" form:"status" binding:"oneof='' NORMAL DISABLE"` // 用户状态
	StartAt string `json:"startAt" form:"startAt"`                                 // 开始时间
	EndAt   string `json:"endAt" form:"endAt"`                                     // 结束时间
	Name    string `json:"name" form:"name"`                                       //用户名
}

// ChangeUserInfo 修改普通用户信息
type ChangeUserInfo struct {
	Nickname    string `json:"nickname" form:"nickname"` // 昵称
	Avatar      string `json:"avatar" form:"avatar"`     // 头像
	Phone       string `json:"phone" form:"phone"`       // 手机号
	IsSurgery   int    `json:"isSurgery" gorm:"default:0;comment:是否已经手术 0未手术 1已手术"`
	HospitalId  int    `json:"hospitalId" gorm:"comment:手术医院"`
	SurgeryTime string `json:"surgery_time" gorm:"comment:手术时间"`
}

// ChangePassword 修改密码
type ChangePassword struct {
	OldPassword     string `json:"oldPassword" form:"oldPassword" binding:"required"`                           // 旧密码
	NewPassword     string `json:"newPassword" form:"oldPassword" binding:"required"`                           // 新密码
	ConfirmPassword string `json:"confirmPassword" form:"oldPassword" binding:"required,eqcsfield=NewPassword"` // 确认新密码
}

// SaveUser 保存用户信息
type SaveUser struct {
	Id       int                 `json:"id" form:"id"`             // 用户ID
	Username string              `json:"username" form:"username"` // 用户名
	Nickname string              `json:"nickname" form:"nickname"` // 昵称
	Password string              `json:"password" form:"password"` // 密码
	Email    string              `json:"email" form:"email"`       // 邮箱
	Phone    string              `json:"phone" form:"phone"`
	Status   constant.UserStatus `json:"status" form:"status" binding:"oneof=NORMAL DISABLE"` // 用户状态
	RoleId   string              `json:"role_id" form:"role_id"`                              //角色id
}

type ChangeUserHospital struct {
	UserId      int    `json:"userId" form:"userId" binding:"required"`         // 用户ID
	HospitalId  int    `json:"hospitalId" form:"hospitalId" binding:"required"` // 医院ID
	IsSurgery   int    `json:"isSurgery" form:"isSurgery"`                      // 是否已经手术 0未手术 1已手术
	SurgeryTime string `json:"surgery_time" form:"surgery_time"`                // 手术时间
}
