123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- package controllers
- import (
- "eta/eta_mini_crm/models"
- "eta/eta_mini_crm/models/response"
- "eta/eta_mini_crm/utils"
- )
- type SellerController struct {
- BaseAuthController
- }
- // List
- // @Title 获取部门下销售
- // @Description 获取部门下销售接口
- // @Param AllEnabled query bool true "是否获取包含禁用的用户"
- // @Success 200 {object} company.DepartmentGroupSellersResp
- // @router /list [get]
- func (this *SellerController) List() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- getAllEnabled, _ := this.GetBool("AllEnabled", false)
- enabled := true //默认只获取正常状态的用户
- if getAllEnabled { //获取所有状态的用户
- enabled = false
- }
- departmentList, err := models.GetSysDepartmentList()
- if err != nil {
- br.Msg = "获取部门失败"
- br.ErrMsg = "获取部门失败,系统异常,Err:" + err.Error()
- return
- }
- seller, err := models.GetSysUserListByIsEnabled(enabled)
- if err != nil {
- br.Msg = "获取销售失败"
- br.ErrMsg = "获取销售失败,系统异常,Err:" + err.Error()
- return
- }
- // 遍历获取销售的层级结构
- list := make([]*response.DepartmentSellers, 0)
- for _, dep1 := range departmentList {
- if dep1.ParentId == 0 {
- v1 := new(response.DepartmentSellers)
- v1.SysDepartmentId = dep1.SysDepartmentId
- v1.SysDepartmentName = dep1.SysDepartmentName
- for _, s := range seller {
- if s.SysDepartmentId1 == dep1.SysDepartmentId && s.SysDepartmentId2 == 0 {
- s1 := new(response.DepartmentSellers)
- s1.SysUserId = s.SysUserId
- s1.SysRealName = s.SysRealName
- v1.ChildrenList = append(v1.ChildrenList, s1)
- }
- }
- for _, dep2 := range departmentList {
- if dep2.ParentId == dep1.SysDepartmentId {
- v2 := new(response.DepartmentSellers)
- v2.SysDepartmentId = dep2.SysDepartmentId
- v2.SysDepartmentName = dep2.SysDepartmentName
- for _, s := range seller {
- if s.SysDepartmentId2 == dep2.SysDepartmentId && s.SysDepartmentId3 == 0 {
- s1 := new(response.DepartmentSellers)
- s1.SysUserId = s.SysUserId
- s1.SysRealName = s.SysRealName
- v2.ChildrenList = append(v2.ChildrenList, s1)
- }
- }
- v1.ChildrenList = append(v1.ChildrenList, v2)
- for _, dep3 := range departmentList {
- if dep3.ParentId == dep2.SysDepartmentId {
- v3 := new(response.DepartmentSellers)
- v3.SysDepartmentId = dep3.SysDepartmentId
- v3.SysDepartmentName = dep3.SysDepartmentName
- for _, s := range seller {
- if s.SysDepartmentId3 == dep3.SysDepartmentId {
- s1 := new(response.DepartmentSellers)
- s1.SysUserId = s.SysUserId
- s1.SysRealName = s.SysRealName
- v3.ChildrenList = append(v3.ChildrenList, s1)
- }
- }
- v2.ChildrenList = append(v2.ChildrenList, v3)
- }
- }
- }
- }
- list = append(list, v1)
- }
- }
- resp := new(response.DepartmentGroupSellersResp)
- resp.List = list
- br.Msg = "获取成功"
- br.Success = true
- br.Ret = 200
- br.Data = resp
- }
- // List
- // @Title 获取营业部下面的部门
- // @Description 获取营业部下面的部门
- // @Success 200 {object} []models.SysDepartmentList
- // @router /department/list [get]
- func (this *SellerController) DepartmentList() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- parentDepartment, err := models.GetSysDepartmentByName("营业部")
- if err != nil {
- if err.Error() == utils.ErrNoRow() {
- br.Msg = "营业部不存在, 请添加营业部门"
- return
- }
- br.Msg = "获取营业部失败"
- br.ErrMsg = "获取营业部失败,系统异常,Err:" + err.Error()
- return
- }
- departmentList, err := models.GetChildSysDepartmentListById(parentDepartment.SysDepartmentId)
- if err != nil {
- br.Msg = "获取营业部失败"
- br.ErrMsg = "获取营业部失败,系统异常,Err:" + err.Error()
- return
- }
- if len(departmentList) == 0 {
- departmentList = make([]*models.SysDepartmentList, 0)
- }
- br.Msg = "获取成功"
- br.Ret = 200
- br.Success = true
- br.Data = departmentList
- }
|