/*
* 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.system;

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 SystemService extends org.apache.dubbo.rpc.model.DubboStub {

    String JAVA_SERVICE_NAME = "com.ywt.gapi.system.SystemService";
    String SERVICE_NAME = "com.ywt.gapi.system.SystemService";

        /**
         * <pre>
         * 医院Id
         * </pre>
         */
    com.ywt.gapi.system.HospitalListResponse getHospitalList(com.ywt.gapi.system.HospitalListRequest request);

    default CompletableFuture<com.ywt.gapi.system.HospitalListResponse> getHospitalListAsync(com.ywt.gapi.system.HospitalListRequest request){
        return CompletableFuture.completedFuture(getHospitalList(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 getHospitalList(com.ywt.gapi.system.HospitalListRequest request, StreamObserver<com.ywt.gapi.system.HospitalListResponse> responseObserver){
        getHospitalListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医院名称
         * </pre>
         */
    com.ywt.gapi.system.DeptListResponse getDeptList(com.ywt.gapi.system.DeptListRequest request);

    default CompletableFuture<com.ywt.gapi.system.DeptListResponse> getDeptListAsync(com.ywt.gapi.system.DeptListRequest 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.system.DeptListRequest request, StreamObserver<com.ywt.gapi.system.DeptListResponse> responseObserver){
        getDeptListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 地区Id
         * </pre>
         */
    com.ywt.gapi.system.HospitalDeptListResponse getHospitalDeptList(com.ywt.gapi.system.HospitalDeptListRequest request);

    default CompletableFuture<com.ywt.gapi.system.HospitalDeptListResponse> getHospitalDeptListAsync(com.ywt.gapi.system.HospitalDeptListRequest request){
        return CompletableFuture.completedFuture(getHospitalDeptList(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 getHospitalDeptList(com.ywt.gapi.system.HospitalDeptListRequest request, StreamObserver<com.ywt.gapi.system.HospitalDeptListResponse> responseObserver){
        getHospitalDeptListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医院等级
         * </pre>
         */
    com.ywt.gapi.system.CheckAppVersionResponse checkAppVersion(com.ywt.gapi.system.CheckAppVersionRequest request);

    default CompletableFuture<com.ywt.gapi.system.CheckAppVersionResponse> checkAppVersionAsync(com.ywt.gapi.system.CheckAppVersionRequest request){
        return CompletableFuture.completedFuture(checkAppVersion(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 checkAppVersion(com.ywt.gapi.system.CheckAppVersionRequest request, StreamObserver<com.ywt.gapi.system.CheckAppVersionResponse> responseObserver){
        checkAppVersionAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医院Logo
         * </pre>
         */
    com.ywt.gapi.system.GetAreaListResponse getAreaList(com.ywt.gapi.system.GetAreaListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAreaListResponse> getAreaListAsync(com.ywt.gapi.system.GetAreaListRequest request){
        return CompletableFuture.completedFuture(getAreaList(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 getAreaList(com.ywt.gapi.system.GetAreaListRequest request, StreamObserver<com.ywt.gapi.system.GetAreaListResponse> responseObserver){
        getAreaListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 详细地址
         * </pre>
         */
    com.ywt.gapi.system.GetAddressListResponse getAddressList(com.ywt.gapi.system.GetAddressListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAddressListResponse> getAddressListAsync(com.ywt.gapi.system.GetAddressListRequest request){
        return CompletableFuture.completedFuture(getAddressList(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 getAddressList(com.ywt.gapi.system.GetAddressListRequest request, StreamObserver<com.ywt.gapi.system.GetAddressListResponse> responseObserver){
        getAddressListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 能否挂号
         * </pre>
         */
    com.ywt.gapi.system.SaveAddressResponse saveAddress(com.ywt.gapi.system.SaveAddressRequest request);

    default CompletableFuture<com.ywt.gapi.system.SaveAddressResponse> saveAddressAsync(com.ywt.gapi.system.SaveAddressRequest request){
        return CompletableFuture.completedFuture(saveAddress(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 saveAddress(com.ywt.gapi.system.SaveAddressRequest request, StreamObserver<com.ywt.gapi.system.SaveAddressResponse> responseObserver){
        saveAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 状态(暂用于表示用户是否关注)
         * </pre>
         */
    com.ywt.gapi.Result deleteAddress(com.ywt.gapi.system.DeleteAddressRequest request);

    default CompletableFuture<com.ywt.gapi.Result> deleteAddressAsync(com.ywt.gapi.system.DeleteAddressRequest request){
        return CompletableFuture.completedFuture(deleteAddress(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 deleteAddress(com.ywt.gapi.system.DeleteAddressRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        deleteAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 父ID
         * </pre>
         */
    com.ywt.gapi.system.GetAddressResponse getAddress(com.ywt.gapi.system.GetAddressRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAddressResponse> getAddressAsync(com.ywt.gapi.system.GetAddressRequest request){
        return CompletableFuture.completedFuture(getAddress(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 getAddress(com.ywt.gapi.system.GetAddressRequest request, StreamObserver<com.ywt.gapi.system.GetAddressResponse> responseObserver){
        getAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 状态
         * </pre>
         */
    com.ywt.gapi.system.GetAreaTreeNodeListResponse getAreaTreeNodeList(com.ywt.gapi.system.GetAreaTreeNodeListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAreaTreeNodeListResponse> getAreaTreeNodeListAsync(com.ywt.gapi.system.GetAreaTreeNodeListRequest request){
        return CompletableFuture.completedFuture(getAreaTreeNodeList(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 getAreaTreeNodeList(com.ywt.gapi.system.GetAreaTreeNodeListRequest request, StreamObserver<com.ywt.gapi.system.GetAreaTreeNodeListResponse> responseObserver){
        getAreaTreeNodeListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 添加时间
         * </pre>
         */
    com.ywt.gapi.system.AreaListResponse getAppAreaList(com.ywt.gapi.system.AreaListRequest request);

    default CompletableFuture<com.ywt.gapi.system.AreaListResponse> getAppAreaListAsync(com.ywt.gapi.system.AreaListRequest request){
        return CompletableFuture.completedFuture(getAppAreaList(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 getAppAreaList(com.ywt.gapi.system.AreaListRequest request, StreamObserver<com.ywt.gapi.system.AreaListResponse> responseObserver){
        getAppAreaListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 修改时间
         * </pre>
         */
    com.ywt.gapi.system.AreaHospitalListResponse getAreaHospitalList(com.ywt.gapi.system.AreaHospitalListRequest request);

    default CompletableFuture<com.ywt.gapi.system.AreaHospitalListResponse> getAreaHospitalListAsync(com.ywt.gapi.system.AreaHospitalListRequest request){
        return CompletableFuture.completedFuture(getAreaHospitalList(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 getAreaHospitalList(com.ywt.gapi.system.AreaHospitalListRequest request, StreamObserver<com.ywt.gapi.system.AreaHospitalListResponse> responseObserver){
        getAreaHospitalListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 省Id
         * </pre>
         */
    com.ywt.gapi.system.GetWeChatConfigResponse getWeChatConfig(com.ywt.gapi.system.GetWeChatConfigRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetWeChatConfigResponse> getWeChatConfigAsync(com.ywt.gapi.system.GetWeChatConfigRequest request){
        return CompletableFuture.completedFuture(getWeChatConfig(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 getWeChatConfig(com.ywt.gapi.system.GetWeChatConfigRequest request, StreamObserver<com.ywt.gapi.system.GetWeChatConfigResponse> responseObserver){
        getWeChatConfigAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 市Id
         * </pre>
         */
    com.ywt.gapi.system.GetDeptByYiDaCodeResponse getDeptByYiDaCode(com.ywt.gapi.system.GetDeptByYiDaCodeRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetDeptByYiDaCodeResponse> getDeptByYiDaCodeAsync(com.ywt.gapi.system.GetDeptByYiDaCodeRequest request){
        return CompletableFuture.completedFuture(getDeptByYiDaCode(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 getDeptByYiDaCode(com.ywt.gapi.system.GetDeptByYiDaCodeRequest request, StreamObserver<com.ywt.gapi.system.GetDeptByYiDaCodeResponse> responseObserver){
        getDeptByYiDaCodeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 区Id
         * </pre>
         */
    com.ywt.gapi.system.GetYiDaDoctorCodeResponse getYiDaDoctorCode(com.ywt.gapi.system.GetYiDaDoctorCodeRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetYiDaDoctorCodeResponse> getYiDaDoctorCodeAsync(com.ywt.gapi.system.GetYiDaDoctorCodeRequest request){
        return CompletableFuture.completedFuture(getYiDaDoctorCode(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 getYiDaDoctorCode(com.ywt.gapi.system.GetYiDaDoctorCodeRequest request, StreamObserver<com.ywt.gapi.system.GetYiDaDoctorCodeResponse> responseObserver){
        getYiDaDoctorCodeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 获取国际疾病分类
         * </pre>
         */
    com.ywt.gapi.system.GetIcdCodeListResponse getIcdCodeList(com.ywt.gapi.system.GetIcdCodeListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetIcdCodeListResponse> getIcdCodeListAsync(com.ywt.gapi.system.GetIcdCodeListRequest request){
        return CompletableFuture.completedFuture(getIcdCodeList(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 getIcdCodeList(com.ywt.gapi.system.GetIcdCodeListRequest request, StreamObserver<com.ywt.gapi.system.GetIcdCodeListResponse> responseObserver){
        getIcdCodeListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 得到所有地区集合，包括区、县
         * </pre>
         */
    com.ywt.gapi.system.GetAreaListResponse getAllAreaList(com.ywt.gapi.system.GetAreaListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAreaListResponse> getAllAreaListAsync(com.ywt.gapi.system.GetAreaListRequest request){
        return CompletableFuture.completedFuture(getAllAreaList(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 getAllAreaList(com.ywt.gapi.system.GetAreaListRequest request, StreamObserver<com.ywt.gapi.system.GetAreaListResponse> responseObserver){
        getAllAreaListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 获取医生地址列表 create by daiyihua
         * </pre>
         */
    com.ywt.gapi.system.GetAddressListResponse getDoctorAddressList(com.ywt.gapi.system.GetAddressListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetAddressListResponse> getDoctorAddressListAsync(com.ywt.gapi.system.GetAddressListRequest request){
        return CompletableFuture.completedFuture(getDoctorAddressList(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 getDoctorAddressList(com.ywt.gapi.system.GetAddressListRequest request, StreamObserver<com.ywt.gapi.system.GetAddressListResponse> responseObserver){
        getDoctorAddressListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医生保存地址 create by daiyihua
         * </pre>
         */
    com.ywt.gapi.Result doctorSaveAddress(com.ywt.gapi.system.SaveAddressRequest request);

    default CompletableFuture<com.ywt.gapi.Result> doctorSaveAddressAsync(com.ywt.gapi.system.SaveAddressRequest request){
        return CompletableFuture.completedFuture(doctorSaveAddress(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 doctorSaveAddress(com.ywt.gapi.system.SaveAddressRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        doctorSaveAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医生设置默认地址 create by daiyihua
         * </pre>
         */
    com.ywt.gapi.Result settingDefaultAddress(com.ywt.gapi.system.SettingDefaultAddressRequest request);

    default CompletableFuture<com.ywt.gapi.Result> settingDefaultAddressAsync(com.ywt.gapi.system.SettingDefaultAddressRequest request){
        return CompletableFuture.completedFuture(settingDefaultAddress(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 settingDefaultAddress(com.ywt.gapi.system.SettingDefaultAddressRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        settingDefaultAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 获取消息模板列表
         * </pre>
         */
    com.ywt.gapi.system.GetMsgTplListByModuleResponse getMsgTplListByModule(com.ywt.gapi.system.GetMsgTplListByModuleRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetMsgTplListByModuleResponse> getMsgTplListByModuleAsync(com.ywt.gapi.system.GetMsgTplListByModuleRequest request){
        return CompletableFuture.completedFuture(getMsgTplListByModule(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 getMsgTplListByModule(com.ywt.gapi.system.GetMsgTplListByModuleRequest request, StreamObserver<com.ywt.gapi.system.GetMsgTplListByModuleResponse> responseObserver){
        getMsgTplListByModuleAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 得到医生默认或最近添加的地址  create by daiyhua
         * </pre>
         */
    com.ywt.gapi.system.GetDoctorDefaultAddressResponse getDoctorDefaultAddress(com.ywt.gapi.system.GetDoctorAddressRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetDoctorDefaultAddressResponse> getDoctorDefaultAddressAsync(com.ywt.gapi.system.GetDoctorAddressRequest request){
        return CompletableFuture.completedFuture(getDoctorDefaultAddress(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 getDoctorDefaultAddress(com.ywt.gapi.system.GetDoctorAddressRequest request, StreamObserver<com.ywt.gapi.system.GetDoctorDefaultAddressResponse> responseObserver){
        getDoctorDefaultAddressAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 同步诊疗卡信息		create by daiyihua
         * </pre>
         */
    com.ywt.gapi.Result synchronizingInformation(com.ywt.gapi.system.SynchronizingInformationRequest request);

    default CompletableFuture<com.ywt.gapi.Result> synchronizingInformationAsync(com.ywt.gapi.system.SynchronizingInformationRequest request){
        return CompletableFuture.completedFuture(synchronizingInformation(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 synchronizingInformation(com.ywt.gapi.system.SynchronizingInformationRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        synchronizingInformationAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 根据医院ID得到医院信息		create by daiyihua
         * </pre>
         */
    com.ywt.gapi.system.GetHospitalResponse getHospital(com.ywt.gapi.system.GetHospitalRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetHospitalResponse> getHospitalAsync(com.ywt.gapi.system.GetHospitalRequest request){
        return CompletableFuture.completedFuture(getHospital(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 getHospital(com.ywt.gapi.system.GetHospitalRequest request, StreamObserver<com.ywt.gapi.system.GetHospitalResponse> responseObserver){
        getHospitalAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 同步太和检查结果
         * </pre>
         */
    com.ywt.gapi.Result syncTaiheInspectionReport(com.ywt.gapi.system.SyncTaiheInspectionReportRequest request);

    default CompletableFuture<com.ywt.gapi.Result> syncTaiheInspectionReportAsync(com.ywt.gapi.system.SyncTaiheInspectionReportRequest request){
        return CompletableFuture.completedFuture(syncTaiheInspectionReport(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 syncTaiheInspectionReport(com.ywt.gapi.system.SyncTaiheInspectionReportRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        syncTaiheInspectionReportAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 同步太和检验结果
         * </pre>
         */
    com.ywt.gapi.Result syncTaiheLaboratoryReport(com.ywt.gapi.system.SyncTaiheLaboratoryReportRequest request);

    default CompletableFuture<com.ywt.gapi.Result> syncTaiheLaboratoryReportAsync(com.ywt.gapi.system.SyncTaiheLaboratoryReportRequest request){
        return CompletableFuture.completedFuture(syncTaiheLaboratoryReport(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 syncTaiheLaboratoryReport(com.ywt.gapi.system.SyncTaiheLaboratoryReportRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        syncTaiheLaboratoryReportAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * </pre>
         */
    com.ywt.gapi.Result createHisAddRegisteredFlag(com.ywt.gapi.system.CreateHisAddRegisteredFlagRequest request);

    default CompletableFuture<com.ywt.gapi.Result> createHisAddRegisteredFlagAsync(com.ywt.gapi.system.CreateHisAddRegisteredFlagRequest request){
        return CompletableFuture.completedFuture(createHisAddRegisteredFlag(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 createHisAddRegisteredFlag(com.ywt.gapi.system.CreateHisAddRegisteredFlagRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        createHisAddRegisteredFlagAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 医生团队（展示的）领衔医生所在的一级科室
         * </pre>
         */
    com.ywt.gapi.system.GetTeamDeptListResponse getTeamDeptList(com.ywt.gapi.system.GetTeamDeptListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetTeamDeptListResponse> getTeamDeptListAsync(com.ywt.gapi.system.GetTeamDeptListRequest request){
        return CompletableFuture.completedFuture(getTeamDeptList(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 getTeamDeptList(com.ywt.gapi.system.GetTeamDeptListRequest request, StreamObserver<com.ywt.gapi.system.GetTeamDeptListResponse> responseObserver){
        getTeamDeptListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 根据条件查找医院列表
         * </pre>
         */
    com.ywt.gapi.system.HospitalListResponse findHospitalList(com.ywt.gapi.system.GetHospitalListRequest request);

    default CompletableFuture<com.ywt.gapi.system.HospitalListResponse> findHospitalListAsync(com.ywt.gapi.system.GetHospitalListRequest request){
        return CompletableFuture.completedFuture(findHospitalList(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 findHospitalList(com.ywt.gapi.system.GetHospitalListRequest request, StreamObserver<com.ywt.gapi.system.HospitalListResponse> responseObserver){
        findHospitalListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 得到普通用户关注的医院列表
         * </pre>
         */
    com.ywt.gapi.system.HospitalListResponse getGeneralAttentionHospitalList(com.ywt.gapi.system.GetHospitalListRequest request);

    default CompletableFuture<com.ywt.gapi.system.HospitalListResponse> getGeneralAttentionHospitalListAsync(com.ywt.gapi.system.GetHospitalListRequest request){
        return CompletableFuture.completedFuture(getGeneralAttentionHospitalList(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 getGeneralAttentionHospitalList(com.ywt.gapi.system.GetHospitalListRequest request, StreamObserver<com.ywt.gapi.system.HospitalListResponse> responseObserver){
        getGeneralAttentionHospitalListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 保存小程序日志
         * </pre>
         */
    com.ywt.gapi.system.SaveMiniProgramLogResponse saveMiniProgramLog(com.ywt.gapi.system.SaveMiniProgramLogRequest request);

    default CompletableFuture<com.ywt.gapi.system.SaveMiniProgramLogResponse> saveMiniProgramLogAsync(com.ywt.gapi.system.SaveMiniProgramLogRequest request){
        return CompletableFuture.completedFuture(saveMiniProgramLog(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 saveMiniProgramLog(com.ywt.gapi.system.SaveMiniProgramLogRequest request, StreamObserver<com.ywt.gapi.system.SaveMiniProgramLogResponse> responseObserver){
        saveMiniProgramLogAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 获取科室
         * </pre>
         */
    com.ywt.gapi.system.GetDeptResponse getDept(com.ywt.gapi.system.GetDeptRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetDeptResponse> getDeptAsync(com.ywt.gapi.system.GetDeptRequest request){
        return CompletableFuture.completedFuture(getDept(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 getDept(com.ywt.gapi.system.GetDeptRequest request, StreamObserver<com.ywt.gapi.system.GetDeptResponse> responseObserver){
        getDeptAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 得到医务通云平台首页医院列表
         * </pre>
         */
    com.ywt.gapi.system.CloudPlatformHospitalListResponse getCloudPlatformHospitalList(com.ywt.gapi.system.HospitalListRequest request);

    default CompletableFuture<com.ywt.gapi.system.CloudPlatformHospitalListResponse> getCloudPlatformHospitalListAsync(com.ywt.gapi.system.HospitalListRequest request){
        return CompletableFuture.completedFuture(getCloudPlatformHospitalList(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 getCloudPlatformHospitalList(com.ywt.gapi.system.HospitalListRequest request, StreamObserver<com.ywt.gapi.system.CloudPlatformHospitalListResponse> responseObserver){
        getCloudPlatformHospitalListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取系统字典
         * </pre>
         */
    com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeResponse getSystemDicTypeItemListByTypeCode(com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeResponse> getSystemDicTypeItemListByTypeCodeAsync(com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeRequest request){
        return CompletableFuture.completedFuture(getSystemDicTypeItemListByTypeCode(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 getSystemDicTypeItemListByTypeCode(com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeRequest request, StreamObserver<com.ywt.gapi.system.GetSystemDicTypeItemListByTypeCodeResponse> responseObserver){
        getSystemDicTypeItemListByTypeCodeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  清除缓存
         * </pre>
         */
    com.ywt.gapi.system.InvalidateCacheResponse invalidateCache(com.ywt.gapi.system.InvalidateCacheRequest request);

    default CompletableFuture<com.ywt.gapi.system.InvalidateCacheResponse> invalidateCacheAsync(com.ywt.gapi.system.InvalidateCacheRequest request){
        return CompletableFuture.completedFuture(invalidateCache(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 invalidateCache(com.ywt.gapi.system.InvalidateCacheRequest request, StreamObserver<com.ywt.gapi.system.InvalidateCacheResponse> responseObserver){
        invalidateCacheAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取缓存 keys
         * </pre>
         */
    com.ywt.gapi.system.GetCacheKeysResponse getCacheKeys(com.ywt.gapi.system.GetCacheKeysRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetCacheKeysResponse> getCacheKeysAsync(com.ywt.gapi.system.GetCacheKeysRequest request){
        return CompletableFuture.completedFuture(getCacheKeys(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 getCacheKeys(com.ywt.gapi.system.GetCacheKeysRequest request, StreamObserver<com.ywt.gapi.system.GetCacheKeysResponse> responseObserver){
        getCacheKeysAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  获取配置的内容
         * </pre>
         */
    com.ywt.gapi.system.GetConfigByTypeResponse getConfigByType(com.ywt.gapi.system.GetConfigByTypeRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetConfigByTypeResponse> getConfigByTypeAsync(com.ywt.gapi.system.GetConfigByTypeRequest request){
        return CompletableFuture.completedFuture(getConfigByType(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 getConfigByType(com.ywt.gapi.system.GetConfigByTypeRequest request, StreamObserver<com.ywt.gapi.system.GetConfigByTypeResponse> responseObserver){
        getConfigByTypeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据医院IDs得到医院信息		
         * </pre>
         */
    com.ywt.gapi.system.GetHospitalByHospitalIdsResponse getHospitalByHospitalIds(com.ywt.gapi.system.GetHospitalByHospitalIdsRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetHospitalByHospitalIdsResponse> getHospitalByHospitalIdsAsync(com.ywt.gapi.system.GetHospitalByHospitalIdsRequest request){
        return CompletableFuture.completedFuture(getHospitalByHospitalIds(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 getHospitalByHospitalIds(com.ywt.gapi.system.GetHospitalByHospitalIdsRequest request, StreamObserver<com.ywt.gapi.system.GetHospitalByHospitalIdsResponse> responseObserver){
        getHospitalByHospitalIdsAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  保存GPS记录
         * </pre>
         */
    com.ywt.gapi.system.SaveGPSRecordResponse saveGPSRecord(com.ywt.gapi.system.SaveGPSRecordRequest request);

    default CompletableFuture<com.ywt.gapi.system.SaveGPSRecordResponse> saveGPSRecordAsync(com.ywt.gapi.system.SaveGPSRecordRequest request){
        return CompletableFuture.completedFuture(saveGPSRecord(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 saveGPSRecord(com.ywt.gapi.system.SaveGPSRecordRequest request, StreamObserver<com.ywt.gapi.system.SaveGPSRecordResponse> responseObserver){
        saveGPSRecordAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据配置ID获取配置信息
         * </pre>
         */
    com.ywt.gapi.system.GetConfigByIdResponse getConfigById(com.ywt.gapi.system.GetConfigByIdRequest request);

    default CompletableFuture<com.ywt.gapi.system.GetConfigByIdResponse> getConfigByIdAsync(com.ywt.gapi.system.GetConfigByIdRequest request){
        return CompletableFuture.completedFuture(getConfigById(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 getConfigById(com.ywt.gapi.system.GetConfigByIdRequest request, StreamObserver<com.ywt.gapi.system.GetConfigByIdResponse> responseObserver){
        getConfigByIdAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据名称获取科室列表
         * </pre>
         */
    com.ywt.gapi.system.SearchDeptListByNameResponse searchDeptListByName(com.ywt.gapi.system.SearchDeptListByNameRequest request);

    default CompletableFuture<com.ywt.gapi.system.SearchDeptListByNameResponse> searchDeptListByNameAsync(com.ywt.gapi.system.SearchDeptListByNameRequest request){
        return CompletableFuture.completedFuture(searchDeptListByName(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 searchDeptListByName(com.ywt.gapi.system.SearchDeptListByNameRequest request, StreamObserver<com.ywt.gapi.system.SearchDeptListByNameResponse> responseObserver){
        searchDeptListByNameAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据名称获取医生列表
         * </pre>
         */
    com.ywt.gapi.system.SearchDoctorListByNameResponse searchDoctorListByName(com.ywt.gapi.system.SearchDoctorListByNameRequest request);

    default CompletableFuture<com.ywt.gapi.system.SearchDoctorListByNameResponse> searchDoctorListByNameAsync(com.ywt.gapi.system.SearchDoctorListByNameRequest request){
        return CompletableFuture.completedFuture(searchDoctorListByName(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 searchDoctorListByName(com.ywt.gapi.system.SearchDoctorListByNameRequest request, StreamObserver<com.ywt.gapi.system.SearchDoctorListByNameResponse> responseObserver){
        searchDoctorListByNameAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据姓名从多个医院查找医生
         * </pre>
         */
    com.ywt.gapi.system.SearchDoctorListByNameResponse searchDoctorByNameFromMultiHosp(com.ywt.gapi.system.SearchDoctorByNameFromMultiHospRequest request);

    default CompletableFuture<com.ywt.gapi.system.SearchDoctorListByNameResponse> searchDoctorByNameFromMultiHospAsync(com.ywt.gapi.system.SearchDoctorByNameFromMultiHospRequest request){
        return CompletableFuture.completedFuture(searchDoctorByNameFromMultiHosp(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 searchDoctorByNameFromMultiHosp(com.ywt.gapi.system.SearchDoctorByNameFromMultiHospRequest request, StreamObserver<com.ywt.gapi.system.SearchDoctorListByNameResponse> responseObserver){
        searchDoctorByNameFromMultiHospAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  得到预约挂号公告信息
         * </pre>
         */
    com.ywt.gapi.system.RetRegisteredAnnouncementResponse getRegisteredAnnouncement(com.ywt.gapi.system.RetRegisteredAnnouncementRequest request);

    default CompletableFuture<com.ywt.gapi.system.RetRegisteredAnnouncementResponse> getRegisteredAnnouncementAsync(com.ywt.gapi.system.RetRegisteredAnnouncementRequest request){
        return CompletableFuture.completedFuture(getRegisteredAnnouncement(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 getRegisteredAnnouncement(com.ywt.gapi.system.RetRegisteredAnnouncementRequest request, StreamObserver<com.ywt.gapi.system.RetRegisteredAnnouncementResponse> responseObserver){
        getRegisteredAnnouncementAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  判断是否有救护车的权限
         * </pre>
         */
    com.ywt.gapi.Result checkHasAmbulanceRight(com.ywt.gapi.system.CheckHasAmbulanceRightRequest request);

    default CompletableFuture<com.ywt.gapi.Result> checkHasAmbulanceRightAsync(com.ywt.gapi.system.CheckHasAmbulanceRightRequest request){
        return CompletableFuture.completedFuture(checkHasAmbulanceRight(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 checkHasAmbulanceRight(com.ywt.gapi.system.CheckHasAmbulanceRightRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        checkHasAmbulanceRightAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  记录救护车位置
         * </pre>
         */
    com.ywt.gapi.Result saveAmbulanceLocation(com.ywt.gapi.system.SaveAmbulanceLocationRequest request);

    default CompletableFuture<com.ywt.gapi.Result> saveAmbulanceLocationAsync(com.ywt.gapi.system.SaveAmbulanceLocationRequest request){
        return CompletableFuture.completedFuture(saveAmbulanceLocation(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 saveAmbulanceLocation(com.ywt.gapi.system.SaveAmbulanceLocationRequest request, StreamObserver<com.ywt.gapi.Result> responseObserver){
        saveAmbulanceLocationAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 须知展示
         * </pre>
         */
    com.ywt.gapi.system.CommonAnnouncementResponse showCommonAnnouncement(com.ywt.gapi.system.CommonAnnouncementRequest request);

    default CompletableFuture<com.ywt.gapi.system.CommonAnnouncementResponse> showCommonAnnouncementAsync(com.ywt.gapi.system.CommonAnnouncementRequest request){
        return CompletableFuture.completedFuture(showCommonAnnouncement(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 showCommonAnnouncement(com.ywt.gapi.system.CommonAnnouncementRequest request, StreamObserver<com.ywt.gapi.system.CommonAnnouncementResponse> responseObserver){
        showCommonAnnouncementAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 就诊指南
         * </pre>
         */
    com.ywt.gapi.system.GuideListResponse getGuideList(com.ywt.gapi.system.GuideListRequest request);

    default CompletableFuture<com.ywt.gapi.system.GuideListResponse> getGuideListAsync(com.ywt.gapi.system.GuideListRequest request){
        return CompletableFuture.completedFuture(getGuideList(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 getGuideList(com.ywt.gapi.system.GuideListRequest request, StreamObserver<com.ywt.gapi.system.GuideListResponse> responseObserver){
        getGuideListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         *  根据条件获取医院列表
         * </pre>
         */
    com.ywt.gapi.system.AreaHospitalListResponse getHospitalListByType(com.ywt.gapi.system.GetHospitalListByTypeRequest request);

    default CompletableFuture<com.ywt.gapi.system.AreaHospitalListResponse> getHospitalListByTypeAsync(com.ywt.gapi.system.GetHospitalListByTypeRequest request){
        return CompletableFuture.completedFuture(getHospitalListByType(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 getHospitalListByType(com.ywt.gapi.system.GetHospitalListByTypeRequest request, StreamObserver<com.ywt.gapi.system.AreaHospitalListResponse> responseObserver){
        getHospitalListByTypeAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 科室介绍
         * </pre>
         */
    com.ywt.gapi.system.IntroduceResponse getIntroduce(com.ywt.gapi.system.IntroduceRequest request);

    default CompletableFuture<com.ywt.gapi.system.IntroduceResponse> getIntroduceAsync(com.ywt.gapi.system.IntroduceRequest request){
        return CompletableFuture.completedFuture(getIntroduce(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 getIntroduce(com.ywt.gapi.system.IntroduceRequest request, StreamObserver<com.ywt.gapi.system.IntroduceResponse> responseObserver){
        getIntroduceAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }

        /**
         * <pre>
         * 住院科室列表
         * </pre>
         */
    com.ywt.gapi.system.HospitalMedicalDeptListResponse hospitalMedicalDeptList(com.ywt.gapi.system.HospitalMedicalDeptListRequest request);

    default CompletableFuture<com.ywt.gapi.system.HospitalMedicalDeptListResponse> hospitalMedicalDeptListAsync(com.ywt.gapi.system.HospitalMedicalDeptListRequest request){
        return CompletableFuture.completedFuture(hospitalMedicalDeptList(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 hospitalMedicalDeptList(com.ywt.gapi.system.HospitalMedicalDeptListRequest request, StreamObserver<com.ywt.gapi.system.HospitalMedicalDeptListResponse> responseObserver){
        hospitalMedicalDeptListAsync(request).whenComplete((r, t) -> {
            if (t != null) {
                responseObserver.onError(t);
            } else {
                responseObserver.onNext(r);
                responseObserver.onCompleted();
            }
        });
    }






}
