Ver Fonte

no message

xingzai há 6 meses atrás
pai
commit
0aeff7cd76
1 ficheiros alterados com 89 adições e 29 exclusões
  1. 89 29
      controllers/roadshow/report.go

+ 89 - 29
controllers/roadshow/report.go

@@ -329,6 +329,7 @@ func (this *CalendarController) ResearcherReportList() {
 // @Param   DimensionType   query   string  true       "维度枚举值:company_status、roadshow_type"
 // @Param   StartDate   query   string  true       "开始日期,格式:2022-04-06"
 // @Param   EndDate   query   string  true       "结束日期,格式:2022-04-06"
+// @Param   CompanyType   query   string  true       "客户类型:'ficc','权益',传空默认为ficc,"
 // @Success 200 {object} roadshow.RsReportRecordResp
 // @router /report/seller/list [get]
 func (this *CalendarController) SellerReportList() {
@@ -348,7 +349,7 @@ func (this *CalendarController) SellerReportList() {
 	dimensionType := this.GetString("DimensionType")
 	startDate := this.GetString("StartDate")
 	endDate := this.GetString("EndDate")
-
+	companyType := this.GetString("CompanyType", "ficc")
 	if dimensionType == "" {
 		dimensionType = "company_status"
 	}
@@ -386,13 +387,34 @@ func (this *CalendarController) SellerReportList() {
 		}
 
 	}
-	group, groupIdRelationMap, err := services.GetFiccSystemGroup()
-	if err != nil {
-		br.Msg = "获取信息失败!"
-		br.ErrMsg = "获取分组信息失败!Err:" + err.Error()
-		return
+
+	var group []services.AdminGroup
+	var groupIdRelationMap map[int]int
+	var researcherList []*roadshow.Researcher
+	switch companyType {
+	case utils.COMPANY_CLASSIFY_FICC:
+		group, groupIdRelationMap, err = services.GetFiccSystemGroup()
+		if err != nil {
+			br.Msg = "获取信息失败!"
+			br.ErrMsg = "获取FICC销售信息失败!Err:" + err.Error()
+			return
+		}
+		researcherList, err = services.GetFiccSeller(firstDate, groupIdRelationMap)
+	case utils.COMPANY_CLASSIFY_RAI:
+		group, groupIdRelationMap, err = services.GetRaiSystemGroup()
+		if err != nil {
+			br.Msg = "获取信息失败!"
+			br.ErrMsg = "获取分组信息失败!Err:" + err.Error()
+			return
+		}
+		researcherList, err = services.GetRaiSeller(groupIdRelationMap)
+		if err != nil {
+			br.Msg = "获取信息失败!"
+			br.ErrMsg = "获取权益销售信息失败!Err:" + err.Error()
+			return
+		}
 	}
-	researcherList, err := services.GetFiccSeller(firstDate, groupIdRelationMap)
+
 	groupMap := make(map[int][]*roadshow.Researcher)
 	for _, v := range researcherList {
 		if v.RoleTypeCode == "ficc_admin" {
@@ -425,6 +447,8 @@ func (this *CalendarController) SellerReportList() {
 	tmpAllMeetingNumMap := make(map[int]int)
 	tmpAllOnlineNumMap := make(map[int]int)
 	tmpAllOfflineNumMap := make(map[int]int)
+	tmpAllRoadShowNumMap := make(map[int]int)
+	tmpAllSalonNumMap := make(map[int]int)
 	for _, v := range group {
 		v.ResearcherList = groupMap[v.GroupId]
 		tmpGroupAdminReportRecord := make([]roadshow.AdminReportRecord, 0)
@@ -435,6 +459,8 @@ func (this *CalendarController) SellerReportList() {
 		tmpGroupMeetingNumMap := make(map[int]int)
 		tmpGroupOnlineNumMap := make(map[int]int)
 		tmpGroupOfflineNumMap := make(map[int]int)
+		tmpGroupRoadShowNumMap := make(map[int]int)
+		tmpGroupSalonNumMap := make(map[int]int)
 		for _, researcher := range groupMap[v.GroupId] {
 			//组内研究员数据
 
@@ -444,7 +470,7 @@ func (this *CalendarController) SellerReportList() {
 				startDateIndexList[index] = adminData.StartDate
 				endDateIndexList[index] = adminData.EndDate
 
-				var tmpTryOutNum, tmpFormalNum, tmpMeetingNum, tmpOnlineNum, tmpOfflineNum int
+				var tmpTryOutNum, tmpFormalNum, tmpMeetingNum, tmpOnlineNum, tmpOfflineNum, tmpRoadShowNum, tmpSalonNum int
 				if num, ok := adminData.TryOutMap[researcher.AdminId]; ok {
 					tmpTryOutNum = num
 				}
@@ -460,14 +486,22 @@ func (this *CalendarController) SellerReportList() {
 				if num, ok := adminData.OfflineMap[researcher.AdminId]; ok {
 					tmpOfflineNum = num
 				}
+				if num, ok := adminData.RoadShowMap[researcher.AdminId]; ok {
+					tmpRoadShowNum = num
+				}
+				if num, ok := adminData.SalonMap[researcher.AdminId]; ok {
+					tmpSalonNum = num
+				}
 				tmpAdminRsReportRecordNum := roadshow.RsReportRecordNum{
-					TryOutNum:  tmpTryOutNum,
-					FormalNum:  tmpFormalNum,
-					MeetingNum: tmpMeetingNum,
-					OnlineNum:  tmpOnlineNum,
-					OfflineNum: tmpOfflineNum,
-					StartDate:  adminData.StartDate,
-					EndDate:    adminData.EndDate,
+					TryOutNum:   tmpTryOutNum,
+					FormalNum:   tmpFormalNum,
+					MeetingNum:  tmpMeetingNum,
+					OnlineNum:   tmpOnlineNum,
+					OfflineNum:  tmpOfflineNum,
+					RoadShowNum: tmpRoadShowNum,
+					SalonNum:    tmpSalonNum,
+					StartDate:   adminData.StartDate,
+					EndDate:     adminData.EndDate,
 				}
 				tmpAdminRsReportRecordNumList = append(tmpAdminRsReportRecordNumList, tmpAdminRsReportRecordNum)
 
@@ -487,11 +521,19 @@ func (this *CalendarController) SellerReportList() {
 				if _, ok := tmpGroupOfflineNumMap[index]; !ok {
 					tmpGroupOfflineNumMap[index] = 0
 				}
+				if _, ok := tmpGroupRoadShowNumMap[index]; !ok {
+					tmpGroupRoadShowNumMap[index] = 0
+				}
+				if _, ok := tmpGroupSalonNumMap[index]; !ok {
+					tmpGroupSalonNumMap[index] = 0
+				}
 				tmpGroupTryOutNumMap[index] += tmpTryOutNum
 				tmpGroupFormalNumMap[index] += tmpFormalNum
 				tmpGroupMeetingNumMap[index] += tmpMeetingNum
 				tmpGroupOnlineNumMap[index] += tmpOnlineNum
 				tmpGroupOfflineNumMap[index] += tmpOfflineNum
+				tmpGroupRoadShowNumMap[index] += tmpRoadShowNum
+				tmpGroupSalonNumMap[index] += tmpSalonNum
 
 				//总数据汇总
 				if _, ok := tmpAllTryOutNumMap[index]; !ok {
@@ -509,11 +551,19 @@ func (this *CalendarController) SellerReportList() {
 				if _, ok := tmpAllOfflineNumMap[index]; !ok {
 					tmpAllOfflineNumMap[index] = 0
 				}
+				if _, ok := tmpAllRoadShowNumMap[index]; !ok {
+					tmpAllRoadShowNumMap[index] = 0
+				}
+				if _, ok := tmpAllSalonNumMap[index]; !ok {
+					tmpAllSalonNumMap[index] = 0
+				}
 				tmpAllTryOutNumMap[index] += tmpTryOutNum
 				tmpAllFormalNumMap[index] += tmpFormalNum
 				tmpAllMeetingNumMap[index] += tmpMeetingNum
 				tmpAllOnlineNumMap[index] += tmpOnlineNum
 				tmpAllOfflineNumMap[index] += tmpOfflineNum
+				tmpAllRoadShowNumMap[index] += tmpRoadShowNum
+				tmpAllSalonNumMap[index] += tmpSalonNum
 			}
 			tmpAdminReportRecord := roadshow.AdminReportRecord{
 				Name:                  researcher.RealName,
@@ -525,13 +575,15 @@ func (this *CalendarController) SellerReportList() {
 
 		for i := 0; i < len(tmpGroupMeetingNumMap); i++ {
 			tmpGroupRsReportRecordNum := roadshow.RsReportRecordNum{
-				TryOutNum:  tmpGroupTryOutNumMap[i],
-				FormalNum:  tmpGroupFormalNumMap[i],
-				MeetingNum: tmpGroupMeetingNumMap[i],
-				OnlineNum:  tmpGroupOnlineNumMap[i],
-				OfflineNum: tmpGroupOfflineNumMap[i],
-				StartDate:  startDateIndexList[i],
-				EndDate:    endDateIndexList[i],
+				TryOutNum:   tmpGroupTryOutNumMap[i],
+				FormalNum:   tmpGroupFormalNumMap[i],
+				MeetingNum:  tmpGroupMeetingNumMap[i],
+				OnlineNum:   tmpGroupOnlineNumMap[i],
+				OfflineNum:  tmpGroupOfflineNumMap[i],
+				RoadShowNum: tmpGroupRoadShowNumMap[i],
+				SalonNum:    tmpGroupSalonNumMap[i],
+				StartDate:   startDateIndexList[i],
+				EndDate:     endDateIndexList[i],
 			}
 			tmpGroupRsReportRecordNumList = append(tmpGroupRsReportRecordNumList, tmpGroupRsReportRecordNum)
 		}
@@ -547,13 +599,15 @@ func (this *CalendarController) SellerReportList() {
 	//总体汇总数据
 	for i := 0; i < len(tmpAllFormalNumMap); i++ {
 		tmpGroupRsReportRecordNum := roadshow.RsReportRecordNum{
-			TryOutNum:  tmpAllTryOutNumMap[i],
-			FormalNum:  tmpAllFormalNumMap[i],
-			MeetingNum: tmpAllMeetingNumMap[i],
-			OnlineNum:  tmpAllOnlineNumMap[i],
-			OfflineNum: tmpAllOfflineNumMap[i],
-			StartDate:  startDateIndexList[i],
-			EndDate:    endDateIndexList[i],
+			TryOutNum:   tmpAllTryOutNumMap[i],
+			FormalNum:   tmpAllFormalNumMap[i],
+			MeetingNum:  tmpAllMeetingNumMap[i],
+			OnlineNum:   tmpAllOnlineNumMap[i],
+			OfflineNum:  tmpAllOfflineNumMap[i],
+			RoadShowNum: tmpAllRoadShowNumMap[i],
+			SalonNum:    tmpAllSalonNumMap[i],
+			StartDate:   startDateIndexList[i],
+			EndDate:     endDateIndexList[i],
 		}
 		rsAllReportRecordNumList = append(rsAllReportRecordNumList, tmpGroupRsReportRecordNum)
 	}
@@ -663,6 +717,12 @@ func (this *CalendarController) ReportCalendarList() {
 	case "offline":
 		condition += ` and a.roadshow_type = ? `
 		pars = append(pars, "线下")
+	case "road_show":
+		condition += ` and a.activity_type = ? `
+		pars = append(pars, "路演")
+	case "salon":
+		condition += ` and a.activity_type = ? `
+		pars = append(pars, "沙龙")
 	default:
 		br.Msg = "请传入类型"
 		br.ErrMsg = "请传入类型DataType"