ソースを参照

:art: Update av export

Daniel 1 年間 前
コミット
10ac5e557d
3 ファイル変更27 行追加16 行削除
  1. 1 5
      kernel/api/setting.go
  2. 14 9
      kernel/model/cloud_service.go
  3. 12 2
      kernel/model/import.go

+ 1 - 5
kernel/api/setting.go

@@ -442,11 +442,7 @@ func getCloudUser(c *gin.Context) {
 	if nil != t {
 		token = t.(string)
 	}
-	if err := model.RefreshUser(token); nil != err {
-		ret.Code = 1
-		ret.Msg = err.Error()
-		return
-	}
+	model.RefreshUser(token)
 	ret.Data = model.Conf.User
 }
 

+ 14 - 9
kernel/model/cloud_service.go

@@ -323,28 +323,30 @@ func refreshAnnouncement() {
 	}
 }
 
-func RefreshUser(token string) error {
+func RefreshUser(token string) {
 	threeDaysAfter := util.CurrentTimeMillis() + 1000*60*60*24*3
 	if "" == token {
 		if "" != Conf.UserData {
 			Conf.User = loadUserFromConf()
 		}
 		if nil == Conf.User {
-			return errors.New(Conf.Language(19))
+			util.PushErrMsg(Conf.Language(19), 5000)
+			return
 		}
 
 		var tokenExpireTime int64
 		tokenExpireTime, err := strconv.ParseInt(Conf.User.UserTokenExpireTime+"000", 10, 64)
 		if nil != err {
 			logging.LogErrorf("convert token expire time [%s] failed: %s", Conf.User.UserTokenExpireTime, err)
-			return errors.New(Conf.Language(19))
+			util.PushErrMsg(Conf.Language(19), 5000)
+			return
 		}
 
 		if threeDaysAfter > tokenExpireTime {
 			token = Conf.User.UserToken
 			goto Net
 		}
-		return nil
+		return
 	}
 
 Net:
@@ -352,20 +354,23 @@ Net:
 	user, err := getUser(token)
 	if err != nil {
 		if nil == Conf.User || errInvalidUser == err {
-			return errors.New(Conf.Language(19))
+			util.PushErrMsg(Conf.Language(19), 5000)
+			return
 		}
 
 		var tokenExpireTime int64
 		tokenExpireTime, err = strconv.ParseInt(Conf.User.UserTokenExpireTime+"000", 10, 64)
 		if nil != err {
 			logging.LogErrorf("convert token expire time [%s] failed: %s", Conf.User.UserTokenExpireTime, err)
-			return errors.New(Conf.Language(19))
+			util.PushErrMsg(Conf.Language(19), 5000)
+			return
 		}
 
 		if threeDaysAfter > tokenExpireTime {
-			return errors.New(Conf.Language(19))
+			util.PushErrMsg(Conf.Language(19), 5000)
+			return
 		}
-		return nil
+		return
 	}
 
 	Conf.User = user
@@ -376,7 +381,7 @@ Net:
 	if elapsed := time.Now().Sub(start).Milliseconds(); 3000 < elapsed {
 		logging.LogInfof("get cloud user elapsed [%dms]", elapsed)
 	}
-	return nil
+	return
 }
 
 func loadUserFromConf() *conf.User {

+ 12 - 2
kernel/model/import.go

@@ -263,11 +263,21 @@ func ImportSY(zipPath, boxID, toPath string) (err error) {
 						for oldAvID, newAvID := range avIDs {
 							newKey := strings.ReplaceAll(k, oldAvID, newAvID)
 							newVal := strings.ReplaceAll(v, oldAvID, newAvID)
-							n.SetIALAttr(newKey, newVal)
-							n.RemoveIALAttr(k)
+							if newKey != k {
+								n.SetIALAttr(newKey, v)
+								n.RemoveIALAttr(k)
+								k = newKey
+							}
+							if newVal != v {
+								n.SetIALAttr(k, newVal)
+							}
 						}
 					}
 				}
+
+				if ast.NodeAttributeView == n.Type {
+					n.AttributeViewID = avIDs[n.AttributeViewID]
+				}
 				return ast.WalkContinue
 			})
 		}