|
|
@@ -120,18 +120,6 @@ func (p PublicPlatoonUserRelationDb) PublicPlatoonUserRelationFindByParamsByPage |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
func (p PublicPlatoonUserRelationDb) PublicPlatoonUserRelationGetOneByUid(uid int64) (*model.PublicPlatoonUserRelation, error) { |
|
|
|
var parent model.PublicPlatoonUserRelation |
|
|
|
has, err := p.Db.Where("uid = ?", uid).Get(&parent) |
|
|
|
if err != nil { |
|
|
|
return nil, zhios_order_relate_logx.Error(err) |
|
|
|
} |
|
|
|
if has == false { |
|
|
|
return nil, zhios_order_relate_logx.Error("未查询到上级用户公排记录") |
|
|
|
} |
|
|
|
return &parent, nil |
|
|
|
} |
|
|
|
|
|
|
|
func (p PublicPlatoonUserRelationDb) PublicPlatoonUserRelationGetOneByPosition(position int64) (*model.PublicPlatoonUserRelation, error) { |
|
|
|
var relation model.PublicPlatoonUserRelation |
|
|
|
_, err := p.Db.Where("position = ?", position).Get(&relation) |
|
|
@@ -140,27 +128,3 @@ func (p PublicPlatoonUserRelationDb) PublicPlatoonUserRelationGetOneByPosition(p |
|
|
|
} |
|
|
|
return &relation, nil |
|
|
|
} |
|
|
|
|
|
|
|
func (p PublicPlatoonUserRelationDb) GetTreeBySmall(head *model.PublicPlatoonUserRelation, leveLimit int) ([]*model.PublicPlatoonUserRelation, error) { |
|
|
|
if leveLimit == 0 { |
|
|
|
leveLimit = 1 |
|
|
|
} |
|
|
|
var res []*model.PublicPlatoonUserRelation |
|
|
|
var queue []*model.PublicPlatoonUserRelation |
|
|
|
queue = append(queue, head) |
|
|
|
for len(queue) > 0 { |
|
|
|
node := queue[0] |
|
|
|
queue = queue[1:] |
|
|
|
if node.Level1 > head.Level1+leveLimit { |
|
|
|
break |
|
|
|
} |
|
|
|
res = append(res, node) |
|
|
|
var son []*model.PublicPlatoonUserRelation |
|
|
|
err1 := p.Db.Where("father_uid1 = ?", node.Uid).Find(son) |
|
|
|
if err1 != nil { |
|
|
|
return nil, zhios_order_relate_logx.Error(err1) |
|
|
|
} |
|
|
|
queue = append(queue, son...) |
|
|
|
} |
|
|
|
return res, nil |
|
|
|
} |