Browse Source

新增权益客户统计

ziwen 2 years ago
parent
commit
27cb0be9d4
2 changed files with 79 additions and 1 deletions
  1. 74 0
      services/company/company_report_record.go
  2. 5 1
      services/task.go

+ 74 - 0
services/company/company_report_record.go

@@ -119,3 +119,77 @@ func checkUpdate(companyReportRecordInfo, companyInfo *models.CompanyReportRecor
 
 	return false
 }
+
+func AddRaiCompanyReportRecord(cont context.Context) (err error) {
+	companyLock.Lock()
+	defer func() {
+		if err != nil {
+			fmt.Println("AddReportRecord Err:" + err.Error())
+		}
+	}()
+
+	endDate := time.Now().Format(utils.FormatDate)
+	productId := 2
+
+	// 查找已经记录的rai的记录
+	existList, err := models.GetExistCompanyReportRecord(endDate, productId)
+	if err != nil {
+		return
+	}
+	existMap := make(map[int]*models.CompanyReportRecord)
+	for _, v := range existList {
+		existMap[v.CompanyId] = v
+	}
+	// 查找当前rai的客户列表
+	list, err := models.GetCompanyList(productId)
+	if err != nil {
+		return
+	}
+	for _, v := range list {
+		if info, ok := existMap[v.CompanyId]; ok { //修改
+			//校验字段是否变更,如果有变更,那么就更新
+			if !checkUpdate(info, v) {
+				continue
+			}
+			utils.FileLog.Info("update company:" + strconv.Itoa(v.CompanyId))
+			recordWhereParams := make(map[string]interface{})
+			//recordWhereParams["company_id"] = v.CompanyId
+			//recordWhereParams["product_id"] = productId
+			//recordWhereParams["create_date"] = endDate
+			recordWhereParams["company_report_record_id"] = info.CompanyReportRecordId
+
+			recordUpdateParams := make(map[string]interface{})
+			recordUpdateParams["company_name"] = v.CompanyName
+			recordUpdateParams["status"] = v.Status
+			recordUpdateParams["start_date"] = v.StartDate
+			recordUpdateParams["end_date"] = v.EndDate
+			recordUpdateParams["seller_id"] = v.SellerId
+			recordUpdateParams["seller_name"] = v.SellerName
+			recordUpdateParams["credit_code"] = v.CreditCode
+			recordUpdateParams["modify_time"] = time.Now()
+			err = models.UpdateCompanyReportRecord(recordWhereParams, recordUpdateParams)
+		} else { //新增
+			utils.FileLog.Info("add company:" + strconv.Itoa(v.CompanyId))
+			item := new(models.CompanyReportRecord)
+			item.CompanyId = v.CompanyId
+			item.ProductId = v.ProductId
+			item.CompanyProductId = v.CompanyProductId
+			item.CompanyName = v.CompanyName
+			item.Status = v.Status
+			item.StartDate = v.StartDate
+			item.EndDate = v.EndDate
+			item.SellerId = v.SellerId
+			item.SellerName = v.SellerName
+			item.CreditCode = v.CreditCode
+			item.CreateDate = time.Now().Format(utils.FormatDate)
+			item.CreateTime = time.Now()
+			item.ModifyTime = time.Now()
+			_, err = models.AddCompanyReportRecord(item)
+			if err != nil {
+				return
+			}
+		}
+	}
+	companyLock.Unlock()
+	return err
+}

+ 5 - 1
services/task.go

@@ -80,10 +80,14 @@ func Task() {
 	addReportRecord := task.NewTask("addReportRecord", "0 0 */1 * * *", roadshow.AddReportRecord)
 	task.AddTask("addReportRecord", addReportRecord)
 
-	//存量客户数据统计
+	//ficc存量客户数据统计
 	addCompanyReportRecord := task.NewTask("addCompanyReportRecord", "0 0 */1 * * *", company.AddCompanyReportRecord)
 	task.AddTask("addCompanyReportRecord", addCompanyReportRecord)
 
+	//rai存量客户数据统计
+	addRaiCompanyReportRecord := task.NewTask("addRaiCompanyReportRecord", "0 0 */1 * * *", company.AddRaiCompanyReportRecord)
+	task.AddTask("addRaiCompanyReportRecord", addRaiCompanyReportRecord)
+
 	//CRM 6.3 客户列表路演次数统计
 	roadShowTotal := task.NewTask("roadShowTotal", "0 */30 * * * *", roadshow.RoadShow)
 	task.AddTask("roadShowTotal", roadShowTotal)