Browse Source

新增修复英文客户阅读记录

hongze 1 year ago
parent
commit
d5e3649333
3 changed files with 47 additions and 3 deletions
  1. 20 1
      models/overseas_custom/custom.go
  2. 23 2
      services/overseas_custom/custom.go
  3. 4 0
      services/task.go

+ 20 - 1
models/overseas_custom/custom.go

@@ -32,6 +32,7 @@ type EnglishCompany struct {
 	OverseasStatus string    `description:"海外客户状态:'正式','试用','关闭'"`
 	OverseasLabel  int       `description:"海外客户试用子标签:1未分类、2  推进、3 跟踪、4 预备、"`
 	RoadShowTotal  int       `description:"累计路演次数"`
+	LastViewTime   string    `description:"最后一次阅读时间"`
 }
 
 // 获取客户路演数据
@@ -57,9 +58,27 @@ func (obj *Custom) GetEnglishCompanyAll() (list []*EnglishCompany, err error) {
 	return
 }
 
-func (obj *Custom) UpdateRoadShowTotal(companyId, total int) (err error) {
+func (obj *Custom) UpdateEnglishCompanyRoadShowTotal(companyId, total int) (err error) {
 	o := orm.NewOrmUsingDB("rddp")
 	sql := ` UPDATE english_company SET road_show_total=? WHERE company_id=? `
 	_, err = o.Raw(sql, total, companyId).Exec()
 	return
 }
+
+// 获取客户路演数据
+func (obj *Custom) GetEnglishCompanyLastViewTime() (list []*EnglishCompany, err error) {
+	o := orm.NewOrmUsingDB("rddp")
+	sql := ` SELECT b.company_id,MAX(a.create_time) AS last_view_time
+			FROM  english_report_email_pv AS a
+			INNER JOIN english_report_email AS b ON a.email_id=b.id
+			GROUP BY b.company_id `
+	_, err = o.Raw(sql).QueryRows(&list)
+	return
+}
+
+func (obj *Custom) UpdateEnglishCompanyLastViewTime(companyId int, lastViewTime string) (err error) {
+	o := orm.NewOrmUsingDB("rddp")
+	sql := ` UPDATE english_company SET last_view_time=? WHERE company_id=? `
+	_, err = o.Raw(sql, lastViewTime, companyId).Exec()
+	return
+}

+ 23 - 2
services/overseas_custom/custom.go

@@ -30,9 +30,9 @@ func FixEnglishCompanyRoadShowTotal(cont context.Context) (err error) {
 		if v.Total > 0 {
 			if val, ok := companyMap[v.CompanyId]; ok {
 				if val != v.Total {
-					err = obj.UpdateRoadShowTotal(v.CompanyId, v.Total)
+					err = obj.UpdateEnglishCompanyRoadShowTotal(v.CompanyId, v.Total)
 					if err != nil {
-						fmt.Println("UpdateRoadShowTotal Err:" + err.Error())
+						fmt.Println("UpdateEnglishCompanyRoadShowTotal Err:" + err.Error())
 						return err
 					}
 				}
@@ -42,3 +42,24 @@ func FixEnglishCompanyRoadShowTotal(cont context.Context) (err error) {
 	}
 	return nil
 }
+
+// 修改英文客户路演统计
+func FixEnglishCompanyLastViewTime(cont context.Context) (err error) {
+	obj := new(overseas_custom.Custom)
+	list, err := obj.GetEnglishCompanyLastViewTime()
+	if err != nil {
+		fmt.Println("GetEnglishCompanyLastViewTime Err:" + err.Error())
+		return err
+	}
+
+	for _, v := range list {
+		if v.LastViewTime != "" {
+			err = obj.UpdateEnglishCompanyLastViewTime(v.CompanyId, v.LastViewTime)
+			if err != nil {
+				fmt.Println("UpdateEnglishCompanyLastViewTime Err:" + err.Error())
+				return err
+			}
+		}
+	}
+	return nil
+}

+ 4 - 0
services/task.go

@@ -182,6 +182,10 @@ func Task() {
 	fixEnglishCompanyRoadShowTotal := task.NewTask("fixEnglishCompanyRoadShowTotal", "0 */10 6-23 * * *", overseas_custom.FixEnglishCompanyRoadShowTotal)
 	task.AddTask("英文客户路演统计", fixEnglishCompanyRoadShowTotal)
 
+	//修复英文客户最后一次阅读时间
+	fixEnglishCompanyLastViewTime := task.NewTask("fixEnglishCompanyLastViewTime", "0 */30 6-23 * * *", overseas_custom.FixEnglishCompanyLastViewTime)
+	task.AddTask("英文客户最后一次阅读时间", fixEnglishCompanyLastViewTime)
+
 	task.StartTask()
 
 	fmt.Println("task end")