diff --git a/server/resource/internal/logic/logocombinelogic.go b/server/resource/internal/logic/logocombinelogic.go index 69c517e9..212aab4c 100644 --- a/server/resource/internal/logic/logocombinelogic.go +++ b/server/resource/internal/logic/logocombinelogic.go @@ -6,7 +6,6 @@ import ( "fusenapi/service/repositories" "fusenapi/utils/auth" "fusenapi/utils/basic" - "fusenapi/utils/template_switch_info" "context" @@ -64,33 +63,41 @@ func (l *LogoCombineLogic) LogoCombine(req *types.LogoCombineReq, userinfo *auth // 否则,使用用户ID和用户键名格式 userId = userinfo.UserId } - // 获取默认 - if req.Address == "" || req.Phone == "" || req.Website == "" || req.Qrcode == "" || req.Slogan == "" { - // 没有查到,先根据模版id 查询模版数据 请求算法数据 - productTemplateV2Model := gmodel.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn) - productTemplateV2Info, err := productTemplateV2Model.FindOne(l.ctx, req.TemplateId) + // 没有查到,先根据模版id 查询模版数据 请求算法数据 + productTemplateV2Model := gmodel.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn) + productTemplateV2Info, err := productTemplateV2Model.FindOne(l.ctx, req.TemplateId) - if err != nil { - logc.Errorf(l.ctx, "productTemplateV2Model.FindOne:%v", err) - return resp.SetStatus(basic.CodeServiceErr, "模版不存在") - } - templateSwitchInfo := template_switch_info.GetTemplateSwitchInfo(req.TemplateId, productTemplateV2Info.TemplateInfo, *productTemplateV2Info.MaterialImg) - if req.Address == "" && templateSwitchInfo.MaterialData.Address.IfShow { - req.Address = templateSwitchInfo.MaterialData.Address.DefaultValue - } - if req.Phone == "" && templateSwitchInfo.MaterialData.Phone.IfShow { - req.Phone = templateSwitchInfo.MaterialData.Phone.DefaultValue - } - if req.Website == "" && templateSwitchInfo.MaterialData.Website.IfShow { - req.Website = templateSwitchInfo.MaterialData.Website.DefaultValue - } - if req.Qrcode == "" && templateSwitchInfo.MaterialData.QRcode.IfShow { - req.Qrcode = templateSwitchInfo.MaterialData.QRcode.DefaultValue - } - if req.Slogan == "" && templateSwitchInfo.MaterialData.Slogan.IfShow { - req.Slogan = templateSwitchInfo.MaterialData.Slogan.DefaultValue - } + if err != nil { + logc.Errorf(l.ctx, "productTemplateV2Model.FindOne:%v", err) + return resp.SetStatus(basic.CodeServiceErr, "模版不存在") } + // // 获取默认 + // if req.Address == "" || req.Phone == "" || req.Website == "" || req.Qrcode == "" || req.Slogan == "" { + // // 没有查到,先根据模版id 查询模版数据 请求算法数据 + // productTemplateV2Model := gmodel.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn) + // productTemplateV2Info, err := productTemplateV2Model.FindOne(l.ctx, req.TemplateId) + + // if err != nil { + // logc.Errorf(l.ctx, "productTemplateV2Model.FindOne:%v", err) + // return resp.SetStatus(basic.CodeServiceErr, "模版不存在") + // } + // templateSwitchInfo := template_switch_info.GetTemplateSwitchInfo(req.TemplateId, productTemplateV2Info.TemplateInfo, *productTemplateV2Info.MaterialImg) + // if req.Address == "" && templateSwitchInfo.MaterialData.Address.IfShow { + // req.Address = templateSwitchInfo.MaterialData.Address.DefaultValue + // } + // if req.Phone == "" && templateSwitchInfo.MaterialData.Phone.IfShow { + // req.Phone = templateSwitchInfo.MaterialData.Phone.DefaultValue + // } + // if req.Website == "" && templateSwitchInfo.MaterialData.Website.IfShow { + // req.Website = templateSwitchInfo.MaterialData.Website.DefaultValue + // } + // if req.Qrcode == "" && templateSwitchInfo.MaterialData.QRcode.IfShow { + // req.Qrcode = templateSwitchInfo.MaterialData.QRcode.DefaultValue + // } + // if req.Slogan == "" && templateSwitchInfo.MaterialData.Slogan.IfShow { + // req.Slogan = templateSwitchInfo.MaterialData.Slogan.DefaultValue + // } + // } res, err := l.svcCtx.Repositories.ImageHandle.LogoCombine(l.ctx, &repositories.LogoCombineReq{ UserId: userId, @@ -100,8 +107,14 @@ func (l *LogoCombineLogic) LogoCombine(req *types.LogoCombineReq, userinfo *auth Slogan: req.Slogan, Phone: req.Phone, Address: req.Address, - - Qrcode: req.Qrcode, + Qrcode: req.Qrcode, + LogoUrl: req.LogoUrl, + TemplateTagColor: repositories.TemplateTagColor{ + Color: req.TemplateTagColor.Colors, + Index: req.TemplateTagColor.SelectedColorIndex, + }, + ProductTemplateTagGroups: req.TemplateTagGroups, + ProductTemplateV2Info: productTemplateV2Info, }) if err != nil { diff --git a/server/resource/internal/types/types.go b/server/resource/internal/types/types.go index 58c4950c..e8807725 100644 --- a/server/resource/internal/types/types.go +++ b/server/resource/internal/types/types.go @@ -28,16 +28,28 @@ type ResourceInfoReq struct { } type LogoCombineReq struct { - LogoUrl string `json:"logo_url"` // 合图参数 - TemplateId int64 `json:"template_id"` // 合图参数 - TemplateTag string `json:"template_tag"` // 合图参数 - Color [][]string `json:"color"` // 颜色组合 - SelectedIndex int `json:"selected_index"` // 主色的下标索引 - Website string `json:"website,optional"` // 合图参数 - Slogan string `json:"slogan,optional"` // 合图参数 - Address string `json:"address,optional"` // 合图参数 - Phone string `json:"phone,optional"` // 合图参数 - Qrcode string `json:"qrcode,optional"` // 合图参数 + TemplateId int64 `json:"template_id"` // 合图参数 + TemplateTag string `json:"template_tag"` // 合图参数 + Website string `json:"website,optional"` // 合图参数 + Slogan string `json:"slogan,optional"` // 合图参数 + Address string `json:"address,optional"` // 合图参数 + Phone string `json:"phone,optional"` // 合图参数 + Qrcode string `json:"qrcode,optional"` // 合图参数 + LogoUrl string `json:"logo_url"` // 合图参数 + TemplateTagColor TemplateTagColor `json:"template_tag_color"` + TemplateTagGroups []TemplateTagGroups `json:"template_tag_groups"` +} + +type TemplateTagColor struct { + Colors [][]string `json:"colors"` // 颜色组合 + SelectedColorIndex int `json:"selected_color_index"` // 主色的下标索引 +} + +type TemplateTagGroups struct { + Tag string `json:"tag"` + Name string `json:"name"` + Value string `json:"value"` + Fixed int64 `json:"fixed"` } type Request struct { diff --git a/server_api/resource.api b/server_api/resource.api index 1510e8c3..433c4116 100644 --- a/server_api/resource.api +++ b/server_api/resource.api @@ -55,15 +55,27 @@ type ( type ( LogoCombineReq { - LogoUrl string `json:"logo_url"` // 合图参数 - TemplateId int64 `json:"template_id"` // 合图参数 - TemplateTag string `json:"template_tag"` // 合图参数 - Color [][]string `json:"color"` // 颜色组合 - SelectedIndex int `json:"selected_index"` // 主色的下标索引 - Website string `json:"website,optional"` // 合图参数 - Slogan string `json:"slogan,optional"` // 合图参数 - Address string `json:"address,optional"` // 合图参数 - Phone string `json:"phone,optional"` // 合图参数 - Qrcode string `json:"qrcode,optional"` // 合图参数 + TemplateId int64 `json:"template_id"` // 合图参数 + TemplateTag string `json:"template_tag"` // 合图参数 + Website string `json:"website,optional"` // 合图参数 + Slogan string `json:"slogan,optional"` // 合图参数 + Address string `json:"address,optional"` // 合图参数 + Phone string `json:"phone,optional"` // 合图参数 + Qrcode string `json:"qrcode,optional"` // 合图参数 + LogoUrl string `json:"logo_url"` // 合图参数 + TemplateTagColor TemplateTagColor `json:"template_tag_color"` + + TemplateTagGroups []TemplateTagGroups `json:"template_tag_groups"` + } + TemplateTagColor { + Colors [][]string `json:"colors"` // 颜色组合 + SelectedColorIndex int `json:"selected_color_index"` // 主色的下标索引 + } + + TemplateTagGroups { + Tag string `json:"tag"` + Name string `json:"name"` + Value string `json:"value"` + Fixed int64 `json:"fixed"` } ) \ No newline at end of file