Browse Source

Merge branch 'crm/crm_16.7' of http://8.136.199.33:3000/hongze/hz_crm_api into debug

zhangchuanxing 1 month ago
parent
commit
a57e7fac47

+ 31 - 17
controllers/statistic/rai_data_summary.go

@@ -58,20 +58,16 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 	serverButton, _ := this.GetInt("ServerButton")
 
 	dataTypeArr := []string{}
-	var dateIntervalArr []statistic_report.DateInterval //时间区间
+	//var dateIntervalArr []statistic_report.DateInterval //时间区间
 	if dataType == "季度" {
 		dataTypeArr = []string{"Q1", "Q2", "Q3", "Q4"}
-		dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "03-31"}, statistic_report.DateInterval{StartDate: "04-01", EndDate: "06-30"}, statistic_report.DateInterval{StartDate: "07-01", EndDate: "09-30"}, statistic_report.DateInterval{StartDate: "10-01", EndDate: "12-31"}}
+		//dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "03-31"}, statistic_report.DateInterval{StartDate: "04-01", EndDate: "06-30"}, statistic_report.DateInterval{StartDate: "07-01", EndDate: "09-30"}, statistic_report.DateInterval{StartDate: "10-01", EndDate: "12-31"}}
 	} else if dataType == "半年度" {
 		dataTypeArr = []string{"H1", "H2"}
-		dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "06-30"}, statistic_report.DateInterval{StartDate: "07-01", EndDate: "12-31"}}
+		//dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "06-30"}, statistic_report.DateInterval{StartDate: "07-01", EndDate: "12-31"}}
 	} else {
 		dataTypeArr = []string{""}
-		dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "12-31"}}
-	}
-
-	for _, v := range dateIntervalArr {
-		fmt.Println(v)
+		//dateIntervalArr = []statistic_report.DateInterval{statistic_report.DateInterval{StartDate: "01-01", EndDate: "12-31"}}
 	}
 
 	condition := " AND role_type_code IN ('rai_seller','rai_group') AND enabled = 1 AND  rai_enabled = 1"
@@ -128,15 +124,17 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 		mapNoRenewedcompanyContractIds[v.CompanyContractId] = true
 	}
 
-	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)       // 续约合同(数量)
-
+	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)       // 确认不续约合同(数量)
+	mapSignedClientNum := make(map[string]int)                  // 签约客户(数量)
+	mapSignedClientMoney := make(map[string]float64)            // 签约客户(金额)
+
 	for _, v := range listRaiData {
 		startDateTime := utils.StrDateToDate(v.StartDate)
 		monthNum := startDateTime.Month()
@@ -178,7 +176,11 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 			confirmedNoRenewalContractMoney[keyMap] += v.Money
 			confirmedNoRenewalContractNum[keyMap]++
 		}
+
+		mapSignedClientMoney[keyMap] += v.Money
+		mapSignedClientNum[keyMap]++
 	}
+
 	//fmt.Println(time.Now().AddDate(0, 0, -1))
 	//return
 	var sellerDevelop []*system.AdminItem // 开拓组销售
@@ -191,6 +193,10 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 		}
 	}
 
+	//for _, v := range dateIntervalArr {
+	//	fmt.Println(v)
+	//}
+
 	resp := new(statistic_report.RaiDataSummaryListResp)
 	var items []*statistic_report.RaiDataSummaryResp
 	for i := startYear; i <= endYear; i++ {
@@ -198,6 +204,8 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 		for _, Dv := range dataTypeArr {
 			item := new(statistic_report.RaiDataSummaryResp)
 			item.DataType = fmt.Sprint(i, Dv)
+			//fmt.Println("DataType", item.DataType)
+
 			for _, vS := range sellerDevelop {
 				keyMap := fmt.Sprint(item.DataType, "_", vS.AdminId)
 				sellerItem := new(statistic_report.RaiDataSummaryDetail)
@@ -235,8 +243,13 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 				}
 				sellerItem.ConfirmNonRenewalRateData = fmt.Sprint(confirmNonRenewalRateMoey, " / ", confirmNonRenewalRateNum) //确认不续约率(金额/数量)-(数据)"
 
-				sellerItem.SignedClientCount = "签约客户数量-(数据)"
-				sellerItem.AverageRevenueCount = "客单价-(数据)"
+				sellerItem.SignedClientCount = fmt.Sprint(mapSignedClientNum[keyMap]) // 签约客户数量
+				if mapSignedClientNum[keyMap] == 0 || mapSignedClientMoney[keyMap] == 0 {
+					sellerItem.AverageRevenueCount = "0"
+				} else {
+					sellerItem.AverageRevenueCount = utils.SubFloatToString(mapSignedClientMoney[keyMap]/float64(mapSignedClientNum[keyMap]), 2) //客单价
+				}
+
 				sellerItem.InvoiceAmountCount = "开票金额-(数据)"
 				sellerItem.PaymentReceivedCount = "到款金额-(数据)"
 				sellerItem.UnpaidRatioCount = "未到款比例-(数据)"
@@ -252,6 +265,7 @@ func (this *StatisticRaiDataSummaryController) RaiDataSummaryList() {
 
 			for _, vS := range sellerService {
 				sellerItem := new(statistic_report.RaiDataSummaryDetail)
+				sellerItem.SellerId = vS.AdminId
 				sellerItem.SellerName = vS.RealName
 				sellerItem.AddTrialCount = "新增试用-(数据)"
 				sellerItem.NewContractData = "新签合同(金额/数量)-(数据)"

+ 4 - 0
models/statistic_report/rai_data_summary.go

@@ -21,6 +21,7 @@ type RaiDataSummaryResp struct {
 }
 
 type RaiDataSummaryDetail struct {
+	SellerId                         int    `description:"销售id"`
 	SellerName                       string `description:"销售名称"`
 	AddTrialCount                    string `description:"新增试用"`
 	NewContractData                  string `description:"新签合同(金额/数量)"`
@@ -36,6 +37,8 @@ type RaiDataSummaryDetail struct {
 	UnpaidRatioCount                 string `description:"未到款比例"`
 	NewCustomerInvoicingCount        string `description:"新客开票"`
 	NewCustomerPaymentsReceivedCount string `description:"新客到款"`
+	StartDate                        string `description:"合同开始日期"`
+	EndDate                          string `description:"合同结束日期"`
 }
 
 // 增量客户统计报表列表数据结构
@@ -93,6 +96,7 @@ func GetRaiDataSummaryList(condition string, pars []interface{}) (items []*Incre
 	o := orm.NewOrm()
 	sql := `SELECT a.start_date,
 			   a.end_date,
+			   a.company_contract_id,
 			   a.money,
 			   a.rai_contract_type,
 			   a.seller_id_init,

+ 1 - 0
services/cygx/resource_data.go

@@ -1342,6 +1342,7 @@ func UpdateIndustrialsourceHzResourceData(sourceId int, sourceType string) {
 			err = errors.New("DeleteResourceData, Err: " + e.Error())
 			return
 		}
+		return
 	}
 
 	industrialItem, e := cygx.GetIndustrialManagementInfo(sourceId)