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