123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- package bus
- import (
- "assetcenter/db/model"
- )
- type ConvHdrResult struct {
- AssetId string `json:"assetId"`
- DbId string `json:"dbId"`
- Table string `json:"table"`
- FileUrl string `json:"meshUrl"`
- Env3d *Env3d `bson:"env3d,omitempty" json:"env3d"` //模型文件字段名字
- }
- type Env3d struct {
- Thumbnail *model.OssType `bson:"thumbnail,omitempty" json:"thumbnail"`
- HDR string `bson:"hdr,omitempty" json:"hdr"`
- Config *model.Evn3dHdrConf `bson:"config,omitempty" json:"config"`
- }
- // func CreateHdrResultWather(app *conf.AppConf) *comm.NatsStreamWather {
- // topics := strings.Split(app.Nats.HdrConvStreamTopic, "#")
- // return &comm.NatsStreamWather{
- // Stream: topics[0],
- // Topic: topics[1],
- // Queue: topics[2],
- // Entity: func() interface{} { return &ConvHdrResult{} },
- // Cb: func(msg *nats.Msg, entity interface{}) {
- // result := entity.(*ConvHdrResult)
- // //保存osgjs
- // if result.Env3d == nil || len(result.DbId) < 1 || len(result.Table) < 1 {
- // msg.AckSync()
- // return
- // }
- // err := RepoHrResult(result)
- // if err != nil {
- // msg.Nak()
- // return
- // }
- // msg.AckSync()
- // },
- // }
- // }
- // !hdr 没用上
- // func RepoHrResult(data *ConvHdrResult) error {
- // // 查询源资源文档,是否存在config.source
- // // 存在,下载源source文件,更新对应模型路径后上传到原本位置
- // assetConfig := &comm.AssetEnv3dHdr{}
- // _, err := repo.RepoSeachDoc(CreateRepoCtx(), &repo.DocSearchOptions{
- // Db: data.DbId,
- // CollectName: data.Table,
- // Query: repo.Map{"_id": data.AssetId},
- // Project: []string{"config"},
- // }, assetConfig)
- // if err != nil {
- // fmt.Printf("%#v/n", data)
- // fmt.Println("查询资源错误", err)
- // return err
- // }
- // update := bson.M{}
- // update["thumbnail"] = data.Env3d.Thumbnail
- // if assetConfig.Config != nil && len(assetConfig.Config.Source) > 0 {
- // assetConfigSource := assetConfig.Config.Source
- // if !strings.Contains(assetConfigSource, "http:") || !strings.Contains(assetConfigSource, "https:") {
- // assetConfigSource = fmt.Sprintf("%s%s", "https:", assetConfigSource)
- // }
- // // 下载
- // source, err := comm.DownloadToSourceHdrMap(assetConfigSource)
- // if err != nil {
- // fmt.Println("下载source文件出错:", err)
- // return err
- // }
- // // 修改文件
- // source["config"] = data.Env3d.Config
- // // 转换为json
- // newSource, err := json.Marshal(source)
- // if err != nil {
- // fmt.Println("newSource json文件出错:", err)
- // return err
- // }
- // bucketName := conf.AppConfig.Obs.Bucket
- // client, err := CreateObsClient()
- // if err != nil {
- // fmt.Println("create huawei client 出错:", err)
- // return err
- // }
- // obsKey, err := comm.ParseUrl(assetConfig.Config.Source)
- // if err != nil {
- // fmt.Println("get obsKey 出错:", err)
- // return err
- // }
- // obsret := UploadFile(client, bucketName, obsKey, newSource)
- // if obsret.Size < 0 {
- // fmt.Println("obs 上传出错")
- // return errors.New("obs 上传出错")
- // }
- // fmt.Printf("上传结果: %#v\n", obsret)
- // update["assetState"] = model.AssetState_Succ
- // } else {
- // update["source.config"] = data.Env3d.Config
- // update["assetState"] = model.AssetState_Succ
- // }
- // ret, err := repo.RepoUpdateSetDbDocProps(CreateRepoCtx(), data.DbId, data.Table, data.AssetId, bson.M{"$set": update})
- // fmt.Println("updated hdr=>", ret)
- // return err
- // }
|