Files
wechat_ipad_pro/api/service/favorService.go
2026-02-17 13:06:23 +08:00

125 lines
4.6 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package service
import (
"strconv"
"xiawan/wx/api/req"
"xiawan/wx/api/vo"
"xiawan/wx/clientsdk/baseinfo"
"xiawan/wx/srv/wxface"
)
// FavSyncService 同步收藏
func FavSyncService(queryKey string) vo.DTO {
return checkExIdPerformNoCreateConnect(queryKey, func(iwxConnect wxface.IWXConnect, newIWXConnect bool) vo.DTO {
wxAccount := iwxConnect.GetWXAccount()
loginState := wxAccount.GetLoginState()
//判断在线情况
if loginState == baseinfo.MMLoginStateNoLogin {
return vo.NewFail("该账号需要重新登录loginState == MMLoginStateNoLogin ")
} else if !iwxConnect.CheckOnLineStatus() {
return vo.NewFail("账号离线,自动上线失败loginState == " + strconv.Itoa(int(wxAccount.GetLoginState())))
}
// 获取请求管理器
reqInvoker := iwxConnect.GetWXReqInvoker()
// 同步收藏
resp, err := reqInvoker.SendFavSyncRequestResult()
if err != nil {
return vo.NewFail("FavSyncServiceerr :" + err.Error())
}
return vo.NewSuccessObj(resp, "")
})
}
// 获取收藏list
func GetFavListService(queryKey string, req req.FavInfoModel) vo.DTO {
return checkExIdPerformNoCreateConnect(queryKey, func(iwxConnect wxface.IWXConnect, newIWXConnect bool) vo.DTO {
wxAccount := iwxConnect.GetWXAccount()
loginState := wxAccount.GetLoginState()
//判断在线情况
if loginState == baseinfo.MMLoginStateNoLogin {
return vo.NewFail("该账号需要重新登录loginState == MMLoginStateNoLogin ")
} else if !iwxConnect.CheckOnLineStatus() {
return vo.NewFail("账号离线,自动上线失败loginState == " + strconv.Itoa(int(wxAccount.GetLoginState())))
}
// 获取请求管理器
reqInvoker := iwxConnect.GetWXReqInvoker()
// 同步收藏
resp, err := reqInvoker.SendFavSyncListRequestResult(req.KeyBuf)
if err != nil {
return vo.NewFail("FavSyncServiceerr :" + err.Error())
}
return vo.NewSuccessObj(resp, "")
})
}
// GetFavInfoService 获取收藏信息
func BatchDelFavItemService(queryKey string, m req.FavInfoModel) vo.DTO {
return checkExIdPerformNoCreateConnect(queryKey, func(iwxConnect wxface.IWXConnect, newIWXConnect bool) vo.DTO {
wxAccount := iwxConnect.GetWXAccount()
loginState := wxAccount.GetLoginState()
//判断在线情况
if loginState == baseinfo.MMLoginStateNoLogin {
return vo.NewFail("该账号需要重新登录loginState == MMLoginStateNoLogin ")
} else if !iwxConnect.CheckOnLineStatus() {
return vo.NewFail("账号离线,自动上线失败loginState == " + strconv.Itoa(int(wxAccount.GetLoginState())))
}
// 获取请求管理器
reqInvoker := iwxConnect.GetWXReqInvoker()
// 获取收藏消息
resp, err := reqInvoker.SendBatchDelFavItemRequestResult(m.FavId)
if err != nil {
return vo.NewFail("BatchDelFavItemServiceerr :" + err.Error())
}
return vo.NewSuccessObj(resp, "")
})
}
// GetFavInfoService 获取收藏信息
func GetFavInfoService(queryKey string) vo.DTO {
return checkExIdPerformNoCreateConnect(queryKey, func(iwxConnect wxface.IWXConnect, newIWXConnect bool) vo.DTO {
wxAccount := iwxConnect.GetWXAccount()
loginState := wxAccount.GetLoginState()
//判断在线情况
if loginState == baseinfo.MMLoginStateNoLogin {
return vo.NewFail("该账号需要重新登录loginState == MMLoginStateNoLogin ")
} else if !iwxConnect.CheckOnLineStatus() {
return vo.NewFail("账号离线,自动上线失败loginState == " + strconv.Itoa(int(wxAccount.GetLoginState())))
}
// 获取请求管理器
reqInvoker := iwxConnect.GetWXReqInvoker()
// 获取收藏消息
resp, err := reqInvoker.SendGetFavInfoRequestResult()
if err != nil {
return vo.NewFail("GetFavInfoServiceerr :" + err.Error())
}
return vo.NewSuccessObj(resp, "")
})
}
// GetFavInfoService 获取收藏详细
func BatchGetFavItemService(queryKey string, m req.FavInfoModel) vo.DTO {
return checkExIdPerformNoCreateConnect(queryKey, func(iwxConnect wxface.IWXConnect, newIWXConnect bool) vo.DTO {
wxAccount := iwxConnect.GetWXAccount()
loginState := wxAccount.GetLoginState()
//判断在线情况
if loginState == baseinfo.MMLoginStateNoLogin {
return vo.NewFail("该账号需要重新登录loginState == MMLoginStateNoLogin ")
} else if !iwxConnect.CheckOnLineStatus() {
return vo.NewFail("账号离线,自动上线失败loginState == " + strconv.Itoa(int(wxAccount.GetLoginState())))
}
// 获取请求管理器
reqInvoker := iwxConnect.GetWXReqInvoker()
// 获取收藏消息
resp, err := reqInvoker.SendBatchGetFavItemRequestResult(m.FavId)
if err != nil {
return vo.NewFail("GetFavInfoServiceerr :" + err.Error())
}
return vo.NewSuccessObj(resp, "")
})
}