Selaa lähdekoodia

fix:邮件中的阅读统计关于月度的做调整

Roc 2 vuotta sitten
vanhempi
commit
6bed673e9c
2 muutettua tiedostoa jossa 84 lisäystä ja 0 poistoa
  1. 22 0
      models/report_view.go
  2. 62 0
      services/report_view.go

+ 22 - 0
models/report_view.go

@@ -143,6 +143,28 @@ FROM
 	return
 }
 
+// GetRddpMonthReportViewersDetail 获取月度数据
+func GetRddpMonthReportViewersDetail(startTime, endTime string) (items []*RddpWeekReportViewersDetail, err error) {
+	sql := `
+			SELECT
+	u.real_name,c.company_name,uvh.create_time AS created_time,REPLACE ( SUBSTRING( r.create_time, 6, 5 ), '-', '' ) AS report_create_date,
+	r.title AS research_report_name,r.classify_name_second AS research_report_type,r.classify_name_second 
+FROM
+	hongze_rddp.report_view_record AS uvh
+	INNER JOIN hongze_rddp.report AS r ON uvh.report_id = r.id
+	INNER JOIN wx_user u ON u.user_id = uvh.user_id
+	INNER JOIN company c ON c.company_id = u.company_id 
+			WHERE uvh.create_time >?
+            AND uvh.create_time <=?
+			AND c.company_id NOT IN (1)
+			AND r.classify_name_first = "月报"
+			ORDER BY uvh.create_time DESC
+`
+	o := orm.NewOrm()
+	_, err = o.Raw(sql, startTime, endTime).QueryRows(&items)
+	return
+}
+
 type HistoryViewTimes struct {
 	RealName    string
 	CompanyName string

+ 62 - 0
services/report_view.go

@@ -258,6 +258,67 @@ func ReportViewDetail() (err error) {
 				cellF.Value = `双周报`
 			}
 			continue
+		} else if v.TypeName == `月报` {
+			sheet, err := file.AddSheet(v.TypeName + "研报阅读统计")
+			if err != nil {
+				return err
+			}
+			//标头
+			rowTitle := sheet.AddRow()
+			cellA := rowTitle.AddCell()
+			cellA.Value = "用户名称"
+			cellB := rowTitle.AddCell()
+			cellB.Value = "公司名称"
+			cellC := rowTitle.AddCell()
+			cellC.Value = "访问时间"
+			cellD := rowTitle.AddCell()
+			cellD.Value = "访问标题"
+			cellE := rowTitle.AddCell()
+			cellE.Value = "访问页面"
+			cellF := rowTitle.AddCell()
+			cellF.Value = "报告类型"
+
+			items, err := models.GetResearchReportViewersDetail(startTime, endTime, v.TypeValue)
+			if err != nil {
+				return err
+			}
+			for _, item := range items {
+				row := sheet.AddRow()
+				cellA := row.AddCell()
+				cellA.Value = item.RealName
+				cellB := row.AddCell()
+				cellB.Value = item.CompanyName
+				cellC := row.AddCell()
+				cellC.Value = item.CreatedTime
+				cellD := row.AddCell()
+				cellD.Value = item.ResearchReportName
+				cellE := row.AddCell()
+				cellE.Value = item.ReportVariety
+				cellF := row.AddCell()
+				cellF.Value = v.TypeName
+			}
+
+			//新月报的数据
+			monthItems, err := models.GetRddpMonthReportViewersDetail(startTime, endTime)
+			if err != nil {
+				return err
+			}
+			for _, item := range monthItems {
+				row := sheet.AddRow()
+				cellA := row.AddCell()
+				cellA.Value = item.RealName
+				cellB := row.AddCell()
+				cellB.Value = item.CompanyName
+				cellC := row.AddCell()
+				cellC.Value = item.CreatedTime
+				cellD := row.AddCell()
+				cellD.Value = `【弘则` + item.ClassifyNameSecond + `】` + item.ResearchReportName
+				cellE := row.AddCell()
+				cellE.Value = item.ClassifyNameSecond
+				cellF := row.AddCell()
+				cellF.Value = `月报`
+			}
+			continue
 		}
 
 		if v.TypeValue == "rddp" {
@@ -384,6 +445,7 @@ func ReportViewDetail() (err error) {
 	if sendResult {
 		os.Remove(savePath)
 	}
+
 	//fmt.Println("send result:", sendResult)
 	//fmt.Println("end send email")
 	return nil