✨ 重新初始化项目
This commit is contained in:
5
model/cache/user.go
vendored
5
model/cache/user.go
vendored
@@ -4,9 +4,8 @@ import "encoding/json"
|
||||
|
||||
// UserInfo 登录用的用户信息结构体
|
||||
type UserInfo struct {
|
||||
UserType string `json:"userType"` // 用户类型
|
||||
RoleCodes string `json:"roleCodes"` // 角色代码
|
||||
UserId string `json:"userId"` // 用户Id
|
||||
UserType string `json:"userType"` // 用户类型
|
||||
UserId int `json:"userId"` // 用户Id
|
||||
}
|
||||
|
||||
// String 实现Stringer接口
|
||||
|
@@ -1,8 +0,0 @@
|
||||
package entity
|
||||
|
||||
import "Lee-WineList/common/types"
|
||||
|
||||
type Category struct {
|
||||
types.BaseDbModel
|
||||
Name string `gorm:"column:name;type:varchar(255);comment:分类名;NOT NULL" json:"name"`
|
||||
}
|
14
model/entity/material.go
Normal file
14
model/entity/material.go
Normal file
@@ -0,0 +1,14 @@
|
||||
package entity
|
||||
|
||||
import "Lee-WineList/common/types"
|
||||
|
||||
type Material struct {
|
||||
types.BaseDbModel
|
||||
Name string `gorm:"column:name;type:varchar(255);comment:材料名;NOT NULL" json:"name"`
|
||||
ML string `gorm:"column:ml;type:int(11) unsigned;comment:毫升;NOT NULL" json:"ml"`
|
||||
WindId int `gorm:"column:wine_id;type:int(11) unsigned;comment:酒ID;NOT NULL" json:"wine_id"`
|
||||
}
|
||||
|
||||
func (Material) TableName() string {
|
||||
return "materials"
|
||||
}
|
@@ -1,17 +1,20 @@
|
||||
package entity
|
||||
|
||||
import (
|
||||
"Lee-WineList/common/constant"
|
||||
"Lee-WineList/common/types"
|
||||
)
|
||||
|
||||
// User 普通用户表
|
||||
type User struct {
|
||||
types.BaseDbModel
|
||||
Phone string `json:"phone" gorm:"index:deleted,unique;type:varchar(255) not null comment '手机号'"`
|
||||
UnionId string `json:"union_id" gorm:"type:varchar(255) comment '微信UnionId'"`
|
||||
OpenId string `json:"open_id" gorm:"type:varchar(255) comment '微信OpenId'"`
|
||||
Nickname string `json:"nickname" gorm:"type:varchar(255) comment '昵称'"`
|
||||
Avatar string `json:"avatar" gorm:"type:varchar(255) comment '头像'"`
|
||||
Phone string `json:"phone" gorm:"index:deleted,unique;type:varchar(255) not null comment '手机号'"`
|
||||
WechatUnionId *string `json:"wechat_union_id" gorm:"type:varchar(255) comment '微信UnionId'"`
|
||||
WechatOpenId *string `json:"wechat_open_id" gorm:"type:varchar(255) comment '微信OpenId'"`
|
||||
Nickname string `json:"nickname" gorm:"type:varchar(255) comment '昵称'"`
|
||||
Avatar string `json:"avatar" gorm:"type:varchar(255) comment '头像'"`
|
||||
Sex constant.UserSex `json:"sex" gorm:"type:int; default 0; not null comment 性别"` // 1男2女
|
||||
Status constant.UserStatus `json:"status" gorm:"type:enum('NORMAL','DISABLE'); default:'NORMAL'; not null; comment:'状态 NORMAL-正常;DISABLE-禁用'"`
|
||||
}
|
||||
|
||||
func (User) TableName() string {
|
||||
|
@@ -4,12 +4,19 @@ import "Lee-WineList/common/types"
|
||||
|
||||
// Wine 酒
|
||||
type Wine struct {
|
||||
types.BaseDbModel
|
||||
Name string `gorm:"column:name;type:varchar(255);comment:酒名;NOT NULL" json:"name"`
|
||||
ChineseName string `gorm:"column:chinese_name;type:varchar(255);comment:中文酒名;NOT NULL" json:"chinese_name"`
|
||||
Ingredients string `gorm:"column:ingredients;type:varchar(255);comment:配料;NOT NULL" json:"ingredients"`
|
||||
Quote string `gorm:"column:quote;type:varchar(255);comment:引用;NOT NULL" json:"quote"`
|
||||
CategoryId uint `gorm:"column:category_id;type:int(11) unsigned;comment:分类ID;NOT NULL" json:"category_id"`
|
||||
Steps string `gorm:"column:steps;type:varchar(255);comment:步骤;NOT NULL" json:"steps"`
|
||||
Context string `gorm:"column:context;type:varchar(255);comment:酒文;NOT NULL" json:"context"`
|
||||
types.Model
|
||||
WineId int `gorm:"column:wine_id;type:int(11) unsigned;primarykey;comment:酒ID;NOT NULL" json:"wine_id"`
|
||||
Name string `gorm:"column:name;type:varchar(255);comment:酒名;NOT NULL" json:"name"`
|
||||
ChineseName string `gorm:"column:chinese_name;type:varchar(255);comment:中文酒名;NOT NULL" json:"chinese_name"`
|
||||
Quote string `gorm:"column:quote;type:varchar(255);comment:引用;NOT NULL" json:"quote"`
|
||||
Category string `gorm:"column:category;type:varchar(255);comment:分类;NOT NULL" json:"category"`
|
||||
Steps string `gorm:"column:steps;type:varchar(255);comment:步骤;NOT NULL" json:"steps"`
|
||||
Context string `gorm:"column:context;type:varchar(255);comment:酒文;NOT NULL" json:"context"`
|
||||
Materials []Material `gorm:"many2many:wine_materials"`
|
||||
UserId int `gorm:"column:user_id;type:int(11) unsigned;comment:用户ID;NOT NULL" json:"user_id"`
|
||||
}
|
||||
|
||||
// TableName 设置表名
|
||||
func (Wine) TableName() string {
|
||||
return "wines"
|
||||
}
|
||||
|
@@ -1,12 +1,16 @@
|
||||
package param
|
||||
|
||||
import "Lee-WineList/common/constant"
|
||||
|
||||
// Login 用户登录入参
|
||||
type Login struct {
|
||||
VerifyId string `json:"verifyId" form:"verifyId"` // 验证Id
|
||||
VerifyCode string `json:"verifyCode" form:"verifyCode"` // 验证码
|
||||
Username string `json:"username" form:"username" binding:"required"` // 邮箱或手机号
|
||||
Password string `json:"password" form:"password"` // 密码
|
||||
Code string `json:"code" form:"code"` // 微信小程序登录code
|
||||
Username string `json:"username" form:"username" binding:"required"` // 邮箱或手机号
|
||||
Password string `json:"password" form:"password"` // 密码
|
||||
TypeCode constant.LoginType `json:"type" form:"type" binding:"required"` // 登录方式,默认为空,可选值参见自定义类型
|
||||
UserIdentity constant.UserIdentity `json:"identity" form:"identity" binding:"required"` // 用户身份,默认为空,可选值参见自定义类型
|
||||
InviteCode string `json:"invite_code" form:"invite_code"` // 邀请码
|
||||
NickName string `json:"nickName" form:"nickName"` // 微信昵称
|
||||
AvatarUrl string `json:"avatarUrl" form:"avatarUrl"` // 微信头像
|
||||
}
|
||||
|
||||
// RefreshToken 刷新Token入参
|
||||
|
@@ -1,23 +1,29 @@
|
||||
package param
|
||||
|
||||
import (
|
||||
"Lee-WineList/common/constant"
|
||||
)
|
||||
|
||||
// BindingWeChat 绑定微信
|
||||
type BindingWeChat struct {
|
||||
Code string `json:"code" form:"code" binding:"required"` // 微信code
|
||||
}
|
||||
|
||||
//GetUserList 获取普通用户
|
||||
type GetUserList struct {
|
||||
page
|
||||
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"` // 头像
|
||||
Birthday string `json:"birthday" form:"birthday"` // 生日
|
||||
Nickname string `json:"nickname" form:"nickname"` // 昵称
|
||||
Avatar string `json:"avatar" form:"avatar"` // 头像
|
||||
Sex constant.UserSex `json:"sex" form:"sex"` // 性别
|
||||
}
|
||||
|
||||
// ChangePassword 修改密码
|
||||
@@ -29,8 +35,10 @@ type ChangePassword struct {
|
||||
|
||||
// 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"` // 密码
|
||||
Id string `json:"id" form:"id"` // 用户ID
|
||||
Username string `json:"username" form:"username"` // 用户名
|
||||
Nickname string `json:"nickname" form:"nickname"` // 昵称
|
||||
Password string `json:"password" form:"password"` // 密码
|
||||
Phone string `json:"phone" form:"phone"`
|
||||
Status constant.UserStatus `json:"status" form:"status" binding:"oneof=NORMAL DISABLE"` // 用户状态
|
||||
}
|
||||
|
@@ -1,14 +1,15 @@
|
||||
package param
|
||||
|
||||
import "Lee-WineList/common/types"
|
||||
|
||||
type Wine struct {
|
||||
types.BaseDbModel
|
||||
Name string `gorm:"column:name;type:varchar(255);comment:酒名;NOT NULL" json:"name"`
|
||||
ChineseName string `gorm:"column:chinese_name;type:varchar(255);comment:中文酒名;NOT NULL" json:"chinese_name"`
|
||||
Ingredients string `json:"ingredients"`
|
||||
Quote string `gorm:"column:quote;type:varchar(255);comment:引用;NOT NULL" json:"quote"`
|
||||
CategoryId uint `gorm:"column:category_id;type:int(11) unsigned;comment:分类ID;NOT NULL" json:"category_id"`
|
||||
Steps string `gorm:"column:steps;type:varchar(255);comment:步骤;NOT NULL" json:"steps"`
|
||||
Context string `gorm:"column:context;type:varchar(255);comment:酒文;NOT NULL" json:"context"`
|
||||
type GetWineList struct {
|
||||
page
|
||||
Category string `json:"category" form:"category"` // 分类
|
||||
UserId int `json:"userId" form:"userId"` // 用户ID
|
||||
}
|
||||
|
||||
type GetWineListByUser struct {
|
||||
page
|
||||
Category string `json:"category" form:"category"` // 分类
|
||||
UserId int `json:"userId" form:"userId"` // 用户ID
|
||||
}
|
||||
|
||||
type AddWine struct{}
|
||||
|
@@ -1,22 +0,0 @@
|
||||
package resp
|
||||
|
||||
// Code2Session 用户登录凭证校验模型
|
||||
type Code2Session struct {
|
||||
Code string
|
||||
AppId string
|
||||
AppSecret string
|
||||
}
|
||||
|
||||
// Code2SessionResult 凭证校验后返回的JSON数据包模型
|
||||
type Code2SessionResult struct {
|
||||
OpenId string `json:"openid"`
|
||||
SessionKey string `json:"session_key"`
|
||||
UnionId string `json:"unionid"`
|
||||
ErrCode uint `json:"errcode"`
|
||||
ErrMsg string `json:"errmsg"`
|
||||
}
|
||||
|
||||
// UserInfo 用户信息,OpenID用户唯一标识
|
||||
type UserInfo struct {
|
||||
OpenId string `json:"openId"`
|
||||
}
|
38
model/vo/user.go
Normal file
38
model/vo/user.go
Normal file
@@ -0,0 +1,38 @@
|
||||
package vo
|
||||
|
||||
import (
|
||||
"Lee-WineList/common/constant"
|
||||
"Lee-WineList/common/types"
|
||||
"Lee-WineList/model/entity"
|
||||
"Lee-WineList/utils"
|
||||
)
|
||||
|
||||
// UserVO 管理员信息
|
||||
type UserVO struct {
|
||||
Id int `json:"id"`
|
||||
Nickname string `json:"nickname"`
|
||||
Username string `json:"username"`
|
||||
Phone string `json:"phone"`
|
||||
Status constant.UserStatus `json:"status"`
|
||||
Sex constant.UserSex `json:"sex"`
|
||||
Avatar string `json:"avatar"`
|
||||
CreatedAt types.DateTime `json:"createdAt"`
|
||||
}
|
||||
|
||||
// ParseOrdinary 转换为VO
|
||||
func (auv *UserVO) ParseOrdinary(u entity.User) {
|
||||
auv.Id = u.Id
|
||||
auv.Phone = utils.Desensitization().Phone(u.Phone)
|
||||
auv.Nickname = u.Nickname
|
||||
auv.Status = u.Status
|
||||
auv.Sex = u.Sex
|
||||
auv.Avatar = u.Avatar
|
||||
auv.CreatedAt = u.CreatedAt
|
||||
}
|
||||
|
||||
// UserMiniVO 简要信息
|
||||
type UserMiniVO struct {
|
||||
Id string `json:"id"`
|
||||
Nickname string `json:"nickname"`
|
||||
Avatar string `json:"avatar"`
|
||||
}
|
@@ -1,4 +1,4 @@
|
||||
package resp
|
||||
package vo
|
||||
|
||||
import "Lee-WineList/common/types"
|
||||
|
Reference in New Issue
Block a user