单个账号流注册流程
This commit is contained in:
@@ -22,3 +22,62 @@ func (t *TwitterAccountService) Create(params *models.TwitterAccount) {
|
||||
params.UpdateTime = time.Now().Unix()
|
||||
t.db.Create(params)
|
||||
}
|
||||
|
||||
func (t *TwitterAccountService) GetInfo(id int64) *models.TwitterAccount {
|
||||
var account models.TwitterAccount
|
||||
result := t.db.Model(&models.TwitterAccount{}).Where("id = ?", id).First(&account)
|
||||
if result.Error != nil {
|
||||
return nil
|
||||
}
|
||||
return &account
|
||||
}
|
||||
|
||||
// 更改账号状态
|
||||
func (u *TwitterAccountService) ChangeAccountStatus(accountId int, status string) bool {
|
||||
u.db.Model(&models.TwitterAccount{}).Where("id = ?", accountId).Updates(map[string]interface{}{"status": status, "update_time": time.Now().Unix()})
|
||||
return true
|
||||
}
|
||||
|
||||
// 更改账号登录状态
|
||||
func (u *TwitterAccountService) ChangeAccountLoginStatus(accountId int, loginStatus string) bool {
|
||||
u.db.Model(&models.TwitterAccount{}).Where("id = ?", accountId).Updates(map[string]interface{}{"login_status": loginStatus, "update_time": time.Now().Unix()})
|
||||
return true
|
||||
}
|
||||
|
||||
// 下线所有账号
|
||||
func (u *TwitterAccountService) OfflineAllAccount() bool {
|
||||
u.db.Model(&models.TwitterAccount{}).Where("login_status = ?", "登录成功").Updates(&models.TwitterAccount{
|
||||
LoginStatus: "账号下线",
|
||||
UpdateTime: time.Now().Unix(),
|
||||
})
|
||||
return true
|
||||
}
|
||||
|
||||
// 获取可用账号
|
||||
func (u *TwitterAccountService) GetAvailableAccount(params *models.TwitterAccount) []models.TwitterAccount {
|
||||
var users []models.TwitterAccount
|
||||
res := u.db.Model(&models.TwitterAccount{}).Where(`status = ? AND (login_status != "账号异常" OR login_status IS NULL)`, params.Status)
|
||||
// if params.Username != "" {
|
||||
// res.Where("username LIKE ?", "%"+params.Username+"%")
|
||||
// }
|
||||
|
||||
res.Order("id DESC").Find(&users)
|
||||
return users
|
||||
}
|
||||
|
||||
// 获取养号未运行或者运行失败的账号
|
||||
func (u *TwitterAccountService) GetAccountListByStatus(params *models.TwitterAccount) []models.TwitterAccount {
|
||||
var users []models.TwitterAccount
|
||||
res := u.db.Model(&models.TwitterAccount{}).Where(`status = ? AND (login_status != "账号异常" OR login_status IS NULL)`, params.Status)
|
||||
// if params.Username != "" {
|
||||
// res.Where("username LIKE ?", "%"+params.Username+"%")
|
||||
// }
|
||||
res.Order("id DESC").Find(&users)
|
||||
return users
|
||||
}
|
||||
|
||||
// 清空状态字段
|
||||
func (u *TwitterAccountService) ClearAccountStatus(params *models.TwitterAccount) bool {
|
||||
u.db.Model(&models.TwitterAccount{}).Where("status = ?", params.Status).Update("status", nil)
|
||||
return true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user