Browse Source

原有的公司如果新增了用户也同步到上海

xingzai 2 years ago
parent
commit
e374215904
2 changed files with 43 additions and 5 deletions
  1. 12 1
      models/send_company_user.go
  2. 31 4
      services/send_company_user.go

+ 12 - 1
models/send_company_user.go

@@ -40,7 +40,6 @@ type UserJson struct {
 	Level               string `json:"level"`             //职位等级(研究员、基金经理、部门总监)
 	IsMaker             string `json:"policymakers"`      //是否决策人(是、否)
 	CreatedTime         string `json:"create_time"`       //创建时间
-
 }
 type CompanyJsonList struct {
 	SyncData *[]CompanyJson `json:"sync_data"`
@@ -216,3 +215,15 @@ func GetSendUserList(condition string) (items []*UserJson, err error) {
 	_, err = o.Raw(sql).QueryRows(&items)
 	return
 }
+
+type WxUserOpLogResp struct {
+	CompanyId int `description:"客户ID"`
+}
+
+//获取指定时间内更新的用户
+func GetWxUserOpLog(createTime string) (items []*WxUserOpLogResp, err error) {
+	o := orm.NewOrm()
+	sql := ` SELECT company_id FROM wx_user_op_log WHERE  log_type IN ('add','edit') AND create_time >=  '` + createTime + `' AND company_id > 1 GROUP BY company_id `
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}

+ 31 - 4
services/send_company_user.go

@@ -116,6 +116,33 @@ func SendComapnyToShanghai(url, jsonCompany, postType string) (err error) {
 }
 
 func DotongbuShangHai(cont context.Context) (err error) {
+	var condition string
+	updateTime := time.Now().Add(-time.Hour * 30).Format("2006-01-02 15:04:05")
+	listUpdateUser, err := models.GetWxUserOpLog(updateTime)
+	if err != nil && err.Error() != utils.ErrNoRow() {
+		return err
+	}
+	var companyIds string
+	if len(listUpdateUser) > 0 {
+		for _, v := range listUpdateUser {
+			companyIds += strconv.Itoa(v.CompanyId) + ","
+		}
+	}
+	condition = ` AND p.modify_time > ` + "'" + updateTime + "'"
+	//同30小时有变更的公司
+	go DotongbuShangHaApi(condition)
+
+	//原有的公司如果新增了也同步
+	companyIds = strings.TrimRight(companyIds, ",")
+	if companyIds != "" {
+		condition = ` AND c.company_id  IN (` + companyIds + ")"
+		go DotongbuShangHaApi(condition)
+	}
+	return
+}
+
+//func DotongbuShangHai(cont context.Context) (err error) {
+func DotongbuShangHaApi(condition string) (err error) {
 	var msg string
 	defer func() {
 		if err != nil {
@@ -123,10 +150,10 @@ func DotongbuShangHai(cont context.Context) (err error) {
 		}
 	}()
 	//同步24小时之前的数据到上海平台,为防止遗漏改成30小时
-	var condition string
-	updateTime := time.Now().Add(-time.Hour * 30).Format("2006-01-02 15:04:05")
-	condition = ` AND p.modify_time > ` + "'" + updateTime + "'"
-	fmt.Println(condition)
+
+	//updateTime := time.Now().Add(-time.Hour * 30).Format("2006-01-02 15:04:05")
+	//condition = ` AND p.modify_time > ` + "'" + updateTime + "'"
+	//fmt.Println(condition)
 	//获取token
 	url := "https://crm.hzinsights.com/openapi/v1/auth/getAccessToken?app_key=26945134&app_secret=b99cb2bdec70d20156000f664ec5ac30"
 	method := "GET"