|
@@ -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"
|