package base import ( "context" "dashoo.cn/common_definition/comm_def" "dashoo.cn/opms_libary/myerrors" "github.com/gogf/gf/frame/g" "github.com/gogf/gf/util/gvalid" model "dashoo.cn/micro/app/model/base" server "dashoo.cn/micro/app/service/base" ) type ProductHandler struct{} // Swagger:Product 产品 产品列表 func (b *ProductHandler) GetList(ctx context.Context, req *model.ProductSearchReq, rsp *comm_def.CommonMsg) error { s, err := server.NewProductService(ctx) if err != nil { return err } total, list, err := s.GetList(req) if err != nil { return err } rsp.Data = g.Map{"list": list, "total": total} return nil } // Create 添加产品信息 func (b *ProductHandler) Create(ctx context.Context, req *model.AddProductReq, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return err } s, err := server.NewProductService(ctx) if err != nil { return err } _, err = s.Create(req) if err != nil { return err } return nil } //DeleteByIds 批量删除数据 func (b *ProductHandler) DeleteByIds(ctx context.Context, req *model.DeIds, rsp *comm_def.CommonMsg) error { // 参数校验 if len(req.Ids) == 0 { return myerrors.ValidError("参数为空,操作失败!") } s, err := server.NewProductService(ctx) if err != nil { return err } err = s.DeleteByIds(req.Ids) if err != nil { g.Log().Error(err) return err } return nil } // GetEntityById 根据ID查询详细信息 func (b *ProductHandler) GetEntityById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error { // 参数校验 if req.Id == 0 { return myerrors.ValidError("参数有误!") } s, err := server.NewProductService(ctx) if err != nil { return err } product, err := s.GetEntityById(req.Id) if err != nil { return err } rsp.Data = product return nil } //UpdateById 更新信息 func (b *ProductHandler) UpdateById(ctx context.Context, req *model.UpdateProductReq, rsp *comm_def.CommonMsg) error { s, err := server.NewProductService(ctx) if err != nil { return err } err = s.UpdateById(req) if err != nil { return err } return nil } //UpdateState 更新状态 func (b *ProductHandler) UpdateState(ctx context.Context, req *model.UpdateStateReq, rsp *comm_def.CommonMsg) error { s, err := server.NewProductService(ctx) if err != nil { return err } err = s.UpdateState(req) if err != nil { return err } return nil }