浏览代码

no message

zhangchuanxing 1 月之前
父节点
当前提交
67fe90f3db
共有 3 个文件被更改,包括 70 次插入79 次删除
  1. 38 51
      controllers/company_seller.go
  2. 26 28
      controllers/statistic/rai_data_summary.go
  3. 6 0
      models/company/company_seller.go

+ 38 - 51
controllers/company_seller.go

@@ -7490,7 +7490,6 @@ func (this *CompanySellerController) InvoicePaymentCheckList() {
 // CheckListV2
 // @Title 获取权益开拓组或者服务组下面的销售
 // @Description 获取权益开拓组或者服务组下面的销售接口
-// @Param   ServerType   query   string  true       "筛选类型,枚举值:'开拓','服务';不传默认返回开拓组内容"
 // @Success 200 {object} company.DepartmentGroupSellersResp
 // @router /seller/check/list_rai/server_type [get]
 func (this *CompanySellerController) CheckListRaiServerType() {
@@ -7506,17 +7505,18 @@ func (this *CompanySellerController) CheckListRaiServerType() {
 		br.Ret = 408
 		return
 	}
-	serverType := this.GetString("ServerType", "开拓")
+	//serverType := this.GetString("ServerType", "开拓")
 	list := make([]company.DepartmentGroupSellers, 0)
+	listServer := make([]company.DepartmentGroupSellers, 0)
 
-	condition := " AND role_type_code IN ('rai_seller','rai_group') AND enabled = 1 AND  rai_enabled = 1"
+	condition := " AND role_type_code IN ('rai_seller','rai_group') AND enabled = 1 AND  rai_enabled = 1 "
 	var pars []interface{}
 	//名字带6 的属于服务组
-	if serverType == "开拓" {
-		condition += " AND  real_name   NOT LIKE '%6%' "
-	} else {
-		condition += " AND  real_name LIKE '%6%' "
-	}
+	//if serverType == "开拓" {
+	//	condition += " AND  real_name  NOT LIKE '%6%' "
+	//} else {
+	//	condition += " AND  real_name LIKE '%6%' "
+	//}
 	sellerList, err := system.GetSysUserItemsOrderByCreated(condition, pars)
 	if err != nil {
 		br.Msg = "获取管理账号失败"
@@ -7540,10 +7540,9 @@ func (this *CompanySellerController) CheckListRaiServerType() {
 			ChildrenList: groupSellerList,
 		}
 		for _, seller := range sellerList {
-			if seller.GroupId != group.GroupId {
+			if seller.GroupId != group.GroupId || strings.Contains(seller.RealName, "6") {
 				continue
 			}
-
 			sellerItem := company.DepartmentGroupSellers{
 				AdminId:      fmt.Sprint(seller.AdminId),
 				RealName:     seller.RealName,
@@ -7551,56 +7550,44 @@ func (this *CompanySellerController) CheckListRaiServerType() {
 				RoleTypeCode: seller.RoleTypeCode,
 			}
 			groupSellerList = append(groupSellerList, sellerItem)
-
 		}
-		//teamList, err := system.GetSysTeamByDepartmentId(group.GroupId)
-		//if err != nil {
-		//	br.Msg = "获取小组失败"
-		//	br.ErrMsg = "获取小组失败,Err:" + err.Error()
-		//	return
-		//}
-		//for _, team := range teamList {
-		//	teamSellerList := make([]company.DepartmentGroupSellers, 0)
-		//	teamItem := company.DepartmentGroupSellers{
-		//		AdminId: fmt.Sprint("team_", team.GroupId),
-		//		//AdminName string `description:"系统用户名称"`
-		//		RealName:     team.GroupName,
-		//		ChildrenList: teamSellerList,
-		//	}
-		//	sellerList, err := system.GetTeamSysUserList(team.GroupId, enabled)
-		//	if err != nil {
-		//		br.Msg = "获取销售失败"
-		//		br.ErrMsg = "获取销售失败,Err:" + err.Error()
-		//		return
-		//	}
-		//	for _, seller := range sellerList {
-		//		sellerItem := company.DepartmentGroupSellers{
-		//			AdminId: fmt.Sprint(seller.AdminId),
-		//			//AdminName string `description:"系统用户名称"`
-		//			RealName:     seller.RealName,
-		//			Authority:    seller.Authority,
-		//			RoleTypeCode: seller.RoleTypeCode,
-		//		}
-		//		//fmt.Println("seller.RealName:", seller.RealName)
-		//		teamSellerList = append(teamSellerList, sellerItem)
-		//	}
-		//	teamSellerList = sortDepartmentGroupSellers(teamSellerList)
-		//	teamItem.ChildrenList = teamSellerList
-		//	if len(teamSellerList) > 0 {
-		//		groupSellerList = append(groupSellerList, teamItem)
-		//	}
-		//}
-
 		groupItem.ChildrenList = groupSellerList
 		if len(groupSellerList) > 0 {
 			list = append(list, groupItem)
 		}
 	}
 
+	for _, group := range groupList {
+		groupSellerList := make([]company.DepartmentGroupSellers, 0)
+		groupItem := company.DepartmentGroupSellers{
+			AdminId: fmt.Sprint("group_", group.DepartmentId),
+			//AdminName string `description:"系统用户名称"`
+			RealName:     group.GroupName,
+			ChildrenList: groupSellerList,
+		}
+		for _, seller := range sellerList {
+			if seller.GroupId != group.GroupId || !strings.Contains(seller.RealName, "6") {
+				continue
+			}
+			sellerItem := company.DepartmentGroupSellers{
+				AdminId:      fmt.Sprint(seller.AdminId),
+				RealName:     seller.RealName,
+				Authority:    seller.Authority,
+				RoleTypeCode: seller.RoleTypeCode,
+			}
+			groupSellerList = append(groupSellerList, sellerItem)
+		}
+		groupItem.ChildrenList = groupSellerList
+		if len(groupSellerList) > 0 {
+			listServer = append(listServer, groupItem)
+		}
+	}
+
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "获取成功"
-	br.Data = company.DepartmentGroupSellersResp{
-		List: list,
+	br.Data = company.DepartmentGroupSellersServerResp{
+		List:       list,
+		ListServer: listServer,
 	}
 }

+ 26 - 28
controllers/statistic/rai_data_summary.go

@@ -29,9 +29,7 @@ type StatisticRaiDataSummaryController struct {
 // @Param   DataType   query   string  false       "报表类型,枚举值:`季度`,`年度`,`半年度`"
 // @Param   DevelopButton   query   int	  false       "开拓组开关,枚举值:1:开启,0:关闭 ,默认关闭"
 // @Param   ServerButton   query   int	  false       "服务组开关,枚举值:1:开启,0:关闭 ,默认关闭"
-// @Param   NewContractButton   query   int	  false       "新签开关,枚举值:1:开启,0:关闭 ,默认开启"
-// @Param   RenewedContractButton   query   int	  false       "续约开关,枚举值:1:开启,0:关闭 ,默认开启"
-// @Param   IncomeButton   query   int	  false       "收入开关,枚举值:1:开启,0:关闭 ,默认开启"
+// @Param   ContractButtonType   query   string	  false       "开关类型,:`新签`,`续约`,`收入` 多个用英文逗号隔开, "
 // @Param   IsExport   query   bool  false       "是否导出excel,默认是false"
 // @Success 200 {object} statistic_report.RaiDataSummaryListResp
 // @router /rai_data_summary/list [get]
@@ -130,12 +128,12 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 		mapNoRenewedcompanyContractIds[v.CompanyContractId] = true
 	}
 
-	mapNewContractMoney := make(map[string]float64)  // 新签合同(金额)
-	mapNewContractNum := make(map[string]int)        // 新签合同(数量)
-	expiredContractMoney := make(map[string]float64) // 到期合同(金额)
-	expiredContractNum := make(map[string]int)       // 到期合同(数量)
-	renewedContractMoney := make(map[string]float64) // 续约合同(金额)
-	renewedContractNum := make(map[string]int)       // 续约合同(数量)
+	mapNewContractMoney := make(map[string]float64)     // 新签合同(金额)
+	mapNewContractNum := make(map[string]int)           // 新签合同(数量)
+	mapExpiredContractMoney := make(map[string]float64) // 到期合同(金额)
+	mapExpiredContractNum := make(map[string]int)       // 到期合同(数量)
+	mapRenewedContractMoney := make(map[string]float64) // 续约合同(金额)
+	mapRenewedContractNum := make(map[string]int)       // 续约合同(数量)
 
 	confirmedNoRenewalContractMoney := make(map[string]float64) // 确认不续约合同(金额)
 	confirmedNoRenewalContractNum := make(map[string]int)       // 确认不续约合同(数量)
@@ -167,13 +165,13 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 			mapNewContractMoney[keyMap] += v.Money
 			mapNewContractNum[keyMap]++
 		} else if v.RaiContractType == "续约合同" {
-			renewedContractMoney[keyMap] += v.Money
-			renewedContractNum[keyMap]++
+			mapRenewedContractMoney[keyMap] += v.Money
+			mapRenewedContractNum[keyMap]++
 		}
 
 		if startDateTime.Before(time.Now().AddDate(0, 0, -1)) { //到期合同数据
-			expiredContractMoney[keyMap] += v.Money
-			expiredContractNum[keyMap]++
+			mapExpiredContractMoney[keyMap] += v.Money
+			mapExpiredContractNum[keyMap]++
 		}
 
 		if mapNoRenewedcompanyContractIds[v.CompanyContractId] { // 确认不续约合同
@@ -181,7 +179,7 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 			confirmedNoRenewalContractNum[keyMap]++
 		}
 	}
-	fmt.Println(time.Now().AddDate(0, 0, -1))
+	//fmt.Println(time.Now().AddDate(0, 0, -1))
 	//return
 	var sellerDevelop []*system.AdminItem // 开拓组销售
 	var sellerService []*system.AdminItem // 服务组销售
@@ -205,37 +203,37 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 				sellerItem := new(statistic_report.RaiDataSummaryDetail)
 				sellerItem.SellerName = vS.RealName
 				sellerItem.AddTrialCount = "新增试用-(数据)"
-				sellerItem.NewContractData = fmt.Sprint(utils.SubFloatToString(mapNewContractMoney[keyMap], 2), "/", mapNewContractNum[keyMap])       // 新签合同(金额/数量)-(数据)
-				sellerItem.ExpiredContractData = fmt.Sprint(utils.SubFloatToString(expiredContractMoney[keyMap], 2), "/", expiredContractNum[keyMap]) //"到期合同(金额/数量)-(数据)"
-				sellerItem.RenewedContractData = fmt.Sprint(utils.SubFloatToString(renewedContractMoney[keyMap], 2), "/", renewedContractNum[keyMap]) // "续约合同(金额/数量)-(数据)"
+				sellerItem.NewContractData = fmt.Sprint(utils.SubFloatToString(mapNewContractMoney[keyMap], 2), " / ", mapNewContractNum[keyMap])             // 新签合同(金额/数量)-(数据)
+				sellerItem.ExpiredContractData = fmt.Sprint(utils.SubFloatToString(mapExpiredContractMoney[keyMap], 2), " / ", mapExpiredContractNum[keyMap]) //"到期合同(金额/数量)-(数据)"
+				sellerItem.RenewedContractData = fmt.Sprint(utils.SubFloatToString(mapRenewedContractMoney[keyMap], 2), " / ", mapRenewedContractNum[keyMap]) // "续约合同(金额/数量)-(数据)"
 				var renewalRateMoey string
 				var renewalRateNum string
-				if renewedContractMoney[keyMap] == 0 || expiredContractMoney[keyMap] == 0 {
+				if mapRenewedContractMoney[keyMap] == 0 || mapExpiredContractMoney[keyMap] == 0 {
 					renewalRateMoey = "0%"
 				} else {
-					renewalRateMoey = utils.SubFloatToString(renewedContractMoney[keyMap]/expiredContractMoney[keyMap]*100, 2) + "%"
+					renewalRateMoey = utils.SubFloatToString(mapRenewedContractMoney[keyMap]/mapExpiredContractMoney[keyMap]*100, 2) + "%"
 				}
-				if renewedContractNum[keyMap] == 0 || expiredContractNum[keyMap] == 0 {
+				if mapRenewedContractNum[keyMap] == 0 || mapExpiredContractNum[keyMap] == 0 {
 					renewalRateNum = "0%"
 				} else {
-					renewalRateNum = utils.SubFloatToString(float64(renewedContractNum[keyMap])/float64(expiredContractNum[keyMap])*100, 2) + "%"
+					renewalRateNum = utils.SubFloatToString(float64(mapRenewedContractNum[keyMap])/float64(mapExpiredContractNum[keyMap])*100, 2) + "%"
 				}
-				sellerItem.RenewalRateData = fmt.Sprint(renewalRateMoey, "/", renewalRateNum)                                                                                          //"续约率(金额/数量)-(数据)"
-				sellerItem.ConfirmedNoRenewalContractData = fmt.Sprint(utils.SubFloatToString(confirmedNoRenewalContractMoney[keyMap], 2), "/", confirmedNoRenewalContractNum[keyMap]) //"确认不续约合同(金额/数量)-(数据)"
+				sellerItem.RenewalRateData = fmt.Sprint(renewalRateMoey, " / ", renewalRateNum)                                                                                          //"续约率(金额/数量)-(数据)"
+				sellerItem.ConfirmedNoRenewalContractData = fmt.Sprint(utils.SubFloatToString(confirmedNoRenewalContractMoney[keyMap], 2), " / ", confirmedNoRenewalContractNum[keyMap]) //"确认不续约合同(金额/数量)-(数据)"
 
 				var confirmNonRenewalRateMoey string
 				var confirmNonRenewalRateNum string
-				if confirmedNoRenewalContractMoney[keyMap] == 0 || expiredContractMoney[keyMap] == 0 {
+				if confirmedNoRenewalContractMoney[keyMap] == 0 || mapExpiredContractMoney[keyMap] == 0 {
 					confirmNonRenewalRateMoey = "0%"
 				} else {
-					confirmNonRenewalRateMoey = utils.SubFloatToString(confirmedNoRenewalContractMoney[keyMap]/expiredContractMoney[keyMap]*100, 2) + "%"
+					confirmNonRenewalRateMoey = utils.SubFloatToString(confirmedNoRenewalContractMoney[keyMap]/mapExpiredContractMoney[keyMap]*100, 2) + "%"
 				}
-				if confirmedNoRenewalContractNum[keyMap] == 0 || expiredContractNum[keyMap] == 0 {
+				if confirmedNoRenewalContractNum[keyMap] == 0 || mapExpiredContractNum[keyMap] == 0 {
 					confirmNonRenewalRateNum = "0%"
 				} else {
-					confirmNonRenewalRateNum = utils.SubFloatToString(float64(confirmedNoRenewalContractNum[keyMap])/float64(expiredContractNum[keyMap])*100, 2) + "%"
+					confirmNonRenewalRateNum = utils.SubFloatToString(float64(confirmedNoRenewalContractNum[keyMap])/float64(mapExpiredContractNum[keyMap])*100, 2) + "%"
 				}
-				sellerItem.ConfirmNonRenewalRateData = fmt.Sprint(confirmNonRenewalRateMoey, "/", confirmNonRenewalRateNum) //确认不续约率(金额/数量)-(数据)"
+				sellerItem.ConfirmNonRenewalRateData = fmt.Sprint(confirmNonRenewalRateMoey, " / ", confirmNonRenewalRateNum) //确认不续约率(金额/数量)-(数据)"
 
 				sellerItem.SignedClientCount = "签约客户数量-(数据)"
 				sellerItem.AverageRevenueCount = "客单价-(数据)"

+ 6 - 0
models/company/company_seller.go

@@ -29,6 +29,12 @@ type DepartmentGroupSellersResp struct {
 	List []DepartmentGroupSellers
 }
 
+// DepartmentGroupSellersResp 销售列表(根据部门、分组来)
+type DepartmentGroupSellersServerResp struct {
+	List       []DepartmentGroupSellers
+	ListServer []DepartmentGroupSellers //服务组销售
+}
+
 type DepartmentGroupSellers struct {
 	AdminId string `description:"系统用户id"`
 	//AdminName string `description:"系统用户名称"`