实现添加项目成员时下拉提示

This commit is contained in:
Minho
2018-02-03 15:25:10 +08:00
parent c7d83576bd
commit ba9c390a13
7 changed files with 156 additions and 13 deletions

View File

@@ -230,6 +230,20 @@ func (m *Member) FindByAccount(account string) (*Member, error) {
}
return m, err
}
//批量查询用户
func (m *Member) FindByAccountList(accounts ...string) ([]*Member,error) {
o := orm.NewOrm()
var members []*Member
_,err := o.QueryTable(m.TableNameWithPrefix()).Filter("account__in", accounts).All(&members)
if err == nil {
for _,item := range members {
item.ResolveRoleName()
}
}
return members, err
}
//分页查找用户.
func (m *Member) FindToPager(pageIndex, pageSize int) ([]*Member, int, error) {

View File

@@ -24,6 +24,14 @@ type MemberRelationshipResult struct {
RoleName string `json:"role_name"`
}
type SelectMemberResult struct {
Result []KeyValueItem `json:"results"`
}
type KeyValueItem struct {
Id int `json:"id"`
Text string `json:"text"`
}
func NewMemberRelationshipResult() *MemberRelationshipResult {
return &MemberRelationshipResult{}
}
@@ -53,8 +61,8 @@ func (m *MemberRelationshipResult) ResolveRoleName() *MemberRelationshipResult {
}
return m
}
func (m *MemberRelationshipResult) FindForUsersByBookId(book_id, pageIndex, pageSize int) ([]*MemberRelationshipResult, int, error) {
// 根据项目ID查询用户
func (m *MemberRelationshipResult) FindForUsersByBookId(bookId, pageIndex, pageSize int) ([]*MemberRelationshipResult, int, error) {
o := orm.NewOrm()
var members []*MemberRelationshipResult
@@ -65,7 +73,7 @@ func (m *MemberRelationshipResult) FindForUsersByBookId(book_id, pageIndex, page
var total_count int
err := o.Raw(sql2, book_id).QueryRow(&total_count)
err := o.Raw(sql2, bookId).QueryRow(&total_count)
if err != nil {
return members, 0, err
@@ -73,7 +81,7 @@ func (m *MemberRelationshipResult) FindForUsersByBookId(book_id, pageIndex, page
offset := (pageIndex - 1) * pageSize
_, err = o.Raw(sql1, book_id, offset, pageSize).QueryRows(&members)
_, err = o.Raw(sql1, bookId, offset, pageSize).QueryRows(&members)
if err != nil {
return members, 0, err
@@ -84,3 +92,46 @@ func (m *MemberRelationshipResult) FindForUsersByBookId(book_id, pageIndex, page
}
return members, total_count, nil
}
// 查询指定文档中不存在的用户列表
func (m *MemberRelationshipResult) FindNotJoinUsersByAccount(bookId, limit int,account string) ([]*Member,error){
o := orm.NewOrm()
sql := "SELECT m.* FROM md_members as m LEFT JOIN md_relationship as rel ON m.member_id=rel.member_id WHERE (rel.book_id <> ? OR rel.relationship_id IS NULL) AND m.account LIKE ? LIMIT 0,?;"
var members []*Member
_,err := o.Raw(sql,bookId,account,limit).QueryRows(&members)
return members,err
}