93 lines
2.5 KiB
Go
93 lines
2.5 KiB
Go
package logic
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/fonchain/fonchain-artistinfo/cmd/internal/dao"
|
|
statement "github.com/fonchain/fonchain-artistinfo/pb/artistinfoStatement"
|
|
)
|
|
|
|
type IStatement interface {
|
|
StatementList(req *statement.StatementListRequest) (rep *statement.StatementListRespond, err error)
|
|
GetTxInfoByBatchUid(req *statement.GetTxInfoByBatchUidRequest) (rep *statement.GetTxInfoByBatchUidRespond, err error)
|
|
}
|
|
|
|
func NewStatement() IStatement {
|
|
return &Statement{}
|
|
}
|
|
|
|
type Statement struct {
|
|
}
|
|
|
|
func (a *Statement) StatementList(req *statement.StatementListRequest) (rep *statement.StatementListRespond, err error) {
|
|
//查看是否有该画家
|
|
user, err := dao.GetArtistInfoById(req.ArtistUid)
|
|
if err != nil {
|
|
return
|
|
}
|
|
|
|
fmt.Println("user:", user)
|
|
|
|
ContractData, err := dao.StatementList(user.MgmtArtistUid, req.State)
|
|
if err != nil {
|
|
return
|
|
}
|
|
|
|
rep = &statement.StatementListRespond{
|
|
Data: ContractData,
|
|
}
|
|
|
|
return
|
|
}
|
|
|
|
func (a *Statement) GetTxInfoByBatchUid(req *statement.GetTxInfoByBatchUidRequest) (rep *statement.GetTxInfoByBatchUidRespond, err error) {
|
|
|
|
rep = &statement.GetTxInfoByBatchUidRespond{}
|
|
|
|
//获取画家名
|
|
artworkTx, err := dao.GetArtistNameByBatchUid(req.BatchUid)
|
|
if err != nil {
|
|
return
|
|
}
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
//获取物权画作详细信息
|
|
artworkTxDetails, err := dao.GetArtworkTxDetailByBatchUid(req.BatchUid)
|
|
if err != nil {
|
|
return
|
|
}
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
//获取物权画作被售卖详细信息
|
|
artworkSoldTxDetails, err := dao.GetArtworkSoldTxDetailByBatchUid(req.BatchUid)
|
|
if err != nil {
|
|
return
|
|
}
|
|
|
|
artworkTxDetail := new(statement.ArtworkTxDetail)
|
|
artworkSoldTxDetail := new(statement.ArtworkSoldTxDetail)
|
|
|
|
for _, v := range artworkTxDetails {
|
|
artworkTxDetail.TfNum = v.TfNum
|
|
artworkTxDetail.ArtworkName = v.ArtworkName
|
|
artworkTxDetail.Ruler = v.Ruler
|
|
artworkTxDetail.MinPrice = v.MinPrice
|
|
artworkTxDetail.GuaranteePrice = v.GuaranteePrice
|
|
rep.ArtworkTxDetail = append(rep.ArtworkTxDetail, artworkTxDetail)
|
|
}
|
|
|
|
for _, v := range artworkSoldTxDetails {
|
|
artworkSoldTxDetail.TfNum = v.TfNum
|
|
artworkSoldTxDetail.ArtworkName = v.ArtworkName
|
|
artworkSoldTxDetail.Ruler = v.Ruler
|
|
artworkSoldTxDetail.SaleNo = v.SaleNo
|
|
artworkSoldTxDetail.CompleteDate = v.CompleteDate
|
|
artworkSoldTxDetail.MinPrice = v.MinPrice
|
|
artworkSoldTxDetail.SalePrice = v.SalePrice
|
|
artworkSoldTxDetail.GuaranteePrice = v.GuaranteePrice
|
|
rep.ArtworkSoldTxDetail = append(rep.ArtworkSoldTxDetail, artworkSoldTxDetail)
|
|
}
|
|
|
|
return
|
|
}
|