spin
This commit is contained in:
parent
2b1c49ad63
commit
40b5ab5964
@ -205,7 +205,7 @@ type CustomerSearch struct {
|
|||||||
func (b *CustomerList) ToCustomerList() []*Customer {
|
func (b *CustomerList) ToCustomerList() []*Customer {
|
||||||
var users []*Customer
|
var users []*Customer
|
||||||
for _, user := range *b {
|
for _, user := range *b {
|
||||||
if user.UserType == "CUSTOMER" {
|
if len(user.Name) > 0 {
|
||||||
users = append(users, user.ToCustomer())
|
users = append(users, user.ToCustomer())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -129,35 +129,9 @@ func (b *UserRepository) GetAllCustomer(ctx context.Context, req entity.Customer
|
|||||||
var users []*entity.UserDB
|
var users []*entity.UserDB
|
||||||
var total int64
|
var total int64
|
||||||
|
|
||||||
query := b.db.Table("users").
|
query := b.db.Table("customers").
|
||||||
Select("users.id, users.email, users.name, users.phone_number, users.status, users.user_type, users.created_at, users.updated_at, ur.role_id, r.role_name, ur.partner_id, b.name as partner_name").
|
Select("customers.id, customers.email, customers.name, customers.phone as phone_number")
|
||||||
Joins("LEFT JOIN user_roles ur ON users.id = ur.user_id").
|
|
||||||
Joins("LEFT JOIN roles r ON ur.role_id = r.role_id").
|
|
||||||
Joins("LEFT JOIN partners b ON ur.partner_id = b.id").
|
|
||||||
Where("users.deleted_at is null").
|
|
||||||
Where("users.user_type = 'CUSTOMER'")
|
|
||||||
|
|
||||||
if req.Search != "" {
|
|
||||||
query = query.Where("users.name ILIKE ? or users.email ILIKE ? or users.phone_number ILIKE ? or r.role_name ILIKE ? or b.name ILIKE ?", "%"+req.Search+"%", "%"+req.Search+"%", "%"+req.Search+"%", "%"+req.Search+"%", "%"+req.Search+"%")
|
|
||||||
}
|
|
||||||
|
|
||||||
if req.Name != "" {
|
|
||||||
query = query.Where("users.name ILIKE ?", "%"+req.Name+"%")
|
|
||||||
}
|
|
||||||
|
|
||||||
if req.RoleID > 0 {
|
|
||||||
query = query.Where("ur.role_id = ? ", req.RoleID)
|
|
||||||
}
|
|
||||||
|
|
||||||
if req.PartnerID > 0 {
|
|
||||||
query = query.Where("ur.partner_id = ? ", req.PartnerID)
|
|
||||||
}
|
|
||||||
|
|
||||||
if req.SiteID > 0 {
|
|
||||||
query = query.Where("ur.site_id = ? ", req.SiteID)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get the total count without applying the limit and offset.
|
|
||||||
if err := query.Model(&entity.UserDB{}).Count(&total).Error; err != nil {
|
if err := query.Model(&entity.UserDB{}).Count(&total).Error; err != nil {
|
||||||
logger.ContextLogger(ctx).Error("error when count users", zap.Error(err))
|
logger.ContextLogger(ctx).Error("error when count users", zap.Error(err))
|
||||||
return nil, 0, err
|
return nil, 0, err
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user