zhangqian
2023-08-11 ff3e203423f296965472d1f09347cda5cfe3a786
model/client.go
@@ -22,6 +22,7 @@
      ClientLevel       ClientLevel    `json:"client_level" gorm:"foreignKey:ClientLevelId"`
      Contacts          []Contact      `json:"contacts" gorm:"foreignKey:ClientId"`
      MemberId          int            `json:"member_id" gorm:"column:member_id;type:int(11);comment:销售负责人ID"`
      Member            User           `json:"member" gorm:"foreignKey:MemberId"`
      ServiceMemberId   int            `json:"service_member_id" gorm:"column:service_member_id;type:int(11);comment:服务负责人ID"`
      DetailAddress     string         `json:"detail_address" gorm:"column:detail_address;type:varchar(255);comment:详细地址"`
      Remark            string         `json:"remark" gorm:"column:remark;type:varchar(255);comment:备注"`
@@ -97,6 +98,18 @@
               db = db.Where("member_id = ?", constvar.UserTypeSuper)
            }
            if key == "client_status" {
               db = db.Joins("ClientStatus").Where("ClientStatus.name LIKE ?", "%"+v+"%")
            }
            if key == "client_level" {
               db = db.Joins("ClientLevel").Where("ClientLevel.name LIKE ?", "%"+v+"%")
            }
            if key == "member_name" {
               db = db.Joins("Member").Where("Member.username LIKE ?", "%"+v+"%")
            }
         case int:
            if key == "id" || key == "client_type_id" || key == "client_status_id" || key == "member_id" {
               db = db.Where(key+" = ?", v)
@@ -161,7 +174,7 @@
      db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize)
   }
   err := db.Preload("ClientStatus").Preload("ClientType").Preload("ClientOrigin").Preload("ClientLevel").Preload("FollowRecord").Preload("EnterpriseNature").Preload("RegisteredCapital").Preload("Industry").Preload("EnterpriseScale").Preload("Contacts").Preload("Country").Preload("Province").Preload("City").Preload("Region").Find(&records).Error
   err := db.Preload("Member").Preload("ClientStatus").Preload("ClientType").Preload("ClientOrigin").Preload("ClientLevel").Preload("FollowRecord").Preload("EnterpriseNature").Preload("RegisteredCapital").Preload("Industry").Preload("EnterpriseScale").Preload("Contacts").Preload("Country").Preload("Province").Preload("City").Preload("Region").Find(&records).Error
   return records, total, err
}