去除了算一算app用户绑定。主要涉及接口为登陆接口,检测用户状态
This commit is contained in:
+7
-87
@@ -9,7 +9,6 @@ import (
|
||||
"hepa-calc-api/api/requests"
|
||||
"hepa-calc-api/api/responses"
|
||||
"hepa-calc-api/api/service"
|
||||
"hepa-calc-api/config"
|
||||
"hepa-calc-api/global"
|
||||
"hepa-calc-api/utils"
|
||||
"time"
|
||||
@@ -32,36 +31,10 @@ func (r *Login) Login(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
// 公众号登录
|
||||
if req.Source == 2 {
|
||||
if req.Mobile == "" || req.OpenId == "" {
|
||||
responses.FailWithMessage("登陆失败", c)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// 检测参数
|
||||
if req.Mobile != "" {
|
||||
// 检测验证码
|
||||
if config.C.Env != "dev" {
|
||||
if req.Source == 2 {
|
||||
if req.Code == "" {
|
||||
responses.FailWithMessage("请输入手机号验证码", c)
|
||||
return
|
||||
}
|
||||
|
||||
code, _ := global.Redis.Get(c, "login_code_"+req.Mobile).Result()
|
||||
if code == "" {
|
||||
responses.FailWithMessage("验证码失效", c)
|
||||
return
|
||||
}
|
||||
|
||||
if req.Code != code {
|
||||
responses.FailWithMessage("验证码错误", c)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
if req.Source == 2 && req.OpenId == "" {
|
||||
responses.FailWithMessage("登陆失败", c)
|
||||
return
|
||||
}
|
||||
|
||||
// 开始事务
|
||||
@@ -75,13 +48,10 @@ func (r *Login) Login(c *gin.Context) {
|
||||
}
|
||||
}()
|
||||
|
||||
var userInfo *model.UserInfo
|
||||
var err error
|
||||
|
||||
// 检测用户信息
|
||||
userDao := dao.UserDao{}
|
||||
maps := make(map[string]interface{})
|
||||
maps["mobile"] = req.Mobile
|
||||
maps["open_id"] = req.OpenId
|
||||
user, _ := userDao.GetUser(maps)
|
||||
// 新用户处理方式
|
||||
if user == nil {
|
||||
@@ -100,9 +70,7 @@ func (r *Login) Login(c *gin.Context) {
|
||||
|
||||
// 新增用户
|
||||
user = &model.User{
|
||||
UserName: "",
|
||||
AppIden: req.Uuid,
|
||||
Mobile: req.Mobile,
|
||||
UserName: req.UserName,
|
||||
RegisterSource: req.Source,
|
||||
OpenId: req.OpenId,
|
||||
UnionId: req.UnionId,
|
||||
@@ -124,7 +92,7 @@ func (r *Login) Login(c *gin.Context) {
|
||||
}
|
||||
|
||||
// 新增用户详情
|
||||
userInfo = &model.UserInfo{
|
||||
userInfo := &model.UserInfo{
|
||||
UserId: user.UserId,
|
||||
Height: "",
|
||||
Weight: "",
|
||||
@@ -146,58 +114,10 @@ func (r *Login) Login(c *gin.Context) {
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
// 获取用户详情数据
|
||||
userInfoDao := dao.UserInfoDao{}
|
||||
userInfo, err = userInfoDao.GetUserInfoByUserId(user.UserId)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
|
||||
// 处理用户openid
|
||||
if req.OpenId != "" {
|
||||
userData := make(map[string]interface{})
|
||||
if req.OpenId != user.OpenId {
|
||||
userData["open_id"] = req.OpenId
|
||||
}
|
||||
|
||||
err := userDao.EditUserById(tx, user.UserId, userData)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 处理app用户数据
|
||||
userService := service.UserService{}
|
||||
err = userService.GetAppUserInfo(tx, user, userInfo)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
|
||||
// 处理app用户病例数据
|
||||
err = userService.GetAppUserCase(tx, user)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
|
||||
tx.Commit()
|
||||
|
||||
// 获取用户信息
|
||||
user, err = userDao.GetUserById(user.UserId)
|
||||
if err != nil {
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
|
||||
// 下发token
|
||||
token := &utils.Token{
|
||||
UserId: fmt.Sprintf("%d", user.UserId),
|
||||
@@ -211,7 +131,7 @@ func (r *Login) Login(c *gin.Context) {
|
||||
}
|
||||
|
||||
// 处理返回值
|
||||
g := dto.LoginMobileDto(user)
|
||||
g := dto.LoginWxDto(user)
|
||||
|
||||
// 加载token
|
||||
g.LoadToken(jwt)
|
||||
|
||||
@@ -27,6 +27,8 @@ func (b *Public) GetCaptcha(c *gin.Context) {
|
||||
|
||||
// GetPhoneCode 获取手机验证码
|
||||
func (b *Public) GetPhoneCode(c *gin.Context) {
|
||||
responses.Ok(c)
|
||||
return
|
||||
publicRequest := requests.PublicRequest{}
|
||||
req := publicRequest.GetPhoneCode
|
||||
if err := c.ShouldBind(&req); err != nil {
|
||||
|
||||
@@ -170,61 +170,3 @@ func (r *User) PutBindUserName(c *gin.Context) {
|
||||
|
||||
responses.Ok(c)
|
||||
}
|
||||
|
||||
// GetUserCheck 检测用户数据绑定状态
|
||||
func (r *User) GetUserCheck(c *gin.Context) {
|
||||
userRequest := requests.UserRequest{}
|
||||
req := userRequest.GetUserCheck
|
||||
if err := c.ShouldBind(&req); err != nil {
|
||||
responses.FailWithMessage(err.Error(), c)
|
||||
return
|
||||
}
|
||||
|
||||
// 参数验证
|
||||
if err := global.Validate.Struct(req); err != nil {
|
||||
responses.FailWithMessage(utils.Translate(err), c)
|
||||
return
|
||||
}
|
||||
|
||||
if req.Mobile == "" && req.OpenId == "" {
|
||||
responses.FailWithMessage("缺少参数", c)
|
||||
return
|
||||
}
|
||||
|
||||
g := &dto.UserCheckDto{}
|
||||
|
||||
// 获取用户数据
|
||||
maps := make(map[string]interface{})
|
||||
if req.OpenId != "" {
|
||||
maps["open_id"] = req.OpenId
|
||||
}
|
||||
|
||||
if req.Mobile != "" {
|
||||
maps["mobile"] = req.Mobile
|
||||
}
|
||||
|
||||
userDao := dao.UserDao{}
|
||||
user, err := userDao.GetUser(maps)
|
||||
if err != nil || user == nil {
|
||||
g.WxStatus = 0
|
||||
g.MobileStatus = 0
|
||||
responses.OkWithData(g, c)
|
||||
return
|
||||
}
|
||||
|
||||
if user.UserStatus == 2 {
|
||||
responses.FailWithMessage("用户已禁用", c)
|
||||
return
|
||||
}
|
||||
|
||||
if user.Mobile != "" {
|
||||
g.MobileStatus = 1
|
||||
g.Mobile = user.Mobile
|
||||
}
|
||||
|
||||
if user.OpenId != "" {
|
||||
g.WxStatus = 1
|
||||
}
|
||||
|
||||
responses.OkWithData(g, c)
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ import (
|
||||
"hepa-calc-api/api/requests"
|
||||
"hepa-calc-api/api/responses"
|
||||
"hepa-calc-api/api/service"
|
||||
"hepa-calc-api/extend/app"
|
||||
"hepa-calc-api/global"
|
||||
"hepa-calc-api/utils"
|
||||
"strconv"
|
||||
@@ -62,14 +61,6 @@ func (r *UserCase) PutUserCase(c *gin.Context) {
|
||||
|
||||
userId := c.GetInt64("UserId")
|
||||
|
||||
// 获取用户数据
|
||||
userDao := dao.UserDao{}
|
||||
user, err := userDao.GetUserById(userId)
|
||||
if err != nil {
|
||||
responses.FailWithMessage("用户数据错误", c)
|
||||
return
|
||||
}
|
||||
|
||||
// 获取用户数据-病例
|
||||
userCaseDao := dao.UserCaseDao{}
|
||||
userCase, err := userCaseDao.GetUserCaseByUserId(userId)
|
||||
@@ -79,17 +70,6 @@ func (r *UserCase) PutUserCase(c *gin.Context) {
|
||||
}
|
||||
|
||||
userCaseData := make(map[string]interface{})
|
||||
appData := app.UpdateUserCaseRequest{
|
||||
IsAllergy: req.IsAllergyHistory,
|
||||
AllergyInfo: req.AllergyHistory,
|
||||
IsHospital: req.IsHospital,
|
||||
IsMedication: req.IsMedication,
|
||||
MedicationInfo: req.Medication,
|
||||
LiverStatus: req.LiverStatus,
|
||||
OtherDisease: req.ChronicDisease,
|
||||
PatientUuid: user.AppIden,
|
||||
DiseasesList: nil,
|
||||
}
|
||||
|
||||
// 是否医院就诊
|
||||
if req.IsHospital != nil {
|
||||
@@ -163,9 +143,7 @@ func (r *UserCase) PutUserCase(c *gin.Context) {
|
||||
// 所患疾病列表
|
||||
if len(req.UserCaseDiseaseItem) > 0 {
|
||||
baseDiseaseClassDao := dao.BaseDiseaseClassDao{}
|
||||
diseasesLists := make([]*app.DiseasesListRequest, len(req.UserCaseDiseaseItem))
|
||||
|
||||
for i, item := range req.UserCaseDiseaseItem {
|
||||
for _, item := range req.UserCaseDiseaseItem {
|
||||
diseaseClassId, err := strconv.ParseInt(item.DiseaseClassId, 10, 64)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
@@ -195,18 +173,7 @@ func (r *UserCase) PutUserCase(c *gin.Context) {
|
||||
responses.Fail(c)
|
||||
return
|
||||
}
|
||||
|
||||
// app请求数据
|
||||
diseasesList := &app.DiseasesListRequest{
|
||||
Uuid: baseDiseaseClass.AppIden,
|
||||
Year: &item.Duration,
|
||||
Info: item.Genotype,
|
||||
Name: baseDiseaseClass.DiseaseClassName,
|
||||
}
|
||||
diseasesLists[i] = diseasesList
|
||||
}
|
||||
|
||||
appData.DiseasesList = diseasesLists
|
||||
}
|
||||
|
||||
// 病例数据
|
||||
@@ -228,15 +195,6 @@ func (r *UserCase) PutUserCase(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
// app数据
|
||||
appData.PatientUuid = user.AppIden
|
||||
_, err = app.UpdateUserCase(appData)
|
||||
if err != nil {
|
||||
tx.Rollback()
|
||||
responses.Fail(c)
|
||||
return
|
||||
}
|
||||
|
||||
tx.Commit()
|
||||
responses.Ok(c)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user