1. BannerList
@logger.catchdef BannerList(self, request: empty_pb2.Empty, context):# 获取分类列表rsp = goods_pb2.BannerListResponse()banners = Banner.select()rsp.total = banners.count()for banner in banners:banner_rsp = goods_pb2.BannerResponse()banner_rsp.id = banner.idbanner_rsp.image = banner.imagebanner_rsp.index = banner.indexbanner_rsp.url = banner.urlrsp.data.append(banner_rsp)return rsp
2. CreateBanner
@logger.catchdef CreateBanner(self, request: goods_pb2.BannerRequest, context):banner = Banner()banner.image = request.imagebanner.index = request.indexbanner.url = request.urlbanner.save()banner_rsp = goods_pb2.BannerResponse()banner_rsp.id = banner.idbanner_rsp.image = banner.imagebanner_rsp.url = banner.urlreturn banner_rsp
3. DeleteBanner
@logger.catchdef DeleteBanner(self, request: goods_pb2.BannerRequest, context):try:banner = Banner.get(request.id)banner.delete_instance()return empty_pb2.Empty()except DoesNotExist:context.set_code(grpc.StatusCode.NOT_FOUND)context.set_details('记录不存在')return empty_pb2.Empty()
4. UpdateBanner
@logger.catchdef UpdateBanner(self, request: goods_pb2.BannerRequest, context):try:banner = Banner.get(request.id)if request.image:banner.image = request.imageif request.index:banner.index = request.indexif request.url:banner.url = request.urlbanner.save()return empty_pb2.Empty()except DoesNotExist:context.set_code(grpc.StatusCode.NOT_FOUND)context.set_details('记录不存在')return empty_pb2.Empty()
