76 lines
3.0 KiB
Go
76 lines
3.0 KiB
Go
|
|
package service
|
|||
|
|
|
|||
|
|
import (
|
|||
|
|
"github.com/google/uuid"
|
|||
|
|
"strconv"
|
|||
|
|
"xiawan/wx/api/req"
|
|||
|
|
"xiawan/wx/api/vo"
|
|||
|
|
"xiawan/wx/clientsdk/baseinfo"
|
|||
|
|
"xiawan/wx/srv/wxface"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
// GetFinderSearchService 视频号搜索
|
|||
|
|
func GetFinderSearchService(queryKey string, req req.FinderSearchModel) 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.SendGetFinderSearchRequest(req.Index, req.Userver, req.UserKey, uuid.New().String())
|
|||
|
|
if err != nil {
|
|||
|
|
return vo.NewFail("GetFinderSearchService!err :" + err.Error())
|
|||
|
|
}
|
|||
|
|
return vo.NewSuccessObj(resp, "")
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 视频号中心
|
|||
|
|
func FinderUserPrepareService(queryKey string, req req.FinderUserPrepareModel) 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.SendFinderUserPrepareRequest(req.Userver)
|
|||
|
|
if err != nil {
|
|||
|
|
return vo.NewFail("FinderUserPrepareService!err :" + err.Error())
|
|||
|
|
}
|
|||
|
|
return vo.NewSuccessObj(resp, "")
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 视频号关注取消
|
|||
|
|
func FinderFollowService(queryKey string, req req.FinderFollowModel) 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.SendFinderFollowRequest(req.FinderUserName, req.OpType, req.RefObjectId, req.Cook, req.Userver, req.PosterUsername)
|
|||
|
|
if err != nil {
|
|||
|
|
return vo.NewFail("FinderUserPrepareService!err :" + err.Error())
|
|||
|
|
}
|
|||
|
|
return vo.NewSuccessObj(resp, "")
|
|||
|
|
})
|
|||
|
|
}
|