Browse Source

fix:update whatsapp APIs

jimmyyem 2 months ago
parent
commit
8e21f49389

+ 37 - 32
internal/logic/whatsapp/create_whatsapp_logic.go

@@ -2,9 +2,12 @@ package whatsapp
 
 import (
 	"context"
+	"wechat-api/ent"
+	"wechat-api/ent/whatsapp"
 	"wechat-api/hook/aliyun"
 	"wechat-api/internal/svc"
 	"wechat-api/internal/types"
+	"wechat-api/internal/utils/dberrorhandler"
 
 	"github.com/zeromicro/go-zero/core/logx"
 )
@@ -26,38 +29,40 @@ func NewCreateWhatsappLogic(ctx context.Context, svcCtx *svc.ServiceContext) *Cr
 func (l *CreateWhatsappLogic) CreateWhatsapp(req *types.WhatsappInfo) (*types.BaseMsgResp, error) {
 	add, err := aliyun.AddCamsPhoneNumber(*req.Phone, *req.Cc, *req.WaId, *req.PhoneName)
 	l.Logger.Infof("add=%v err=%v\n", add, err)
-	//if err == nil && *add.Body.Code == "OK" {
-	//	var stringSlice []string
-	//
-	//	_, err := l.svcCtx.DB.Whatsapp.Query().
-	//		Where(whatsapp.WaID(*req.WaId)).
-	//		Where(whatsapp.Phone(*req.Phone)).
-	//		Where(whatsapp.Cc(*req.Cc)).
-	//		First(l.ctx)
-	//	if err != nil && ent.IsNotFound(err) {
-	//		_, err = l.svcCtx.DB.Whatsapp.Create().
-	//			SetNotNilWaID(req.WaId).
-	//			SetNotNilCallback(req.Callback).
-	//			SetNotNilAccount(req.Account).
-	//			SetNotNilPhone(req.Phone).
-	//			SetNotNilCc(req.Cc).
-	//			SetNotNilPhoneName(req.PhoneName).
-	//			SetNotNilPhoneStatus(req.PhoneStatus).
-	//			SetNotNilOrganizationID(req.OrganizationId).
-	//			SetNotNilAgentID(req.AgentId).
-	//			SetNotNilAPIBase(req.ApiBase).
-	//			SetNotNilAPIKey(req.ApiKey).
-	//			SetNotNilAllowList(stringSlice).
-	//			SetNotNilGroupAllowList(stringSlice).
-	//			SetNotNilBlockList(stringSlice).
-	//			SetNotNilGroupBlockList(stringSlice).
-	//			Save(l.ctx)
-	//
-	//		if err != nil {
-	//			return nil, dberrorhandler.DefaultEntError(l.Logger, err, req)
-	//		}
-	//	}
-	//}
+
+	if err == nil && *add.Body.Code == "OK" {
+		//var stringSlice []string
+
+		_, err := l.svcCtx.DB.Whatsapp.Query().
+			Where(whatsapp.WaID(*req.WaId)).
+			Where(whatsapp.Phone(*req.Phone)).
+			Where(whatsapp.Cc(*req.Cc)).
+			First(l.ctx)
+		if err != nil && ent.IsNotFound(err) {
+			_, err = l.svcCtx.DB.Whatsapp.Create().
+				SetNotNilWaID(req.WaId).
+				SetNotNilCallback(req.Callback).
+				SetNotNilAccount(req.Account).
+				SetNotNilPhone(req.Phone).
+				SetNotNilCc(req.Cc).
+				SetNotNilPhoneName(req.PhoneName).
+				SetNotNilPhoneStatus(req.PhoneStatus).
+				SetNotNilOrganizationID(req.OrganizationId).
+				//SetNotNilAgentID(req.AgentId).
+				//SetNotNilAPIBase(req.ApiBase).
+				//SetNotNilAPIKey(req.ApiKey).
+				//SetNotNilAllowList(stringSlice).
+				//SetNotNilGroupAllowList(stringSlice).
+				//SetNotNilBlockList(stringSlice).
+				//SetNotNilGroupBlockList(stringSlice).
+				Save(l.ctx)
+
+			if err != nil {
+				return nil, dberrorhandler.DefaultEntError(l.Logger, err, req)
+			}
+			_ = l.svcCtx.Rds.Del(l.ctx, "wa_info")
+		}
+	}
 
 	resp := types.BaseMsgResp{}
 	if err != nil {

+ 1 - 0
internal/logic/whatsapp/get_whatsapp_by_id_logic.go

@@ -70,6 +70,7 @@ func (l *GetWhatsappByIdLogic) GetWhatsappById(req *types.IDReq) (*types.Whatsap
 			Callback:         &data.Callback,
 			Account:          &data.Account,
 			Phone:            &data.Phone,
+			Cc:               &data.Cc,
 			PhoneName:        &data.PhoneName,
 			PhoneStatus:      &data.PhoneStatus,
 			OrganizationId:   &data.OrganizationID,

+ 1 - 0
internal/logic/whatsapp/get_whatsapp_list_logic.go

@@ -77,6 +77,7 @@ func (l *GetWhatsappListLogic) GetWhatsappList(req *types.WhatsappListReq) (*typ
 				Callback:         &v.Callback,
 				Account:          &v.Account,
 				Phone:            &v.Phone,
+				Cc:               &v.Cc,
 				PhoneName:        &v.PhoneName,
 				PhoneStatus:      &v.PhoneStatus,
 				OrganizationId:   &v.OrganizationID,

+ 11 - 0
internal/logic/whatsapp/update_whatsapp_logic.go

@@ -25,5 +25,16 @@ func NewUpdateWhatsappLogic(ctx context.Context, svcCtx *svc.ServiceContext) *Up
 func (l *UpdateWhatsappLogic) UpdateWhatsapp(req *types.WhatsappPhoneInfo) (*types.BaseMsgResp, error) {
 	resp := types.BaseMsgResp{}
 
+	//err := l.svcCtx.DB.Whatsapp.Update().Where().
+	//	SetNotNilWaID(req.WaId).
+	//	SetNotNilCallback(req.Callback).
+	//	SetNotNilAccount(req.Account).
+	//	SetNotNilPhone(req.Phone).
+	//	SetNotNilCc(req.Cc).
+	//	SetNotNilPhoneName(req.PhoneName).
+	//	SetNotNilPhoneStatus(req.PhoneStatus).
+	//	SetNotNilOrganizationID(req.OrganizationId).
+	//	Exec(l.ctx)
+
 	return &resp, nil
 }