From ed85b62e8ea261680bce3a18dd852fada21cc0b3 Mon Sep 17 00:00:00 2001 From: KK Date: Tue, 5 Jul 2022 15:03:27 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/v2/logic/manage/jyy/app.go | 18 ++++++++++++------ internal/v2/logic/wxapp/copartner/company.go | 6 ------ .../v2/model/recook/user/recookUserInfo.go | 6 ++++-- internal/v2/router/manage.go | 2 +- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/internal/v2/logic/manage/jyy/app.go b/internal/v2/logic/manage/jyy/app.go index 58791b1..023d9d4 100644 --- a/internal/v2/logic/manage/jyy/app.go +++ b/internal/v2/logic/manage/jyy/app.go @@ -7,6 +7,7 @@ import ( "recook/internal/define" "recook/internal/libs/bean" "recook/internal/service/baseCode" + "recook/internal/v2/model/company" "recook/internal/v2/model/recook/user" "strings" "time" @@ -19,9 +20,10 @@ import ( type AppUserReq struct { bean.Page AppUserInfo - Start string `json:"start"` - End string `json:"end"` - Kind uint `json:"kind"` + Start string `json:"start"` + End string `json:"end"` + Kind uint `json:"kind"` + TaxBillType string `json:"taxBillType"` } type AppUserInfo struct { @@ -30,6 +32,7 @@ type AppUserInfo struct { Level uint `json:"level"` IsOffline bool `json:"is_offline"` CreatedAt formatime.Second `json:"created_at"` + TaxType string `json:"tax_type"` } func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err error) { @@ -38,7 +41,6 @@ func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err err if args.Mobile != "" { query = query.Where("mobile = ?", args.Mobile) } - if args.Nickname != "" { query = query.Where("nickname = ?", args.Nickname) } @@ -58,14 +60,17 @@ func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err err query = query.Where("level = 2 and is_offline = 0") case 4: // vip店铺 query = query.Where("level = 2 and is_offline = 1") - case 5: // 子公司 + case 5: // 合伙人 query = query.Where("level = 10") } } + if args.TaxType != "" { + query = query.Where("id in (?)", mysql.Db.Select("user_id").Model(&company.Info{}).Where("tax_type = ?", args.TaxType)) + } } query.Count(&total) var temp []user.RecookUserInfoModel - query.Offset(args.GetStart()).Limit(args.GetLimit()).Find(&temp) + query.Preload("CompanyInfo").Offset(args.GetStart()).Limit(args.GetLimit()).Find(&temp) for _, v := range temp { res = append(res, AppUserInfo{ Mobile: v.Mobile, @@ -73,6 +78,7 @@ func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err err Level: uint(v.Level), IsOffline: v.IsOffline, CreatedAt: v.CreatedAt, + TaxType: v.CompanyInfo.TaxType, }) } return diff --git a/internal/v2/logic/wxapp/copartner/company.go b/internal/v2/logic/wxapp/copartner/company.go index 8858bc3..461f4a5 100644 --- a/internal/v2/logic/wxapp/copartner/company.go +++ b/internal/v2/logic/wxapp/copartner/company.go @@ -37,12 +37,6 @@ func (c *companyLogic) Add(data CompanyInfo) error { if userInfoModel.Id > 0 { return fmt.Errorf("手机已存在") } - userInfo := user.RecookUserInfoModel{Nickname: data.NikeName} - mysql.Db.Where(&userInfo).First(&userInfoModel) - - if userInfo.Id > 0 { - return fmt.Errorf("昵称已存在") - } companyInfo := company.Info{ ShopName: data.NikeName, Mobile: data.Phone, diff --git a/internal/v2/model/recook/user/recookUserInfo.go b/internal/v2/model/recook/user/recookUserInfo.go index c4d22ed..e210b8f 100644 --- a/internal/v2/model/recook/user/recookUserInfo.go +++ b/internal/v2/model/recook/user/recookUserInfo.go @@ -3,6 +3,7 @@ package user import ( "recook/internal/model/user" "recook/internal/v2/lib/db" + "recook/internal/v2/model/company" manage "recook/internal/v2/model/recook/order" "github.com/golangkit/formatime" @@ -38,8 +39,9 @@ type RecookUserInfoModel struct { InvitationNo string Identifier string RootID uint - IsOffline bool `json:"is_offline"` - IsEnterprise bool `json:"is_enterprise"` + IsOffline bool `json:"is_offline"` + IsEnterprise bool `json:"is_enterprise"` + CompanyInfo company.Info `gorm:"foreignKey:UserID"` } // TableName sets the insert table name for this struct type diff --git a/internal/v2/router/manage.go b/internal/v2/router/manage.go index b204efd..177a69c 100644 --- a/internal/v2/router/manage.go +++ b/internal/v2/router/manage.go @@ -829,7 +829,7 @@ func routerManage(manageRouter *gin.RouterGroup) { { proxy := jyy.Proxy{} { - appUserRouter.POST("user", proxy.User) + appUserRouter.POST("user", proxy.User) // 查询用户列表 appUserRouter.POST("vip", proxy.Vip) } } From c8c58ba24884d342fcc7f5e71b5484fd68feafda Mon Sep 17 00:00:00 2001 From: KK Date: Tue, 5 Jul 2022 15:27:42 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/v2/logic/manage/jyy/app.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/internal/v2/logic/manage/jyy/app.go b/internal/v2/logic/manage/jyy/app.go index 023d9d4..c2ad644 100644 --- a/internal/v2/logic/manage/jyy/app.go +++ b/internal/v2/logic/manage/jyy/app.go @@ -27,12 +27,13 @@ type AppUserReq struct { } type AppUserInfo struct { - Mobile string `json:"mobile"` - Nickname string `json:"nickname"` - Level uint `json:"level"` - IsOffline bool `json:"is_offline"` - CreatedAt formatime.Second `json:"created_at"` - TaxType string `json:"tax_type"` + Mobile string `json:"mobile"` + Nickname string `json:"nickname"` + Level uint `json:"level"` + IsOffline bool `json:"is_offline"` + CreatedAt formatime.Second `json:"created_at"` + TaxType string `json:"tax_type"` + IsEnterprise uint `json:"isEnterprise"` // 1 公司 0 个人 } func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err error) { @@ -67,6 +68,9 @@ func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err err if args.TaxType != "" { query = query.Where("id in (?)", mysql.Db.Select("user_id").Model(&company.Info{}).Where("tax_type = ?", args.TaxType)) } + if args.IsEnterprise == 0 || args.IsEnterprise == 1 { + query = query.Where("is_enterprise = ? ", args.IsEnterprise) + } } query.Count(&total) var temp []user.RecookUserInfoModel From 26a2f7f79cde2586ada09fc346cc1d5dbcda5876 Mon Sep 17 00:00:00 2001 From: KK Date: Tue, 5 Jul 2022 15:32:00 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/v2/logic/manage/jyy/app.go | 30 ++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/internal/v2/logic/manage/jyy/app.go b/internal/v2/logic/manage/jyy/app.go index c2ad644..a60e500 100644 --- a/internal/v2/logic/manage/jyy/app.go +++ b/internal/v2/logic/manage/jyy/app.go @@ -20,20 +20,20 @@ import ( type AppUserReq struct { bean.Page AppUserInfo - Start string `json:"start"` - End string `json:"end"` - Kind uint `json:"kind"` - TaxBillType string `json:"taxBillType"` + Start string `json:"start"` + End string `json:"end"` + Kind uint `json:"kind"` + TaxBillType string `json:"taxBillType"` + IsEnterprise uint `json:"isEnterprise"` // 1公司 2 个人 } type AppUserInfo struct { - Mobile string `json:"mobile"` - Nickname string `json:"nickname"` - Level uint `json:"level"` - IsOffline bool `json:"is_offline"` - CreatedAt formatime.Second `json:"created_at"` - TaxType string `json:"tax_type"` - IsEnterprise uint `json:"isEnterprise"` // 1 公司 0 个人 + Mobile string `json:"mobile"` + Nickname string `json:"nickname"` + Level uint `json:"level"` + IsOffline bool `json:"is_offline"` + CreatedAt formatime.Second `json:"created_at"` + TaxType string `json:"tax_type"` } func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err error) { @@ -68,8 +68,12 @@ func (o logic) AppUser(args AppUserReq) (res []AppUserInfo, total int64, err err if args.TaxType != "" { query = query.Where("id in (?)", mysql.Db.Select("user_id").Model(&company.Info{}).Where("tax_type = ?", args.TaxType)) } - if args.IsEnterprise == 0 || args.IsEnterprise == 1 { - query = query.Where("is_enterprise = ? ", args.IsEnterprise) + if args.IsEnterprise != 0 { // 判断公司还是个人 + if args.IsEnterprise == 1 { + query = query.Where("is_enterprise = ? ", args.IsEnterprise) + } else { + query = query.Where("is_enterprise = ? ", 0) + } } } query.Count(&total)