MealServiceRpcClient.java 1.54 KB
package com.infoloop.tianting.service.client;

import com.infoloop.tianting.setmealscheduleservice.GetAllMealsRpcRequest;
import com.infoloop.tianting.setmealscheduleservice.GetAllMealsRpcResponse;
import com.infoloop.tianting.setmealscheduleservice.GetMealsByIdsRpcRequest;
import com.infoloop.tianting.setmealscheduleservice.GetMealsByIdsRpcResponse;
import com.infoloop.tianting.setmealscheduleservice.SetMealScheduleServiceRpcGrpc;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class MealServiceRpcClient {

    private final SetMealScheduleServiceRpcGrpc.SetMealScheduleServiceRpcBlockingStub
            setMealScheduleServiceRpcBlockingStub;

    public GetMealsByIdsRpcResponse getMealsByIds(Integer enterpriseId, List<Integer> ids) {
        final var request = GetMealsByIdsRpcRequest.newBuilder()
                .addAllIds(ids)
                .setEnterpriseId(enterpriseId)
                .setIncludeDeleted(false)
                .build();
        return setMealScheduleServiceRpcBlockingStub.getMealsByIds(request);
    }

    public GetAllMealsRpcResponse getAllMeals(Integer enterpriseId) {
        final var request = GetAllMealsRpcRequest.newBuilder()
                .setEnterpriseId(enterpriseId)
                .setIncludeDeleted(false)
                .build();
        return setMealScheduleServiceRpcBlockingStub.getAllMeals(request);
    }


}