合并develop

This commit is contained in:
laodaming 2023-09-19 14:39:33 +08:00
parent b19a16e5a0
commit 25b7334c30
3 changed files with 50 additions and 24 deletions

View File

@ -100,6 +100,15 @@ func (w *wsConnectItem) renderImage(data []byte) {
logx.Error("invalid format of websocket render image message", err) logx.Error("invalid format of websocket render image message", err)
return return
} }
lenColor := len(renderImageData.RenderData.TemplateTagColor.Color)
if lenColor == 0 {
w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "请传入模板标签选择的颜色", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0)
return
}
if renderImageData.RenderData.TemplateTagColor.SelectedIndex >= lenColor || renderImageData.RenderData.TemplateTagColor.SelectedIndex < 0 {
w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "选择的模板标签颜色索引越界", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0)
return
}
//获取产品信息(部分字段) //获取产品信息(部分字段)
productInfo, err := w.logic.svcCtx.AllModels.FsProduct.FindOne(w.logic.ctx, renderImageData.RenderData.ProductId, "id,is_customization") productInfo, err := w.logic.svcCtx.AllModels.FsProduct.FindOne(w.logic.ctx, renderImageData.RenderData.ProductId, "id,is_customization")
if err != nil { if err != nil {
@ -192,6 +201,10 @@ func (w *wsConnectItem) renderImage(data []byte) {
Phone: renderImageData.RenderData.Phone, Phone: renderImageData.RenderData.Phone,
Qrcode: renderImageData.RenderData.Qrcode, Qrcode: renderImageData.RenderData.Qrcode,
LogoUrl: renderImageData.RenderData.Logo, LogoUrl: renderImageData.RenderData.Logo,
TemplateTagColor: repositories.TemplateTagColor{
Color: renderImageData.RenderData.TemplateTagColor.Color,
Index: renderImageData.RenderData.TemplateTagColor.SelectedIndex,
},
} }
res, err := w.logic.svcCtx.Repositories.ImageHandle.LogoCombine(w.logic.ctx, &combineReq) res, err := w.logic.svcCtx.Repositories.ImageHandle.LogoCombine(w.logic.ctx, &combineReq)
if err != nil { if err != nil {
@ -216,7 +229,7 @@ func (w *wsConnectItem) renderImage(data []byte) {
} }
//获取唯一id //获取唯一id
taskId := w.genRenderTaskId(combineImage, renderImageData, model3dInfo, productTemplate, element) taskId := w.genRenderTaskId(combineImage, renderImageData, model3dInfo, productTemplate, element)
//查询有没有缓存的资源,有就返回###################### //查询有没有缓存的资源,有就返回
resource, err := w.logic.svcCtx.AllModels.FsResource.FindOneById(w.logic.ctx, taskId) resource, err := w.logic.svcCtx.AllModels.FsResource.FindOneById(w.logic.ctx, taskId)
if err != nil { if err != nil {
if !errors.Is(err, gorm.ErrRecordNotFound) { if !errors.Is(err, gorm.ErrRecordNotFound) {

View File

@ -197,6 +197,7 @@ type (
Phone string `json:"phone"` // 合图参数 Phone string `json:"phone"` // 合图参数
Qrcode string `json:"qrcode"` // 合图参数 Qrcode string `json:"qrcode"` // 合图参数
LogoUrl string `json:"logo_url"` // 合图参数 LogoUrl string `json:"logo_url"` // 合图参数
TemplateTagColor TemplateTagColor `json:"template_tag_color"`
} }
LogoCombineRes struct { LogoCombineRes struct {
ResourceId string ResourceId string
@ -206,6 +207,10 @@ type (
DiffTimeUploadFile int64 DiffTimeUploadFile int64
} }
) )
type TemplateTagColor struct {
Color [][]string `json:"color"`
Index int `json:"index"`
}
func (l *defaultImageHandle) LogoCombine(ctx context.Context, in *LogoCombineReq) (*LogoCombineRes, error) { func (l *defaultImageHandle) LogoCombine(ctx context.Context, in *LogoCombineReq) (*LogoCombineRes, error) {
// 查询logo最新基础信息 // 查询logo最新基础信息
@ -308,8 +313,11 @@ func (l *defaultImageHandle) LogoCombine(ctx context.Context, in *LogoCombineReq
combineParam["phone"] = in.Phone combineParam["phone"] = in.Phone
combineParam["address"] = in.Address combineParam["address"] = in.Address
combineParam["qrcode"] = in.Qrcode combineParam["qrcode"] = in.Qrcode
//combineParam["template_tag_selected"] = combineParam["template_tag_selected"] = map[string]interface{}{
"template_tag": in.TemplateTag,
"color": in.TemplateTagColor.Color,
"index": in.TemplateTagColor.Index,
}
var postMap = make(map[string]interface{}, 2) var postMap = make(map[string]interface{}, 2)
postMap["module_data"] = moduleDataMap postMap["module_data"] = moduleDataMap
postMap["tag_data"] = tagDataMap postMap["tag_data"] = tagDataMap

View File

@ -16,6 +16,7 @@ type RenderImageReqMsg struct {
} }
type RenderData struct { type RenderData struct {
TemplateTag string `json:"template_tag"` //模板标签(必须) TemplateTag string `json:"template_tag"` //模板标签(必须)
TemplateTagColor TemplateTagColor `json:"template_tag_color"` //模板标签组合颜色
ProductId int64 `json:"product_id"` //产品id(必须) ProductId int64 `json:"product_id"` //产品id(必须)
Website string `json:"website"` //网站(可选) Website string `json:"website"` //网站(可选)
Slogan string `json:"slogan"` //slogan(可选) Slogan string `json:"slogan"` //slogan(可选)
@ -27,6 +28,10 @@ type RenderData struct {
GuestId int64 `json:"guest_id"` //游客id(websocket连接建立再赋值) GuestId int64 `json:"guest_id"` //游客id(websocket连接建立再赋值)
Logo string `json:"logo"` //log资源地址(websocket连接建立再赋值) Logo string `json:"logo"` //log资源地址(websocket连接建立再赋值)
} }
type TemplateTagColor struct {
Color [][]string `json:"color"` //颜色组合
SelectedIndex int `json:"selected_index"` //主色的下标索引
}
// websocket发送渲染完的数据 // websocket发送渲染完的数据
type RenderImageRspMsg struct { type RenderImageRspMsg struct {