/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements.  See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License.  You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

    package com.ywt.gapi.third.taihe;

import org.apache.dubbo.common.stream.StreamObserver;
import com.google.protobuf.Message;

import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;
import java.util.concurrent.CompletableFuture;

public interface TaiheService extends org.apache.dubbo.rpc.model.DubboStub {

    String JAVA_SERVICE_NAME = "com.ywt.gapi.third.taihe.TaiheService";
    String SERVICE_NAME = "com.ywt.gapi.third.taihe.TaiheService";

    com.ywt.gapi.third.taihe.GetPatientInfoResponse getPatientInfo(com.ywt.gapi.third.taihe.GetPatientInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetPatientInfoResponse> getPatientInfoAsync(com.ywt.gapi.third.taihe.GetPatientInfoRequest request){
        return CompletableFuture.completedFuture(getPatientInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getPatientInfo(com.ywt.gapi.third.taihe.GetPatientInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetPatientInfoResponse> responseObserver){
        getPatientInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetDeptListResponse getDeptList(com.ywt.gapi.third.taihe.GetDeptListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDeptListResponse> getDeptListAsync(com.ywt.gapi.third.taihe.GetDeptListRequest request){
        return CompletableFuture.completedFuture(getDeptList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDeptList(com.ywt.gapi.third.taihe.GetDeptListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDeptListResponse> responseObserver){
        getDeptListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetDoctorListResponse getDoctorList(com.ywt.gapi.third.taihe.GetDoctorListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDoctorListResponse> getDoctorListAsync(com.ywt.gapi.third.taihe.GetDoctorListRequest request){
        return CompletableFuture.completedFuture(getDoctorList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDoctorList(com.ywt.gapi.third.taihe.GetDoctorListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDoctorListResponse> responseObserver){
        getDoctorListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetMedicalRecordResponse getMedicalRecord(com.ywt.gapi.third.taihe.GetMedicalRecordRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetMedicalRecordResponse> getMedicalRecordAsync(com.ywt.gapi.third.taihe.GetMedicalRecordRequest request){
        return CompletableFuture.completedFuture(getMedicalRecord(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getMedicalRecord(com.ywt.gapi.third.taihe.GetMedicalRecordRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetMedicalRecordResponse> responseObserver){
        getMedicalRecordAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetLaboratoryListResponse getLaboratoryList(com.ywt.gapi.third.taihe.GetLaboratoryListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetLaboratoryListResponse> getLaboratoryListAsync(com.ywt.gapi.third.taihe.GetLaboratoryListRequest request){
        return CompletableFuture.completedFuture(getLaboratoryList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getLaboratoryList(com.ywt.gapi.third.taihe.GetLaboratoryListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetLaboratoryListResponse> responseObserver){
        getLaboratoryListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetLaboratoryDetailResponse getLaboratoryDetail(com.ywt.gapi.third.taihe.GetLaboratoryDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetLaboratoryDetailResponse> getLaboratoryDetailAsync(com.ywt.gapi.third.taihe.GetLaboratoryDetailRequest request){
        return CompletableFuture.completedFuture(getLaboratoryDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getLaboratoryDetail(com.ywt.gapi.third.taihe.GetLaboratoryDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetLaboratoryDetailResponse> responseObserver){
        getLaboratoryDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetScheduleListResponse getScheduleList(com.ywt.gapi.third.taihe.GetScheduleListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetScheduleListResponse> getScheduleListAsync(com.ywt.gapi.third.taihe.GetScheduleListRequest request){
        return CompletableFuture.completedFuture(getScheduleList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getScheduleList(com.ywt.gapi.third.taihe.GetScheduleListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetScheduleListResponse> responseObserver){
        getScheduleListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetScheduleTimeInfoResponse getScheduleTimeInfo(com.ywt.gapi.third.taihe.GetScheduleTimeInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetScheduleTimeInfoResponse> getScheduleTimeInfoAsync(com.ywt.gapi.third.taihe.GetScheduleTimeInfoRequest request){
        return CompletableFuture.completedFuture(getScheduleTimeInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getScheduleTimeInfo(com.ywt.gapi.third.taihe.GetScheduleTimeInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetScheduleTimeInfoResponse> responseObserver){
        getScheduleTimeInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetInspectionListResponse getInspectionList(com.ywt.gapi.third.taihe.GetInspectionListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInspectionListResponse> getInspectionListAsync(com.ywt.gapi.third.taihe.GetInspectionListRequest request){
        return CompletableFuture.completedFuture(getInspectionList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInspectionList(com.ywt.gapi.third.taihe.GetInspectionListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInspectionListResponse> responseObserver){
        getInspectionListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetInspectionDetailResponse getInspectionDetail(com.ywt.gapi.third.taihe.GetInspectionDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInspectionDetailResponse> getInspectionDetailAsync(com.ywt.gapi.third.taihe.GetInspectionDetailRequest request){
        return CompletableFuture.completedFuture(getInspectionDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInspectionDetail(com.ywt.gapi.third.taihe.GetInspectionDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInspectionDetailResponse> responseObserver){
        getInspectionDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetQueueInfoResponse getQueueInfo(com.ywt.gapi.third.taihe.GetQueueInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetQueueInfoResponse> getQueueInfoAsync(com.ywt.gapi.third.taihe.GetQueueInfoRequest request){
        return CompletableFuture.completedFuture(getQueueInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getQueueInfo(com.ywt.gapi.third.taihe.GetQueueInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetQueueInfoResponse> responseObserver){
        getQueueInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 审核医生姓名
         * </pre>
         */
    com.ywt.gapi.third.taihe.TakeResponse take(com.ywt.gapi.third.taihe.TakeRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.TakeResponse> takeAsync(com.ywt.gapi.third.taihe.TakeRequest request){
        return CompletableFuture.completedFuture(take(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void take(com.ywt.gapi.third.taihe.TakeRequest request, StreamObserver<com.ywt.gapi.third.taihe.TakeResponse> responseObserver){
        takeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 挂号费
         * </pre>
         */
    com.ywt.gapi.third.taihe.CancelResponse cancel(com.ywt.gapi.third.taihe.CancelRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.CancelResponse> cancelAsync(com.ywt.gapi.third.taihe.CancelRequest request){
        return CompletableFuture.completedFuture(cancel(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void cancel(com.ywt.gapi.third.taihe.CancelRequest request, StreamObserver<com.ywt.gapi.third.taihe.CancelResponse> responseObserver){
        cancelAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 诊查费
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetRegistrationListResponse getRegistrationList(com.ywt.gapi.third.taihe.GetRegistrationListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetRegistrationListResponse> getRegistrationListAsync(com.ywt.gapi.third.taihe.GetRegistrationListRequest request){
        return CompletableFuture.completedFuture(getRegistrationList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getRegistrationList(com.ywt.gapi.third.taihe.GetRegistrationListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetRegistrationListResponse> responseObserver){
        getRegistrationListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 服务费
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetRegistrationDetailResponse getRegistrationDetail(com.ywt.gapi.third.taihe.GetRegistrationDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetRegistrationDetailResponse> getRegistrationDetailAsync(com.ywt.gapi.third.taihe.GetRegistrationDetailRequest request){
        return CompletableFuture.completedFuture(getRegistrationDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getRegistrationDetail(com.ywt.gapi.third.taihe.GetRegistrationDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetRegistrationDetailResponse> responseObserver){
        getRegistrationDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 其它费
         * </pre>
         */
    com.ywt.gapi.third.taihe.RegisterResponse register(com.ywt.gapi.third.taihe.RegisterRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.RegisterResponse> registerAsync(com.ywt.gapi.third.taihe.RegisterRequest request){
        return CompletableFuture.completedFuture(register(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void register(com.ywt.gapi.third.taihe.RegisterRequest request, StreamObserver<com.ywt.gapi.third.taihe.RegisterResponse> responseObserver){
        registerAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 就诊地址
         * </pre>
         */
    com.ywt.gapi.third.taihe.PayResponse pay(com.ywt.gapi.third.taihe.PayRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PayResponse> payAsync(com.ywt.gapi.third.taihe.PayRequest request){
        return CompletableFuture.completedFuture(pay(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void pay(com.ywt.gapi.third.taihe.PayRequest request, StreamObserver<com.ywt.gapi.third.taihe.PayResponse> responseObserver){
        payAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 出诊状态（1-可预约 0-已满 2-停诊 3-其它(不可预约)）
         * </pre>
         */
    com.ywt.gapi.third.taihe.PayFreeResponse payFree(com.ywt.gapi.third.taihe.PayFreeRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PayFreeResponse> payFreeAsync(com.ywt.gapi.third.taihe.PayFreeRequest request){
        return CompletableFuture.completedFuture(payFree(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void payFree(com.ywt.gapi.third.taihe.PayFreeRequest request, StreamObserver<com.ywt.gapi.third.taihe.PayFreeResponse> responseObserver){
        payFreeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 该时段可预约的总号源数
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetOutpatientListResponse getOutpatientList(com.ywt.gapi.third.taihe.GetOutpatientListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetOutpatientListResponse> getOutpatientListAsync(com.ywt.gapi.third.taihe.GetOutpatientListRequest request){
        return CompletableFuture.completedFuture(getOutpatientList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getOutpatientList(com.ywt.gapi.third.taihe.GetOutpatientListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetOutpatientListResponse> responseObserver){
        getOutpatientListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 该时段剩余号源数
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetPaymentDetailResponse getPaymentDetail(com.ywt.gapi.third.taihe.GetPaymentDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetPaymentDetailResponse> getPaymentDetailAsync(com.ywt.gapi.third.taihe.GetPaymentDetailRequest request){
        return CompletableFuture.completedFuture(getPaymentDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getPaymentDetail(com.ywt.gapi.third.taihe.GetPaymentDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetPaymentDetailResponse> responseObserver){
        getPaymentDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.CalInsuranceResponse calInsurance(com.ywt.gapi.third.taihe.CalInsuranceRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.CalInsuranceResponse> calInsuranceAsync(com.ywt.gapi.third.taihe.CalInsuranceRequest request){
        return CompletableFuture.completedFuture(calInsurance(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void calInsurance(com.ywt.gapi.third.taihe.CalInsuranceRequest request, StreamObserver<com.ywt.gapi.third.taihe.CalInsuranceResponse> responseObserver){
        calInsuranceAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.PayOrderResponse payOrder(com.ywt.gapi.third.taihe.PayOrderRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PayOrderResponse> payOrderAsync(com.ywt.gapi.third.taihe.PayOrderRequest request){
        return CompletableFuture.completedFuture(payOrder(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void payOrder(com.ywt.gapi.third.taihe.PayOrderRequest request, StreamObserver<com.ywt.gapi.third.taihe.PayOrderResponse> responseObserver){
        payOrderAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetAddInfoResponse getAddInfo(com.ywt.gapi.third.taihe.GetAddInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetAddInfoResponse> getAddInfoAsync(com.ywt.gapi.third.taihe.GetAddInfoRequest request){
        return CompletableFuture.completedFuture(getAddInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getAddInfo(com.ywt.gapi.third.taihe.GetAddInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetAddInfoResponse> responseObserver){
        getAddInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetTreatmentGuideResponse getTreatmentGuide(com.ywt.gapi.third.taihe.GetTreatmentGuideRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetTreatmentGuideResponse> getTreatmentGuideAsync(com.ywt.gapi.third.taihe.GetTreatmentGuideRequest request){
        return CompletableFuture.completedFuture(getTreatmentGuide(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getTreatmentGuide(com.ywt.gapi.third.taihe.GetTreatmentGuideRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetTreatmentGuideResponse> responseObserver){
        getTreatmentGuideAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

    com.ywt.gapi.third.taihe.GetTreatmentGuideV2Response getTreatmentGuideV2(com.ywt.gapi.third.taihe.GetTreatmentGuideV2Request request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetTreatmentGuideV2Response> getTreatmentGuideV2Async(com.ywt.gapi.third.taihe.GetTreatmentGuideV2Request request){
        return CompletableFuture.completedFuture(getTreatmentGuideV2(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getTreatmentGuideV2(com.ywt.gapi.third.taihe.GetTreatmentGuideV2Request request, StreamObserver<com.ywt.gapi.third.taihe.GetTreatmentGuideV2Response> responseObserver){
        getTreatmentGuideV2Async(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  出诊级别code
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetDrugListResponse getDrugList(com.ywt.gapi.third.taihe.GetDrugListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDrugListResponse> getDrugListAsync(com.ywt.gapi.third.taihe.GetDrugListRequest request){
        return CompletableFuture.completedFuture(getDrugList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDrugList(com.ywt.gapi.third.taihe.GetDrugListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDrugListResponse> responseObserver){
        getDrugListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  出诊级别name
         * </pre>
         */
    com.ywt.gapi.third.taihe.BaseResult pushPresInfo(com.ywt.gapi.third.taihe.PushPresInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.BaseResult> pushPresInfoAsync(com.ywt.gapi.third.taihe.PushPresInfoRequest request){
        return CompletableFuture.completedFuture(pushPresInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void pushPresInfo(com.ywt.gapi.third.taihe.PushPresInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.BaseResult> responseObserver){
        pushPresInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 获取处方信息
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetPresInfoResponse getPresInfo(com.ywt.gapi.third.taihe.GetPresInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetPresInfoResponse> getPresInfoAsync(com.ywt.gapi.third.taihe.GetPresInfoRequest request){
        return CompletableFuture.completedFuture(getPresInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getPresInfo(com.ywt.gapi.third.taihe.GetPresInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetPresInfoResponse> responseObserver){
        getPresInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 根据就诊流水号获取患者基本信息
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeResponse getPatInfoByHisClinicCode(com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeResponse> getPatInfoByHisClinicCodeAsync(com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeRequest request){
        return CompletableFuture.completedFuture(getPatInfoByHisClinicCode(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getPatInfoByHisClinicCode(com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetPatInfoByHisClinicCodeResponse> responseObserver){
        getPatInfoByHisClinicCodeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  东华 HIS 挂号锁号
         * </pre>
         */
    com.ywt.gapi.third.taihe.LockOrderResponse lockOrder(com.ywt.gapi.third.taihe.LockOrderRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.LockOrderResponse> lockOrderAsync(com.ywt.gapi.third.taihe.LockOrderRequest request){
        return CompletableFuture.completedFuture(lockOrder(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void lockOrder(com.ywt.gapi.third.taihe.LockOrderRequest request, StreamObserver<com.ywt.gapi.third.taihe.LockOrderResponse> responseObserver){
        lockOrderAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取就诊记录列表
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetClinicListResponse getClinicList(com.ywt.gapi.third.taihe.GetClinicListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetClinicListResponse> getClinicListAsync(com.ywt.gapi.third.taihe.GetClinicListRequest request){
        return CompletableFuture.completedFuture(getClinicList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getClinicList(com.ywt.gapi.third.taihe.GetClinicListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetClinicListResponse> responseObserver){
        getClinicListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取医生当前排班信息
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleResponse getDoctorCurrentSchedule(com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleResponse> getDoctorCurrentScheduleAsync(com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleRequest request){
        return CompletableFuture.completedFuture(getDoctorCurrentSchedule(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDoctorCurrentSchedule(com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDoctorCurrentScheduleResponse> responseObserver){
        getDoctorCurrentScheduleAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  预结算
         * </pre>
         */
    com.ywt.gapi.third.taihe.PrePayConfirmResponse prePayConfirm(com.ywt.gapi.third.taihe.PrePayConfirmRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PrePayConfirmResponse> prePayConfirmAsync(com.ywt.gapi.third.taihe.PrePayConfirmRequest request){
        return CompletableFuture.completedFuture(prePayConfirm(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void prePayConfirm(com.ywt.gapi.third.taihe.PrePayConfirmRequest request, StreamObserver<com.ywt.gapi.third.taihe.PrePayConfirmResponse> responseObserver){
        prePayConfirmAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  查询药品库存
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetDrugInventoryResponse getDrugInventory(com.ywt.gapi.third.taihe.GetDrugInventoryRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDrugInventoryResponse> getDrugInventoryAsync(com.ywt.gapi.third.taihe.GetDrugInventoryRequest request){
        return CompletableFuture.completedFuture(getDrugInventory(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDrugInventory(com.ywt.gapi.third.taihe.GetDrugInventoryRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDrugInventoryResponse> responseObserver){
        getDrugInventoryAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  插入诊断
         * </pre>
         */
    com.ywt.gapi.third.taihe.AddDiagnosisResponse addDiagnosis(com.ywt.gapi.third.taihe.AddDiagnosisRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.AddDiagnosisResponse> addDiagnosisAsync(com.ywt.gapi.third.taihe.AddDiagnosisRequest request){
        return CompletableFuture.completedFuture(addDiagnosis(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void addDiagnosis(com.ywt.gapi.third.taihe.AddDiagnosisRequest request, StreamObserver<com.ywt.gapi.third.taihe.AddDiagnosisResponse> responseObserver){
        addDiagnosisAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  插入医嘱
         * </pre>
         */
    com.ywt.gapi.third.taihe.AddOEORIInfoResponse addOEORIInfo(com.ywt.gapi.third.taihe.AddOEORIInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.AddOEORIInfoResponse> addOEORIInfoAsync(com.ywt.gapi.third.taihe.AddOEORIInfoRequest request){
        return CompletableFuture.completedFuture(addOEORIInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void addOEORIInfo(com.ywt.gapi.third.taihe.AddOEORIInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.AddOEORIInfoResponse> responseObserver){
        addOEORIInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  作废医嘱
         * </pre>
         */
    com.ywt.gapi.third.taihe.CancelOEORIInfoResponse cancelOEORIInfo(com.ywt.gapi.third.taihe.CancelOEORIInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.CancelOEORIInfoResponse> cancelOEORIInfoAsync(com.ywt.gapi.third.taihe.CancelOEORIInfoRequest request){
        return CompletableFuture.completedFuture(cancelOEORIInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void cancelOEORIInfo(com.ywt.gapi.third.taihe.CancelOEORIInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.CancelOEORIInfoResponse> responseObserver){
        cancelOEORIInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取住院患者信息
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetInPatInfoResponse getInPatInfo(com.ywt.gapi.third.taihe.GetInPatInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInPatInfoResponse> getInPatInfoAsync(com.ywt.gapi.third.taihe.GetInPatInfoRequest request){
        return CompletableFuture.completedFuture(getInPatInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInPatInfo(com.ywt.gapi.third.taihe.GetInPatInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInPatInfoResponse> responseObserver){
        getInPatInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  日清单列表
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetDayFeeListResponse getDayFeeList(com.ywt.gapi.third.taihe.GetDayFeeListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDayFeeListResponse> getDayFeeListAsync(com.ywt.gapi.third.taihe.GetDayFeeListRequest request){
        return CompletableFuture.completedFuture(getDayFeeList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDayFeeList(com.ywt.gapi.third.taihe.GetDayFeeListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDayFeeListResponse> responseObserver){
        getDayFeeListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  住院充值押金
         * </pre>
         */
    com.ywt.gapi.third.taihe.PayCashResponse payCash(com.ywt.gapi.third.taihe.PayCashRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PayCashResponse> payCashAsync(com.ywt.gapi.third.taihe.PayCashRequest request){
        return CompletableFuture.completedFuture(payCash(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void payCash(com.ywt.gapi.third.taihe.PayCashRequest request, StreamObserver<com.ywt.gapi.third.taihe.PayCashResponse> responseObserver){
        payCashAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  查询住院押金
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetCashListResponse getCashList(com.ywt.gapi.third.taihe.GetCashListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetCashListResponse> getCashListAsync(com.ywt.gapi.third.taihe.GetCashListRequest request){
        return CompletableFuture.completedFuture(getCashList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getCashList(com.ywt.gapi.third.taihe.GetCashListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetCashListResponse> responseObserver){
        getCashListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 在线自助报到
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetCheckInResponse getCheckIn(com.ywt.gapi.third.taihe.GetCheckInRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetCheckInResponse> getCheckInAsync(com.ywt.gapi.third.taihe.GetCheckInRequest request){
        return CompletableFuture.completedFuture(getCheckIn(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getCheckIn(com.ywt.gapi.third.taihe.GetCheckInRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetCheckInResponse> responseObserver){
        getCheckInAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  创建病人主索引
         * </pre>
         */
    com.ywt.gapi.third.taihe.CreatePatInfoResponse createPatInfo(com.ywt.gapi.third.taihe.CreatePatInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.CreatePatInfoResponse> createPatInfoAsync(com.ywt.gapi.third.taihe.CreatePatInfoRequest request){
        return CompletableFuture.completedFuture(createPatInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void createPatInfo(com.ywt.gapi.third.taihe.CreatePatInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.CreatePatInfoResponse> responseObserver){
        createPatInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  一键挂号
         * </pre>
         */
    com.ywt.gapi.third.taihe.OneKeyRegisterResponse oneKeyRegister(com.ywt.gapi.third.taihe.OneKeyRegisterRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.OneKeyRegisterResponse> oneKeyRegisterAsync(com.ywt.gapi.third.taihe.OneKeyRegisterRequest request){
        return CompletableFuture.completedFuture(oneKeyRegister(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void oneKeyRegister(com.ywt.gapi.third.taihe.OneKeyRegisterRequest request, StreamObserver<com.ywt.gapi.third.taihe.OneKeyRegisterResponse> responseObserver){
        oneKeyRegisterAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取患者诊断详情 
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetDiagnoseRecordResponse getDiagnoseRecord(com.ywt.gapi.third.taihe.GetDiagnoseRecordRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetDiagnoseRecordResponse> getDiagnoseRecordAsync(com.ywt.gapi.third.taihe.GetDiagnoseRecordRequest request){
        return CompletableFuture.completedFuture(getDiagnoseRecord(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getDiagnoseRecord(com.ywt.gapi.third.taihe.GetDiagnoseRecordRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetDiagnoseRecordResponse> responseObserver){
        getDiagnoseRecordAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  体检缴费 查找待缴费记录  
         * </pre>
         */
    com.ywt.gapi.third.taihe.PhyPayListResponse phyPayList(com.ywt.gapi.third.taihe.PhyPayListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PhyPayListResponse> phyPayListAsync(com.ywt.gapi.third.taihe.PhyPayListRequest request){
        return CompletableFuture.completedFuture(phyPayList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void phyPayList(com.ywt.gapi.third.taihe.PhyPayListRequest request, StreamObserver<com.ywt.gapi.third.taihe.PhyPayListResponse> responseObserver){
        phyPayListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  体检缴费 查找待缴费项目 
         * </pre>
         */
    com.ywt.gapi.third.taihe.PhyPayDetailResponse phyPayDetail(com.ywt.gapi.third.taihe.PhyPayDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PhyPayDetailResponse> phyPayDetailAsync(com.ywt.gapi.third.taihe.PhyPayDetailRequest request){
        return CompletableFuture.completedFuture(phyPayDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void phyPayDetail(com.ywt.gapi.third.taihe.PhyPayDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.PhyPayDetailResponse> responseObserver){
        phyPayDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  体检缴费 支付接口 
         * </pre>
         */
    com.ywt.gapi.third.taihe.PhyPayOrderResponse phyPayOrder(com.ywt.gapi.third.taihe.PhyPayOrderRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PhyPayOrderResponse> phyPayOrderAsync(com.ywt.gapi.third.taihe.PhyPayOrderRequest request){
        return CompletableFuture.completedFuture(phyPayOrder(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void phyPayOrder(com.ywt.gapi.third.taihe.PhyPayOrderRequest request, StreamObserver<com.ywt.gapi.third.taihe.PhyPayOrderResponse> responseObserver){
        phyPayOrderAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  电子票据接口 
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetEInvoiceResponse getEInvoice(com.ywt.gapi.third.taihe.GetEInvoiceRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetEInvoiceResponse> getEInvoiceAsync(com.ywt.gapi.third.taihe.GetEInvoiceRequest request){
        return CompletableFuture.completedFuture(getEInvoice(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getEInvoice(com.ywt.gapi.third.taihe.GetEInvoiceRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetEInvoiceResponse> responseObserver){
        getEInvoiceAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取住院发票列表
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetInPayListResponse getInPayList(com.ywt.gapi.third.taihe.GetInPayListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInPayListResponse> getInPayListAsync(com.ywt.gapi.third.taihe.GetInPayListRequest request){
        return CompletableFuture.completedFuture(getInPayList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInPayList(com.ywt.gapi.third.taihe.GetInPayListRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInPayListResponse> responseObserver){
        getInPayListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  调用医保线上接口 
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetInsuOPDividePreResponse getInsuOPDividePre(com.ywt.gapi.third.taihe.GetInsuOPDividePreRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInsuOPDividePreResponse> getInsuOPDividePreAsync(com.ywt.gapi.third.taihe.GetInsuOPDividePreRequest request){
        return CompletableFuture.completedFuture(getInsuOPDividePre(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInsuOPDividePre(com.ywt.gapi.third.taihe.GetInsuOPDividePreRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInsuOPDividePreResponse> responseObserver){
        getInsuOPDividePreAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取医保登记信息 
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetInsuAdmInfoResponse getInsuAdmInfo(com.ywt.gapi.third.taihe.GetInsuAdmInfoRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetInsuAdmInfoResponse> getInsuAdmInfoAsync(com.ywt.gapi.third.taihe.GetInsuAdmInfoRequest request){
        return CompletableFuture.completedFuture(getInsuAdmInfo(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getInsuAdmInfo(com.ywt.gapi.third.taihe.GetInsuAdmInfoRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetInsuAdmInfoResponse> responseObserver){
        getInsuAdmInfoAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  保存医保结算结果 
         * </pre>
         */
    com.ywt.gapi.third.taihe.SaveInsuResultResponse saveInsuResult(com.ywt.gapi.third.taihe.SaveInsuResultRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.SaveInsuResultResponse> saveInsuResultAsync(com.ywt.gapi.third.taihe.SaveInsuResultRequest request){
        return CompletableFuture.completedFuture(saveInsuResult(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void saveInsuResult(com.ywt.gapi.third.taihe.SaveInsuResultRequest request, StreamObserver<com.ywt.gapi.third.taihe.SaveInsuResultResponse> responseObserver){
        saveInsuResultAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  体检报告列表
         * </pre>
         */
    com.ywt.gapi.third.taihe.PhyReportListResponse phyReportList(com.ywt.gapi.third.taihe.PhyReportListRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PhyReportListResponse> phyReportListAsync(com.ywt.gapi.third.taihe.PhyReportListRequest request){
        return CompletableFuture.completedFuture(phyReportList(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void phyReportList(com.ywt.gapi.third.taihe.PhyReportListRequest request, StreamObserver<com.ywt.gapi.third.taihe.PhyReportListResponse> responseObserver){
        phyReportListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  体检报告详情
         * </pre>
         */
    com.ywt.gapi.third.taihe.PhyReportDetailResponse phyReportDetail(com.ywt.gapi.third.taihe.PhyReportDetailRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PhyReportDetailResponse> phyReportDetailAsync(com.ywt.gapi.third.taihe.PhyReportDetailRequest request){
        return CompletableFuture.completedFuture(phyReportDetail(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void phyReportDetail(com.ywt.gapi.third.taihe.PhyReportDetailRequest request, StreamObserver<com.ywt.gapi.third.taihe.PhyReportDetailResponse> responseObserver){
        phyReportDetailAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  省中台医保预结算
         * </pre>
         */
    com.ywt.gapi.third.taihe.PreSettleResponse preSettle(com.ywt.gapi.third.taihe.PreSettleRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PreSettleResponse> preSettleAsync(com.ywt.gapi.third.taihe.PreSettleRequest request){
        return CompletableFuture.completedFuture(preSettle(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void preSettle(com.ywt.gapi.third.taihe.PreSettleRequest request, StreamObserver<com.ywt.gapi.third.taihe.PreSettleResponse> responseObserver){
        preSettleAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据 HIS 返回的订单类型字符串，判断医保类型
         * </pre>
         */
    com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeResponse getMedInsTypeByOrderInsType(com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeResponse> getMedInsTypeByOrderInsTypeAsync(com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeRequest request){
        return CompletableFuture.completedFuture(getMedInsTypeByOrderInsType(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void getMedInsTypeByOrderInsType(com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeRequest request, StreamObserver<com.ywt.gapi.third.taihe.GetMedInsTypeByOrderInsTypeResponse> responseObserver){
        getMedInsTypeByOrderInsTypeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  医保费用确认
         * </pre>
         */
    com.ywt.gapi.third.taihe.PayConfirmResponse payConfirm(com.ywt.gapi.third.taihe.PayConfirmRequest request);

    default CompletableFuture<com.ywt.gapi.third.taihe.PayConfirmResponse> payConfirmAsync(com.ywt.gapi.third.taihe.PayConfirmRequest request){
        return CompletableFuture.completedFuture(payConfirm(request));
    }

    /**
    * This server stream type unary method is <b>only</b> used for generated stub to support async unary method.
    * It will not be called if you are NOT using Dubbo3 generated triple stub and <b>DO NOT</b> implement this method.
    */
    default void payConfirm(com.ywt.gapi.third.taihe.PayConfirmRequest request, StreamObserver<com.ywt.gapi.third.taihe.PayConfirmResponse> responseObserver){
        payConfirmAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }






}
