From 4a09fc3955c8cfaf2d41539386a8e1c606dcf8df Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Tue, 12 Sep 2023 17:05:41 +0800 Subject: [PATCH] 11 --- model/gmodel/fs_product_template_v2_logic.go | 2 +- server/product/internal/logic/getsizebypidlogic.go | 3 +++ server/product/internal/types/types.go | 3 ++- server/websocket/internal/logic/ws_render_image.go | 14 +++++++------- server_api/product.api | 3 ++- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/model/gmodel/fs_product_template_v2_logic.go b/model/gmodel/fs_product_template_v2_logic.go index bb657017..d141ef47 100755 --- a/model/gmodel/fs_product_template_v2_logic.go +++ b/model/gmodel/fs_product_template_v2_logic.go @@ -116,7 +116,7 @@ func (t *FsProductTemplateV2Model) GetProductTemplateListByParams(ctx context.Co // 获取开启云渲染模板 func (t *FsProductTemplateV2Model) FindOneCloudRenderByProductIdModelIdTemplateTag(ctx context.Context, productId, modelId int64, templateTag string) (resp *FsProductTemplateV2, err error) { err = t.db.WithContext(ctx).Model(&FsProductTemplateV2{}). - Where("product_id = ? and model_id = ? and template_tag = ? ", productId, modelId, templateTag). + Where("product_id = ? and model_id = ? and template_tag = ? ", productId, modelId, templateTag). Where("status = ? and is_del = ?", 1, 0). Order("sort ASC"). Take(&resp).Error diff --git a/server/product/internal/logic/getsizebypidlogic.go b/server/product/internal/logic/getsizebypidlogic.go index 3f508762..573b9eb9 100644 --- a/server/product/internal/logic/getsizebypidlogic.go +++ b/server/product/internal/logic/getsizebypidlogic.go @@ -38,6 +38,9 @@ func (l *GetSizeByPidLogic) GetSizeByPid(req *types.GetSizeByPidReq, userinfo *a if req.Pid == "" { return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "err param:pid is empty") } + if req.TemplateTag == "" { + return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "err param:template_tag is empty") + } //获取产品信息(只是获取id) productInfo, err := l.svcCtx.AllModels.FsProduct.FindOneBySn(l.ctx, req.Pid, "id") if err != nil { diff --git a/server/product/internal/types/types.go b/server/product/internal/types/types.go index 7aed63d2..4ce8f513 100644 --- a/server/product/internal/types/types.go +++ b/server/product/internal/types/types.go @@ -332,7 +332,8 @@ type PriceItem struct { } type GetSizeByPidReq struct { - Pid string `form:"pid"` + Pid string `form:"pid"` + TemplateTag string `form:"template_tag"` } type GetSizeByPidRsp struct { diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index b87286da..be229a59 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -281,11 +281,11 @@ func (w *wsConnectItem) getProductRelateionInfoWithSizeId(renderImageData *webso if err != nil { if errors.Is(err, gorm.ErrRecordNotFound) { w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "找不到对应的模板", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, model3d.Id, productSize.Id, 0) - logx.Error("template info is not found") + logx.Error("找不到对应的模板") return nil, nil, nil, err } - w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "获取对应模板失败", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, model3d.Id, productSize.Id, 0) - logx.Error("failed to get template info:", err) + w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "获取对应的模板失败", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, model3d.Id, productSize.Id, 0) + logx.Error("获取对应的模板失败:", err) return nil, nil, nil, err } if *productTemplate.ElementModelId <= 0 { @@ -306,12 +306,12 @@ func (w *wsConnectItem) getProductRelateionInfoWithNoSizeId(renderImageData *web productTemplate, err = w.logic.svcCtx.AllModels.FsProductTemplateV2.FindOneCloudRenderByProductIdTemplateTag(w.logic.ctx, renderImageData.RenderData.ProductId, renderImageData.RenderData.TemplateTag) if err != nil { if errors.Is(err, gorm.ErrRecordNotFound) { - w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "找不到对应模板", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0) - return nil, nil, nil, errors.New("找不到对应模板") + w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "找不到对应开启云渲染模板", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0) + return nil, nil, nil, errors.New("找不到对应开启云渲染模板") } logx.Error(err) - w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "获取对应模板失败", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0) - return nil, nil, nil, errors.New("获取对应模板失败") + w.renderErrResponse(renderImageData.RenderId, renderImageData.RenderData.TemplateTag, "", "获取对应开启云渲染模板失败", renderImageData.RenderData.ProductId, w.userId, w.guestId, 0, 0, 0, 0) + return nil, nil, nil, errors.New("获取对应开启云渲染模板失败") } //根据模板找到模型 model3d, err = w.logic.svcCtx.AllModels.FsProductModel3d.FindOne(w.logic.ctx, *productTemplate.ModelId) diff --git a/server_api/product.api b/server_api/product.api index 8a507386..9602fea9 100644 --- a/server_api/product.api +++ b/server_api/product.api @@ -378,7 +378,8 @@ type PriceItem { } //获取产品尺寸列表 type GetSizeByPidReq { - Pid string `form:"pid"` + Pid string `form:"pid"` + TemplateTag string `form:"template_tag"` } type GetSizeByPidRsp { Id int64 `json:"id"` //尺寸id