12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- package statistic
- import (
- "fmt"
- "hongze/hz_crm_api/controllers"
- "hongze/hz_crm_api/models"
- "hongze/hz_crm_api/models/statistic_report"
- )
- // 权益数据汇总
- // StatisticRaiDataSummaryController 权益数据汇总基类
- type StatisticRaiDataSummaryController struct {
- controllers.BaseAuthController
- }
- // MergeCompanyList
- // @Title 权益客户统计列表(合同进行合并之后的)
- // @Description 权益客户统计列表接口
- // @Param AdminId query string true "销售id,多个用英文逗号隔开,空字符串为全部"
- // @Param StartYear query int false "开始日期(年份)"
- // @Param EndYear query int false "结束日期(年份)"
- // @Param DataType query string false "报表类型,枚举值:`季度`,`年度`,`半年度`"
- // @Param TryOutType query string false " '试用', '非试用' 非试用即为冻结/流失"
- // @Param IsExport query bool false "是否导出excel,默认是false"
- // @Param IsConfirm query int false "是否确认续约: -1-默认全部; 0-待确认; 1-已确认 ;2-到期合同"
- // @Success 200 {object} response.IncrementalCompanyListResp
- // @router /rai_data_summary/list [get]
- func (this *StatisticRaiDataSummaryController) MergeCompanyList() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- sysUser := this.SysUser
- if sysUser == nil {
- br.Msg = "请登录"
- br.ErrMsg = "请登录,SysUser Is Empty"
- br.Ret = 408
- return
- }
- //adminId := this.GetString("AdminId")
- dataType := this.GetString("DataType")
- startYear, _ := this.GetInt("StartYear")
- endYear, _ := this.GetInt("EndYear")
- dataTypeArr := []string{}
- if dataType == "季度" {
- dataTypeArr = []string{"Q1", "Q2", "Q3", "Q4"}
- } else if dataType == "半年度" {
- dataTypeArr = []string{"H1", "H2"}
- } else {
- dataTypeArr = []string{""}
- }
- resp := new(statistic_report.RaiDataSummaryListResp)
- var items []*statistic_report.RaiDataSummaryResp
- for i := startYear; i <= endYear; i++ {
- //if len(dataTypeArr) > 0 {
- for _, Dv := range dataTypeArr {
- item := new(statistic_report.RaiDataSummaryResp)
- item.DataType = fmt.Sprint(i, Dv)
- sellerItem := new(statistic_report.RaiDataSummaryDetail)
- sellerItem.SellerName = "梁春悦"
- sellerItem.AddTrialCount = "新增试用-(数据)"
- sellerItem.NewContractData = "新签合同(金额/数量)-(数据)"
- sellerItem.ExpiredContractData = "到期合同(金额/数量)-(数据)"
- sellerItem.RenewedContractData = "续约合同(金额/数量)-(数据)"
- sellerItem.RenewalRateData = "续约率(金额/数量)-(数据)"
- sellerItem.ConfirmedNoRenewalContractData = "确认不续约合同(金额/数量)-(数据)"
- sellerItem.SignedClientCount = "签约客户数量-(数据)"
- sellerItem.AverageRevenueCount = "客单价-(数据)"
- sellerItem.InvoiceAmountCount = "开票金额-(数据)"
- sellerItem.PaymentReceivedCount = "到款金额-(数据)"
- sellerItem.UnpaidRatioCount = "未到款比例-(数据)"
- sellerItem.NewCustomerInvoicingCount = "新客开票-(数据)"
- sellerItem.NewCustomerPaymentsReceivedCount = "新客到款-(数据)"
- item.DataList = append(item.DataList, sellerItem)
- items = append(items, item)
- }
- }
- resp.List = items
- br.Ret = 200
- br.Success = true
- br.Msg = "获取成功"
- br.Data = resp
- }
|