瀏覽代碼

定时同步OA用户

hsun 5 月之前
父節點
當前提交
57ca8f2a8b
共有 3 個文件被更改,包括 31 次插入2 次删除
  1. 21 0
      services/eta_bridge/gn.go
  2. 8 2
      services/task_gn.go
  3. 2 0
      utils/config.go

+ 21 - 0
services/eta_bridge/gn.go

@@ -750,3 +750,24 @@ func LoadGnTempIndexIds() (indexIds []int, err error) {
 	}
 	return
 }
+
+func SyncGnUser(cont context.Context) (err error) {
+	lockSyncUser.Lock()
+	defer func() {
+		if err != nil {
+			tips := "SyncUser-定时将第三方的用户数据同步到ETA失败, ErrMsg:\n" + err.Error()
+			utils.FileLog.Info(tips)
+			go alarm_msg.SendAlarmMsg(tips, 3)
+		}
+		lockSyncUser.Unlock()
+	}()
+
+	uri := "/gn/user/sync"
+	fmt.Println("开始同步OA用户")
+	_, err, _ = HttpEtaBridgeGet(uri)
+	if err != nil {
+		return
+	}
+	fmt.Println("结束同步OA用户")
+	return
+}

+ 8 - 2
services/task_gn.go

@@ -8,9 +8,8 @@ import (
 )
 
 func GnTask() {
-
 	// 初始化一次
-	fmt.Println(eta_bridge.SyncGnIndex(nil))
+	fmt.Println(eta_bridge.SyncGnUser(nil))
 
 	// 指标相关
 
@@ -24,4 +23,11 @@ func GnTask() {
 		task.AddTask("定时同步指标信息", syncIndex)
 	}
 
+	// 每小时同步一次OA用户信息
+	syncOaUserTime := utils.SyncOaUserTime
+	if syncOaUserTime == `` {
+		syncOaUserTime = "0 0 * * * *"
+	}
+	syncOaUser := task.NewTask("syncGnUser", syncOaUserTime, eta_bridge.SyncGnUser)
+	task.AddTask("定时同步OA用户信息", syncOaUser)
 }

+ 2 - 0
utils/config.go

@@ -136,6 +136,7 @@ var (
 	SyncCrmAssetPkgCd     string // 桥接服务-crm资产包配置
 	SyncCrmDataSourceType string // 桥接服务-crm内部来源系统参数配置
 	SyncCrmIndexNum       int    // 桥接服务-每次同步crm数据的数量
+	SyncOaUserTime        string // 桥接服务-OA用户同步时间
 )
 
 var (
@@ -297,6 +298,7 @@ func init() {
 		SyncCrmIndexTime = config["sync_crm_index_time"]            // 桥接服务-crm指标同步的时间配置
 		SyncCrmAssetPkgCd = config["sync_crm_asset_pkg_cd"]         // 桥接服务-crm资产包配置
 		SyncCrmDataSourceType = config["sync_crm_data_source_type"] // 桥接服务-crm内部来源系统参数配置
+		SyncOaUserTime = config["sync_oa_user_time"]                // 桥接服务-OA用户同步时间
 
 		syncCrmIndexNumStr := config["sync_crm_index_num"] // 桥接服务-每次同步crm数据的数量
 		if syncCrmIndexNumStr != `` {