2023-03-22 08:16:16 +00:00
|
|
|
|
package logic
|
|
|
|
|
|
|
|
|
|
import (
|
2023-04-18 03:06:57 +00:00
|
|
|
|
"fmt"
|
|
|
|
|
|
2023-03-22 08:16:16 +00:00
|
|
|
|
"github.com/fonchain/fonchain-artistinfo/cmd/internal/dao"
|
|
|
|
|
statement "github.com/fonchain/fonchain-artistinfo/pb/artistinfoStatement"
|
2023-04-17 01:35:03 +00:00
|
|
|
|
db "github.com/fonchain/fonchain-artistinfo/pkg/db"
|
|
|
|
|
"github.com/fonchain/fonchain-artistinfo/pkg/util"
|
|
|
|
|
"gorm.io/gorm"
|
2023-03-22 08:16:16 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type IStatement interface {
|
2023-04-17 01:35:03 +00:00
|
|
|
|
UploadExcelOneTx(req *statement.UploadExcelOneTxRequest) (rep *statement.UploadExcelOneTxRespond, err error)
|
|
|
|
|
UploadExcelTwoTx(req *statement.UploadExcelTwoTxRequest) (rep *statement.UploadExcelTwoTxRespond, err error)
|
|
|
|
|
UploadExcelOneCopy(req *statement.UploadExcelOneCopyRequest) (rep *statement.UploadExcelOneCopyRespond, err error)
|
|
|
|
|
UploadExcelTwoCopy(req *statement.UploadExcelTwoCopyRequest) (rep *statement.UploadExcelTwoCopyRespond, err error)
|
|
|
|
|
GetAllBatchTimeTx(req *statement.GetAllBatchTimeTxRequest) (rep *statement.GetAllBatchTimeTxRespond, err error)
|
|
|
|
|
GetArtworkSoldTxDetailList(req *statement.GetArtworkSoldTxDetailListRequest) (rep *statement.GetArtworkSoldTxDetailListRespond, err error)
|
2023-03-22 08:16:16 +00:00
|
|
|
|
StatementList(req *statement.StatementListRequest) (rep *statement.StatementListRespond, err error)
|
2023-03-23 09:17:29 +00:00
|
|
|
|
GetTxInfoByBatchUid(req *statement.GetTxInfoByBatchUidRequest) (rep *statement.GetTxInfoByBatchUidRespond, err error)
|
2023-03-24 06:11:43 +00:00
|
|
|
|
GetCopyInfoByBatchUid(req *statement.GetCopyInfoByBatchUidRequest) (rep *statement.GetCopyInfoByBatchUidRespond, err error)
|
2023-03-22 08:16:16 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func NewStatement() IStatement {
|
|
|
|
|
return &Statement{}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type Statement struct {
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
func (a *Statement) UploadExcelOneTx(req *statement.UploadExcelOneTxRequest) (rep *statement.UploadExcelOneTxRespond, err error) {
|
|
|
|
|
rep = &statement.UploadExcelOneTxRespond{}
|
2023-04-18 03:06:57 +00:00
|
|
|
|
fmt.Println("req.ExcelOneInfo", req.ExcelOneInfo)
|
2023-04-17 01:35:03 +00:00
|
|
|
|
//开启事务,遇到错误就回滚
|
|
|
|
|
tx := db.DB.Begin()
|
|
|
|
|
defer func() {
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
} else {
|
|
|
|
|
tx.Commit()
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
for _, v := range req.ExcelOneInfo {
|
|
|
|
|
//查看是否已经被生成了批次,没有的就生成物权批次
|
|
|
|
|
exist, artworkTx, err := dao.IsExistArtworkTx(v.BatchTime, v.ArtistUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
2023-04-18 07:21:06 +00:00
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
if exist {
|
|
|
|
|
//获取批次uid
|
|
|
|
|
uid1, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//生成批次
|
|
|
|
|
err = dao.CreateArtworkTx(tx, uid1, v.BatchTime, v.ArtistUid, v.ArtistName)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//对账单画作物权委托详情uid
|
|
|
|
|
uid2, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//将数据插入对账单画作物权委托详情
|
|
|
|
|
err = dao.CreateArtworkTxDetail(tx, uid1, uid2, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2023-04-18 08:00:10 +00:00
|
|
|
|
//查看画作是否已经被该批次录入过,被录入过就跳过
|
|
|
|
|
count, err := dao.IsExistArtworkTxDetail(artworkTx.Uid, v.TfNum)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
if count != 1 {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
//获取批次uid
|
|
|
|
|
uid, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
err = dao.CreateArtworkTxDetail(tx, artworkTx.Uid, uid, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) UploadExcelTwoTx(req *statement.UploadExcelTwoTxRequest) (rep *statement.UploadExcelTwoTxRespond, err error) {
|
|
|
|
|
rep = &statement.UploadExcelTwoTxRespond{}
|
|
|
|
|
//开启事务,遇到错误就回滚
|
|
|
|
|
tx := db.DB.Begin()
|
|
|
|
|
defer func() {
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
} else {
|
|
|
|
|
tx.Commit()
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
for _, v := range req.ExcelTwoInfo {
|
|
|
|
|
//查看是否已经被生成了物权批次
|
|
|
|
|
exist, artworkTx, err := dao.IsExistArtworkTx(v.BatchTime, v.ArtistUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//没有的就生成物权批次
|
|
|
|
|
if exist {
|
|
|
|
|
//获取批次uid
|
|
|
|
|
uid1, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//生成批次
|
|
|
|
|
err = dao.CreateArtworkTx(tx, uid1, v.BatchTime, v.ArtistUid, v.ArtistName)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//对账单画作物权委托详情uid
|
|
|
|
|
uid2, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//将数据插入对账单画作物权销售委托详情
|
|
|
|
|
err = dao.CreateArtworkSoldTxDetail(tx, uid1, uid2, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2023-04-18 08:00:10 +00:00
|
|
|
|
//查看画作是否已经被该批次录入过,被录入过就跳过
|
|
|
|
|
count, err := dao.IsExistArtworkSoldTxDetail(artworkTx.Uid, v.TfNum)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
if count != 1 {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
//获取批次uid
|
|
|
|
|
uid, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
err = dao.CreateArtworkSoldTxDetail(tx, artworkTx.Uid, uid, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) UploadExcelOneCopy(req *statement.UploadExcelOneCopyRequest) (rep *statement.UploadExcelOneCopyRespond, err error) {
|
|
|
|
|
rep = &statement.UploadExcelOneCopyRespond{}
|
|
|
|
|
//开启事务,遇到错误就回滚
|
|
|
|
|
tx := db.DB.Begin()
|
|
|
|
|
defer func() {
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
} else {
|
|
|
|
|
tx.Commit()
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
|
|
|
|
|
for _, v := range req.ExcelOneInfo {
|
|
|
|
|
//查看是否已经被生成了批次,没有的就生成版权批次
|
|
|
|
|
exist, artworkCopy, err := dao.IsExistArtworkCopy(v.BatchTime, v.ArtistUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if exist {
|
|
|
|
|
//获取批次uid
|
|
|
|
|
uid1, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//生成批次
|
|
|
|
|
err = dao.CreateArtworkCopy(tx, uid1, v.BatchTime, v.ArtistUid, v.ArtistName)
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//对账单画作物权委托详情uid
|
|
|
|
|
uid2, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//将数据插入对账单画作物权委托详情
|
|
|
|
|
err = dao.CreateArtworkCopyDetail(tx, uid1, uid2, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2023-04-18 08:00:10 +00:00
|
|
|
|
|
|
|
|
|
count, err := dao.IsExistArtworkCopyDetail(artworkCopy.Uid, v.TfNum)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
if count != 1 {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
//获取批次uid
|
|
|
|
|
uid, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
err = dao.CreateArtworkCopyDetail(tx, artworkCopy.Uid, uid, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) UploadExcelTwoCopy(req *statement.UploadExcelTwoCopyRequest) (rep *statement.UploadExcelTwoCopyRespond, err error) {
|
|
|
|
|
rep = &statement.UploadExcelTwoCopyRespond{}
|
|
|
|
|
//开启事务,遇到错误就回滚
|
|
|
|
|
tx := db.DB.Begin()
|
|
|
|
|
defer func() {
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
} else {
|
|
|
|
|
tx.Commit()
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
|
|
|
|
|
for _, v := range req.ExcelTwoInfo {
|
|
|
|
|
//查看是否已经被生成了物权批次
|
|
|
|
|
exist, artworkCopy, err := dao.IsExistArtworkCopy(v.BatchTime, v.ArtistUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//没有的就生成物权批次
|
|
|
|
|
if exist {
|
|
|
|
|
//获取批次uid
|
|
|
|
|
uid1, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//生成批次
|
|
|
|
|
err = dao.CreateArtworkCopy(tx, uid1, v.BatchTime, v.ArtistUid, v.ArtistName)
|
|
|
|
|
if err != nil {
|
|
|
|
|
tx.Rollback()
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//对账单画作物权委托详情uid
|
|
|
|
|
uid2, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
//将数据插入对账单画作物权销售委托详情
|
|
|
|
|
err = dao.CreateArtworkSoldCopyDetail(tx, uid1, uid2, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2023-04-18 08:00:10 +00:00
|
|
|
|
|
|
|
|
|
//查看画作是否已经被该批次录入过,被录入过就跳过
|
|
|
|
|
count, err := dao.IsExistArtworkSoldCopyDetail(artworkCopy.Uid, v.TfNum)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
if count != 1 {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-17 01:35:03 +00:00
|
|
|
|
//获取批次uid
|
|
|
|
|
uid, err := util.GetUid()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
err = dao.CreateArtworkSoldCopyDetail(tx, artworkCopy.Uid, uid, v)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) GetAllBatchTimeTx(req *statement.GetAllBatchTimeTxRequest) (rep *statement.GetAllBatchTimeTxRespond, err error) {
|
|
|
|
|
rep = &statement.GetAllBatchTimeTxRespond{}
|
|
|
|
|
//batchTime去重查询,只获取batchTime字段值
|
|
|
|
|
batchTime, err := dao.GetAllBatchTimeTx()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rep.BatchTime = batchTime
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) GetAllBatchTimeCopy(req *statement.GetAllBatchTimeCopyRequest) (rep *statement.GetAllBatchTimeCopyRespond, err error) {
|
|
|
|
|
rep = &statement.GetAllBatchTimeCopyRespond{}
|
|
|
|
|
//batchTime去重查询,只获取batchTime字段值
|
|
|
|
|
batchTime, err := dao.GetAllBatchTimeCopy()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rep.BatchTime = batchTime
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) GetArtworkSoldTxDetailList(req *statement.GetArtworkSoldTxDetailListRequest) (rep *statement.GetArtworkSoldTxDetailListRespond, err error) {
|
|
|
|
|
rep = &statement.GetArtworkSoldTxDetailListRespond{}
|
|
|
|
|
artistList := &statement.ArtistList{}
|
|
|
|
|
artworkSoldDetailList := &statement.ArtworkSoldDetailList{}
|
|
|
|
|
|
|
|
|
|
var query *gorm.DB = db.DB // 初始化query变量
|
|
|
|
|
|
|
|
|
|
//画家姓名不为空,模糊查询(根据画家姓名的某个字也可以查询)
|
|
|
|
|
if req.ArtistName != "" {
|
|
|
|
|
query = query.Where("artist_name LiKE ?", "%"+req.ArtistName+"%")
|
|
|
|
|
}
|
|
|
|
|
//批次不为空
|
|
|
|
|
if req.BatchTime != "" {
|
|
|
|
|
query = query.Where("batch_time = ?", req.BatchTime)
|
|
|
|
|
}
|
|
|
|
|
//画家姓名不为空
|
|
|
|
|
if req.State != 0 {
|
|
|
|
|
query = query.Where("state = ?", req.State)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//合同分页查询操作
|
|
|
|
|
if req.Page < 1 {
|
|
|
|
|
req.Page = 1
|
|
|
|
|
}
|
|
|
|
|
if req.Num < 1 {
|
|
|
|
|
req.Num = 15
|
|
|
|
|
}
|
|
|
|
|
offset := (req.Page - 1) * req.Num
|
|
|
|
|
|
|
|
|
|
artworkTxList, err := dao.GetArtworkTxList(query, req.Num, offset)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for _, v := range artworkTxList {
|
|
|
|
|
artistList.BatchUid = v.Uid
|
|
|
|
|
artistList.ArtistName = v.ArtistName
|
|
|
|
|
artistList.BatchTime = v.BatchTime
|
|
|
|
|
artistList.State = v.State
|
|
|
|
|
|
|
|
|
|
//当已经签署了合同时
|
|
|
|
|
if v.State == 3 {
|
|
|
|
|
//获取合同预览和下载链接
|
|
|
|
|
contract, err := dao.GetContractUrlTx(v.Uid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
artistList.ViewUrl = contract.ViewUrl
|
|
|
|
|
artistList.DownloadUrl = contract.DownloadUrl
|
|
|
|
|
} else {
|
|
|
|
|
artistList.ViewUrl = ""
|
|
|
|
|
artistList.DownloadUrl = ""
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询对账单画作物权销售委托详情
|
|
|
|
|
artworkSoldTxDetail, err := dao.GetArtworkSoldTxDetailList(v.Uid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//获取该画家该批次所有的已售出的画信息
|
|
|
|
|
for _, m := range artworkSoldTxDetail {
|
|
|
|
|
artworkSoldDetailList.ArtworkName = m.ArtworkName
|
|
|
|
|
artworkSoldDetailList.TfNum = m.TfNum
|
|
|
|
|
artworkSoldDetailList.Ruler = m.Ruler
|
|
|
|
|
artworkSoldDetailList.SaleNo = m.SaleNo
|
|
|
|
|
artworkSoldDetailList.CompleteDate = m.CompleteDate
|
|
|
|
|
artworkSoldDetailList.SalePrice = m.SalePrice
|
|
|
|
|
artistList.ArtworkSoldDetailList = append(artistList.ArtworkSoldDetailList, artworkSoldDetailList)
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistList = append(rep.ArtistList, artistList)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a *Statement) GetArtworkSoldCopyDetailList(req *statement.GetArtworkSoldCopyDetailListRequest) (rep *statement.GetArtworkSoldCopyDetailListRespond, err error) {
|
|
|
|
|
rep = &statement.GetArtworkSoldCopyDetailListRespond{}
|
|
|
|
|
artistList := &statement.ArtistList{}
|
|
|
|
|
artworkSoldDetailList := &statement.ArtworkSoldDetailList{}
|
|
|
|
|
|
|
|
|
|
var query *gorm.DB = db.DB // 初始化query变量
|
|
|
|
|
|
|
|
|
|
//画家姓名不为空
|
|
|
|
|
if req.ArtistName != "" {
|
|
|
|
|
query = query.Where("artist_name LiKE ?", "%"+req.ArtistName+"%")
|
|
|
|
|
}
|
|
|
|
|
//批次不为空
|
|
|
|
|
if req.BatchTime != "" {
|
|
|
|
|
query = query.Where("batch_time = ?", req.BatchTime)
|
|
|
|
|
}
|
|
|
|
|
//画家姓名不为空
|
|
|
|
|
if req.State != 0 {
|
|
|
|
|
query = query.Where("state = ?", req.State)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//合同分页查询操作
|
|
|
|
|
if req.Page < 1 {
|
|
|
|
|
req.Page = 1
|
|
|
|
|
}
|
|
|
|
|
if req.Num < 1 {
|
|
|
|
|
req.Num = 15
|
|
|
|
|
}
|
|
|
|
|
offset := (req.Page - 1) * req.Num
|
|
|
|
|
|
|
|
|
|
artworkCopyList, err := dao.GetArtworkCopyList(query, req.Num, offset)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for _, v := range artworkCopyList {
|
|
|
|
|
artistList.BatchUid = v.Uid
|
|
|
|
|
artistList.ArtistName = v.ArtistName
|
|
|
|
|
artistList.BatchTime = v.BatchTime
|
|
|
|
|
artistList.State = v.State
|
|
|
|
|
|
|
|
|
|
//当已经签署了合同时
|
|
|
|
|
if v.State == 3 {
|
|
|
|
|
//获取合同预览和下载链接
|
|
|
|
|
contract, err := dao.GetContractUrlTx(v.Uid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
artistList.ViewUrl = contract.ViewUrl
|
|
|
|
|
artistList.DownloadUrl = contract.DownloadUrl
|
|
|
|
|
} else {
|
|
|
|
|
artistList.ViewUrl = ""
|
|
|
|
|
artistList.DownloadUrl = ""
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询对账单画作物权销售委托详情
|
|
|
|
|
artworkSoldTxDetail, err := dao.GetArtworkSoldTxDetailList(v.Uid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return rep, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//获取该画家该批次所有的已售出的画信息
|
|
|
|
|
for _, m := range artworkSoldTxDetail {
|
|
|
|
|
artworkSoldDetailList.ArtworkName = m.ArtworkName
|
|
|
|
|
artworkSoldDetailList.TfNum = m.TfNum
|
|
|
|
|
artworkSoldDetailList.Ruler = m.Ruler
|
|
|
|
|
artworkSoldDetailList.SaleNo = m.SaleNo
|
|
|
|
|
artworkSoldDetailList.CompleteDate = m.CompleteDate
|
|
|
|
|
artworkSoldDetailList.SalePrice = m.SalePrice
|
|
|
|
|
artistList.ArtworkSoldDetailList = append(artistList.ArtworkSoldDetailList, artworkSoldDetailList)
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistList = append(rep.ArtistList, artistList)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
2023-03-22 08:16:16 +00:00
|
|
|
|
func (a *Statement) StatementList(req *statement.StatementListRequest) (rep *statement.StatementListRespond, err error) {
|
|
|
|
|
//查看是否有该画家
|
|
|
|
|
user, err := dao.GetArtistInfoById(req.ArtistUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ContractData, err := dao.StatementList(user.MgmtArtistUid, req.State)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rep = &statement.StatementListRespond{
|
|
|
|
|
Data: ContractData,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|
2023-03-23 09:17:29 +00:00
|
|
|
|
|
|
|
|
|
func (a *Statement) GetTxInfoByBatchUid(req *statement.GetTxInfoByBatchUidRequest) (rep *statement.GetTxInfoByBatchUidRespond, err error) {
|
|
|
|
|
|
|
|
|
|
rep = &statement.GetTxInfoByBatchUidRespond{}
|
|
|
|
|
|
|
|
|
|
//获取画家名
|
2023-03-24 06:11:43 +00:00
|
|
|
|
artworkTx, err := dao.GetTxArtistNameByBatchUid(req.BatchUid)
|
2023-03-23 09:17:29 +00:00
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
|
|
|
|
|
|
//获取物权画作详细信息
|
|
|
|
|
artworkTxDetails, err := dao.GetArtworkTxDetailByBatchUid(req.BatchUid)
|
2023-03-24 01:41:11 +00:00
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
|
|
|
|
|
|
//获取物权画作被售卖详细信息
|
|
|
|
|
artworkSoldTxDetails, err := dao.GetArtworkSoldTxDetailByBatchUid(req.BatchUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
2023-03-23 09:17:29 +00:00
|
|
|
|
|
|
|
|
|
artworkTxDetail := new(statement.ArtworkTxDetail)
|
2023-03-24 01:41:11 +00:00
|
|
|
|
artworkSoldTxDetail := new(statement.ArtworkSoldTxDetail)
|
2023-03-23 09:17:29 +00:00
|
|
|
|
|
|
|
|
|
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)
|
|
|
|
|
}
|
|
|
|
|
|
2023-03-24 01:41:11 +00:00
|
|
|
|
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.SalePrice = v.SalePrice
|
|
|
|
|
rep.ArtworkSoldTxDetail = append(rep.ArtworkSoldTxDetail, artworkSoldTxDetail)
|
|
|
|
|
}
|
|
|
|
|
|
2023-03-23 09:17:29 +00:00
|
|
|
|
return
|
|
|
|
|
}
|
2023-03-24 06:11:43 +00:00
|
|
|
|
|
|
|
|
|
func (a *Statement) GetCopyInfoByBatchUid(req *statement.GetCopyInfoByBatchUidRequest) (rep *statement.GetCopyInfoByBatchUidRespond, err error) {
|
|
|
|
|
|
|
|
|
|
rep = &statement.GetCopyInfoByBatchUidRespond{}
|
|
|
|
|
|
|
|
|
|
//获取画家名
|
|
|
|
|
artworkTx, err := dao.GetCopyArtistNameByBatchUid(req.BatchUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
|
|
|
|
|
|
//获取版权画作详细信息
|
|
|
|
|
artworkTxDetails, err := dao.GetArtworkCopyDetailByBatchUid(req.BatchUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
rep.ArtistName = artworkTx.ArtistName
|
|
|
|
|
|
|
|
|
|
//获取版权画作被售卖详细信息
|
|
|
|
|
artworkSoldTxDetails, err := dao.GetArtworkSoldCopyDetailByBatchUid(req.BatchUid)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
artworkCopyDetail := new(statement.ArtworkCopyDetail)
|
|
|
|
|
artworkSoldCopyDetail := new(statement.ArtworkSoldCopyDetail)
|
|
|
|
|
|
|
|
|
|
for _, v := range artworkTxDetails {
|
|
|
|
|
artworkCopyDetail.TfNum = v.TfNum
|
|
|
|
|
artworkCopyDetail.ArtworkName = v.ArtworkName
|
|
|
|
|
artworkCopyDetail.Ruler = v.Ruler
|
|
|
|
|
artworkCopyDetail.MinPrice = v.MinPrice
|
|
|
|
|
artworkCopyDetail.GuaranteePrice = v.GuaranteePrice
|
|
|
|
|
rep.ArtworkCopyDetail = append(rep.ArtworkCopyDetail, artworkCopyDetail)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for _, v := range artworkSoldTxDetails {
|
|
|
|
|
artworkSoldCopyDetail.TfNum = v.TfNum
|
|
|
|
|
artworkSoldCopyDetail.ArtworkName = v.ArtworkName
|
|
|
|
|
artworkSoldCopyDetail.Ruler = v.Ruler
|
|
|
|
|
artworkSoldCopyDetail.SaleNo = v.SaleNo
|
|
|
|
|
artworkSoldCopyDetail.CompleteDate = v.CompleteDate
|
|
|
|
|
artworkSoldCopyDetail.MinPrice = v.MinPrice
|
|
|
|
|
artworkSoldCopyDetail.SalePrice = v.SalePrice
|
|
|
|
|
artworkSoldCopyDetail.GuaranteePrice = v.GuaranteePrice
|
|
|
|
|
rep.ArtworkSoldCopyDetail = append(rep.ArtworkSoldCopyDetail, artworkSoldCopyDetail)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
}
|