83 lines
2.5 KiB
Go
83 lines
2.5 KiB
Go
|
package artwork
|
|||
|
|
|||
|
import (
|
|||
|
v3Config "dubbo.apache.org/dubbo-go/v3/config"
|
|||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/request"
|
|||
|
"github.com/liuzl/gocc"
|
|||
|
|
|||
|
"fmt"
|
|||
|
artShow "github.com/fonchain_enterprise/fonchain-main/api/artShow"
|
|||
|
"github.com/fonchain_enterprise/fonchain-main/api/artwork_query"
|
|||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/e"
|
|||
|
"github.com/fonchain_enterprise/fonchain-main/pkg/service"
|
|||
|
"github.com/gin-gonic/gin"
|
|||
|
"go.uber.org/zap"
|
|||
|
)
|
|||
|
|
|||
|
func SecondArtworkList(c *gin.Context) {
|
|||
|
var req artwork_query.SecondArtworkListReq
|
|||
|
if err := c.ShouldBind(&req); err != nil {
|
|||
|
service.ResponseQuickMsg(c, e.Failed, err.Error(), nil)
|
|||
|
return
|
|||
|
}
|
|||
|
resp, err := service.GrpcArtworkQueryImpl.SecondArtworkList(c, &req)
|
|||
|
if err != nil {
|
|||
|
service.ResponseQuickMsg(c, e.Failed, err.Error(), nil)
|
|||
|
return
|
|||
|
}
|
|||
|
for _, v := range resp.Data {
|
|||
|
if v.BlackListStatus == 2 {
|
|||
|
v.ArtistName = fmt.Sprintf("#%s", v.ArtistName)
|
|||
|
}
|
|||
|
v.ArtistShowCount = fmt.Sprintf("%s(0)", v.ArtistName)
|
|||
|
}
|
|||
|
if len(resp.Data) > 0 && len(resp.Data) <= 50 && v3Config.GetConsumerService("ArtShowClientImpl") != nil {
|
|||
|
var artistUids []string = make([]string, 0, len(resp.Data))
|
|||
|
for k, v := range resp.Data {
|
|||
|
artistUids = append(artistUids, v.ArtistUuid)
|
|||
|
resp.Data[k].ArtistShowCount = fmt.Sprintf("%s(0)", v.ArtistName)
|
|||
|
}
|
|||
|
artshowResp, _err := service.GrpcArtShowImpl.ArtistExhibitionCount(c, &artShow.ArtistExhibitionCountReq{ArtistUid: artistUids})
|
|||
|
if _err != nil {
|
|||
|
zap.L().Error("artist ArtistExhibitionCount err", zap.Error(err))
|
|||
|
}
|
|||
|
if artshowResp != nil && len(artshowResp.ArtistShowCount) > 0 {
|
|||
|
for k, v := range resp.Data {
|
|||
|
for _, v1 := range artshowResp.ArtistShowCount {
|
|||
|
if v.ArtistUuid == v1.ArtistUid {
|
|||
|
resp.Data[k].ArtistShowCount = fmt.Sprintf("%s(%d)", v.ArtistName, v1.ShowCount)
|
|||
|
break
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
service.ResponseQuickMsg(c, e.Ok, e.GetMsg(e.SUCCESS), resp)
|
|||
|
return
|
|||
|
}
|
|||
|
|
|||
|
// 繁体转简体
|
|||
|
func TraditionalToSimplified(c *gin.Context) {
|
|||
|
var err error
|
|||
|
var out string
|
|||
|
var req request.SimpleArtworkListReq
|
|||
|
if err = c.ShouldBind(&req); err != nil {
|
|||
|
service.ResponseQuickMsg(c, e.Failed, err.Error(), nil)
|
|||
|
return
|
|||
|
}
|
|||
|
s2t, _err := gocc.New("t2s")
|
|||
|
if _err != nil {
|
|||
|
service.ResponseQuickMsg(c, e.Failed, e.GetMsg(e.Failed), nil)
|
|||
|
return
|
|||
|
}
|
|||
|
out, err = s2t.Convert(req.Words)
|
|||
|
if err != nil {
|
|||
|
service.ResponseQuickMsg(c, e.Failed, e.GetMsg(e.Failed), nil)
|
|||
|
return
|
|||
|
}
|
|||
|
service.ResponseQuickMsg(c, e.Ok, e.GetMsg(e.SUCCESS), map[string]interface{}{
|
|||
|
"Out": out,
|
|||
|
})
|
|||
|
return
|
|||
|
}
|