// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: doctor.proto

package com.ywt.gapi.doctor;

/**
 * <pre>
 *医生详细信息
 * </pre>
 *
 * Protobuf type {@code com.ywt.gapi.user.DoctorInfo}
 */
public final class DoctorInfo extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:com.ywt.gapi.user.DoctorInfo)
    DoctorInfoOrBuilder {
private static final long serialVersionUID = 0L;
  // Use DoctorInfo.newBuilder() to construct.
  private DoctorInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
    super(builder);
  }
  private DoctorInfo() {
    name_ = "";
    avatar_ = "";
    city_ = "";
    hospital_ = "";
    specialty_ = "";
    title_ = "";
    dept_ = "";
    hospitalIds_ = "";
    deptIds_ = "";
    qrCodeUrl_ = "";
    briefIntro_ = "";
    signUrl_ = "";
    mobile_ = "";
    rpContent_ = "";
    rpUrl_ = "";
    avatar2_ = "";
    rpContentPc_ = "";
    rpUrlPc_ = "";
    pharmacyName_ = "";
    negReceptionHint_ = "";
    prescriptionRightPharmacyIds_ = "";
  }

  @Override
  @SuppressWarnings({"unused"})
  protected Object newInstance(
      UnusedPrivateParameter unused) {
    return new DoctorInfo();
  }

  @Override
  public final com.google.protobuf.UnknownFieldSet
  getUnknownFields() {
    return this.unknownFields;
  }
  private DoctorInfo(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    this();
    if (extensionRegistry == null) {
      throw new NullPointerException();
    }
    com.google.protobuf.UnknownFieldSet.Builder unknownFields =
        com.google.protobuf.UnknownFieldSet.newBuilder();
    try {
      boolean done = false;
      while (!done) {
        int tag = input.readTag();
        switch (tag) {
          case 0:
            done = true;
            break;
          case 8: {

            doctorid_ = input.readInt32();
            break;
          }
          case 18: {
            String s = input.readStringRequireUtf8();

            name_ = s;
            break;
          }
          case 26: {
            String s = input.readStringRequireUtf8();

            avatar_ = s;
            break;
          }
          case 34: {
            String s = input.readStringRequireUtf8();

            city_ = s;
            break;
          }
          case 42: {
            String s = input.readStringRequireUtf8();

            hospital_ = s;
            break;
          }
          case 50: {
            String s = input.readStringRequireUtf8();

            specialty_ = s;
            break;
          }
          case 56: {

            status_ = input.readInt32();
            break;
          }
          case 66: {
            String s = input.readStringRequireUtf8();

            title_ = s;
            break;
          }
          case 74: {
            String s = input.readStringRequireUtf8();

            dept_ = s;
            break;
          }
          case 82: {
            String s = input.readStringRequireUtf8();

            hospitalIds_ = s;
            break;
          }
          case 90: {
            String s = input.readStringRequireUtf8();

            deptIds_ = s;
            break;
          }
          case 96: {

            scheduleStatus_ = input.readInt32();
            break;
          }
          case 104: {

            consultFee_ = input.readInt32();
            break;
          }
          case 114: {
            String s = input.readStringRequireUtf8();

            qrCodeUrl_ = s;
            break;
          }
          case 122: {
            String s = input.readStringRequireUtf8();

            briefIntro_ = s;
            break;
          }
          case 128: {

            signId_ = input.readInt32();
            break;
          }
          case 138: {
            String s = input.readStringRequireUtf8();

            signUrl_ = s;
            break;
          }
          case 144: {

            baseInfoStatus_ = input.readInt32();
            break;
          }
          case 152: {

            licenseStatus_ = input.readInt32();
            break;
          }
          case 162: {
            String s = input.readStringRequireUtf8();

            mobile_ = s;
            break;
          }
          case 168: {

            authType_ = input.readInt32();
            break;
          }
          case 176: {

            userType_ = input.readInt32();
            break;
          }
          case 186: {
            String s = input.readStringRequireUtf8();

            rpContent_ = s;
            break;
          }
          case 194: {
            String s = input.readStringRequireUtf8();

            rpUrl_ = s;
            break;
          }
          case 202: {
            String s = input.readStringRequireUtf8();

            avatar2_ = s;
            break;
          }
          case 210: {
            String s = input.readStringRequireUtf8();

            rpContentPc_ = s;
            break;
          }
          case 218: {
            String s = input.readStringRequireUtf8();

            rpUrlPc_ = s;
            break;
          }
          case 224: {

            pharmacyId_ = input.readInt32();
            break;
          }
          case 234: {
            String s = input.readStringRequireUtf8();

            pharmacyName_ = s;
            break;
          }
          case 240: {

            identity_ = input.readInt32();
            break;
          }
          case 248: {

            negReception_ = input.readBool();
            break;
          }
          case 258: {
            String s = input.readStringRequireUtf8();

            negReceptionHint_ = s;
            break;
          }
          case 264: {

            enableNextConsultChance_ = input.readBool();
            break;
          }
          case 272: {

            offlineFee_ = input.readInt32();
            break;
          }
          case 280: {

            prescriptionRightStatus_ = input.readInt32();
            break;
          }
          case 290: {
            String s = input.readStringRequireUtf8();

            prescriptionRightPharmacyIds_ = s;
            break;
          }
          case 296: {

            showMedEquipBtn_ = input.readBool();
            break;
          }
          case 304: {

            hospitalId_ = input.readInt32();
            break;
          }
          case 312: {

            consultFree_ = input.readInt32();
            break;
          }
          default: {
            if (!parseUnknownField(
                input, unknownFields, extensionRegistry, tag)) {
              done = true;
            }
            break;
          }
        }
      }
    } catch (com.google.protobuf.InvalidProtocolBufferException e) {
      throw e.setUnfinishedMessage(this);
    } catch (java.io.IOException e) {
      throw new com.google.protobuf.InvalidProtocolBufferException(
          e).setUnfinishedMessage(this);
    } finally {
      this.unknownFields = unknownFields.build();
      makeExtensionsImmutable();
    }
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.ywt.gapi.doctor.DoctorProto.internal_static_com_ywt_gapi_user_DoctorInfo_descriptor;
  }

  @Override
  protected FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.ywt.gapi.doctor.DoctorProto.internal_static_com_ywt_gapi_user_DoctorInfo_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            DoctorInfo.class, Builder.class);
  }

  public static final int DOCTORID_FIELD_NUMBER = 1;
  private int doctorid_;
  /**
   * <code>int32 doctorid = 1;</code>
   * @return The doctorid.
   */
  @Override
  public int getDoctorid() {
    return doctorid_;
  }

  public static final int NAME_FIELD_NUMBER = 2;
  private volatile Object name_;
  /**
   * <code>string name = 2;</code>
   * @return The name.
   */
  @Override
  public String getName() {
    Object ref = name_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      name_ = s;
      return s;
    }
  }
  /**
   * <code>string name = 2;</code>
   * @return The bytes for name.
   */
  @Override
  public com.google.protobuf.ByteString
      getNameBytes() {
    Object ref = name_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      name_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int AVATAR_FIELD_NUMBER = 3;
  private volatile Object avatar_;
  /**
   * <code>string avatar = 3;</code>
   * @return The avatar.
   */
  @Override
  public String getAvatar() {
    Object ref = avatar_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      avatar_ = s;
      return s;
    }
  }
  /**
   * <code>string avatar = 3;</code>
   * @return The bytes for avatar.
   */
  @Override
  public com.google.protobuf.ByteString
      getAvatarBytes() {
    Object ref = avatar_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      avatar_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int CITY_FIELD_NUMBER = 4;
  private volatile Object city_;
  /**
   * <code>string city = 4;</code>
   * @return The city.
   */
  @Override
  public String getCity() {
    Object ref = city_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      city_ = s;
      return s;
    }
  }
  /**
   * <code>string city = 4;</code>
   * @return The bytes for city.
   */
  @Override
  public com.google.protobuf.ByteString
      getCityBytes() {
    Object ref = city_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      city_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int HOSPITAL_FIELD_NUMBER = 5;
  private volatile Object hospital_;
  /**
   * <code>string hospital = 5;</code>
   * @return The hospital.
   */
  @Override
  public String getHospital() {
    Object ref = hospital_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      hospital_ = s;
      return s;
    }
  }
  /**
   * <code>string hospital = 5;</code>
   * @return The bytes for hospital.
   */
  @Override
  public com.google.protobuf.ByteString
      getHospitalBytes() {
    Object ref = hospital_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      hospital_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SPECIALTY_FIELD_NUMBER = 6;
  private volatile Object specialty_;
  /**
   * <code>string specialty = 6;</code>
   * @return The specialty.
   */
  @Override
  public String getSpecialty() {
    Object ref = specialty_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      specialty_ = s;
      return s;
    }
  }
  /**
   * <code>string specialty = 6;</code>
   * @return The bytes for specialty.
   */
  @Override
  public com.google.protobuf.ByteString
      getSpecialtyBytes() {
    Object ref = specialty_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      specialty_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int STATUS_FIELD_NUMBER = 7;
  private int status_;
  /**
   * <code>int32 status = 7;</code>
   * @return The status.
   */
  @Override
  public int getStatus() {
    return status_;
  }

  public static final int TITLE_FIELD_NUMBER = 8;
  private volatile Object title_;
  /**
   * <code>string title = 8;</code>
   * @return The title.
   */
  @Override
  public String getTitle() {
    Object ref = title_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      title_ = s;
      return s;
    }
  }
  /**
   * <code>string title = 8;</code>
   * @return The bytes for title.
   */
  @Override
  public com.google.protobuf.ByteString
      getTitleBytes() {
    Object ref = title_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      title_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEPT_FIELD_NUMBER = 9;
  private volatile Object dept_;
  /**
   * <code>string dept = 9;</code>
   * @return The dept.
   */
  @Override
  public String getDept() {
    Object ref = dept_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      dept_ = s;
      return s;
    }
  }
  /**
   * <code>string dept = 9;</code>
   * @return The bytes for dept.
   */
  @Override
  public com.google.protobuf.ByteString
      getDeptBytes() {
    Object ref = dept_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      dept_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int HOSPITALIDS_FIELD_NUMBER = 10;
  private volatile Object hospitalIds_;
  /**
   * <code>string hospitalIds = 10;</code>
   * @return The hospitalIds.
   */
  @Override
  public String getHospitalIds() {
    Object ref = hospitalIds_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      hospitalIds_ = s;
      return s;
    }
  }
  /**
   * <code>string hospitalIds = 10;</code>
   * @return The bytes for hospitalIds.
   */
  @Override
  public com.google.protobuf.ByteString
      getHospitalIdsBytes() {
    Object ref = hospitalIds_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      hospitalIds_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEPTIDS_FIELD_NUMBER = 11;
  private volatile Object deptIds_;
  /**
   * <code>string deptIds = 11;</code>
   * @return The deptIds.
   */
  @Override
  public String getDeptIds() {
    Object ref = deptIds_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      deptIds_ = s;
      return s;
    }
  }
  /**
   * <code>string deptIds = 11;</code>
   * @return The bytes for deptIds.
   */
  @Override
  public com.google.protobuf.ByteString
      getDeptIdsBytes() {
    Object ref = deptIds_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      deptIds_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SCHEDULESTATUS_FIELD_NUMBER = 12;
  private int scheduleStatus_;
  /**
   * <pre>
   *医生出诊状态
   * </pre>
   *
   * <code>int32 scheduleStatus = 12;</code>
   * @return The scheduleStatus.
   */
  @Override
  public int getScheduleStatus() {
    return scheduleStatus_;
  }

  public static final int CONSULTFEE_FIELD_NUMBER = 13;
  private int consultFee_;
  /**
   * <pre>
   *医生咨询费用（单位：分）
   * </pre>
   *
   * <code>int32 consultFee = 13;</code>
   * @return The consultFee.
   */
  @Override
  public int getConsultFee() {
    return consultFee_;
  }

  public static final int QRCODEURL_FIELD_NUMBER = 14;
  private volatile Object qrCodeUrl_;
  /**
   * <pre>
   *二维码链接
   * </pre>
   *
   * <code>string qrCodeUrl = 14;</code>
   * @return The qrCodeUrl.
   */
  @Override
  public String getQrCodeUrl() {
    Object ref = qrCodeUrl_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      qrCodeUrl_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *二维码链接
   * </pre>
   *
   * <code>string qrCodeUrl = 14;</code>
   * @return The bytes for qrCodeUrl.
   */
  @Override
  public com.google.protobuf.ByteString
      getQrCodeUrlBytes() {
    Object ref = qrCodeUrl_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      qrCodeUrl_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int BRIEFINTRO_FIELD_NUMBER = 15;
  private volatile Object briefIntro_;
  /**
   * <pre>
   *简介
   * </pre>
   *
   * <code>string briefIntro = 15;</code>
   * @return The briefIntro.
   */
  @Override
  public String getBriefIntro() {
    Object ref = briefIntro_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      briefIntro_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *简介
   * </pre>
   *
   * <code>string briefIntro = 15;</code>
   * @return The bytes for briefIntro.
   */
  @Override
  public com.google.protobuf.ByteString
      getBriefIntroBytes() {
    Object ref = briefIntro_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      briefIntro_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SIGNID_FIELD_NUMBER = 16;
  private int signId_;
  /**
   * <pre>
   *医生签名ID
   * </pre>
   *
   * <code>int32 signId = 16;</code>
   * @return The signId.
   */
  @Override
  public int getSignId() {
    return signId_;
  }

  public static final int SIGNURL_FIELD_NUMBER = 17;
  private volatile Object signUrl_;
  /**
   * <pre>
   *医生签名地址
   * </pre>
   *
   * <code>string signUrl = 17;</code>
   * @return The signUrl.
   */
  @Override
  public String getSignUrl() {
    Object ref = signUrl_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      signUrl_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *医生签名地址
   * </pre>
   *
   * <code>string signUrl = 17;</code>
   * @return The bytes for signUrl.
   */
  @Override
  public com.google.protobuf.ByteString
      getSignUrlBytes() {
    Object ref = signUrl_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      signUrl_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int BASEINFOSTATUS_FIELD_NUMBER = 18;
  private int baseInfoStatus_;
  /**
   * <pre>
   *基本信息是否填写（0-未填写，1-已填写）
   * </pre>
   *
   * <code>int32 baseInfoStatus = 18;</code>
   * @return The baseInfoStatus.
   */
  @Override
  public int getBaseInfoStatus() {
    return baseInfoStatus_;
  }

  public static final int LICENSESTATUS_FIELD_NUMBER = 19;
  private int licenseStatus_;
  /**
   * <pre>
   *认证状态（0-未通过，1-已通过）
   * </pre>
   *
   * <code>int32 licenseStatus = 19;</code>
   * @return The licenseStatus.
   */
  @Override
  public int getLicenseStatus() {
    return licenseStatus_;
  }

  public static final int MOBILE_FIELD_NUMBER = 20;
  private volatile Object mobile_;
  /**
   * <pre>
   *手机号
   * </pre>
   *
   * <code>string mobile = 20;</code>
   * @return The mobile.
   */
  @Override
  public String getMobile() {
    Object ref = mobile_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      mobile_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *手机号
   * </pre>
   *
   * <code>string mobile = 20;</code>
   * @return The bytes for mobile.
   */
  @Override
  public com.google.protobuf.ByteString
      getMobileBytes() {
    Object ref = mobile_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      mobile_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int AUTHTYPE_FIELD_NUMBER = 21;
  private int authType_;
  /**
   * <pre>
   *认证方式, 0-后台导入；1-医生认证
   * </pre>
   *
   * <code>int32 authType = 21;</code>
   * @return The authType.
   */
  @Override
  public int getAuthType() {
    return authType_;
  }

  public static final int USERTYPE_FIELD_NUMBER = 22;
  private int userType_;
  /**
   * <pre>
   *用户类型
   * </pre>
   *
   * <code>int32 userType = 22;</code>
   * @return The userType.
   */
  @Override
  public int getUserType() {
    return userType_;
  }

  public static final int RPCONTENT_FIELD_NUMBER = 23;
  private volatile Object rpContent_;
  /**
   * <pre>
   *处方二维码内容
   * </pre>
   *
   * <code>string rpContent = 23;</code>
   * @return The rpContent.
   */
  @Override
  public String getRpContent() {
    Object ref = rpContent_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      rpContent_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *处方二维码内容
   * </pre>
   *
   * <code>string rpContent = 23;</code>
   * @return The bytes for rpContent.
   */
  @Override
  public com.google.protobuf.ByteString
      getRpContentBytes() {
    Object ref = rpContent_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      rpContent_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int RPURL_FIELD_NUMBER = 24;
  private volatile Object rpUrl_;
  /**
   * <pre>
   *处方二维码链接
   * </pre>
   *
   * <code>string rpUrl = 24;</code>
   * @return The rpUrl.
   */
  @Override
  public String getRpUrl() {
    Object ref = rpUrl_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      rpUrl_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *处方二维码链接
   * </pre>
   *
   * <code>string rpUrl = 24;</code>
   * @return The bytes for rpUrl.
   */
  @Override
  public com.google.protobuf.ByteString
      getRpUrlBytes() {
    Object ref = rpUrl_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      rpUrl_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int AVATAR2_FIELD_NUMBER = 25;
  private volatile Object avatar2_;
  /**
   * <code>string avatar2 = 25;</code>
   * @return The avatar2.
   */
  @Override
  public String getAvatar2() {
    Object ref = avatar2_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      avatar2_ = s;
      return s;
    }
  }
  /**
   * <code>string avatar2 = 25;</code>
   * @return The bytes for avatar2.
   */
  @Override
  public com.google.protobuf.ByteString
      getAvatar2Bytes() {
    Object ref = avatar2_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      avatar2_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int RPCONTENTPC_FIELD_NUMBER = 26;
  private volatile Object rpContentPc_;
  /**
   * <pre>
   *处方二维码内容PC端
   * </pre>
   *
   * <code>string rpContentPc = 26;</code>
   * @return The rpContentPc.
   */
  @Override
  public String getRpContentPc() {
    Object ref = rpContentPc_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      rpContentPc_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *处方二维码内容PC端
   * </pre>
   *
   * <code>string rpContentPc = 26;</code>
   * @return The bytes for rpContentPc.
   */
  @Override
  public com.google.protobuf.ByteString
      getRpContentPcBytes() {
    Object ref = rpContentPc_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      rpContentPc_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int RPURLPC_FIELD_NUMBER = 27;
  private volatile Object rpUrlPc_;
  /**
   * <pre>
   *处方二维码链接PC端
   * </pre>
   *
   * <code>string rpUrlPc = 27;</code>
   * @return The rpUrlPc.
   */
  @Override
  public String getRpUrlPc() {
    Object ref = rpUrlPc_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      rpUrlPc_ = s;
      return s;
    }
  }
  /**
   * <pre>
   *处方二维码链接PC端
   * </pre>
   *
   * <code>string rpUrlPc = 27;</code>
   * @return The bytes for rpUrlPc.
   */
  @Override
  public com.google.protobuf.ByteString
      getRpUrlPcBytes() {
    Object ref = rpUrlPc_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      rpUrlPc_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int PHARMACYID_FIELD_NUMBER = 28;
  private int pharmacyId_;
  /**
   * <code>int32 pharmacyId = 28;</code>
   * @return The pharmacyId.
   */
  @Override
  public int getPharmacyId() {
    return pharmacyId_;
  }

  public static final int PHARMACYNAME_FIELD_NUMBER = 29;
  private volatile Object pharmacyName_;
  /**
   * <code>string pharmacyName = 29;</code>
   * @return The pharmacyName.
   */
  @Override
  public String getPharmacyName() {
    Object ref = pharmacyName_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      pharmacyName_ = s;
      return s;
    }
  }
  /**
   * <code>string pharmacyName = 29;</code>
   * @return The bytes for pharmacyName.
   */
  @Override
  public com.google.protobuf.ByteString
      getPharmacyNameBytes() {
    Object ref = pharmacyName_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      pharmacyName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int IDENTITY_FIELD_NUMBER = 30;
  private int identity_;
  /**
   * <code>int32 identity = 30;</code>
   * @return The identity.
   */
  @Override
  public int getIdentity() {
    return identity_;
  }

  public static final int NEGRECEPTION_FIELD_NUMBER = 31;
  private boolean negReception_;
  /**
   * <code>bool negReception = 31;</code>
   * @return The negReception.
   */
  @Override
  public boolean getNegReception() {
    return negReception_;
  }

  public static final int NEGRECEPTIONHINT_FIELD_NUMBER = 32;
  private volatile Object negReceptionHint_;
  /**
   * <code>string negReceptionHint = 32;</code>
   * @return The negReceptionHint.
   */
  @Override
  public String getNegReceptionHint() {
    Object ref = negReceptionHint_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      negReceptionHint_ = s;
      return s;
    }
  }
  /**
   * <code>string negReceptionHint = 32;</code>
   * @return The bytes for negReceptionHint.
   */
  @Override
  public com.google.protobuf.ByteString
      getNegReceptionHintBytes() {
    Object ref = negReceptionHint_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      negReceptionHint_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int ENABLENEXTCONSULTCHANCE_FIELD_NUMBER = 33;
  private boolean enableNextConsultChance_;
  /**
   * <pre>
   * v3.2.0, 患者线下就诊后，是否3天内有1次免费咨询机会
   * </pre>
   *
   * <code>bool enableNextConsultChance = 33;</code>
   * @return The enableNextConsultChance.
   */
  @Override
  public boolean getEnableNextConsultChance() {
    return enableNextConsultChance_;
  }

  public static final int OFFLINEFEE_FIELD_NUMBER = 34;
  private int offlineFee_;
  /**
   * <pre>
   * 线下就诊费用设置
   * </pre>
   *
   * <code>int32 offlineFee = 34;</code>
   * @return The offlineFee.
   */
  @Override
  public int getOfflineFee() {
    return offlineFee_;
  }

  public static final int PRESCRIPTIONRIGHTSTATUS_FIELD_NUMBER = 35;
  private int prescriptionRightStatus_;
  /**
   * <code>int32 prescriptionRightStatus = 35;</code>
   * @return The prescriptionRightStatus.
   */
  @Override
  public int getPrescriptionRightStatus() {
    return prescriptionRightStatus_;
  }

  public static final int PRESCRIPTIONRIGHTPHARMACYIDS_FIELD_NUMBER = 36;
  private volatile Object prescriptionRightPharmacyIds_;
  /**
   * <code>string prescriptionRightPharmacyIds = 36;</code>
   * @return The prescriptionRightPharmacyIds.
   */
  @Override
  public String getPrescriptionRightPharmacyIds() {
    Object ref = prescriptionRightPharmacyIds_;
    if (ref instanceof String) {
      return (String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      String s = bs.toStringUtf8();
      prescriptionRightPharmacyIds_ = s;
      return s;
    }
  }
  /**
   * <code>string prescriptionRightPharmacyIds = 36;</code>
   * @return The bytes for prescriptionRightPharmacyIds.
   */
  @Override
  public com.google.protobuf.ByteString
      getPrescriptionRightPharmacyIdsBytes() {
    Object ref = prescriptionRightPharmacyIds_;
    if (ref instanceof String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (String) ref);
      prescriptionRightPharmacyIds_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SHOWMEDEQUIPBTN_FIELD_NUMBER = 37;
  private boolean showMedEquipBtn_;
  /**
   * <pre>
   * 是否显示开医疗设备检查按钮
   * </pre>
   *
   * <code>bool showMedEquipBtn = 37;</code>
   * @return The showMedEquipBtn.
   */
  @Override
  public boolean getShowMedEquipBtn() {
    return showMedEquipBtn_;
  }

  public static final int HOSPITALID_FIELD_NUMBER = 38;
  private int hospitalId_;
  /**
   * <code>int32 hospitalId = 38;</code>
   * @return The hospitalId.
   */
  @Override
  public int getHospitalId() {
    return hospitalId_;
  }

  public static final int CONSULTFREE_FIELD_NUMBER = 39;
  private int consultFree_;
  /**
   * <code>int32 consultFree = 39;</code>
   * @return The consultFree.
   */
  @Override
  public int getConsultFree() {
    return consultFree_;
  }

  private byte memoizedIsInitialized = -1;
  @Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (doctorid_ != 0) {
      output.writeInt32(1, doctorid_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(avatar_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, avatar_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(city_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, city_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hospital_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, hospital_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(specialty_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, specialty_);
    }
    if (status_ != 0) {
      output.writeInt32(7, status_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 8, title_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dept_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 9, dept_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hospitalIds_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 10, hospitalIds_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deptIds_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, deptIds_);
    }
    if (scheduleStatus_ != 0) {
      output.writeInt32(12, scheduleStatus_);
    }
    if (consultFee_ != 0) {
      output.writeInt32(13, consultFee_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(qrCodeUrl_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 14, qrCodeUrl_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(briefIntro_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 15, briefIntro_);
    }
    if (signId_ != 0) {
      output.writeInt32(16, signId_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(signUrl_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 17, signUrl_);
    }
    if (baseInfoStatus_ != 0) {
      output.writeInt32(18, baseInfoStatus_);
    }
    if (licenseStatus_ != 0) {
      output.writeInt32(19, licenseStatus_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mobile_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 20, mobile_);
    }
    if (authType_ != 0) {
      output.writeInt32(21, authType_);
    }
    if (userType_ != 0) {
      output.writeInt32(22, userType_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpContent_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 23, rpContent_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpUrl_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 24, rpUrl_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(avatar2_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 25, avatar2_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpContentPc_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 26, rpContentPc_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpUrlPc_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 27, rpUrlPc_);
    }
    if (pharmacyId_ != 0) {
      output.writeInt32(28, pharmacyId_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pharmacyName_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 29, pharmacyName_);
    }
    if (identity_ != 0) {
      output.writeInt32(30, identity_);
    }
    if (negReception_ != false) {
      output.writeBool(31, negReception_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(negReceptionHint_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 32, negReceptionHint_);
    }
    if (enableNextConsultChance_ != false) {
      output.writeBool(33, enableNextConsultChance_);
    }
    if (offlineFee_ != 0) {
      output.writeInt32(34, offlineFee_);
    }
    if (prescriptionRightStatus_ != 0) {
      output.writeInt32(35, prescriptionRightStatus_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(prescriptionRightPharmacyIds_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 36, prescriptionRightPharmacyIds_);
    }
    if (showMedEquipBtn_ != false) {
      output.writeBool(37, showMedEquipBtn_);
    }
    if (hospitalId_ != 0) {
      output.writeInt32(38, hospitalId_);
    }
    if (consultFree_ != 0) {
      output.writeInt32(39, consultFree_);
    }
    unknownFields.writeTo(output);
  }

  @Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (doctorid_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(1, doctorid_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(avatar_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, avatar_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(city_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, city_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hospital_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, hospital_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(specialty_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, specialty_);
    }
    if (status_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(7, status_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, title_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dept_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, dept_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hospitalIds_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, hospitalIds_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deptIds_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, deptIds_);
    }
    if (scheduleStatus_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(12, scheduleStatus_);
    }
    if (consultFee_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(13, consultFee_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(qrCodeUrl_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, qrCodeUrl_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(briefIntro_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, briefIntro_);
    }
    if (signId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(16, signId_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(signUrl_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(17, signUrl_);
    }
    if (baseInfoStatus_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(18, baseInfoStatus_);
    }
    if (licenseStatus_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(19, licenseStatus_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mobile_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(20, mobile_);
    }
    if (authType_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(21, authType_);
    }
    if (userType_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(22, userType_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpContent_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(23, rpContent_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpUrl_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(24, rpUrl_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(avatar2_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(25, avatar2_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpContentPc_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(26, rpContentPc_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rpUrlPc_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(27, rpUrlPc_);
    }
    if (pharmacyId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(28, pharmacyId_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pharmacyName_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(29, pharmacyName_);
    }
    if (identity_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(30, identity_);
    }
    if (negReception_ != false) {
      size += com.google.protobuf.CodedOutputStream
        .computeBoolSize(31, negReception_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(negReceptionHint_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(32, negReceptionHint_);
    }
    if (enableNextConsultChance_ != false) {
      size += com.google.protobuf.CodedOutputStream
        .computeBoolSize(33, enableNextConsultChance_);
    }
    if (offlineFee_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(34, offlineFee_);
    }
    if (prescriptionRightStatus_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(35, prescriptionRightStatus_);
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(prescriptionRightPharmacyIds_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(36, prescriptionRightPharmacyIds_);
    }
    if (showMedEquipBtn_ != false) {
      size += com.google.protobuf.CodedOutputStream
        .computeBoolSize(37, showMedEquipBtn_);
    }
    if (hospitalId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(38, hospitalId_);
    }
    if (consultFree_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(39, consultFree_);
    }
    size += unknownFields.getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @Override
  public boolean equals(final Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof DoctorInfo)) {
      return super.equals(obj);
    }
    DoctorInfo other = (DoctorInfo) obj;

    if (getDoctorid()
        != other.getDoctorid()) return false;
    if (!getName()
        .equals(other.getName())) return false;
    if (!getAvatar()
        .equals(other.getAvatar())) return false;
    if (!getCity()
        .equals(other.getCity())) return false;
    if (!getHospital()
        .equals(other.getHospital())) return false;
    if (!getSpecialty()
        .equals(other.getSpecialty())) return false;
    if (getStatus()
        != other.getStatus()) return false;
    if (!getTitle()
        .equals(other.getTitle())) return false;
    if (!getDept()
        .equals(other.getDept())) return false;
    if (!getHospitalIds()
        .equals(other.getHospitalIds())) return false;
    if (!getDeptIds()
        .equals(other.getDeptIds())) return false;
    if (getScheduleStatus()
        != other.getScheduleStatus()) return false;
    if (getConsultFee()
        != other.getConsultFee()) return false;
    if (!getQrCodeUrl()
        .equals(other.getQrCodeUrl())) return false;
    if (!getBriefIntro()
        .equals(other.getBriefIntro())) return false;
    if (getSignId()
        != other.getSignId()) return false;
    if (!getSignUrl()
        .equals(other.getSignUrl())) return false;
    if (getBaseInfoStatus()
        != other.getBaseInfoStatus()) return false;
    if (getLicenseStatus()
        != other.getLicenseStatus()) return false;
    if (!getMobile()
        .equals(other.getMobile())) return false;
    if (getAuthType()
        != other.getAuthType()) return false;
    if (getUserType()
        != other.getUserType()) return false;
    if (!getRpContent()
        .equals(other.getRpContent())) return false;
    if (!getRpUrl()
        .equals(other.getRpUrl())) return false;
    if (!getAvatar2()
        .equals(other.getAvatar2())) return false;
    if (!getRpContentPc()
        .equals(other.getRpContentPc())) return false;
    if (!getRpUrlPc()
        .equals(other.getRpUrlPc())) return false;
    if (getPharmacyId()
        != other.getPharmacyId()) return false;
    if (!getPharmacyName()
        .equals(other.getPharmacyName())) return false;
    if (getIdentity()
        != other.getIdentity()) return false;
    if (getNegReception()
        != other.getNegReception()) return false;
    if (!getNegReceptionHint()
        .equals(other.getNegReceptionHint())) return false;
    if (getEnableNextConsultChance()
        != other.getEnableNextConsultChance()) return false;
    if (getOfflineFee()
        != other.getOfflineFee()) return false;
    if (getPrescriptionRightStatus()
        != other.getPrescriptionRightStatus()) return false;
    if (!getPrescriptionRightPharmacyIds()
        .equals(other.getPrescriptionRightPharmacyIds())) return false;
    if (getShowMedEquipBtn()
        != other.getShowMedEquipBtn()) return false;
    if (getHospitalId()
        != other.getHospitalId()) return false;
    if (getConsultFree()
        != other.getConsultFree()) return false;
    if (!unknownFields.equals(other.unknownFields)) return false;
    return true;
  }

  @Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + DOCTORID_FIELD_NUMBER;
    hash = (53 * hash) + getDoctorid();
    hash = (37 * hash) + NAME_FIELD_NUMBER;
    hash = (53 * hash) + getName().hashCode();
    hash = (37 * hash) + AVATAR_FIELD_NUMBER;
    hash = (53 * hash) + getAvatar().hashCode();
    hash = (37 * hash) + CITY_FIELD_NUMBER;
    hash = (53 * hash) + getCity().hashCode();
    hash = (37 * hash) + HOSPITAL_FIELD_NUMBER;
    hash = (53 * hash) + getHospital().hashCode();
    hash = (37 * hash) + SPECIALTY_FIELD_NUMBER;
    hash = (53 * hash) + getSpecialty().hashCode();
    hash = (37 * hash) + STATUS_FIELD_NUMBER;
    hash = (53 * hash) + getStatus();
    hash = (37 * hash) + TITLE_FIELD_NUMBER;
    hash = (53 * hash) + getTitle().hashCode();
    hash = (37 * hash) + DEPT_FIELD_NUMBER;
    hash = (53 * hash) + getDept().hashCode();
    hash = (37 * hash) + HOSPITALIDS_FIELD_NUMBER;
    hash = (53 * hash) + getHospitalIds().hashCode();
    hash = (37 * hash) + DEPTIDS_FIELD_NUMBER;
    hash = (53 * hash) + getDeptIds().hashCode();
    hash = (37 * hash) + SCHEDULESTATUS_FIELD_NUMBER;
    hash = (53 * hash) + getScheduleStatus();
    hash = (37 * hash) + CONSULTFEE_FIELD_NUMBER;
    hash = (53 * hash) + getConsultFee();
    hash = (37 * hash) + QRCODEURL_FIELD_NUMBER;
    hash = (53 * hash) + getQrCodeUrl().hashCode();
    hash = (37 * hash) + BRIEFINTRO_FIELD_NUMBER;
    hash = (53 * hash) + getBriefIntro().hashCode();
    hash = (37 * hash) + SIGNID_FIELD_NUMBER;
    hash = (53 * hash) + getSignId();
    hash = (37 * hash) + SIGNURL_FIELD_NUMBER;
    hash = (53 * hash) + getSignUrl().hashCode();
    hash = (37 * hash) + BASEINFOSTATUS_FIELD_NUMBER;
    hash = (53 * hash) + getBaseInfoStatus();
    hash = (37 * hash) + LICENSESTATUS_FIELD_NUMBER;
    hash = (53 * hash) + getLicenseStatus();
    hash = (37 * hash) + MOBILE_FIELD_NUMBER;
    hash = (53 * hash) + getMobile().hashCode();
    hash = (37 * hash) + AUTHTYPE_FIELD_NUMBER;
    hash = (53 * hash) + getAuthType();
    hash = (37 * hash) + USERTYPE_FIELD_NUMBER;
    hash = (53 * hash) + getUserType();
    hash = (37 * hash) + RPCONTENT_FIELD_NUMBER;
    hash = (53 * hash) + getRpContent().hashCode();
    hash = (37 * hash) + RPURL_FIELD_NUMBER;
    hash = (53 * hash) + getRpUrl().hashCode();
    hash = (37 * hash) + AVATAR2_FIELD_NUMBER;
    hash = (53 * hash) + getAvatar2().hashCode();
    hash = (37 * hash) + RPCONTENTPC_FIELD_NUMBER;
    hash = (53 * hash) + getRpContentPc().hashCode();
    hash = (37 * hash) + RPURLPC_FIELD_NUMBER;
    hash = (53 * hash) + getRpUrlPc().hashCode();
    hash = (37 * hash) + PHARMACYID_FIELD_NUMBER;
    hash = (53 * hash) + getPharmacyId();
    hash = (37 * hash) + PHARMACYNAME_FIELD_NUMBER;
    hash = (53 * hash) + getPharmacyName().hashCode();
    hash = (37 * hash) + IDENTITY_FIELD_NUMBER;
    hash = (53 * hash) + getIdentity();
    hash = (37 * hash) + NEGRECEPTION_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
        getNegReception());
    hash = (37 * hash) + NEGRECEPTIONHINT_FIELD_NUMBER;
    hash = (53 * hash) + getNegReceptionHint().hashCode();
    hash = (37 * hash) + ENABLENEXTCONSULTCHANCE_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
        getEnableNextConsultChance());
    hash = (37 * hash) + OFFLINEFEE_FIELD_NUMBER;
    hash = (53 * hash) + getOfflineFee();
    hash = (37 * hash) + PRESCRIPTIONRIGHTSTATUS_FIELD_NUMBER;
    hash = (53 * hash) + getPrescriptionRightStatus();
    hash = (37 * hash) + PRESCRIPTIONRIGHTPHARMACYIDS_FIELD_NUMBER;
    hash = (53 * hash) + getPrescriptionRightPharmacyIds().hashCode();
    hash = (37 * hash) + SHOWMEDEQUIPBTN_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
        getShowMedEquipBtn());
    hash = (37 * hash) + HOSPITALID_FIELD_NUMBER;
    hash = (53 * hash) + getHospitalId();
    hash = (37 * hash) + CONSULTFREE_FIELD_NUMBER;
    hash = (53 * hash) + getConsultFree();
    hash = (29 * hash) + unknownFields.hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static DoctorInfo parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static DoctorInfo parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static DoctorInfo parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static DoctorInfo parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static DoctorInfo parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static DoctorInfo parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static DoctorInfo parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static DoctorInfo parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }
  public static DoctorInfo parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static DoctorInfo parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static DoctorInfo parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static DoctorInfo parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(DoctorInfo prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @Override
  protected Builder newBuilderForType(
      BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * <pre>
   *医生详细信息
   * </pre>
   *
   * Protobuf type {@code com.ywt.gapi.user.DoctorInfo}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
      // @@protoc_insertion_point(builder_implements:com.ywt.gapi.user.DoctorInfo)
      com.ywt.gapi.doctor.DoctorInfoOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.ywt.gapi.doctor.DoctorProto.internal_static_com_ywt_gapi_user_DoctorInfo_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.ywt.gapi.doctor.DoctorProto.internal_static_com_ywt_gapi_user_DoctorInfo_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              DoctorInfo.class, Builder.class);
    }

    // Construct using com.ywt.gapi.doctor.DoctorInfo.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessageV3
              .alwaysUseFieldBuilders) {
      }
    }
    @Override
    public Builder clear() {
      super.clear();
      doctorid_ = 0;

      name_ = "";

      avatar_ = "";

      city_ = "";

      hospital_ = "";

      specialty_ = "";

      status_ = 0;

      title_ = "";

      dept_ = "";

      hospitalIds_ = "";

      deptIds_ = "";

      scheduleStatus_ = 0;

      consultFee_ = 0;

      qrCodeUrl_ = "";

      briefIntro_ = "";

      signId_ = 0;

      signUrl_ = "";

      baseInfoStatus_ = 0;

      licenseStatus_ = 0;

      mobile_ = "";

      authType_ = 0;

      userType_ = 0;

      rpContent_ = "";

      rpUrl_ = "";

      avatar2_ = "";

      rpContentPc_ = "";

      rpUrlPc_ = "";

      pharmacyId_ = 0;

      pharmacyName_ = "";

      identity_ = 0;

      negReception_ = false;

      negReceptionHint_ = "";

      enableNextConsultChance_ = false;

      offlineFee_ = 0;

      prescriptionRightStatus_ = 0;

      prescriptionRightPharmacyIds_ = "";

      showMedEquipBtn_ = false;

      hospitalId_ = 0;

      consultFree_ = 0;

      return this;
    }

    @Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.ywt.gapi.doctor.DoctorProto.internal_static_com_ywt_gapi_user_DoctorInfo_descriptor;
    }

    @Override
    public DoctorInfo getDefaultInstanceForType() {
      return DoctorInfo.getDefaultInstance();
    }

    @Override
    public DoctorInfo build() {
      DoctorInfo result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @Override
    public DoctorInfo buildPartial() {
      DoctorInfo result = new DoctorInfo(this);
      result.doctorid_ = doctorid_;
      result.name_ = name_;
      result.avatar_ = avatar_;
      result.city_ = city_;
      result.hospital_ = hospital_;
      result.specialty_ = specialty_;
      result.status_ = status_;
      result.title_ = title_;
      result.dept_ = dept_;
      result.hospitalIds_ = hospitalIds_;
      result.deptIds_ = deptIds_;
      result.scheduleStatus_ = scheduleStatus_;
      result.consultFee_ = consultFee_;
      result.qrCodeUrl_ = qrCodeUrl_;
      result.briefIntro_ = briefIntro_;
      result.signId_ = signId_;
      result.signUrl_ = signUrl_;
      result.baseInfoStatus_ = baseInfoStatus_;
      result.licenseStatus_ = licenseStatus_;
      result.mobile_ = mobile_;
      result.authType_ = authType_;
      result.userType_ = userType_;
      result.rpContent_ = rpContent_;
      result.rpUrl_ = rpUrl_;
      result.avatar2_ = avatar2_;
      result.rpContentPc_ = rpContentPc_;
      result.rpUrlPc_ = rpUrlPc_;
      result.pharmacyId_ = pharmacyId_;
      result.pharmacyName_ = pharmacyName_;
      result.identity_ = identity_;
      result.negReception_ = negReception_;
      result.negReceptionHint_ = negReceptionHint_;
      result.enableNextConsultChance_ = enableNextConsultChance_;
      result.offlineFee_ = offlineFee_;
      result.prescriptionRightStatus_ = prescriptionRightStatus_;
      result.prescriptionRightPharmacyIds_ = prescriptionRightPharmacyIds_;
      result.showMedEquipBtn_ = showMedEquipBtn_;
      result.hospitalId_ = hospitalId_;
      result.consultFree_ = consultFree_;
      onBuilt();
      return result;
    }

    @Override
    public Builder clone() {
      return super.clone();
    }
    @Override
    public Builder setField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        Object value) {
      return super.setField(field, value);
    }
    @Override
    public Builder clearField(
        com.google.protobuf.Descriptors.FieldDescriptor field) {
      return super.clearField(field);
    }
    @Override
    public Builder clearOneof(
        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
      return super.clearOneof(oneof);
    }
    @Override
    public Builder setRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        int index, Object value) {
      return super.setRepeatedField(field, index, value);
    }
    @Override
    public Builder addRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        Object value) {
      return super.addRepeatedField(field, value);
    }
    @Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof DoctorInfo) {
        return mergeFrom((DoctorInfo)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(DoctorInfo other) {
      if (other == DoctorInfo.getDefaultInstance()) return this;
      if (other.getDoctorid() != 0) {
        setDoctorid(other.getDoctorid());
      }
      if (!other.getName().isEmpty()) {
        name_ = other.name_;
        onChanged();
      }
      if (!other.getAvatar().isEmpty()) {
        avatar_ = other.avatar_;
        onChanged();
      }
      if (!other.getCity().isEmpty()) {
        city_ = other.city_;
        onChanged();
      }
      if (!other.getHospital().isEmpty()) {
        hospital_ = other.hospital_;
        onChanged();
      }
      if (!other.getSpecialty().isEmpty()) {
        specialty_ = other.specialty_;
        onChanged();
      }
      if (other.getStatus() != 0) {
        setStatus(other.getStatus());
      }
      if (!other.getTitle().isEmpty()) {
        title_ = other.title_;
        onChanged();
      }
      if (!other.getDept().isEmpty()) {
        dept_ = other.dept_;
        onChanged();
      }
      if (!other.getHospitalIds().isEmpty()) {
        hospitalIds_ = other.hospitalIds_;
        onChanged();
      }
      if (!other.getDeptIds().isEmpty()) {
        deptIds_ = other.deptIds_;
        onChanged();
      }
      if (other.getScheduleStatus() != 0) {
        setScheduleStatus(other.getScheduleStatus());
      }
      if (other.getConsultFee() != 0) {
        setConsultFee(other.getConsultFee());
      }
      if (!other.getQrCodeUrl().isEmpty()) {
        qrCodeUrl_ = other.qrCodeUrl_;
        onChanged();
      }
      if (!other.getBriefIntro().isEmpty()) {
        briefIntro_ = other.briefIntro_;
        onChanged();
      }
      if (other.getSignId() != 0) {
        setSignId(other.getSignId());
      }
      if (!other.getSignUrl().isEmpty()) {
        signUrl_ = other.signUrl_;
        onChanged();
      }
      if (other.getBaseInfoStatus() != 0) {
        setBaseInfoStatus(other.getBaseInfoStatus());
      }
      if (other.getLicenseStatus() != 0) {
        setLicenseStatus(other.getLicenseStatus());
      }
      if (!other.getMobile().isEmpty()) {
        mobile_ = other.mobile_;
        onChanged();
      }
      if (other.getAuthType() != 0) {
        setAuthType(other.getAuthType());
      }
      if (other.getUserType() != 0) {
        setUserType(other.getUserType());
      }
      if (!other.getRpContent().isEmpty()) {
        rpContent_ = other.rpContent_;
        onChanged();
      }
      if (!other.getRpUrl().isEmpty()) {
        rpUrl_ = other.rpUrl_;
        onChanged();
      }
      if (!other.getAvatar2().isEmpty()) {
        avatar2_ = other.avatar2_;
        onChanged();
      }
      if (!other.getRpContentPc().isEmpty()) {
        rpContentPc_ = other.rpContentPc_;
        onChanged();
      }
      if (!other.getRpUrlPc().isEmpty()) {
        rpUrlPc_ = other.rpUrlPc_;
        onChanged();
      }
      if (other.getPharmacyId() != 0) {
        setPharmacyId(other.getPharmacyId());
      }
      if (!other.getPharmacyName().isEmpty()) {
        pharmacyName_ = other.pharmacyName_;
        onChanged();
      }
      if (other.getIdentity() != 0) {
        setIdentity(other.getIdentity());
      }
      if (other.getNegReception() != false) {
        setNegReception(other.getNegReception());
      }
      if (!other.getNegReceptionHint().isEmpty()) {
        negReceptionHint_ = other.negReceptionHint_;
        onChanged();
      }
      if (other.getEnableNextConsultChance() != false) {
        setEnableNextConsultChance(other.getEnableNextConsultChance());
      }
      if (other.getOfflineFee() != 0) {
        setOfflineFee(other.getOfflineFee());
      }
      if (other.getPrescriptionRightStatus() != 0) {
        setPrescriptionRightStatus(other.getPrescriptionRightStatus());
      }
      if (!other.getPrescriptionRightPharmacyIds().isEmpty()) {
        prescriptionRightPharmacyIds_ = other.prescriptionRightPharmacyIds_;
        onChanged();
      }
      if (other.getShowMedEquipBtn() != false) {
        setShowMedEquipBtn(other.getShowMedEquipBtn());
      }
      if (other.getHospitalId() != 0) {
        setHospitalId(other.getHospitalId());
      }
      if (other.getConsultFree() != 0) {
        setConsultFree(other.getConsultFree());
      }
      this.mergeUnknownFields(other.unknownFields);
      onChanged();
      return this;
    }

    @Override
    public final boolean isInitialized() {
      return true;
    }

    @Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      DoctorInfo parsedMessage = null;
      try {
        parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        parsedMessage = (DoctorInfo) e.getUnfinishedMessage();
        throw e.unwrapIOException();
      } finally {
        if (parsedMessage != null) {
          mergeFrom(parsedMessage);
        }
      }
      return this;
    }

    private int doctorid_ ;
    /**
     * <code>int32 doctorid = 1;</code>
     * @return The doctorid.
     */
    @Override
    public int getDoctorid() {
      return doctorid_;
    }
    /**
     * <code>int32 doctorid = 1;</code>
     * @param value The doctorid to set.
     * @return This builder for chaining.
     */
    public Builder setDoctorid(int value) {
      
      doctorid_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 doctorid = 1;</code>
     * @return This builder for chaining.
     */
    public Builder clearDoctorid() {
      
      doctorid_ = 0;
      onChanged();
      return this;
    }

    private Object name_ = "";
    /**
     * <code>string name = 2;</code>
     * @return The name.
     */
    public String getName() {
      Object ref = name_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        name_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string name = 2;</code>
     * @return The bytes for name.
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      Object ref = name_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string name = 2;</code>
     * @param value The name to set.
     * @return This builder for chaining.
     */
    public Builder setName(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      name_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string name = 2;</code>
     * @return This builder for chaining.
     */
    public Builder clearName() {
      
      name_ = getDefaultInstance().getName();
      onChanged();
      return this;
    }
    /**
     * <code>string name = 2;</code>
     * @param value The bytes for name to set.
     * @return This builder for chaining.
     */
    public Builder setNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      name_ = value;
      onChanged();
      return this;
    }

    private Object avatar_ = "";
    /**
     * <code>string avatar = 3;</code>
     * @return The avatar.
     */
    public String getAvatar() {
      Object ref = avatar_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        avatar_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string avatar = 3;</code>
     * @return The bytes for avatar.
     */
    public com.google.protobuf.ByteString
        getAvatarBytes() {
      Object ref = avatar_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        avatar_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string avatar = 3;</code>
     * @param value The avatar to set.
     * @return This builder for chaining.
     */
    public Builder setAvatar(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      avatar_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string avatar = 3;</code>
     * @return This builder for chaining.
     */
    public Builder clearAvatar() {
      
      avatar_ = getDefaultInstance().getAvatar();
      onChanged();
      return this;
    }
    /**
     * <code>string avatar = 3;</code>
     * @param value The bytes for avatar to set.
     * @return This builder for chaining.
     */
    public Builder setAvatarBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      avatar_ = value;
      onChanged();
      return this;
    }

    private Object city_ = "";
    /**
     * <code>string city = 4;</code>
     * @return The city.
     */
    public String getCity() {
      Object ref = city_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        city_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string city = 4;</code>
     * @return The bytes for city.
     */
    public com.google.protobuf.ByteString
        getCityBytes() {
      Object ref = city_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        city_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string city = 4;</code>
     * @param value The city to set.
     * @return This builder for chaining.
     */
    public Builder setCity(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      city_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string city = 4;</code>
     * @return This builder for chaining.
     */
    public Builder clearCity() {
      
      city_ = getDefaultInstance().getCity();
      onChanged();
      return this;
    }
    /**
     * <code>string city = 4;</code>
     * @param value The bytes for city to set.
     * @return This builder for chaining.
     */
    public Builder setCityBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      city_ = value;
      onChanged();
      return this;
    }

    private Object hospital_ = "";
    /**
     * <code>string hospital = 5;</code>
     * @return The hospital.
     */
    public String getHospital() {
      Object ref = hospital_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        hospital_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string hospital = 5;</code>
     * @return The bytes for hospital.
     */
    public com.google.protobuf.ByteString
        getHospitalBytes() {
      Object ref = hospital_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        hospital_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string hospital = 5;</code>
     * @param value The hospital to set.
     * @return This builder for chaining.
     */
    public Builder setHospital(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      hospital_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string hospital = 5;</code>
     * @return This builder for chaining.
     */
    public Builder clearHospital() {
      
      hospital_ = getDefaultInstance().getHospital();
      onChanged();
      return this;
    }
    /**
     * <code>string hospital = 5;</code>
     * @param value The bytes for hospital to set.
     * @return This builder for chaining.
     */
    public Builder setHospitalBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      hospital_ = value;
      onChanged();
      return this;
    }

    private Object specialty_ = "";
    /**
     * <code>string specialty = 6;</code>
     * @return The specialty.
     */
    public String getSpecialty() {
      Object ref = specialty_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        specialty_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string specialty = 6;</code>
     * @return The bytes for specialty.
     */
    public com.google.protobuf.ByteString
        getSpecialtyBytes() {
      Object ref = specialty_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        specialty_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string specialty = 6;</code>
     * @param value The specialty to set.
     * @return This builder for chaining.
     */
    public Builder setSpecialty(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      specialty_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string specialty = 6;</code>
     * @return This builder for chaining.
     */
    public Builder clearSpecialty() {
      
      specialty_ = getDefaultInstance().getSpecialty();
      onChanged();
      return this;
    }
    /**
     * <code>string specialty = 6;</code>
     * @param value The bytes for specialty to set.
     * @return This builder for chaining.
     */
    public Builder setSpecialtyBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      specialty_ = value;
      onChanged();
      return this;
    }

    private int status_ ;
    /**
     * <code>int32 status = 7;</code>
     * @return The status.
     */
    @Override
    public int getStatus() {
      return status_;
    }
    /**
     * <code>int32 status = 7;</code>
     * @param value The status to set.
     * @return This builder for chaining.
     */
    public Builder setStatus(int value) {
      
      status_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 status = 7;</code>
     * @return This builder for chaining.
     */
    public Builder clearStatus() {
      
      status_ = 0;
      onChanged();
      return this;
    }

    private Object title_ = "";
    /**
     * <code>string title = 8;</code>
     * @return The title.
     */
    public String getTitle() {
      Object ref = title_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        title_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string title = 8;</code>
     * @return The bytes for title.
     */
    public com.google.protobuf.ByteString
        getTitleBytes() {
      Object ref = title_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        title_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string title = 8;</code>
     * @param value The title to set.
     * @return This builder for chaining.
     */
    public Builder setTitle(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      title_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string title = 8;</code>
     * @return This builder for chaining.
     */
    public Builder clearTitle() {
      
      title_ = getDefaultInstance().getTitle();
      onChanged();
      return this;
    }
    /**
     * <code>string title = 8;</code>
     * @param value The bytes for title to set.
     * @return This builder for chaining.
     */
    public Builder setTitleBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      title_ = value;
      onChanged();
      return this;
    }

    private Object dept_ = "";
    /**
     * <code>string dept = 9;</code>
     * @return The dept.
     */
    public String getDept() {
      Object ref = dept_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        dept_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string dept = 9;</code>
     * @return The bytes for dept.
     */
    public com.google.protobuf.ByteString
        getDeptBytes() {
      Object ref = dept_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        dept_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string dept = 9;</code>
     * @param value The dept to set.
     * @return This builder for chaining.
     */
    public Builder setDept(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      dept_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string dept = 9;</code>
     * @return This builder for chaining.
     */
    public Builder clearDept() {
      
      dept_ = getDefaultInstance().getDept();
      onChanged();
      return this;
    }
    /**
     * <code>string dept = 9;</code>
     * @param value The bytes for dept to set.
     * @return This builder for chaining.
     */
    public Builder setDeptBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      dept_ = value;
      onChanged();
      return this;
    }

    private Object hospitalIds_ = "";
    /**
     * <code>string hospitalIds = 10;</code>
     * @return The hospitalIds.
     */
    public String getHospitalIds() {
      Object ref = hospitalIds_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        hospitalIds_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string hospitalIds = 10;</code>
     * @return The bytes for hospitalIds.
     */
    public com.google.protobuf.ByteString
        getHospitalIdsBytes() {
      Object ref = hospitalIds_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        hospitalIds_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string hospitalIds = 10;</code>
     * @param value The hospitalIds to set.
     * @return This builder for chaining.
     */
    public Builder setHospitalIds(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      hospitalIds_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string hospitalIds = 10;</code>
     * @return This builder for chaining.
     */
    public Builder clearHospitalIds() {
      
      hospitalIds_ = getDefaultInstance().getHospitalIds();
      onChanged();
      return this;
    }
    /**
     * <code>string hospitalIds = 10;</code>
     * @param value The bytes for hospitalIds to set.
     * @return This builder for chaining.
     */
    public Builder setHospitalIdsBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      hospitalIds_ = value;
      onChanged();
      return this;
    }

    private Object deptIds_ = "";
    /**
     * <code>string deptIds = 11;</code>
     * @return The deptIds.
     */
    public String getDeptIds() {
      Object ref = deptIds_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        deptIds_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string deptIds = 11;</code>
     * @return The bytes for deptIds.
     */
    public com.google.protobuf.ByteString
        getDeptIdsBytes() {
      Object ref = deptIds_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        deptIds_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string deptIds = 11;</code>
     * @param value The deptIds to set.
     * @return This builder for chaining.
     */
    public Builder setDeptIds(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      deptIds_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string deptIds = 11;</code>
     * @return This builder for chaining.
     */
    public Builder clearDeptIds() {
      
      deptIds_ = getDefaultInstance().getDeptIds();
      onChanged();
      return this;
    }
    /**
     * <code>string deptIds = 11;</code>
     * @param value The bytes for deptIds to set.
     * @return This builder for chaining.
     */
    public Builder setDeptIdsBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      deptIds_ = value;
      onChanged();
      return this;
    }

    private int scheduleStatus_ ;
    /**
     * <pre>
     *医生出诊状态
     * </pre>
     *
     * <code>int32 scheduleStatus = 12;</code>
     * @return The scheduleStatus.
     */
    @Override
    public int getScheduleStatus() {
      return scheduleStatus_;
    }
    /**
     * <pre>
     *医生出诊状态
     * </pre>
     *
     * <code>int32 scheduleStatus = 12;</code>
     * @param value The scheduleStatus to set.
     * @return This builder for chaining.
     */
    public Builder setScheduleStatus(int value) {
      
      scheduleStatus_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *医生出诊状态
     * </pre>
     *
     * <code>int32 scheduleStatus = 12;</code>
     * @return This builder for chaining.
     */
    public Builder clearScheduleStatus() {
      
      scheduleStatus_ = 0;
      onChanged();
      return this;
    }

    private int consultFee_ ;
    /**
     * <pre>
     *医生咨询费用（单位：分）
     * </pre>
     *
     * <code>int32 consultFee = 13;</code>
     * @return The consultFee.
     */
    @Override
    public int getConsultFee() {
      return consultFee_;
    }
    /**
     * <pre>
     *医生咨询费用（单位：分）
     * </pre>
     *
     * <code>int32 consultFee = 13;</code>
     * @param value The consultFee to set.
     * @return This builder for chaining.
     */
    public Builder setConsultFee(int value) {
      
      consultFee_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *医生咨询费用（单位：分）
     * </pre>
     *
     * <code>int32 consultFee = 13;</code>
     * @return This builder for chaining.
     */
    public Builder clearConsultFee() {
      
      consultFee_ = 0;
      onChanged();
      return this;
    }

    private Object qrCodeUrl_ = "";
    /**
     * <pre>
     *二维码链接
     * </pre>
     *
     * <code>string qrCodeUrl = 14;</code>
     * @return The qrCodeUrl.
     */
    public String getQrCodeUrl() {
      Object ref = qrCodeUrl_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        qrCodeUrl_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *二维码链接
     * </pre>
     *
     * <code>string qrCodeUrl = 14;</code>
     * @return The bytes for qrCodeUrl.
     */
    public com.google.protobuf.ByteString
        getQrCodeUrlBytes() {
      Object ref = qrCodeUrl_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        qrCodeUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *二维码链接
     * </pre>
     *
     * <code>string qrCodeUrl = 14;</code>
     * @param value The qrCodeUrl to set.
     * @return This builder for chaining.
     */
    public Builder setQrCodeUrl(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      qrCodeUrl_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *二维码链接
     * </pre>
     *
     * <code>string qrCodeUrl = 14;</code>
     * @return This builder for chaining.
     */
    public Builder clearQrCodeUrl() {
      
      qrCodeUrl_ = getDefaultInstance().getQrCodeUrl();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *二维码链接
     * </pre>
     *
     * <code>string qrCodeUrl = 14;</code>
     * @param value The bytes for qrCodeUrl to set.
     * @return This builder for chaining.
     */
    public Builder setQrCodeUrlBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      qrCodeUrl_ = value;
      onChanged();
      return this;
    }

    private Object briefIntro_ = "";
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string briefIntro = 15;</code>
     * @return The briefIntro.
     */
    public String getBriefIntro() {
      Object ref = briefIntro_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        briefIntro_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string briefIntro = 15;</code>
     * @return The bytes for briefIntro.
     */
    public com.google.protobuf.ByteString
        getBriefIntroBytes() {
      Object ref = briefIntro_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        briefIntro_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string briefIntro = 15;</code>
     * @param value The briefIntro to set.
     * @return This builder for chaining.
     */
    public Builder setBriefIntro(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      briefIntro_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string briefIntro = 15;</code>
     * @return This builder for chaining.
     */
    public Builder clearBriefIntro() {
      
      briefIntro_ = getDefaultInstance().getBriefIntro();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string briefIntro = 15;</code>
     * @param value The bytes for briefIntro to set.
     * @return This builder for chaining.
     */
    public Builder setBriefIntroBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      briefIntro_ = value;
      onChanged();
      return this;
    }

    private int signId_ ;
    /**
     * <pre>
     *医生签名ID
     * </pre>
     *
     * <code>int32 signId = 16;</code>
     * @return The signId.
     */
    @Override
    public int getSignId() {
      return signId_;
    }
    /**
     * <pre>
     *医生签名ID
     * </pre>
     *
     * <code>int32 signId = 16;</code>
     * @param value The signId to set.
     * @return This builder for chaining.
     */
    public Builder setSignId(int value) {
      
      signId_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *医生签名ID
     * </pre>
     *
     * <code>int32 signId = 16;</code>
     * @return This builder for chaining.
     */
    public Builder clearSignId() {
      
      signId_ = 0;
      onChanged();
      return this;
    }

    private Object signUrl_ = "";
    /**
     * <pre>
     *医生签名地址
     * </pre>
     *
     * <code>string signUrl = 17;</code>
     * @return The signUrl.
     */
    public String getSignUrl() {
      Object ref = signUrl_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        signUrl_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *医生签名地址
     * </pre>
     *
     * <code>string signUrl = 17;</code>
     * @return The bytes for signUrl.
     */
    public com.google.protobuf.ByteString
        getSignUrlBytes() {
      Object ref = signUrl_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        signUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *医生签名地址
     * </pre>
     *
     * <code>string signUrl = 17;</code>
     * @param value The signUrl to set.
     * @return This builder for chaining.
     */
    public Builder setSignUrl(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      signUrl_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *医生签名地址
     * </pre>
     *
     * <code>string signUrl = 17;</code>
     * @return This builder for chaining.
     */
    public Builder clearSignUrl() {
      
      signUrl_ = getDefaultInstance().getSignUrl();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *医生签名地址
     * </pre>
     *
     * <code>string signUrl = 17;</code>
     * @param value The bytes for signUrl to set.
     * @return This builder for chaining.
     */
    public Builder setSignUrlBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      signUrl_ = value;
      onChanged();
      return this;
    }

    private int baseInfoStatus_ ;
    /**
     * <pre>
     *基本信息是否填写（0-未填写，1-已填写）
     * </pre>
     *
     * <code>int32 baseInfoStatus = 18;</code>
     * @return The baseInfoStatus.
     */
    @Override
    public int getBaseInfoStatus() {
      return baseInfoStatus_;
    }
    /**
     * <pre>
     *基本信息是否填写（0-未填写，1-已填写）
     * </pre>
     *
     * <code>int32 baseInfoStatus = 18;</code>
     * @param value The baseInfoStatus to set.
     * @return This builder for chaining.
     */
    public Builder setBaseInfoStatus(int value) {
      
      baseInfoStatus_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *基本信息是否填写（0-未填写，1-已填写）
     * </pre>
     *
     * <code>int32 baseInfoStatus = 18;</code>
     * @return This builder for chaining.
     */
    public Builder clearBaseInfoStatus() {
      
      baseInfoStatus_ = 0;
      onChanged();
      return this;
    }

    private int licenseStatus_ ;
    /**
     * <pre>
     *认证状态（0-未通过，1-已通过）
     * </pre>
     *
     * <code>int32 licenseStatus = 19;</code>
     * @return The licenseStatus.
     */
    @Override
    public int getLicenseStatus() {
      return licenseStatus_;
    }
    /**
     * <pre>
     *认证状态（0-未通过，1-已通过）
     * </pre>
     *
     * <code>int32 licenseStatus = 19;</code>
     * @param value The licenseStatus to set.
     * @return This builder for chaining.
     */
    public Builder setLicenseStatus(int value) {
      
      licenseStatus_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *认证状态（0-未通过，1-已通过）
     * </pre>
     *
     * <code>int32 licenseStatus = 19;</code>
     * @return This builder for chaining.
     */
    public Builder clearLicenseStatus() {
      
      licenseStatus_ = 0;
      onChanged();
      return this;
    }

    private Object mobile_ = "";
    /**
     * <pre>
     *手机号
     * </pre>
     *
     * <code>string mobile = 20;</code>
     * @return The mobile.
     */
    public String getMobile() {
      Object ref = mobile_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        mobile_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *手机号
     * </pre>
     *
     * <code>string mobile = 20;</code>
     * @return The bytes for mobile.
     */
    public com.google.protobuf.ByteString
        getMobileBytes() {
      Object ref = mobile_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        mobile_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *手机号
     * </pre>
     *
     * <code>string mobile = 20;</code>
     * @param value The mobile to set.
     * @return This builder for chaining.
     */
    public Builder setMobile(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      mobile_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *手机号
     * </pre>
     *
     * <code>string mobile = 20;</code>
     * @return This builder for chaining.
     */
    public Builder clearMobile() {
      
      mobile_ = getDefaultInstance().getMobile();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *手机号
     * </pre>
     *
     * <code>string mobile = 20;</code>
     * @param value The bytes for mobile to set.
     * @return This builder for chaining.
     */
    public Builder setMobileBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      mobile_ = value;
      onChanged();
      return this;
    }

    private int authType_ ;
    /**
     * <pre>
     *认证方式, 0-后台导入；1-医生认证
     * </pre>
     *
     * <code>int32 authType = 21;</code>
     * @return The authType.
     */
    @Override
    public int getAuthType() {
      return authType_;
    }
    /**
     * <pre>
     *认证方式, 0-后台导入；1-医生认证
     * </pre>
     *
     * <code>int32 authType = 21;</code>
     * @param value The authType to set.
     * @return This builder for chaining.
     */
    public Builder setAuthType(int value) {
      
      authType_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *认证方式, 0-后台导入；1-医生认证
     * </pre>
     *
     * <code>int32 authType = 21;</code>
     * @return This builder for chaining.
     */
    public Builder clearAuthType() {
      
      authType_ = 0;
      onChanged();
      return this;
    }

    private int userType_ ;
    /**
     * <pre>
     *用户类型
     * </pre>
     *
     * <code>int32 userType = 22;</code>
     * @return The userType.
     */
    @Override
    public int getUserType() {
      return userType_;
    }
    /**
     * <pre>
     *用户类型
     * </pre>
     *
     * <code>int32 userType = 22;</code>
     * @param value The userType to set.
     * @return This builder for chaining.
     */
    public Builder setUserType(int value) {
      
      userType_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *用户类型
     * </pre>
     *
     * <code>int32 userType = 22;</code>
     * @return This builder for chaining.
     */
    public Builder clearUserType() {
      
      userType_ = 0;
      onChanged();
      return this;
    }

    private Object rpContent_ = "";
    /**
     * <pre>
     *处方二维码内容
     * </pre>
     *
     * <code>string rpContent = 23;</code>
     * @return The rpContent.
     */
    public String getRpContent() {
      Object ref = rpContent_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        rpContent_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *处方二维码内容
     * </pre>
     *
     * <code>string rpContent = 23;</code>
     * @return The bytes for rpContent.
     */
    public com.google.protobuf.ByteString
        getRpContentBytes() {
      Object ref = rpContent_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        rpContent_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *处方二维码内容
     * </pre>
     *
     * <code>string rpContent = 23;</code>
     * @param value The rpContent to set.
     * @return This builder for chaining.
     */
    public Builder setRpContent(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      rpContent_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码内容
     * </pre>
     *
     * <code>string rpContent = 23;</code>
     * @return This builder for chaining.
     */
    public Builder clearRpContent() {
      
      rpContent_ = getDefaultInstance().getRpContent();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码内容
     * </pre>
     *
     * <code>string rpContent = 23;</code>
     * @param value The bytes for rpContent to set.
     * @return This builder for chaining.
     */
    public Builder setRpContentBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      rpContent_ = value;
      onChanged();
      return this;
    }

    private Object rpUrl_ = "";
    /**
     * <pre>
     *处方二维码链接
     * </pre>
     *
     * <code>string rpUrl = 24;</code>
     * @return The rpUrl.
     */
    public String getRpUrl() {
      Object ref = rpUrl_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        rpUrl_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *处方二维码链接
     * </pre>
     *
     * <code>string rpUrl = 24;</code>
     * @return The bytes for rpUrl.
     */
    public com.google.protobuf.ByteString
        getRpUrlBytes() {
      Object ref = rpUrl_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        rpUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *处方二维码链接
     * </pre>
     *
     * <code>string rpUrl = 24;</code>
     * @param value The rpUrl to set.
     * @return This builder for chaining.
     */
    public Builder setRpUrl(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      rpUrl_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码链接
     * </pre>
     *
     * <code>string rpUrl = 24;</code>
     * @return This builder for chaining.
     */
    public Builder clearRpUrl() {
      
      rpUrl_ = getDefaultInstance().getRpUrl();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码链接
     * </pre>
     *
     * <code>string rpUrl = 24;</code>
     * @param value The bytes for rpUrl to set.
     * @return This builder for chaining.
     */
    public Builder setRpUrlBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      rpUrl_ = value;
      onChanged();
      return this;
    }

    private Object avatar2_ = "";
    /**
     * <code>string avatar2 = 25;</code>
     * @return The avatar2.
     */
    public String getAvatar2() {
      Object ref = avatar2_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        avatar2_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string avatar2 = 25;</code>
     * @return The bytes for avatar2.
     */
    public com.google.protobuf.ByteString
        getAvatar2Bytes() {
      Object ref = avatar2_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        avatar2_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string avatar2 = 25;</code>
     * @param value The avatar2 to set.
     * @return This builder for chaining.
     */
    public Builder setAvatar2(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      avatar2_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string avatar2 = 25;</code>
     * @return This builder for chaining.
     */
    public Builder clearAvatar2() {
      
      avatar2_ = getDefaultInstance().getAvatar2();
      onChanged();
      return this;
    }
    /**
     * <code>string avatar2 = 25;</code>
     * @param value The bytes for avatar2 to set.
     * @return This builder for chaining.
     */
    public Builder setAvatar2Bytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      avatar2_ = value;
      onChanged();
      return this;
    }

    private Object rpContentPc_ = "";
    /**
     * <pre>
     *处方二维码内容PC端
     * </pre>
     *
     * <code>string rpContentPc = 26;</code>
     * @return The rpContentPc.
     */
    public String getRpContentPc() {
      Object ref = rpContentPc_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        rpContentPc_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *处方二维码内容PC端
     * </pre>
     *
     * <code>string rpContentPc = 26;</code>
     * @return The bytes for rpContentPc.
     */
    public com.google.protobuf.ByteString
        getRpContentPcBytes() {
      Object ref = rpContentPc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        rpContentPc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *处方二维码内容PC端
     * </pre>
     *
     * <code>string rpContentPc = 26;</code>
     * @param value The rpContentPc to set.
     * @return This builder for chaining.
     */
    public Builder setRpContentPc(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      rpContentPc_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码内容PC端
     * </pre>
     *
     * <code>string rpContentPc = 26;</code>
     * @return This builder for chaining.
     */
    public Builder clearRpContentPc() {
      
      rpContentPc_ = getDefaultInstance().getRpContentPc();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码内容PC端
     * </pre>
     *
     * <code>string rpContentPc = 26;</code>
     * @param value The bytes for rpContentPc to set.
     * @return This builder for chaining.
     */
    public Builder setRpContentPcBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      rpContentPc_ = value;
      onChanged();
      return this;
    }

    private Object rpUrlPc_ = "";
    /**
     * <pre>
     *处方二维码链接PC端
     * </pre>
     *
     * <code>string rpUrlPc = 27;</code>
     * @return The rpUrlPc.
     */
    public String getRpUrlPc() {
      Object ref = rpUrlPc_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        rpUrlPc_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <pre>
     *处方二维码链接PC端
     * </pre>
     *
     * <code>string rpUrlPc = 27;</code>
     * @return The bytes for rpUrlPc.
     */
    public com.google.protobuf.ByteString
        getRpUrlPcBytes() {
      Object ref = rpUrlPc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        rpUrlPc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     *处方二维码链接PC端
     * </pre>
     *
     * <code>string rpUrlPc = 27;</code>
     * @param value The rpUrlPc to set.
     * @return This builder for chaining.
     */
    public Builder setRpUrlPc(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      rpUrlPc_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码链接PC端
     * </pre>
     *
     * <code>string rpUrlPc = 27;</code>
     * @return This builder for chaining.
     */
    public Builder clearRpUrlPc() {
      
      rpUrlPc_ = getDefaultInstance().getRpUrlPc();
      onChanged();
      return this;
    }
    /**
     * <pre>
     *处方二维码链接PC端
     * </pre>
     *
     * <code>string rpUrlPc = 27;</code>
     * @param value The bytes for rpUrlPc to set.
     * @return This builder for chaining.
     */
    public Builder setRpUrlPcBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      rpUrlPc_ = value;
      onChanged();
      return this;
    }

    private int pharmacyId_ ;
    /**
     * <code>int32 pharmacyId = 28;</code>
     * @return The pharmacyId.
     */
    @Override
    public int getPharmacyId() {
      return pharmacyId_;
    }
    /**
     * <code>int32 pharmacyId = 28;</code>
     * @param value The pharmacyId to set.
     * @return This builder for chaining.
     */
    public Builder setPharmacyId(int value) {
      
      pharmacyId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 pharmacyId = 28;</code>
     * @return This builder for chaining.
     */
    public Builder clearPharmacyId() {
      
      pharmacyId_ = 0;
      onChanged();
      return this;
    }

    private Object pharmacyName_ = "";
    /**
     * <code>string pharmacyName = 29;</code>
     * @return The pharmacyName.
     */
    public String getPharmacyName() {
      Object ref = pharmacyName_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        pharmacyName_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string pharmacyName = 29;</code>
     * @return The bytes for pharmacyName.
     */
    public com.google.protobuf.ByteString
        getPharmacyNameBytes() {
      Object ref = pharmacyName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        pharmacyName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string pharmacyName = 29;</code>
     * @param value The pharmacyName to set.
     * @return This builder for chaining.
     */
    public Builder setPharmacyName(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      pharmacyName_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string pharmacyName = 29;</code>
     * @return This builder for chaining.
     */
    public Builder clearPharmacyName() {
      
      pharmacyName_ = getDefaultInstance().getPharmacyName();
      onChanged();
      return this;
    }
    /**
     * <code>string pharmacyName = 29;</code>
     * @param value The bytes for pharmacyName to set.
     * @return This builder for chaining.
     */
    public Builder setPharmacyNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      pharmacyName_ = value;
      onChanged();
      return this;
    }

    private int identity_ ;
    /**
     * <code>int32 identity = 30;</code>
     * @return The identity.
     */
    @Override
    public int getIdentity() {
      return identity_;
    }
    /**
     * <code>int32 identity = 30;</code>
     * @param value The identity to set.
     * @return This builder for chaining.
     */
    public Builder setIdentity(int value) {
      
      identity_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 identity = 30;</code>
     * @return This builder for chaining.
     */
    public Builder clearIdentity() {
      
      identity_ = 0;
      onChanged();
      return this;
    }

    private boolean negReception_ ;
    /**
     * <code>bool negReception = 31;</code>
     * @return The negReception.
     */
    @Override
    public boolean getNegReception() {
      return negReception_;
    }
    /**
     * <code>bool negReception = 31;</code>
     * @param value The negReception to set.
     * @return This builder for chaining.
     */
    public Builder setNegReception(boolean value) {
      
      negReception_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>bool negReception = 31;</code>
     * @return This builder for chaining.
     */
    public Builder clearNegReception() {
      
      negReception_ = false;
      onChanged();
      return this;
    }

    private Object negReceptionHint_ = "";
    /**
     * <code>string negReceptionHint = 32;</code>
     * @return The negReceptionHint.
     */
    public String getNegReceptionHint() {
      Object ref = negReceptionHint_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        negReceptionHint_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string negReceptionHint = 32;</code>
     * @return The bytes for negReceptionHint.
     */
    public com.google.protobuf.ByteString
        getNegReceptionHintBytes() {
      Object ref = negReceptionHint_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        negReceptionHint_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string negReceptionHint = 32;</code>
     * @param value The negReceptionHint to set.
     * @return This builder for chaining.
     */
    public Builder setNegReceptionHint(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      negReceptionHint_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string negReceptionHint = 32;</code>
     * @return This builder for chaining.
     */
    public Builder clearNegReceptionHint() {
      
      negReceptionHint_ = getDefaultInstance().getNegReceptionHint();
      onChanged();
      return this;
    }
    /**
     * <code>string negReceptionHint = 32;</code>
     * @param value The bytes for negReceptionHint to set.
     * @return This builder for chaining.
     */
    public Builder setNegReceptionHintBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      negReceptionHint_ = value;
      onChanged();
      return this;
    }

    private boolean enableNextConsultChance_ ;
    /**
     * <pre>
     * v3.2.0, 患者线下就诊后，是否3天内有1次免费咨询机会
     * </pre>
     *
     * <code>bool enableNextConsultChance = 33;</code>
     * @return The enableNextConsultChance.
     */
    @Override
    public boolean getEnableNextConsultChance() {
      return enableNextConsultChance_;
    }
    /**
     * <pre>
     * v3.2.0, 患者线下就诊后，是否3天内有1次免费咨询机会
     * </pre>
     *
     * <code>bool enableNextConsultChance = 33;</code>
     * @param value The enableNextConsultChance to set.
     * @return This builder for chaining.
     */
    public Builder setEnableNextConsultChance(boolean value) {
      
      enableNextConsultChance_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * v3.2.0, 患者线下就诊后，是否3天内有1次免费咨询机会
     * </pre>
     *
     * <code>bool enableNextConsultChance = 33;</code>
     * @return This builder for chaining.
     */
    public Builder clearEnableNextConsultChance() {
      
      enableNextConsultChance_ = false;
      onChanged();
      return this;
    }

    private int offlineFee_ ;
    /**
     * <pre>
     * 线下就诊费用设置
     * </pre>
     *
     * <code>int32 offlineFee = 34;</code>
     * @return The offlineFee.
     */
    @Override
    public int getOfflineFee() {
      return offlineFee_;
    }
    /**
     * <pre>
     * 线下就诊费用设置
     * </pre>
     *
     * <code>int32 offlineFee = 34;</code>
     * @param value The offlineFee to set.
     * @return This builder for chaining.
     */
    public Builder setOfflineFee(int value) {
      
      offlineFee_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * 线下就诊费用设置
     * </pre>
     *
     * <code>int32 offlineFee = 34;</code>
     * @return This builder for chaining.
     */
    public Builder clearOfflineFee() {
      
      offlineFee_ = 0;
      onChanged();
      return this;
    }

    private int prescriptionRightStatus_ ;
    /**
     * <code>int32 prescriptionRightStatus = 35;</code>
     * @return The prescriptionRightStatus.
     */
    @Override
    public int getPrescriptionRightStatus() {
      return prescriptionRightStatus_;
    }
    /**
     * <code>int32 prescriptionRightStatus = 35;</code>
     * @param value The prescriptionRightStatus to set.
     * @return This builder for chaining.
     */
    public Builder setPrescriptionRightStatus(int value) {
      
      prescriptionRightStatus_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 prescriptionRightStatus = 35;</code>
     * @return This builder for chaining.
     */
    public Builder clearPrescriptionRightStatus() {
      
      prescriptionRightStatus_ = 0;
      onChanged();
      return this;
    }

    private Object prescriptionRightPharmacyIds_ = "";
    /**
     * <code>string prescriptionRightPharmacyIds = 36;</code>
     * @return The prescriptionRightPharmacyIds.
     */
    public String getPrescriptionRightPharmacyIds() {
      Object ref = prescriptionRightPharmacyIds_;
      if (!(ref instanceof String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        prescriptionRightPharmacyIds_ = s;
        return s;
      } else {
        return (String) ref;
      }
    }
    /**
     * <code>string prescriptionRightPharmacyIds = 36;</code>
     * @return The bytes for prescriptionRightPharmacyIds.
     */
    public com.google.protobuf.ByteString
        getPrescriptionRightPharmacyIdsBytes() {
      Object ref = prescriptionRightPharmacyIds_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        prescriptionRightPharmacyIds_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <code>string prescriptionRightPharmacyIds = 36;</code>
     * @param value The prescriptionRightPharmacyIds to set.
     * @return This builder for chaining.
     */
    public Builder setPrescriptionRightPharmacyIds(
        String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  
      prescriptionRightPharmacyIds_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>string prescriptionRightPharmacyIds = 36;</code>
     * @return This builder for chaining.
     */
    public Builder clearPrescriptionRightPharmacyIds() {
      
      prescriptionRightPharmacyIds_ = getDefaultInstance().getPrescriptionRightPharmacyIds();
      onChanged();
      return this;
    }
    /**
     * <code>string prescriptionRightPharmacyIds = 36;</code>
     * @param value The bytes for prescriptionRightPharmacyIds to set.
     * @return This builder for chaining.
     */
    public Builder setPrescriptionRightPharmacyIdsBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      
      prescriptionRightPharmacyIds_ = value;
      onChanged();
      return this;
    }

    private boolean showMedEquipBtn_ ;
    /**
     * <pre>
     * 是否显示开医疗设备检查按钮
     * </pre>
     *
     * <code>bool showMedEquipBtn = 37;</code>
     * @return The showMedEquipBtn.
     */
    @Override
    public boolean getShowMedEquipBtn() {
      return showMedEquipBtn_;
    }
    /**
     * <pre>
     * 是否显示开医疗设备检查按钮
     * </pre>
     *
     * <code>bool showMedEquipBtn = 37;</code>
     * @param value The showMedEquipBtn to set.
     * @return This builder for chaining.
     */
    public Builder setShowMedEquipBtn(boolean value) {
      
      showMedEquipBtn_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * 是否显示开医疗设备检查按钮
     * </pre>
     *
     * <code>bool showMedEquipBtn = 37;</code>
     * @return This builder for chaining.
     */
    public Builder clearShowMedEquipBtn() {
      
      showMedEquipBtn_ = false;
      onChanged();
      return this;
    }

    private int hospitalId_ ;
    /**
     * <code>int32 hospitalId = 38;</code>
     * @return The hospitalId.
     */
    @Override
    public int getHospitalId() {
      return hospitalId_;
    }
    /**
     * <code>int32 hospitalId = 38;</code>
     * @param value The hospitalId to set.
     * @return This builder for chaining.
     */
    public Builder setHospitalId(int value) {
      
      hospitalId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 hospitalId = 38;</code>
     * @return This builder for chaining.
     */
    public Builder clearHospitalId() {
      
      hospitalId_ = 0;
      onChanged();
      return this;
    }

    private int consultFree_ ;
    /**
     * <code>int32 consultFree = 39;</code>
     * @return The consultFree.
     */
    @Override
    public int getConsultFree() {
      return consultFree_;
    }
    /**
     * <code>int32 consultFree = 39;</code>
     * @param value The consultFree to set.
     * @return This builder for chaining.
     */
    public Builder setConsultFree(int value) {
      
      consultFree_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>int32 consultFree = 39;</code>
     * @return This builder for chaining.
     */
    public Builder clearConsultFree() {
      
      consultFree_ = 0;
      onChanged();
      return this;
    }
    @Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @Override
    public final Builder mergeUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:com.ywt.gapi.user.DoctorInfo)
  }

  // @@protoc_insertion_point(class_scope:com.ywt.gapi.user.DoctorInfo)
  private static final DoctorInfo DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new DoctorInfo();
  }

  public static DoctorInfo getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser<DoctorInfo>
      PARSER = new com.google.protobuf.AbstractParser<DoctorInfo>() {
    @Override
    public DoctorInfo parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return new DoctorInfo(input, extensionRegistry);
    }
  };

  public static com.google.protobuf.Parser<DoctorInfo> parser() {
    return PARSER;
  }

  @Override
  public com.google.protobuf.Parser<DoctorInfo> getParserForType() {
    return PARSER;
  }

  @Override
  public DoctorInfo getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}

