zwxi před 11 měsíci
rodič
revize
204a2fc54d

+ 0 - 2
controllers/roadshow/report.go

@@ -1365,8 +1365,6 @@ func (this *CalendarController) OverseasSellerReportList() {
 	tmpAllOfflineNumMap := make(map[int]int)
 	tmpAllOfflineNumMap := make(map[int]int)
 
 
 	for _, researcher := range sellerList {
 	for _, researcher := range sellerList {
-		//组内研究员数据
-
 		//每个区间的数据
 		//每个区间的数据
 		tmpAdminRsReportRecordNumList := make([]roadshow.RsOverseasReportRecordNum, 0)
 		tmpAdminRsReportRecordNumList := make([]roadshow.RsOverseasReportRecordNum, 0)
 		for index, adminData := range adminDataList {
 		for index, adminData := range adminDataList {

+ 39 - 0
models/overseas_custom/custom.go

@@ -354,3 +354,42 @@ GROUP BY a.company_id `
 	_, err = o.Raw(sql, keyword, keyword, keyword, keyword).QueryRows(&companyIds)
 	_, err = o.Raw(sql, keyword, keyword, keyword, keyword).QueryRows(&companyIds)
 	return
 	return
 }
 }
+
+func GetOverseasCustomList(condition string, pars []interface{}) (list []*Custom, err error) {
+	o := orm.NewOrm()
+	sql := ``
+	var databaseName string
+	if utils.RunMode == "debug" {
+		databaseName = "test_v2_hongze_rddp"
+	} else {
+		databaseName = "hongze_rddp"
+	}
+
+	sql = `SELECT * FROM (
+				SELECT a.company_id,a.company_name,a.nation,b.seller_id,b.seller_name,
+				b.view_total,b.road_show_total,a.created_time AS create_time,b.last_view_time,a.is_hide,a.overseas_status,
+				2 AS source,b.overseas_label,a.reset_btn
+				FROM company AS a
+				INNER JOIN company_product AS b ON a.company_id=b.company_id
+				INNER JOIN overseas_custom_seller AS c ON b.seller_id=c.seller_id
+				WHERE b.product_id=1 AND b.is_overseas = 0`
+	sql += `
+				UNION ALL
+				SELECT t.company_id+10000000,t.company_name,t.nation,t.seller_id,t.seller_name,
+				t.view_total,t.road_show_total,t.create_time,t.last_view_time,t.is_hide,t.overseas_status,
+				1 AS source,t.overseas_label,t.reset_btn
+				FROM %s.english_company AS t
+				INNER JOIN overseas_custom_seller AS n ON t.seller_id=n.seller_id
+             WHERE 1=1 AND t.is_deleted=0 `
+
+	sql += `		)AS m WHERE 1=1 `
+
+	if condition != "" {
+		sql += condition
+	}
+
+
+	sql = fmt.Sprintf(sql, databaseName)
+	_, err = o.Raw(sql, pars).QueryRows(&list)
+	return
+}

+ 70 - 53
services/roadshow/report.go

@@ -3,6 +3,7 @@ package roadshow
 import (
 import (
 	"fmt"
 	"fmt"
 	"hongze/hz_crm_api/models/company"
 	"hongze/hz_crm_api/models/company"
+	"hongze/hz_crm_api/models/overseas_custom"
 	"hongze/hz_crm_api/models/roadshow"
 	"hongze/hz_crm_api/models/roadshow"
 	"hongze/hz_crm_api/utils"
 	"hongze/hz_crm_api/utils"
 	"time"
 	"time"
@@ -512,21 +513,29 @@ func getOverseasSellerSectionData(startDate, endDate time.Time, dimensionType st
 	offlineMap := make(map[int]int)
 	offlineMap := make(map[int]int)
 	//fmt.Println()
 	//fmt.Println()
 	//客户状态维度
 	//客户状态维度
-	companylist, err := company.GetOverseasCompanys()
+	companylist, err := overseas_custom.GetOverseasCustomList("", nil)
 	if err != nil {
 	if err != nil {
 		return
 		return
 	}
 	}
-	idsArr := make([]int, 0)
+	formalIdsArr := make([]int, 0)
+	tryoutIdsArr := make([]int, 0)
+	closeIdsArr := make([]int, 0)
 	for _, v := range companylist {
 	for _, v := range companylist {
-		idsArr = append(idsArr, v.CompanyId)
+		if v.OverseasStatus == "正式" {
+			formalIdsArr = append(formalIdsArr, v.CompanyId)
+		} else if v.OverseasStatus == "试用" {
+			tryoutIdsArr = append(tryoutIdsArr, v.CompanyId)
+		} else if v.OverseasStatus == "关闭" {
+			closeIdsArr = append(closeIdsArr, v.CompanyId)
+		}
 	}
 	}
 	if dimensionType == "company_status" {
 	if dimensionType == "company_status" {
 		//正式客户
 		//正式客户
 		{
 		{
 			var condition string
 			var condition string
 			var pars []interface{}
 			var pars []interface{}
-			condition = ` and start_date >= ? and end_date <= ?  and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-			pars = append(pars, startDate, endDate, "正式", idsArr)
+			condition = ` and start_date >= ? and end_date <= ?  and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(formalIdsArr)) + `)`
+			pars = append(pars, startDate, endDate, "正式", formalIdsArr)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 			if tmpErr != nil {
 			if tmpErr != nil {
 				err = tmpErr
 				err = tmpErr
@@ -542,8 +551,8 @@ func getOverseasSellerSectionData(startDate, endDate time.Time, dimensionType st
 		{
 		{
 			var condition string
 			var condition string
 			var pars []interface{}
 			var pars []interface{}
-			condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-			pars = append(pars, startDate, endDate, "试用", idsArr)
+			condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(tryoutIdsArr)) + `)`
+			pars = append(pars, startDate, endDate, "试用", tryoutIdsArr)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 
 
 			if tmpErr != nil {
 			if tmpErr != nil {
@@ -560,8 +569,8 @@ func getOverseasSellerSectionData(startDate, endDate time.Time, dimensionType st
 		{
 		{
 			var condition string
 			var condition string
 			var pars []interface{}
 			var pars []interface{}
-			condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-			pars = append(pars, startDate, endDate, "关闭", idsArr)
+			condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(closeIdsArr)) + `)`
+			pars = append(pars, startDate, endDate, "关闭", closeIdsArr)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
 
 
 			if tmpErr != nil {
 			if tmpErr != nil {
@@ -576,41 +585,41 @@ func getOverseasSellerSectionData(startDate, endDate time.Time, dimensionType st
 	}
 	}
 
 
 	//路演形式维度
 	//路演形式维度
-	if dimensionType == "roadshow_type" {
-		//线上路演
-		{
-			var condition string
-			var pars []interface{}
-			condition = ` and start_date >= ? and end_date <= ? and roadshow_type = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-			pars = append(pars, startDate, endDate, "线上", idsArr)
-			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
-			if tmpErr != nil {
-				err = tmpErr
-				return
-			}
-			for _, v := range data {
-				//fmt.Println(v)
-				onlineMap[v.AdminId] = v.Num
-			}
-		}
-
-		//线下路演
-		{
-			var condition string
-			var pars []interface{}
-			condition = ` and start_date >= ? and end_date <= ? and roadshow_type = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-			pars = append(pars, startDate, endDate, "线下", idsArr)
-			data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
-			if tmpErr != nil {
-				err = tmpErr
-				return
-			}
-			for _, v := range data {
-				//fmt.Println(v)
-				offlineMap[v.AdminId] = v.Num
-			}
-		}
-	}
+	//if dimensionType == "roadshow_type" {
+	//	//线上路演
+	//	{
+	//		var condition string
+	//		var pars []interface{}
+	//		condition = ` and start_date >= ? and end_date <= ? and roadshow_type = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
+	//		pars = append(pars, startDate, endDate, "线上", idsArr)
+	//		data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
+	//		if tmpErr != nil {
+	//			err = tmpErr
+	//			return
+	//		}
+	//		for _, v := range data {
+	//			//fmt.Println(v)
+	//			onlineMap[v.AdminId] = v.Num
+	//		}
+	//	}
+	//
+	//	//线下路演
+	//	{
+	//		var condition string
+	//		var pars []interface{}
+	//		condition = ` and start_date >= ? and end_date <= ? and roadshow_type = ? and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
+	//		pars = append(pars, startDate, endDate, "线下", idsArr)
+	//		data, tmpErr := roadshow.GetOverseasGroupSellerRecordList(condition, pars)
+	//		if tmpErr != nil {
+	//			err = tmpErr
+	//			return
+	//		}
+	//		for _, v := range data {
+	//			//fmt.Println(v)
+	//			offlineMap[v.AdminId] = v.Num
+	//		}
+	//	}
+	//}
 
 
 	////销售专项路演统计
 	////销售专项路演统计
 	//if dimensionType == "seller_special" {
 	//if dimensionType == "seller_special" {
@@ -707,20 +716,28 @@ func getOverseasResearcherSectionData(startDate, endDate time.Time) (adminDataMa
 	formalMap := make(map[int]int)
 	formalMap := make(map[int]int)
 	closemap := make(map[int]int)
 	closemap := make(map[int]int)
 
 
-	companylist, err := company.GetOverseasCompanys()
+	companylist, err := overseas_custom.GetOverseasCustomList("", nil)
 	if err != nil {
 	if err != nil {
 		return
 		return
 	}
 	}
-	idsArr := make([]int, 0)
+	formalIdsArr := make([]int, 0)
+	tryoutIdsArr := make([]int, 0)
+	closeIdsArr := make([]int, 0)
 	for _, v := range companylist {
 	for _, v := range companylist {
-		idsArr = append(idsArr, v.CompanyId)
+		if v.OverseasStatus == "正式" {
+			formalIdsArr = append(formalIdsArr, v.CompanyId)
+		} else if v.OverseasStatus == "试用" {
+			tryoutIdsArr = append(tryoutIdsArr, v.CompanyId)
+		} else if v.OverseasStatus == "关闭" {
+			closeIdsArr = append(closeIdsArr, v.CompanyId)
+		}
 	}
 	}
 	//正式客户
 	//正式客户
 	{
 	{
 		var condition string
 		var condition string
 		var pars []interface{}
 		var pars []interface{}
-		condition = ` and start_date >= ? and end_date <= ?  and company_status = ? and is_overseas=0 and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-		pars = append(pars, startDate, endDate, "正式", idsArr)
+		condition = ` and start_date >= ? and end_date <= ?  and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(formalIdsArr)) + `)`
+		pars = append(pars, startDate, endDate, "正式", formalIdsArr)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 		if tmpErr != nil {
 		if tmpErr != nil {
 			err = tmpErr
 			err = tmpErr
@@ -735,8 +752,8 @@ func getOverseasResearcherSectionData(startDate, endDate time.Time) (adminDataMa
 	{
 	{
 		var condition string
 		var condition string
 		var pars []interface{}
 		var pars []interface{}
-		condition = ` and start_date >= ? and end_date <= ? and company_status = ? and is_overseas=0 and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-		pars = append(pars, startDate, endDate, "试用", idsArr)
+		condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(tryoutIdsArr)) + `)`
+		pars = append(pars, startDate, endDate, "试用", tryoutIdsArr)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 
 
 		if tmpErr != nil {
 		if tmpErr != nil {
@@ -753,8 +770,8 @@ func getOverseasResearcherSectionData(startDate, endDate time.Time) (adminDataMa
 	{
 	{
 		var condition string
 		var condition string
 		var pars []interface{}
 		var pars []interface{}
-		condition = ` and start_date >= ? and end_date <= ? and company_status = ? and is_overseas=0 and company_id IN (` + utils.GetOrmInReplace(len(idsArr)) + `)`
-		pars = append(pars, startDate, endDate, "关闭", idsArr)
+		condition = ` and start_date >= ? and end_date <= ? and company_status = ? and company_id IN (` + utils.GetOrmInReplace(len(closeIdsArr)) + `)`
+		pars = append(pars, startDate, endDate, "关闭", closeIdsArr)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 		data, tmpErr := roadshow.GetGroupResearcherRecordList(condition, pars)
 		if tmpErr != nil {
 		if tmpErr != nil {
 			err = tmpErr
 			err = tmpErr