🎨 Improve upload assets to cloud
This commit is contained in:
parent
b9f1da33f0
commit
fdb0600dbb
3 changed files with 15 additions and 25 deletions
|
@ -514,12 +514,17 @@ func UploadAssets2Cloud(rootID string) (count int, err error) {
|
|||
return
|
||||
}
|
||||
|
||||
sqlAssets := sql.QueryRootBlockAssets(rootID)
|
||||
err = uploadAssets2Cloud(sqlAssets, bizTypeUploadAssets)
|
||||
tree, err := loadTreeByBlockID(rootID)
|
||||
if nil != err {
|
||||
return
|
||||
}
|
||||
count = len(sqlAssets)
|
||||
|
||||
assets := assetsLinkDestsInTree(tree)
|
||||
err = uploadAssets2Cloud(assets, bizTypeUploadAssets)
|
||||
if nil != err {
|
||||
return
|
||||
}
|
||||
count = len(assets)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -529,17 +534,17 @@ const (
|
|||
)
|
||||
|
||||
// uploadAssets2Cloud 将资源文件上传到云端图床。
|
||||
func uploadAssets2Cloud(sqlAssets []*sql.Asset, bizType string) (err error) {
|
||||
func uploadAssets2Cloud(assetPaths []string, bizType string) (err error) {
|
||||
var uploadAbsAssets []string
|
||||
for _, asset := range sqlAssets {
|
||||
for _, assetPath := range assetPaths {
|
||||
var absPath string
|
||||
absPath, err = GetAssetAbsPath(asset.Path)
|
||||
absPath, err = GetAssetAbsPath(assetPath)
|
||||
if nil != err {
|
||||
logging.LogWarnf("get asset [%s] abs path failed: %s", asset, err)
|
||||
logging.LogWarnf("get asset [%s] abs path failed: %s", assetPath, err)
|
||||
return
|
||||
}
|
||||
if "" == absPath {
|
||||
logging.LogErrorf("not found asset [%s]", asset)
|
||||
logging.LogErrorf("not found asset [%s]", assetPath)
|
||||
continue
|
||||
}
|
||||
|
||||
|
|
|
@ -67,8 +67,8 @@ func Export2Liandi(id string) (err error) {
|
|||
return errors.New(Conf.Language(204))
|
||||
}
|
||||
|
||||
sqlAssets := sql.QueryRootBlockAssets(id)
|
||||
err = uploadAssets2Cloud(sqlAssets, bizTypeExport2Liandi)
|
||||
assets := assetsLinkDestsInTree(tree)
|
||||
err = uploadAssets2Cloud(assets, bizTypeExport2Liandi)
|
||||
if nil != err {
|
||||
return
|
||||
}
|
||||
|
|
|
@ -115,21 +115,6 @@ func QueryAssetByHash(hash string) (ret *Asset) {
|
|||
return
|
||||
}
|
||||
|
||||
func QueryRootBlockAssets(rootID string) (ret []*Asset) {
|
||||
sqlStmt := "SELECT * FROM assets WHERE root_id = ?"
|
||||
rows, err := query(sqlStmt, rootID)
|
||||
if nil != err {
|
||||
logging.LogErrorf("sql query [%s] failed: %s", sqlStmt, err)
|
||||
return
|
||||
}
|
||||
defer rows.Close()
|
||||
for rows.Next() {
|
||||
asset := scanAssetRows(rows)
|
||||
ret = append(ret, asset)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func scanAssetRows(rows *sql.Rows) (ret *Asset) {
|
||||
var asset Asset
|
||||
if err := rows.Scan(&asset.ID, &asset.BlockID, &asset.RootID, &asset.Box, &asset.DocPath, &asset.Path, &asset.Name, &asset.Title, &asset.Hash); nil != err {
|
||||
|
|
Loading…
Add table
Reference in a new issue