package models import ( "github.com/beego/beego/v2/client/orm" "hongze/hongze_cygx/utils" "time" ) type AdminMobileResp struct { Mobile string `description:"手机号"` } // 获取销售所能查看到的手机号 func GetAdminByRole() (items []*AdminMobileResp, err error) { o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT mobile FROM admin WHERE role = 'admin' ` _, err = o.Raw(sql).QueryRows(&items) return } type Admin struct { AdminId int `orm:"column(admin_id);pk" description:"系统用户id"` AdminName string `description:"系统用户名称"` AdminAvatar string `description:"用户头像"` RealName string `description:"系统用户姓名"` Password string `json:"-"` LastUpdatedPasswordTime string `json:"-"` Enabled int Email string `description:"系统用户邮箱"` LastLoginTime string CreatedTime time.Time LastUpdatedTime string Role string `description:"系统用户角色"` Mobile string `description:"手机号"` RoleType int `description:"角色类型:1需要录入指标,0:不需要"` RoleId int `description:"角色ID"` RoleName string `description:"角色名称"` RoleTypeCode string `description:"角色类型编码"` DepartmentId int `description:"部门id"` DepartmentName string `description:"部门名称"` GroupId int `description:"分组id"` GroupName string `description:"分组名称"` Authority int `description:"管理权限,0:无,1:部门负责人,2:小组负责人,或者ficc销售主管,4:ficc销售组长"` Position string `description:"职位"` DisableTime time.Time `description:"禁用时间"` ChartPermission int8 `description:"图表权限id"` OpenId string `description:"弘则部门公众号的openid"` UnionId string `description:"微信公众平台唯一标识"` EdbPermission int8 `description:"指标库操作权限,0:只能操作 自己的,1:所有指标可操作"` MysteelChemicalPermission int8 `description:"钢联化工指标操作权限,0:只能操作 自己的,1:所有指标可操作"` PredictEdbPermission int8 `description:"预测指标库操作权限,0:只能操作 自己的,1:所有预测指标可操作"` Province string `description:"省"` ProvinceCode string `description:"省编码"` City string `description:"市"` CityCode string `description:"市编码"` } func GetSysAdminById(adminId int) (item *Admin, err error) { sql := `SELECT * FROM admin WHERE admin_id=? ` o := orm.NewOrmUsingDB("weekly_report") err = o.Raw(sql, adminId).QueryRow(&item) return } func GetSysAdminByMobile(mobile string) (item *Admin, err error) { sql := `SELECT * FROM admin WHERE mobile=? LIMIT 1 ` o := orm.NewOrmUsingDB("weekly_report") err = o.Raw(sql, mobile).QueryRow(&item) return } // 获取权益内部人员手机号 func GetRaiAdmin() (items []*AdminMobileResp, err error) { o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT mobile FROM admin WHERE role_type_code LIKE '%rai%' AND group_id NOT IN ( 19, 10 ) AND enabled = 1 OR ( department_name = '产品技术部' AND enabled = 1) ` _, err = o.Raw(sql).QueryRows(&items) return } // 获取IT人员手机号 func GetRaiAdminIt() (items []*AdminMobileResp, err error) { o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT mobile FROM admin WHERE department_id = 3 AND enabled = 1 ` _, err = o.Raw(sql).QueryRows(&items) return } type GetSellerUserMobileResp struct { Mobile string `description:"手机号"` UserId int `description:"用户ID"` } // 获取销售所能查看到的手机号 func GetSellerUserMobile(adminId int) (items []*GetSellerUserMobileResp, err error) { o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT mobile FROM user_seller_relation WHERE seller_id = ? ` _, err = o.Raw(sql, adminId).QueryRows(&items) return } // GetUserSellerRelationUserList 获取跟销售绑定了关系的权益用户 func GetUserSellerRelationUserList() (items []*GetSellerUserMobileResp, err error) { o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT a.user_id FROM user_seller_relation AS a INNER JOIN company_product AS b ON b.company_id = a.company_id AND b.product_id = 2 ` _, err = o.Raw(sql).QueryRows(&items) return } // 根据多个ID获取管理员列表信息 func GetAdminByAdminIds(adminId []int) (items []*AdminMobileResp, err error) { lenArr := len(adminId) if lenArr == 0 { return } o := orm.NewOrmUsingDB("weekly_report") sql := ` SELECT mobile FROM admin WHERE admin_id IN (` + utils.GetOrmInReplace(lenArr) + `)` _, err = o.Raw(sql, adminId).QueryRows(&items) return }