feat:完善信息,增加socket

This commit is contained in:
henry
2022-01-27 14:50:52 +08:00
parent 0368be6f11
commit 4ae37b9b4d
30 changed files with 325 additions and 92 deletions

View File

@ -51,7 +51,7 @@ func (c *Instance) Login() InstanceLoginCallback {
_session.Identity = params.Identity
_session.SelectIdentity = params.SelectIdentity
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountEnterprise, _session.UIDToString(), _session)
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountEnterprise, _session.GetStringUID(), _session)
return &InstanceLoginReturn{Token: token, TokenEffectTime: utils.StringToInt(config.SystemConfig[config.SysTokenEffectTime])}
}

View File

@ -4,7 +4,6 @@ import (
"SciencesServer/app/api/enterprise/model"
model2 "SciencesServer/app/common/model"
"SciencesServer/app/handle"
"SciencesServer/config"
"SciencesServer/serve/orm"
"SciencesServer/utils"
"errors"
@ -99,7 +98,7 @@ func loginForSmsCaptcha(params *LoginParams, tenantID uint64) (*InstanceLoginPar
RETURNS:
return &InstanceLoginParams{
UID: mUserInstance.UUID,
Avatar: mUserInstance.GetAvatarAttribute(config.SystemConfig[config.SysImageDomain]), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Avatar: mUserInstance.Avatar, Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline,
Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity,
Status: mUserInstance.Status,
@ -139,7 +138,7 @@ func loginForPassword(params *LoginParams, tenantID uint64) (*InstanceLoginParam
}
return &InstanceLoginParams{
UID: mUserInstance.UUID,
Avatar: mUserInstance.GetAvatarAttribute(config.SystemConfig[config.SysImageDomain]), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Avatar: mUserInstance.Avatar, Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline,
Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity,
Status: mUserInstance.Status,

View File

@ -2,14 +2,9 @@ package manage
import (
"SciencesServer/app/api/enterprise/model"
"SciencesServer/app/basic/config"
"SciencesServer/app/basic/controller"
model2 "SciencesServer/app/common/model"
"SciencesServer/app/service"
"SciencesServer/app/session"
config2 "SciencesServer/config"
"errors"
"strings"
)
// Company 公司信息
@ -102,53 +97,6 @@ func (c *Company) Product(id uint64, page, pageSize int) ([]*CompanyProductInfo,
return list, nil
}
// Match 匹配信息
func (c *Company) Match(title string, industrys, keywords []string) (*controller.ReturnPages, error) {
params := strings.Join([]string{
title, strings.Join(industrys, ","), strings.Join(keywords, ","),
}, ",")
manage := service.NewESManage(
service.WithManageIdentity(config.TenantUserIdentityForCompany),
)
out, count, err := manage.Search(0, 0, map[string]interface{}{
"title": params, "industry": params, "keyword": params, "research": params,
})
if err != nil {
return nil, err
}
ids := make([]uint64, 0)
for _, v := range out.([]interface{}) {
val := v.(*service.ESManage)
ids = append(ids, val.ID)
}
mManageCompany := model.NewManageCompany()
companys := make([]*model2.ManageCompany, 0)
if err := model2.ScanFields(mManageCompany.ManageCompany, &companys, []string{"id", "kind", "name", "image", "url", "keyword"},
&model2.ModelWhereOrder{
Where: model2.NewWhereIn("id", ids),
Order: model2.NewOrder("id", model2.OrderModeToDesc),
}, &model2.ModelWhereOrder{
Where: model2.NewWhere("examine_status", model2.ExamineStatusForAgree),
}); err != nil {
return nil, err
}
list := make([]*CompanyMatchInfo, 0)
for _, v := range companys {
list = append(list, &CompanyMatchInfo{
ID: v.GetEncodeID(), Kind: v.Kind, Name: v.Name,
Image: v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain]),
Url: v.Url,
Keywords: v.GetKeywordAttribute(),
})
}
return &controller.ReturnPages{Data: list, Count: count}, nil
}
func NewCompany() CompanyHandle {
return func(session *session.Enterprise) *Company {
return &Company{

View File

@ -82,6 +82,7 @@ func (c *Company) Launch(params *BasicParams, inviterID uint64, other *config.Id
}
mManageCompany.TenantID = c.tenantID
mManageCompany.InviterID = inviterID
mManageCompany.Kind = model2.ManageCompanyKind(other.Kind)
mManageCompany.Name = params.Name
mManageCompany.Code = params.Code
mManageCompany.Image = model2.Image{Image: params.Image}

View File

@ -235,7 +235,7 @@ func (c *Identity) Switch(identity int) error {
}
}
c.SelectIdentity = identity
service.Publish(config2.EventForAccountLoginProduce, config2.RedisKeyForAccountEnterprise, c.UIDToString(), c.Enterprise)
service.Publish(config2.EventForAccountLoginProduce, config2.RedisKeyForAccountEnterprise, c.GetStringUID(), c.Enterprise)
return nil
}
return errors.New("操作错误,无效的身份信息")

View File

@ -5,6 +5,7 @@ import (
model2 "SciencesServer/app/common/model"
"SciencesServer/app/handle"
"SciencesServer/app/session"
"SciencesServer/config"
"SciencesServer/utils"
"errors"
"time"
@ -36,11 +37,13 @@ type (
// Info 基本信息
func (c *Instance) Info() *InstanceInfo {
out := &InstanceInfo{Avatar: c.Avatar, Name: c.Name,
out := &InstanceInfo{
Name: c.Name,
Avatar: (&model2.UserInstance{Avatar: c.Avatar}).GetAvatarAttribute(config.SystemConfig[config.SysImageDomain]),
Currency: c.Currency,
Identity: c.Identity,
SelectIdentity: c.SelectIdentity}
SelectIdentity: c.SelectIdentity,
}
if c.IsVip() {
out.Vip = c.Vip
out.VipDays = utils.DiffTimeDays(time.Now(), c.VipDeadline)