51 lines
1.8 KiB
Go
51 lines
1.8 KiB
Go
package logic
|
|
|
|
import (
|
|
"chain-dci/pb/dci"
|
|
"chain-dci/pkg/app"
|
|
bccrClient "github.com/antchain-openapi-sdk-go/bccr/client"
|
|
"github.com/jinzhu/copier"
|
|
)
|
|
|
|
type IDciWork interface {
|
|
CreateDciPreregistration(req *dci.CreateDciPreregistrationRequest) (res *dci.CreateDciPreregistrationResponse, err error)
|
|
QueryDciPreregistration(req *dci.QueryDciPreregistrationRequest) (res *dci.QueryDciPreregistrationResponse, err error)
|
|
}
|
|
|
|
type DciWork struct {
|
|
}
|
|
|
|
// CreateDciPreregistration 作品 申领 DCI
|
|
func (w *DciWork) CreateDciPreregistration(req *dci.CreateDciPreregistrationRequest) (res *dci.CreateDciPreregistrationResponse, err error) {
|
|
res = new(dci.CreateDciPreregistrationResponse)
|
|
|
|
createDciPreregistrationRequest := new(bccrClient.CreateDciPreregistrationRequest)
|
|
_ = copier.CopyWithOption(&createDciPreregistrationRequest, req, copier.Option{DeepCopy: true})
|
|
|
|
createDciPreregistrationResponse, err := app.ModuleClients.BccrClient.CreateDciPreregistration(createDciPreregistrationRequest)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
_ = copier.CopyWithOption(&res, createDciPreregistrationResponse, copier.Option{DeepCopy: true})
|
|
|
|
return
|
|
}
|
|
|
|
// QueryDciPreregistration 作品 查询 DCI
|
|
func (w *DciWork) QueryDciPreregistration(req *dci.QueryDciPreregistrationRequest) (res *dci.QueryDciPreregistrationResponse, err error) {
|
|
res = new(dci.QueryDciPreregistrationResponse)
|
|
|
|
queryDciPreregistrationRequest := new(bccrClient.QueryDciPreregistrationRequest)
|
|
_ = copier.CopyWithOption(&queryDciPreregistrationRequest, req, copier.Option{DeepCopy: true})
|
|
|
|
queryDciPreregistrationResponse, err := app.ModuleClients.BccrClient.QueryDciPreregistration(queryDciPreregistrationRequest)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
_ = copier.CopyWithOption(&res, queryDciPreregistrationResponse, copier.Option{DeepCopy: true})
|
|
|
|
return
|
|
}
|