fix
This commit is contained in:
parent
32cd46a14a
commit
a7977f9153
|
@ -27,7 +27,8 @@ type (
|
||||||
FindOne(ctx context.Context, id int64) (*FsProductTemplateV2, error)
|
FindOne(ctx context.Context, id int64) (*FsProductTemplateV2, error)
|
||||||
Update(ctx context.Context, data *FsProductTemplateV2) error
|
Update(ctx context.Context, data *FsProductTemplateV2) error
|
||||||
Delete(ctx context.Context, id int64) error
|
Delete(ctx context.Context, id int64) error
|
||||||
FindAllByCondition(ctx context.Context, productIds []string, isDel int, status int) ([]FsProductTemplateV2, error)
|
FindAllByCondition(ctx context.Context, productIds []string) (resp []FsProductTemplateV2, err error)
|
||||||
|
FindAllByModelIdsProduct(ctx context.Context, modelIds []string, productId int64, sort int) (resp []FsProductTemplateV2, err error)
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultFsProductTemplateV2Model struct {
|
defaultFsProductTemplateV2Model struct {
|
||||||
|
@ -93,9 +94,22 @@ func (m *defaultFsProductTemplateV2Model) Update(ctx context.Context, data *FsPr
|
||||||
_, err := m.conn.ExecCtx(ctx, query, data.ProductId, data.ModelId, data.Title, data.Name, data.CoverImg, data.TemplateInfo, data.MaterialImg, data.Sort, data.LogoWidth, data.LogoHeight, data.IsPublic, data.Status, data.Ctime, data.Tag, data.IsDel, data.Id)
|
_, err := m.conn.ExecCtx(ctx, query, data.ProductId, data.ModelId, data.Title, data.Name, data.CoverImg, data.TemplateInfo, data.MaterialImg, data.Sort, data.LogoWidth, data.LogoHeight, data.IsPublic, data.Status, data.Ctime, data.Tag, data.IsDel, data.Id)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
func (m *defaultFsProductTemplateV2Model) FindAllByCondition(ctx context.Context, productIds []string, isDel int, status int) (resp []FsProductTemplateV2, err error) {
|
func (m *defaultFsProductTemplateV2Model) FindAllByCondition(ctx context.Context, productIds []string) (resp []FsProductTemplateV2, err error) {
|
||||||
query := fmt.Sprintf("select %s from %s where `id` in (?) and `is_del` = ? and `status` = ?", fsProductTemplateV2Rows, m.table)
|
query := fmt.Sprintf("select %s from %s where `id` in (?) and `is_del` = ? and `status` = ?", fsProductTemplateV2Rows, m.table)
|
||||||
if err = m.conn.QueryRowsCtx(ctx, &resp, query, strings.Join(productIds, ","), isDel, status); err != nil {
|
if err = m.conn.QueryRowsCtx(ctx, &resp, query, strings.Join(productIds, ","), 0, 1); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
func (m *defaultFsProductTemplateV2Model) FindAllByModelIdsProduct(ctx context.Context, modelIds []string, productId int64, sort int) (resp []FsProductTemplateV2, err error) {
|
||||||
|
query := fmt.Sprintf("select %s from %s where `model_id` in (?) and `product_id` = ? and `is_del` = ? and `status` = ?", fsProductTemplateV2Rows, m.table)
|
||||||
|
switch sort {
|
||||||
|
case 1:
|
||||||
|
query = fmt.Sprintf("%s order by `sort` ASC")
|
||||||
|
case 2:
|
||||||
|
query = fmt.Sprintf("%s order by `sort` DESC")
|
||||||
|
}
|
||||||
|
if err = m.conn.QueryRowsCtx(ctx, &resp, query, strings.Join(modelIds, ","), productId, 0, 1); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
|
|
|
@ -75,6 +75,21 @@ func (l *GetProductInfoLogic) GetProductInfo(req *types.GetProductInfoReq, login
|
||||||
logx.Error(err)
|
logx.Error(err)
|
||||||
return &types.Response{Code: 510, Message: "failed to get product models"}
|
return &types.Response{Code: 510, Message: "failed to get product models"}
|
||||||
}
|
}
|
||||||
|
modelIds := make([]string, 0, len(models))
|
||||||
|
for _, v := range models {
|
||||||
|
modelIds = append(modelIds, fmt.Sprintf("%d", v.Id))
|
||||||
|
}
|
||||||
//通过产品id和模型id获取模板信息
|
//通过产品id和模型id获取模板信息
|
||||||
|
productTemplateV2Model := model.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn)
|
||||||
|
templateV2List, err := productTemplateV2Model.FindAllByModelIdsProduct(l.ctx, modelIds, productInfo.Id, 2)
|
||||||
|
if err != nil {
|
||||||
|
logx.Error(err)
|
||||||
|
return &types.Response{Code: 510, Message: "failed to get templates"}
|
||||||
|
}
|
||||||
|
//获取模板包含的model_id
|
||||||
|
templateModelIds := make([]string, 0, len(templateV2List))
|
||||||
|
for _, v := range templateV2List {
|
||||||
|
templateModelIds = append(templateModelIds, fmt.Sprintf("%d", v.ModelId))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,7 +106,7 @@ func (l *GetProductListLogic) GetProductList(req *types.GetProductListReq, login
|
||||||
}
|
}
|
||||||
//获取模板
|
//获取模板
|
||||||
productTemplateModel := model.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn)
|
productTemplateModel := model.NewFsProductTemplateV2Model(l.svcCtx.MysqlConn)
|
||||||
productTemplatesV2, err := productTemplateModel.FindAllByCondition(l.ctx, productIds, 0, 1)
|
productTemplatesV2, err := productTemplateModel.FindAllByCondition(l.ctx, productIds)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logx.Error(err)
|
logx.Error(err)
|
||||||
return &types.Response{Code: 510, Message: "get product template_v2 err"}
|
return &types.Response{Code: 510, Message: "get product template_v2 err"}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user