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

package cn.muchinfo.rma.protobuf.protoclasses;

public final class ManageServiceMI2 {
  private ManageServiceMI2() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface UserInfoCheckMangeReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.UserInfoCheckMangeReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * uint64 1审核通过2审核拒绝
     * </pre>
     *
     * <code>optional uint64 auditflag = 2;</code>
     * @return Whether the auditflag field is set.
     */
    boolean hasAuditflag();
    /**
     * <pre>
     * uint64 1审核通过2审核拒绝
     * </pre>
     *
     * <code>optional uint64 auditflag = 2;</code>
     * @return The auditflag.
     */
    long getAuditflag();

    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 3;</code>
     * @return Whether the userid field is set.
     */
    boolean hasUserid();
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 3;</code>
     * @return The userid.
     */
    long getUserid();

    /**
     * <pre>
     * uint64 审核操作人userid
     * </pre>
     *
     * <code>optional uint64 audituserid = 4;</code>
     * @return Whether the audituserid field is set.
     */
    boolean hasAudituserid();
    /**
     * <pre>
     * uint64 审核操作人userid
     * </pre>
     *
     * <code>optional uint64 audituserid = 4;</code>
     * @return The audituserid.
     */
    long getAudituserid();

    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return Whether the remark field is set.
     */
    boolean hasRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return The remark.
     */
    String getRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return The bytes for remark.
     */
    com.google.protobuf.ByteString
        getRemarkBytes();
  }
  /**
   * <pre>
   * 客户信息审核通过请求 0 29 122
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.UserInfoCheckMangeReq}
   */
  public static final class UserInfoCheckMangeReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.UserInfoCheckMangeReq)
      UserInfoCheckMangeReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UserInfoCheckMangeReq.newBuilder() to construct.
    private UserInfoCheckMangeReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private UserInfoCheckMangeReq() {
      remark_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private UserInfoCheckMangeReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              auditflag_ = input.readUInt64();
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              userid_ = input.readUInt64();
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              audituserid_ = input.readUInt64();
              break;
            }
            case 42: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000010;
              remark_ = bs;
              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 ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              UserInfoCheckMangeReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int AUDITFLAG_FIELD_NUMBER = 2;
    private long auditflag_;
    /**
     * <pre>
     * uint64 1审核通过2审核拒绝
     * </pre>
     *
     * <code>optional uint64 auditflag = 2;</code>
     * @return Whether the auditflag field is set.
     */
    @Override
    public boolean hasAuditflag() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * uint64 1审核通过2审核拒绝
     * </pre>
     *
     * <code>optional uint64 auditflag = 2;</code>
     * @return The auditflag.
     */
    @Override
    public long getAuditflag() {
      return auditflag_;
    }

    public static final int USERID_FIELD_NUMBER = 3;
    private long userid_;
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 3;</code>
     * @return Whether the userid field is set.
     */
    @Override
    public boolean hasUserid() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 3;</code>
     * @return The userid.
     */
    @Override
    public long getUserid() {
      return userid_;
    }

    public static final int AUDITUSERID_FIELD_NUMBER = 4;
    private long audituserid_;
    /**
     * <pre>
     * uint64 审核操作人userid
     * </pre>
     *
     * <code>optional uint64 audituserid = 4;</code>
     * @return Whether the audituserid field is set.
     */
    @Override
    public boolean hasAudituserid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 审核操作人userid
     * </pre>
     *
     * <code>optional uint64 audituserid = 4;</code>
     * @return The audituserid.
     */
    @Override
    public long getAudituserid() {
      return audituserid_;
    }

    public static final int REMARK_FIELD_NUMBER = 5;
    private volatile Object remark_;
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return Whether the remark field is set.
     */
    @Override
    public boolean hasRemark() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return The remark.
     */
    @Override
    public String getRemark() {
      Object ref = remark_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          remark_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 5;</code>
     * @return The bytes for remark.
     */
    @Override
    public com.google.protobuf.ByteString
        getRemarkBytes() {
      Object ref = remark_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        remark_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeUInt64(2, auditflag_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeUInt64(3, userid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, audituserid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, remark_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(2, auditflag_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(3, userid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, audituserid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, remark_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasAuditflag() != other.hasAuditflag()) return false;
      if (hasAuditflag()) {
        if (getAuditflag()
            != other.getAuditflag()) return false;
      }
      if (hasUserid() != other.hasUserid()) return false;
      if (hasUserid()) {
        if (getUserid()
            != other.getUserid()) return false;
      }
      if (hasAudituserid() != other.hasAudituserid()) return false;
      if (hasAudituserid()) {
        if (getAudituserid()
            != other.getAudituserid()) return false;
      }
      if (hasRemark() != other.hasRemark()) return false;
      if (hasRemark()) {
        if (!getRemark()
            .equals(other.getRemark())) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasAuditflag()) {
        hash = (37 * hash) + AUDITFLAG_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getAuditflag());
      }
      if (hasUserid()) {
        hash = (37 * hash) + USERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getUserid());
      }
      if (hasAudituserid()) {
        hash = (37 * hash) + AUDITUSERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getAudituserid());
      }
      if (hasRemark()) {
        hash = (37 * hash) + REMARK_FIELD_NUMBER;
        hash = (53 * hash) + getRemark().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static UserInfoCheckMangeReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeReq 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 UserInfoCheckMangeReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeReq 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 UserInfoCheckMangeReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeReq 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(UserInfoCheckMangeReq 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>
     * 客户信息审核通过请求 0 29 122
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.UserInfoCheckMangeReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.UserInfoCheckMangeReq)
        UserInfoCheckMangeReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                UserInfoCheckMangeReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.UserInfoCheckMangeReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        auditflag_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        userid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000004);
        audituserid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        remark_ = "";
        bitField0_ = (bitField0_ & ~0x00000010);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor;
      }

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

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

      @Override
      public UserInfoCheckMangeReq buildPartial() {
        UserInfoCheckMangeReq result = new UserInfoCheckMangeReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.auditflag_ = auditflag_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.userid_ = userid_;
          to_bitField0_ |= 0x00000004;
        }
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.audituserid_ = audituserid_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          to_bitField0_ |= 0x00000010;
        }
        result.remark_ = remark_;
        result.bitField0_ = to_bitField0_;
        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 UserInfoCheckMangeReq) {
          return mergeFrom((UserInfoCheckMangeReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(UserInfoCheckMangeReq other) {
        if (other == UserInfoCheckMangeReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasAuditflag()) {
          setAuditflag(other.getAuditflag());
        }
        if (other.hasUserid()) {
          setUserid(other.getUserid());
        }
        if (other.hasAudituserid()) {
          setAudituserid(other.getAudituserid());
        }
        if (other.hasRemark()) {
          bitField0_ |= 0x00000010;
          remark_ = other.remark_;
          onChanged();
        }
        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 {
        UserInfoCheckMangeReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (UserInfoCheckMangeReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private long auditflag_ ;
      /**
       * <pre>
       * uint64 1审核通过2审核拒绝
       * </pre>
       *
       * <code>optional uint64 auditflag = 2;</code>
       * @return Whether the auditflag field is set.
       */
      @Override
      public boolean hasAuditflag() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * uint64 1审核通过2审核拒绝
       * </pre>
       *
       * <code>optional uint64 auditflag = 2;</code>
       * @return The auditflag.
       */
      @Override
      public long getAuditflag() {
        return auditflag_;
      }
      /**
       * <pre>
       * uint64 1审核通过2审核拒绝
       * </pre>
       *
       * <code>optional uint64 auditflag = 2;</code>
       * @param value The auditflag to set.
       * @return This builder for chaining.
       */
      public Builder setAuditflag(long value) {
        bitField0_ |= 0x00000002;
        auditflag_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 1审核通过2审核拒绝
       * </pre>
       *
       * <code>optional uint64 auditflag = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearAuditflag() {
        bitField0_ = (bitField0_ & ~0x00000002);
        auditflag_ = 0L;
        onChanged();
        return this;
      }

      private long userid_ ;
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 3;</code>
       * @return Whether the userid field is set.
       */
      @Override
      public boolean hasUserid() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 3;</code>
       * @return The userid.
       */
      @Override
      public long getUserid() {
        return userid_;
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 3;</code>
       * @param value The userid to set.
       * @return This builder for chaining.
       */
      public Builder setUserid(long value) {
        bitField0_ |= 0x00000004;
        userid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearUserid() {
        bitField0_ = (bitField0_ & ~0x00000004);
        userid_ = 0L;
        onChanged();
        return this;
      }

      private long audituserid_ ;
      /**
       * <pre>
       * uint64 审核操作人userid
       * </pre>
       *
       * <code>optional uint64 audituserid = 4;</code>
       * @return Whether the audituserid field is set.
       */
      @Override
      public boolean hasAudituserid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 审核操作人userid
       * </pre>
       *
       * <code>optional uint64 audituserid = 4;</code>
       * @return The audituserid.
       */
      @Override
      public long getAudituserid() {
        return audituserid_;
      }
      /**
       * <pre>
       * uint64 审核操作人userid
       * </pre>
       *
       * <code>optional uint64 audituserid = 4;</code>
       * @param value The audituserid to set.
       * @return This builder for chaining.
       */
      public Builder setAudituserid(long value) {
        bitField0_ |= 0x00000008;
        audituserid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 审核操作人userid
       * </pre>
       *
       * <code>optional uint64 audituserid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearAudituserid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        audituserid_ = 0L;
        onChanged();
        return this;
      }

      private Object remark_ = "";
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @return Whether the remark field is set.
       */
      public boolean hasRemark() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @return The remark.
       */
      public String getRemark() {
        Object ref = remark_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            remark_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @return The bytes for remark.
       */
      public com.google.protobuf.ByteString
          getRemarkBytes() {
        Object ref = remark_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          remark_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @param value The remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemark(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        remark_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearRemark() {
        bitField0_ = (bitField0_ & ~0x00000010);
        remark_ = getDefaultInstance().getRemark();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 5;</code>
       * @param value The bytes for remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemarkBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        remark_ = value;
        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:ManageServiceMI2.UserInfoCheckMangeReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.UserInfoCheckMangeReq)
    private static final UserInfoCheckMangeReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new UserInfoCheckMangeReq();
    }

    public static UserInfoCheckMangeReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface UserInfoCheckMangeRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.UserInfoCheckMangeRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 4;</code>
     * @return Whether the userid field is set.
     */
    boolean hasUserid();
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 4;</code>
     * @return The userid.
     */
    long getUserid();
  }
  /**
   * <pre>
   * 客户信息审核通过请求响应 0 29 123
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.UserInfoCheckMangeRsp}
   */
  public static final class UserInfoCheckMangeRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.UserInfoCheckMangeRsp)
      UserInfoCheckMangeRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UserInfoCheckMangeRsp.newBuilder() to construct.
    private UserInfoCheckMangeRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private UserInfoCheckMangeRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private UserInfoCheckMangeRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              userid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              UserInfoCheckMangeRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int USERID_FIELD_NUMBER = 4;
    private long userid_;
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 4;</code>
     * @return Whether the userid field is set.
     */
    @Override
    public boolean hasUserid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 客户userid
     * </pre>
     *
     * <code>optional uint64 userid = 4;</code>
     * @return The userid.
     */
    @Override
    public long getUserid() {
      return userid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, userid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, userid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasUserid() != other.hasUserid()) return false;
      if (hasUserid()) {
        if (getUserid()
            != other.getUserid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasUserid()) {
        hash = (37 * hash) + USERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getUserid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static UserInfoCheckMangeRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static UserInfoCheckMangeRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static UserInfoCheckMangeRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeRsp 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 UserInfoCheckMangeRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeRsp 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 UserInfoCheckMangeRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static UserInfoCheckMangeRsp 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(UserInfoCheckMangeRsp 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>
     * 客户信息审核通过请求响应 0 29 123
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.UserInfoCheckMangeRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.UserInfoCheckMangeRsp)
        UserInfoCheckMangeRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                UserInfoCheckMangeRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.UserInfoCheckMangeRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        userid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor;
      }

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

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

      @Override
      public UserInfoCheckMangeRsp buildPartial() {
        UserInfoCheckMangeRsp result = new UserInfoCheckMangeRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.userid_ = userid_;
          to_bitField0_ |= 0x00000008;
        }
        result.bitField0_ = to_bitField0_;
        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 UserInfoCheckMangeRsp) {
          return mergeFrom((UserInfoCheckMangeRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(UserInfoCheckMangeRsp other) {
        if (other == UserInfoCheckMangeRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasUserid()) {
          setUserid(other.getUserid());
        }
        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 {
        UserInfoCheckMangeRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (UserInfoCheckMangeRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long userid_ ;
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 4;</code>
       * @return Whether the userid field is set.
       */
      @Override
      public boolean hasUserid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 4;</code>
       * @return The userid.
       */
      @Override
      public long getUserid() {
        return userid_;
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 4;</code>
       * @param value The userid to set.
       * @return This builder for chaining.
       */
      public Builder setUserid(long value) {
        bitField0_ |= 0x00000008;
        userid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 客户userid
       * </pre>
       *
       * <code>optional uint64 userid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearUserid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        userid_ = 0L;
        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:ManageServiceMI2.UserInfoCheckMangeRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.UserInfoCheckMangeRsp)
    private static final UserInfoCheckMangeRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new UserInfoCheckMangeRsp();
    }

    public static UserInfoCheckMangeRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface DeliveryGoodsApplyReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.DeliveryGoodsApplyReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * uint64 用户ID
     * </pre>
     *
     * <code>optional uint64 userid = 2;</code>
     * @return Whether the userid field is set.
     */
    boolean hasUserid();
    /**
     * <pre>
     * uint64 用户ID
     * </pre>
     *
     * <code>optional uint64 userid = 2;</code>
     * @return The userid.
     */
    long getUserid();

    /**
     * <pre>
     * uint64 登录ID
     * </pre>
     *
     * <code>optional uint64 loginid = 3;</code>
     * @return Whether the loginid field is set.
     */
    boolean hasLoginid();
    /**
     * <pre>
     * uint64 登录ID
     * </pre>
     *
     * <code>optional uint64 loginid = 3;</code>
     * @return The loginid.
     */
    long getLoginid();

    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return Whether the deliverygoodscode field is set.
     */
    boolean hasDeliverygoodscode();
    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return The deliverygoodscode.
     */
    String getDeliverygoodscode();
    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return The bytes for deliverygoodscode.
     */
    com.google.protobuf.ByteString
        getDeliverygoodscodeBytes();

    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return Whether the deliverygoodsname field is set.
     */
    boolean hasDeliverygoodsname();
    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return The deliverygoodsname.
     */
    String getDeliverygoodsname();
    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return The bytes for deliverygoodsname.
     */
    com.google.protobuf.ByteString
        getDeliverygoodsnameBytes();

    /**
     * <pre>
     * uint64 现货商品ID(修改时有值)
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 6;</code>
     * @return Whether the wrstandardid field is set.
     */
    boolean hasWrstandardid();
    /**
     * <pre>
     * uint64 现货商品ID(修改时有值)
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 6;</code>
     * @return The wrstandardid.
     */
    long getWrstandardid();

    /**
     * <pre>
     * uint64 单位ID
     * </pre>
     *
     * <code>optional uint64 unitid = 7;</code>
     * @return Whether the unitid field is set.
     */
    boolean hasUnitid();
    /**
     * <pre>
     * uint64 单位ID
     * </pre>
     *
     * <code>optional uint64 unitid = 7;</code>
     * @return The unitid.
     */
    long getUnitid();

    /**
     * <pre>
     * int32 类型 1 新增 2 修改
     * </pre>
     *
     * <code>optional int32 type = 8;</code>
     * @return Whether the type field is set.
     */
    boolean hasType();
    /**
     * <pre>
     * int32 类型 1 新增 2 修改
     * </pre>
     *
     * <code>optional int32 type = 8;</code>
     * @return The type.
     */
    int getType();

    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return Whether the remark field is set.
     */
    boolean hasRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return The remark.
     */
    String getRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return The bytes for remark.
     */
    com.google.protobuf.ByteString
        getRemarkBytes();

    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    java.util.List<SpotGoodsModelEx>
        getSpotgoodsmodelsList();
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    SpotGoodsModelEx getSpotgoodsmodels(int index);
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    int getSpotgoodsmodelsCount();
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    java.util.List<? extends SpotGoodsModelExOrBuilder>
        getSpotgoodsmodelsOrBuilderList();
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    SpotGoodsModelExOrBuilder getSpotgoodsmodelsOrBuilder(
        int index);

    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    java.util.List<SpotGoodsBrandEx>
        getSpotgoodsbrandsList();
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    SpotGoodsBrandEx getSpotgoodsbrands(int index);
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    int getSpotgoodsbrandsCount();
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    java.util.List<? extends SpotGoodsBrandExOrBuilder>
        getSpotgoodsbrandsOrBuilderList();
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    SpotGoodsBrandExOrBuilder getSpotgoodsbrandsOrBuilder(
        int index);

    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    java.util.List<WRSConvertDetailEx>
        getWrsconvertdetailsList();
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    WRSConvertDetailEx getWrsconvertdetails(int index);
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    int getWrsconvertdetailsCount();
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    java.util.List<? extends WRSConvertDetailExOrBuilder>
        getWrsconvertdetailsOrBuilderList();
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    WRSConvertDetailExOrBuilder getWrsconvertdetailsOrBuilder(
        int index);
  }
  /**
   * <pre>
   * 现货品种申请请求 0 29 124
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.DeliveryGoodsApplyReq}
   */
  public static final class DeliveryGoodsApplyReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.DeliveryGoodsApplyReq)
      DeliveryGoodsApplyReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeliveryGoodsApplyReq.newBuilder() to construct.
    private DeliveryGoodsApplyReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeliveryGoodsApplyReq() {
      deliverygoodscode_ = "";
      deliverygoodsname_ = "";
      remark_ = "";
      spotgoodsmodels_ = java.util.Collections.emptyList();
      spotgoodsbrands_ = java.util.Collections.emptyList();
      wrsconvertdetails_ = java.util.Collections.emptyList();
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeliveryGoodsApplyReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              userid_ = input.readUInt64();
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              loginid_ = input.readUInt64();
              break;
            }
            case 34: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000008;
              deliverygoodscode_ = bs;
              break;
            }
            case 42: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000010;
              deliverygoodsname_ = bs;
              break;
            }
            case 48: {
              bitField0_ |= 0x00000020;
              wrstandardid_ = input.readUInt64();
              break;
            }
            case 56: {
              bitField0_ |= 0x00000040;
              unitid_ = input.readUInt64();
              break;
            }
            case 64: {
              bitField0_ |= 0x00000080;
              type_ = input.readInt32();
              break;
            }
            case 74: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000100;
              remark_ = bs;
              break;
            }
            case 82: {
              if (!((mutable_bitField0_ & 0x00000200) != 0)) {
                spotgoodsmodels_ = new java.util.ArrayList<SpotGoodsModelEx>();
                mutable_bitField0_ |= 0x00000200;
              }
              spotgoodsmodels_.add(
                  input.readMessage(SpotGoodsModelEx.PARSER, extensionRegistry));
              break;
            }
            case 90: {
              if (!((mutable_bitField0_ & 0x00000400) != 0)) {
                spotgoodsbrands_ = new java.util.ArrayList<SpotGoodsBrandEx>();
                mutable_bitField0_ |= 0x00000400;
              }
              spotgoodsbrands_.add(
                  input.readMessage(SpotGoodsBrandEx.PARSER, extensionRegistry));
              break;
            }
            case 98: {
              if (!((mutable_bitField0_ & 0x00000800) != 0)) {
                wrsconvertdetails_ = new java.util.ArrayList<WRSConvertDetailEx>();
                mutable_bitField0_ |= 0x00000800;
              }
              wrsconvertdetails_.add(
                  input.readMessage(WRSConvertDetailEx.PARSER, extensionRegistry));
              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 {
        if (((mutable_bitField0_ & 0x00000200) != 0)) {
          spotgoodsmodels_ = java.util.Collections.unmodifiableList(spotgoodsmodels_);
        }
        if (((mutable_bitField0_ & 0x00000400) != 0)) {
          spotgoodsbrands_ = java.util.Collections.unmodifiableList(spotgoodsbrands_);
        }
        if (((mutable_bitField0_ & 0x00000800) != 0)) {
          wrsconvertdetails_ = java.util.Collections.unmodifiableList(wrsconvertdetails_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              DeliveryGoodsApplyReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int USERID_FIELD_NUMBER = 2;
    private long userid_;
    /**
     * <pre>
     * uint64 用户ID
     * </pre>
     *
     * <code>optional uint64 userid = 2;</code>
     * @return Whether the userid field is set.
     */
    @Override
    public boolean hasUserid() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * uint64 用户ID
     * </pre>
     *
     * <code>optional uint64 userid = 2;</code>
     * @return The userid.
     */
    @Override
    public long getUserid() {
      return userid_;
    }

    public static final int LOGINID_FIELD_NUMBER = 3;
    private long loginid_;
    /**
     * <pre>
     * uint64 登录ID
     * </pre>
     *
     * <code>optional uint64 loginid = 3;</code>
     * @return Whether the loginid field is set.
     */
    @Override
    public boolean hasLoginid() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * uint64 登录ID
     * </pre>
     *
     * <code>optional uint64 loginid = 3;</code>
     * @return The loginid.
     */
    @Override
    public long getLoginid() {
      return loginid_;
    }

    public static final int DELIVERYGOODSCODE_FIELD_NUMBER = 4;
    private volatile Object deliverygoodscode_;
    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return Whether the deliverygoodscode field is set.
     */
    @Override
    public boolean hasDeliverygoodscode() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return The deliverygoodscode.
     */
    @Override
    public String getDeliverygoodscode() {
      Object ref = deliverygoodscode_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          deliverygoodscode_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 交割商品代码(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodscode = 4;</code>
     * @return The bytes for deliverygoodscode.
     */
    @Override
    public com.google.protobuf.ByteString
        getDeliverygoodscodeBytes() {
      Object ref = deliverygoodscode_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        deliverygoodscode_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DELIVERYGOODSNAME_FIELD_NUMBER = 5;
    private volatile Object deliverygoodsname_;
    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return Whether the deliverygoodsname field is set.
     */
    @Override
    public boolean hasDeliverygoodsname() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return The deliverygoodsname.
     */
    @Override
    public String getDeliverygoodsname() {
      Object ref = deliverygoodsname_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          deliverygoodsname_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 交割商品名称(新增时有值)
     * </pre>
     *
     * <code>optional string deliverygoodsname = 5;</code>
     * @return The bytes for deliverygoodsname.
     */
    @Override
    public com.google.protobuf.ByteString
        getDeliverygoodsnameBytes() {
      Object ref = deliverygoodsname_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        deliverygoodsname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int WRSTANDARDID_FIELD_NUMBER = 6;
    private long wrstandardid_;
    /**
     * <pre>
     * uint64 现货商品ID(修改时有值)
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 6;</code>
     * @return Whether the wrstandardid field is set.
     */
    @Override
    public boolean hasWrstandardid() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * <pre>
     * uint64 现货商品ID(修改时有值)
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 6;</code>
     * @return The wrstandardid.
     */
    @Override
    public long getWrstandardid() {
      return wrstandardid_;
    }

    public static final int UNITID_FIELD_NUMBER = 7;
    private long unitid_;
    /**
     * <pre>
     * uint64 单位ID
     * </pre>
     *
     * <code>optional uint64 unitid = 7;</code>
     * @return Whether the unitid field is set.
     */
    @Override
    public boolean hasUnitid() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * <pre>
     * uint64 单位ID
     * </pre>
     *
     * <code>optional uint64 unitid = 7;</code>
     * @return The unitid.
     */
    @Override
    public long getUnitid() {
      return unitid_;
    }

    public static final int TYPE_FIELD_NUMBER = 8;
    private int type_;
    /**
     * <pre>
     * int32 类型 1 新增 2 修改
     * </pre>
     *
     * <code>optional int32 type = 8;</code>
     * @return Whether the type field is set.
     */
    @Override
    public boolean hasType() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * <pre>
     * int32 类型 1 新增 2 修改
     * </pre>
     *
     * <code>optional int32 type = 8;</code>
     * @return The type.
     */
    @Override
    public int getType() {
      return type_;
    }

    public static final int REMARK_FIELD_NUMBER = 9;
    private volatile Object remark_;
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return Whether the remark field is set.
     */
    @Override
    public boolean hasRemark() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return The remark.
     */
    @Override
    public String getRemark() {
      Object ref = remark_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          remark_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 9;</code>
     * @return The bytes for remark.
     */
    @Override
    public com.google.protobuf.ByteString
        getRemarkBytes() {
      Object ref = remark_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        remark_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SPOTGOODSMODELS_FIELD_NUMBER = 10;
    private java.util.List<SpotGoodsModelEx> spotgoodsmodels_;
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    @Override
    public java.util.List<SpotGoodsModelEx> getSpotgoodsmodelsList() {
      return spotgoodsmodels_;
    }
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    @Override
    public java.util.List<? extends SpotGoodsModelExOrBuilder>
        getSpotgoodsmodelsOrBuilderList() {
      return spotgoodsmodels_;
    }
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    @Override
    public int getSpotgoodsmodelsCount() {
      return spotgoodsmodels_.size();
    }
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    @Override
    public SpotGoodsModelEx getSpotgoodsmodels(int index) {
      return spotgoodsmodels_.get(index);
    }
    /**
     * <pre>
     * SpotGoodsModelEx 现货商品型号数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
     */
    @Override
    public SpotGoodsModelExOrBuilder getSpotgoodsmodelsOrBuilder(
        int index) {
      return spotgoodsmodels_.get(index);
    }

    public static final int SPOTGOODSBRANDS_FIELD_NUMBER = 11;
    private java.util.List<SpotGoodsBrandEx> spotgoodsbrands_;
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    @Override
    public java.util.List<SpotGoodsBrandEx> getSpotgoodsbrandsList() {
      return spotgoodsbrands_;
    }
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    @Override
    public java.util.List<? extends SpotGoodsBrandExOrBuilder>
        getSpotgoodsbrandsOrBuilderList() {
      return spotgoodsbrands_;
    }
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    @Override
    public int getSpotgoodsbrandsCount() {
      return spotgoodsbrands_.size();
    }
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    @Override
    public SpotGoodsBrandEx getSpotgoodsbrands(int index) {
      return spotgoodsbrands_.get(index);
    }
    /**
     * <pre>
     * SpotGoodsBrandEx 现货商品品牌数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
     */
    @Override
    public SpotGoodsBrandExOrBuilder getSpotgoodsbrandsOrBuilder(
        int index) {
      return spotgoodsbrands_.get(index);
    }

    public static final int WRSCONVERTDETAILS_FIELD_NUMBER = 12;
    private java.util.List<WRSConvertDetailEx> wrsconvertdetails_;
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    @Override
    public java.util.List<WRSConvertDetailEx> getWrsconvertdetailsList() {
      return wrsconvertdetails_;
    }
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    @Override
    public java.util.List<? extends WRSConvertDetailExOrBuilder>
        getWrsconvertdetailsOrBuilderList() {
      return wrsconvertdetails_;
    }
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    @Override
    public int getWrsconvertdetailsCount() {
      return wrsconvertdetails_.size();
    }
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    @Override
    public WRSConvertDetailEx getWrsconvertdetails(int index) {
      return wrsconvertdetails_.get(index);
    }
    /**
     * <pre>
     * WRSConvertDetailEx 现货商品折算配置明细数据
     * </pre>
     *
     * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
     */
    @Override
    public WRSConvertDetailExOrBuilder getWrsconvertdetailsOrBuilder(
        int index) {
      return wrsconvertdetails_.get(index);
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeUInt64(2, userid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeUInt64(3, loginid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, deliverygoodscode_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, deliverygoodsname_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeUInt64(6, wrstandardid_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        output.writeUInt64(7, unitid_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        output.writeInt32(8, type_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, remark_);
      }
      for (int i = 0; i < spotgoodsmodels_.size(); i++) {
        output.writeMessage(10, spotgoodsmodels_.get(i));
      }
      for (int i = 0; i < spotgoodsbrands_.size(); i++) {
        output.writeMessage(11, spotgoodsbrands_.get(i));
      }
      for (int i = 0; i < wrsconvertdetails_.size(); i++) {
        output.writeMessage(12, wrsconvertdetails_.get(i));
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(2, userid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(3, loginid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, deliverygoodscode_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, deliverygoodsname_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(6, wrstandardid_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(7, unitid_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(8, type_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, remark_);
      }
      for (int i = 0; i < spotgoodsmodels_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(10, spotgoodsmodels_.get(i));
      }
      for (int i = 0; i < spotgoodsbrands_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(11, spotgoodsbrands_.get(i));
      }
      for (int i = 0; i < wrsconvertdetails_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(12, wrsconvertdetails_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasUserid() != other.hasUserid()) return false;
      if (hasUserid()) {
        if (getUserid()
            != other.getUserid()) return false;
      }
      if (hasLoginid() != other.hasLoginid()) return false;
      if (hasLoginid()) {
        if (getLoginid()
            != other.getLoginid()) return false;
      }
      if (hasDeliverygoodscode() != other.hasDeliverygoodscode()) return false;
      if (hasDeliverygoodscode()) {
        if (!getDeliverygoodscode()
            .equals(other.getDeliverygoodscode())) return false;
      }
      if (hasDeliverygoodsname() != other.hasDeliverygoodsname()) return false;
      if (hasDeliverygoodsname()) {
        if (!getDeliverygoodsname()
            .equals(other.getDeliverygoodsname())) return false;
      }
      if (hasWrstandardid() != other.hasWrstandardid()) return false;
      if (hasWrstandardid()) {
        if (getWrstandardid()
            != other.getWrstandardid()) return false;
      }
      if (hasUnitid() != other.hasUnitid()) return false;
      if (hasUnitid()) {
        if (getUnitid()
            != other.getUnitid()) return false;
      }
      if (hasType() != other.hasType()) return false;
      if (hasType()) {
        if (getType()
            != other.getType()) return false;
      }
      if (hasRemark() != other.hasRemark()) return false;
      if (hasRemark()) {
        if (!getRemark()
            .equals(other.getRemark())) return false;
      }
      if (!getSpotgoodsmodelsList()
          .equals(other.getSpotgoodsmodelsList())) return false;
      if (!getSpotgoodsbrandsList()
          .equals(other.getSpotgoodsbrandsList())) return false;
      if (!getWrsconvertdetailsList()
          .equals(other.getWrsconvertdetailsList())) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasUserid()) {
        hash = (37 * hash) + USERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getUserid());
      }
      if (hasLoginid()) {
        hash = (37 * hash) + LOGINID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getLoginid());
      }
      if (hasDeliverygoodscode()) {
        hash = (37 * hash) + DELIVERYGOODSCODE_FIELD_NUMBER;
        hash = (53 * hash) + getDeliverygoodscode().hashCode();
      }
      if (hasDeliverygoodsname()) {
        hash = (37 * hash) + DELIVERYGOODSNAME_FIELD_NUMBER;
        hash = (53 * hash) + getDeliverygoodsname().hashCode();
      }
      if (hasWrstandardid()) {
        hash = (37 * hash) + WRSTANDARDID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getWrstandardid());
      }
      if (hasUnitid()) {
        hash = (37 * hash) + UNITID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getUnitid());
      }
      if (hasType()) {
        hash = (37 * hash) + TYPE_FIELD_NUMBER;
        hash = (53 * hash) + getType();
      }
      if (hasRemark()) {
        hash = (37 * hash) + REMARK_FIELD_NUMBER;
        hash = (53 * hash) + getRemark().hashCode();
      }
      if (getSpotgoodsmodelsCount() > 0) {
        hash = (37 * hash) + SPOTGOODSMODELS_FIELD_NUMBER;
        hash = (53 * hash) + getSpotgoodsmodelsList().hashCode();
      }
      if (getSpotgoodsbrandsCount() > 0) {
        hash = (37 * hash) + SPOTGOODSBRANDS_FIELD_NUMBER;
        hash = (53 * hash) + getSpotgoodsbrandsList().hashCode();
      }
      if (getWrsconvertdetailsCount() > 0) {
        hash = (37 * hash) + WRSCONVERTDETAILS_FIELD_NUMBER;
        hash = (53 * hash) + getWrsconvertdetailsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static DeliveryGoodsApplyReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyReq 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 DeliveryGoodsApplyReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyReq 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 DeliveryGoodsApplyReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyReq 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(DeliveryGoodsApplyReq 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>
     * 现货品种申请请求 0 29 124
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.DeliveryGoodsApplyReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.DeliveryGoodsApplyReq)
        DeliveryGoodsApplyReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                DeliveryGoodsApplyReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.DeliveryGoodsApplyReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
          getSpotgoodsmodelsFieldBuilder();
          getSpotgoodsbrandsFieldBuilder();
          getWrsconvertdetailsFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        userid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        loginid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000004);
        deliverygoodscode_ = "";
        bitField0_ = (bitField0_ & ~0x00000008);
        deliverygoodsname_ = "";
        bitField0_ = (bitField0_ & ~0x00000010);
        wrstandardid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000020);
        unitid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000040);
        type_ = 0;
        bitField0_ = (bitField0_ & ~0x00000080);
        remark_ = "";
        bitField0_ = (bitField0_ & ~0x00000100);
        if (spotgoodsmodelsBuilder_ == null) {
          spotgoodsmodels_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
        } else {
          spotgoodsmodelsBuilder_.clear();
        }
        if (spotgoodsbrandsBuilder_ == null) {
          spotgoodsbrands_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000400);
        } else {
          spotgoodsbrandsBuilder_.clear();
        }
        if (wrsconvertdetailsBuilder_ == null) {
          wrsconvertdetails_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000800);
        } else {
          wrsconvertdetailsBuilder_.clear();
        }
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor;
      }

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

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

      @Override
      public DeliveryGoodsApplyReq buildPartial() {
        DeliveryGoodsApplyReq result = new DeliveryGoodsApplyReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.userid_ = userid_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.loginid_ = loginid_;
          to_bitField0_ |= 0x00000004;
        }
        if (((from_bitField0_ & 0x00000008) != 0)) {
          to_bitField0_ |= 0x00000008;
        }
        result.deliverygoodscode_ = deliverygoodscode_;
        if (((from_bitField0_ & 0x00000010) != 0)) {
          to_bitField0_ |= 0x00000010;
        }
        result.deliverygoodsname_ = deliverygoodsname_;
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.wrstandardid_ = wrstandardid_;
          to_bitField0_ |= 0x00000020;
        }
        if (((from_bitField0_ & 0x00000040) != 0)) {
          result.unitid_ = unitid_;
          to_bitField0_ |= 0x00000040;
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          result.type_ = type_;
          to_bitField0_ |= 0x00000080;
        }
        if (((from_bitField0_ & 0x00000100) != 0)) {
          to_bitField0_ |= 0x00000100;
        }
        result.remark_ = remark_;
        if (spotgoodsmodelsBuilder_ == null) {
          if (((bitField0_ & 0x00000200) != 0)) {
            spotgoodsmodels_ = java.util.Collections.unmodifiableList(spotgoodsmodels_);
            bitField0_ = (bitField0_ & ~0x00000200);
          }
          result.spotgoodsmodels_ = spotgoodsmodels_;
        } else {
          result.spotgoodsmodels_ = spotgoodsmodelsBuilder_.build();
        }
        if (spotgoodsbrandsBuilder_ == null) {
          if (((bitField0_ & 0x00000400) != 0)) {
            spotgoodsbrands_ = java.util.Collections.unmodifiableList(spotgoodsbrands_);
            bitField0_ = (bitField0_ & ~0x00000400);
          }
          result.spotgoodsbrands_ = spotgoodsbrands_;
        } else {
          result.spotgoodsbrands_ = spotgoodsbrandsBuilder_.build();
        }
        if (wrsconvertdetailsBuilder_ == null) {
          if (((bitField0_ & 0x00000800) != 0)) {
            wrsconvertdetails_ = java.util.Collections.unmodifiableList(wrsconvertdetails_);
            bitField0_ = (bitField0_ & ~0x00000800);
          }
          result.wrsconvertdetails_ = wrsconvertdetails_;
        } else {
          result.wrsconvertdetails_ = wrsconvertdetailsBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        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 DeliveryGoodsApplyReq) {
          return mergeFrom((DeliveryGoodsApplyReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(DeliveryGoodsApplyReq other) {
        if (other == DeliveryGoodsApplyReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasUserid()) {
          setUserid(other.getUserid());
        }
        if (other.hasLoginid()) {
          setLoginid(other.getLoginid());
        }
        if (other.hasDeliverygoodscode()) {
          bitField0_ |= 0x00000008;
          deliverygoodscode_ = other.deliverygoodscode_;
          onChanged();
        }
        if (other.hasDeliverygoodsname()) {
          bitField0_ |= 0x00000010;
          deliverygoodsname_ = other.deliverygoodsname_;
          onChanged();
        }
        if (other.hasWrstandardid()) {
          setWrstandardid(other.getWrstandardid());
        }
        if (other.hasUnitid()) {
          setUnitid(other.getUnitid());
        }
        if (other.hasType()) {
          setType(other.getType());
        }
        if (other.hasRemark()) {
          bitField0_ |= 0x00000100;
          remark_ = other.remark_;
          onChanged();
        }
        if (spotgoodsmodelsBuilder_ == null) {
          if (!other.spotgoodsmodels_.isEmpty()) {
            if (spotgoodsmodels_.isEmpty()) {
              spotgoodsmodels_ = other.spotgoodsmodels_;
              bitField0_ = (bitField0_ & ~0x00000200);
            } else {
              ensureSpotgoodsmodelsIsMutable();
              spotgoodsmodels_.addAll(other.spotgoodsmodels_);
            }
            onChanged();
          }
        } else {
          if (!other.spotgoodsmodels_.isEmpty()) {
            if (spotgoodsmodelsBuilder_.isEmpty()) {
              spotgoodsmodelsBuilder_.dispose();
              spotgoodsmodelsBuilder_ = null;
              spotgoodsmodels_ = other.spotgoodsmodels_;
              bitField0_ = (bitField0_ & ~0x00000200);
              spotgoodsmodelsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSpotgoodsmodelsFieldBuilder() : null;
            } else {
              spotgoodsmodelsBuilder_.addAllMessages(other.spotgoodsmodels_);
            }
          }
        }
        if (spotgoodsbrandsBuilder_ == null) {
          if (!other.spotgoodsbrands_.isEmpty()) {
            if (spotgoodsbrands_.isEmpty()) {
              spotgoodsbrands_ = other.spotgoodsbrands_;
              bitField0_ = (bitField0_ & ~0x00000400);
            } else {
              ensureSpotgoodsbrandsIsMutable();
              spotgoodsbrands_.addAll(other.spotgoodsbrands_);
            }
            onChanged();
          }
        } else {
          if (!other.spotgoodsbrands_.isEmpty()) {
            if (spotgoodsbrandsBuilder_.isEmpty()) {
              spotgoodsbrandsBuilder_.dispose();
              spotgoodsbrandsBuilder_ = null;
              spotgoodsbrands_ = other.spotgoodsbrands_;
              bitField0_ = (bitField0_ & ~0x00000400);
              spotgoodsbrandsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSpotgoodsbrandsFieldBuilder() : null;
            } else {
              spotgoodsbrandsBuilder_.addAllMessages(other.spotgoodsbrands_);
            }
          }
        }
        if (wrsconvertdetailsBuilder_ == null) {
          if (!other.wrsconvertdetails_.isEmpty()) {
            if (wrsconvertdetails_.isEmpty()) {
              wrsconvertdetails_ = other.wrsconvertdetails_;
              bitField0_ = (bitField0_ & ~0x00000800);
            } else {
              ensureWrsconvertdetailsIsMutable();
              wrsconvertdetails_.addAll(other.wrsconvertdetails_);
            }
            onChanged();
          }
        } else {
          if (!other.wrsconvertdetails_.isEmpty()) {
            if (wrsconvertdetailsBuilder_.isEmpty()) {
              wrsconvertdetailsBuilder_.dispose();
              wrsconvertdetailsBuilder_ = null;
              wrsconvertdetails_ = other.wrsconvertdetails_;
              bitField0_ = (bitField0_ & ~0x00000800);
              wrsconvertdetailsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getWrsconvertdetailsFieldBuilder() : null;
            } else {
              wrsconvertdetailsBuilder_.addAllMessages(other.wrsconvertdetails_);
            }
          }
        }
        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 {
        DeliveryGoodsApplyReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (DeliveryGoodsApplyReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private long userid_ ;
      /**
       * <pre>
       * uint64 用户ID
       * </pre>
       *
       * <code>optional uint64 userid = 2;</code>
       * @return Whether the userid field is set.
       */
      @Override
      public boolean hasUserid() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * uint64 用户ID
       * </pre>
       *
       * <code>optional uint64 userid = 2;</code>
       * @return The userid.
       */
      @Override
      public long getUserid() {
        return userid_;
      }
      /**
       * <pre>
       * uint64 用户ID
       * </pre>
       *
       * <code>optional uint64 userid = 2;</code>
       * @param value The userid to set.
       * @return This builder for chaining.
       */
      public Builder setUserid(long value) {
        bitField0_ |= 0x00000002;
        userid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 用户ID
       * </pre>
       *
       * <code>optional uint64 userid = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearUserid() {
        bitField0_ = (bitField0_ & ~0x00000002);
        userid_ = 0L;
        onChanged();
        return this;
      }

      private long loginid_ ;
      /**
       * <pre>
       * uint64 登录ID
       * </pre>
       *
       * <code>optional uint64 loginid = 3;</code>
       * @return Whether the loginid field is set.
       */
      @Override
      public boolean hasLoginid() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * uint64 登录ID
       * </pre>
       *
       * <code>optional uint64 loginid = 3;</code>
       * @return The loginid.
       */
      @Override
      public long getLoginid() {
        return loginid_;
      }
      /**
       * <pre>
       * uint64 登录ID
       * </pre>
       *
       * <code>optional uint64 loginid = 3;</code>
       * @param value The loginid to set.
       * @return This builder for chaining.
       */
      public Builder setLoginid(long value) {
        bitField0_ |= 0x00000004;
        loginid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 登录ID
       * </pre>
       *
       * <code>optional uint64 loginid = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearLoginid() {
        bitField0_ = (bitField0_ & ~0x00000004);
        loginid_ = 0L;
        onChanged();
        return this;
      }

      private Object deliverygoodscode_ = "";
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @return Whether the deliverygoodscode field is set.
       */
      public boolean hasDeliverygoodscode() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @return The deliverygoodscode.
       */
      public String getDeliverygoodscode() {
        Object ref = deliverygoodscode_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            deliverygoodscode_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @return The bytes for deliverygoodscode.
       */
      public com.google.protobuf.ByteString
          getDeliverygoodscodeBytes() {
        Object ref = deliverygoodscode_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          deliverygoodscode_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @param value The deliverygoodscode to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodscode(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        deliverygoodscode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeliverygoodscode() {
        bitField0_ = (bitField0_ & ~0x00000008);
        deliverygoodscode_ = getDefaultInstance().getDeliverygoodscode();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 交割商品代码(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodscode = 4;</code>
       * @param value The bytes for deliverygoodscode to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodscodeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        deliverygoodscode_ = value;
        onChanged();
        return this;
      }

      private Object deliverygoodsname_ = "";
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @return Whether the deliverygoodsname field is set.
       */
      public boolean hasDeliverygoodsname() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @return The deliverygoodsname.
       */
      public String getDeliverygoodsname() {
        Object ref = deliverygoodsname_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            deliverygoodsname_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @return The bytes for deliverygoodsname.
       */
      public com.google.protobuf.ByteString
          getDeliverygoodsnameBytes() {
        Object ref = deliverygoodsname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          deliverygoodsname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @param value The deliverygoodsname to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodsname(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        deliverygoodsname_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeliverygoodsname() {
        bitField0_ = (bitField0_ & ~0x00000010);
        deliverygoodsname_ = getDefaultInstance().getDeliverygoodsname();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 交割商品名称(新增时有值)
       * </pre>
       *
       * <code>optional string deliverygoodsname = 5;</code>
       * @param value The bytes for deliverygoodsname to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodsnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        deliverygoodsname_ = value;
        onChanged();
        return this;
      }

      private long wrstandardid_ ;
      /**
       * <pre>
       * uint64 现货商品ID(修改时有值)
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 6;</code>
       * @return Whether the wrstandardid field is set.
       */
      @Override
      public boolean hasWrstandardid() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <pre>
       * uint64 现货商品ID(修改时有值)
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 6;</code>
       * @return The wrstandardid.
       */
      @Override
      public long getWrstandardid() {
        return wrstandardid_;
      }
      /**
       * <pre>
       * uint64 现货商品ID(修改时有值)
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 6;</code>
       * @param value The wrstandardid to set.
       * @return This builder for chaining.
       */
      public Builder setWrstandardid(long value) {
        bitField0_ |= 0x00000020;
        wrstandardid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货商品ID(修改时有值)
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearWrstandardid() {
        bitField0_ = (bitField0_ & ~0x00000020);
        wrstandardid_ = 0L;
        onChanged();
        return this;
      }

      private long unitid_ ;
      /**
       * <pre>
       * uint64 单位ID
       * </pre>
       *
       * <code>optional uint64 unitid = 7;</code>
       * @return Whether the unitid field is set.
       */
      @Override
      public boolean hasUnitid() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <pre>
       * uint64 单位ID
       * </pre>
       *
       * <code>optional uint64 unitid = 7;</code>
       * @return The unitid.
       */
      @Override
      public long getUnitid() {
        return unitid_;
      }
      /**
       * <pre>
       * uint64 单位ID
       * </pre>
       *
       * <code>optional uint64 unitid = 7;</code>
       * @param value The unitid to set.
       * @return This builder for chaining.
       */
      public Builder setUnitid(long value) {
        bitField0_ |= 0x00000040;
        unitid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 单位ID
       * </pre>
       *
       * <code>optional uint64 unitid = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearUnitid() {
        bitField0_ = (bitField0_ & ~0x00000040);
        unitid_ = 0L;
        onChanged();
        return this;
      }

      private int type_ ;
      /**
       * <pre>
       * int32 类型 1 新增 2 修改
       * </pre>
       *
       * <code>optional int32 type = 8;</code>
       * @return Whether the type field is set.
       */
      @Override
      public boolean hasType() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <pre>
       * int32 类型 1 新增 2 修改
       * </pre>
       *
       * <code>optional int32 type = 8;</code>
       * @return The type.
       */
      @Override
      public int getType() {
        return type_;
      }
      /**
       * <pre>
       * int32 类型 1 新增 2 修改
       * </pre>
       *
       * <code>optional int32 type = 8;</code>
       * @param value The type to set.
       * @return This builder for chaining.
       */
      public Builder setType(int value) {
        bitField0_ |= 0x00000080;
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 类型 1 新增 2 修改
       * </pre>
       *
       * <code>optional int32 type = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearType() {
        bitField0_ = (bitField0_ & ~0x00000080);
        type_ = 0;
        onChanged();
        return this;
      }

      private Object remark_ = "";
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @return Whether the remark field is set.
       */
      public boolean hasRemark() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @return The remark.
       */
      public String getRemark() {
        Object ref = remark_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            remark_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @return The bytes for remark.
       */
      public com.google.protobuf.ByteString
          getRemarkBytes() {
        Object ref = remark_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          remark_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @param value The remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemark(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        remark_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearRemark() {
        bitField0_ = (bitField0_ & ~0x00000100);
        remark_ = getDefaultInstance().getRemark();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 9;</code>
       * @param value The bytes for remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemarkBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        remark_ = value;
        onChanged();
        return this;
      }

      private java.util.List<SpotGoodsModelEx> spotgoodsmodels_ =
        java.util.Collections.emptyList();
      private void ensureSpotgoodsmodelsIsMutable() {
        if (!((bitField0_ & 0x00000200) != 0)) {
          spotgoodsmodels_ = new java.util.ArrayList<SpotGoodsModelEx>(spotgoodsmodels_);
          bitField0_ |= 0x00000200;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          SpotGoodsModelEx, SpotGoodsModelEx.Builder, SpotGoodsModelExOrBuilder> spotgoodsmodelsBuilder_;

      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public java.util.List<SpotGoodsModelEx> getSpotgoodsmodelsList() {
        if (spotgoodsmodelsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(spotgoodsmodels_);
        } else {
          return spotgoodsmodelsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public int getSpotgoodsmodelsCount() {
        if (spotgoodsmodelsBuilder_ == null) {
          return spotgoodsmodels_.size();
        } else {
          return spotgoodsmodelsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public SpotGoodsModelEx getSpotgoodsmodels(int index) {
        if (spotgoodsmodelsBuilder_ == null) {
          return spotgoodsmodels_.get(index);
        } else {
          return spotgoodsmodelsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder setSpotgoodsmodels(
          int index, SpotGoodsModelEx value) {
        if (spotgoodsmodelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.set(index, value);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder setSpotgoodsmodels(
          int index, SpotGoodsModelEx.Builder builderForValue) {
        if (spotgoodsmodelsBuilder_ == null) {
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.set(index, builderForValue.build());
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder addSpotgoodsmodels(SpotGoodsModelEx value) {
        if (spotgoodsmodelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.add(value);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder addSpotgoodsmodels(
          int index, SpotGoodsModelEx value) {
        if (spotgoodsmodelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.add(index, value);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder addSpotgoodsmodels(
          SpotGoodsModelEx.Builder builderForValue) {
        if (spotgoodsmodelsBuilder_ == null) {
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.add(builderForValue.build());
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder addSpotgoodsmodels(
          int index, SpotGoodsModelEx.Builder builderForValue) {
        if (spotgoodsmodelsBuilder_ == null) {
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.add(index, builderForValue.build());
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder addAllSpotgoodsmodels(
          Iterable<? extends SpotGoodsModelEx> values) {
        if (spotgoodsmodelsBuilder_ == null) {
          ensureSpotgoodsmodelsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, spotgoodsmodels_);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder clearSpotgoodsmodels() {
        if (spotgoodsmodelsBuilder_ == null) {
          spotgoodsmodels_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public Builder removeSpotgoodsmodels(int index) {
        if (spotgoodsmodelsBuilder_ == null) {
          ensureSpotgoodsmodelsIsMutable();
          spotgoodsmodels_.remove(index);
          onChanged();
        } else {
          spotgoodsmodelsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public SpotGoodsModelEx.Builder getSpotgoodsmodelsBuilder(
          int index) {
        return getSpotgoodsmodelsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public SpotGoodsModelExOrBuilder getSpotgoodsmodelsOrBuilder(
          int index) {
        if (spotgoodsmodelsBuilder_ == null) {
          return spotgoodsmodels_.get(index);  } else {
          return spotgoodsmodelsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public java.util.List<? extends SpotGoodsModelExOrBuilder>
           getSpotgoodsmodelsOrBuilderList() {
        if (spotgoodsmodelsBuilder_ != null) {
          return spotgoodsmodelsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(spotgoodsmodels_);
        }
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public SpotGoodsModelEx.Builder addSpotgoodsmodelsBuilder() {
        return getSpotgoodsmodelsFieldBuilder().addBuilder(
            SpotGoodsModelEx.getDefaultInstance());
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public SpotGoodsModelEx.Builder addSpotgoodsmodelsBuilder(
          int index) {
        return getSpotgoodsmodelsFieldBuilder().addBuilder(
            index, SpotGoodsModelEx.getDefaultInstance());
      }
      /**
       * <pre>
       * SpotGoodsModelEx 现货商品型号数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsModelEx spotgoodsmodels = 10;</code>
       */
      public java.util.List<SpotGoodsModelEx.Builder>
           getSpotgoodsmodelsBuilderList() {
        return getSpotgoodsmodelsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          SpotGoodsModelEx, SpotGoodsModelEx.Builder, SpotGoodsModelExOrBuilder>
          getSpotgoodsmodelsFieldBuilder() {
        if (spotgoodsmodelsBuilder_ == null) {
          spotgoodsmodelsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              SpotGoodsModelEx, SpotGoodsModelEx.Builder, SpotGoodsModelExOrBuilder>(
                  spotgoodsmodels_,
                  ((bitField0_ & 0x00000200) != 0),
                  getParentForChildren(),
                  isClean());
          spotgoodsmodels_ = null;
        }
        return spotgoodsmodelsBuilder_;
      }

      private java.util.List<SpotGoodsBrandEx> spotgoodsbrands_ =
        java.util.Collections.emptyList();
      private void ensureSpotgoodsbrandsIsMutable() {
        if (!((bitField0_ & 0x00000400) != 0)) {
          spotgoodsbrands_ = new java.util.ArrayList<SpotGoodsBrandEx>(spotgoodsbrands_);
          bitField0_ |= 0x00000400;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          SpotGoodsBrandEx, SpotGoodsBrandEx.Builder, SpotGoodsBrandExOrBuilder> spotgoodsbrandsBuilder_;

      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public java.util.List<SpotGoodsBrandEx> getSpotgoodsbrandsList() {
        if (spotgoodsbrandsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(spotgoodsbrands_);
        } else {
          return spotgoodsbrandsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public int getSpotgoodsbrandsCount() {
        if (spotgoodsbrandsBuilder_ == null) {
          return spotgoodsbrands_.size();
        } else {
          return spotgoodsbrandsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public SpotGoodsBrandEx getSpotgoodsbrands(int index) {
        if (spotgoodsbrandsBuilder_ == null) {
          return spotgoodsbrands_.get(index);
        } else {
          return spotgoodsbrandsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder setSpotgoodsbrands(
          int index, SpotGoodsBrandEx value) {
        if (spotgoodsbrandsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.set(index, value);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder setSpotgoodsbrands(
          int index, SpotGoodsBrandEx.Builder builderForValue) {
        if (spotgoodsbrandsBuilder_ == null) {
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.set(index, builderForValue.build());
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder addSpotgoodsbrands(SpotGoodsBrandEx value) {
        if (spotgoodsbrandsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.add(value);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder addSpotgoodsbrands(
          int index, SpotGoodsBrandEx value) {
        if (spotgoodsbrandsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.add(index, value);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder addSpotgoodsbrands(
          SpotGoodsBrandEx.Builder builderForValue) {
        if (spotgoodsbrandsBuilder_ == null) {
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.add(builderForValue.build());
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder addSpotgoodsbrands(
          int index, SpotGoodsBrandEx.Builder builderForValue) {
        if (spotgoodsbrandsBuilder_ == null) {
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.add(index, builderForValue.build());
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder addAllSpotgoodsbrands(
          Iterable<? extends SpotGoodsBrandEx> values) {
        if (spotgoodsbrandsBuilder_ == null) {
          ensureSpotgoodsbrandsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, spotgoodsbrands_);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder clearSpotgoodsbrands() {
        if (spotgoodsbrandsBuilder_ == null) {
          spotgoodsbrands_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000400);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public Builder removeSpotgoodsbrands(int index) {
        if (spotgoodsbrandsBuilder_ == null) {
          ensureSpotgoodsbrandsIsMutable();
          spotgoodsbrands_.remove(index);
          onChanged();
        } else {
          spotgoodsbrandsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public SpotGoodsBrandEx.Builder getSpotgoodsbrandsBuilder(
          int index) {
        return getSpotgoodsbrandsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public SpotGoodsBrandExOrBuilder getSpotgoodsbrandsOrBuilder(
          int index) {
        if (spotgoodsbrandsBuilder_ == null) {
          return spotgoodsbrands_.get(index);  } else {
          return spotgoodsbrandsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public java.util.List<? extends SpotGoodsBrandExOrBuilder>
           getSpotgoodsbrandsOrBuilderList() {
        if (spotgoodsbrandsBuilder_ != null) {
          return spotgoodsbrandsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(spotgoodsbrands_);
        }
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public SpotGoodsBrandEx.Builder addSpotgoodsbrandsBuilder() {
        return getSpotgoodsbrandsFieldBuilder().addBuilder(
            SpotGoodsBrandEx.getDefaultInstance());
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public SpotGoodsBrandEx.Builder addSpotgoodsbrandsBuilder(
          int index) {
        return getSpotgoodsbrandsFieldBuilder().addBuilder(
            index, SpotGoodsBrandEx.getDefaultInstance());
      }
      /**
       * <pre>
       * SpotGoodsBrandEx 现货商品品牌数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.SpotGoodsBrandEx spotgoodsbrands = 11;</code>
       */
      public java.util.List<SpotGoodsBrandEx.Builder>
           getSpotgoodsbrandsBuilderList() {
        return getSpotgoodsbrandsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          SpotGoodsBrandEx, SpotGoodsBrandEx.Builder, SpotGoodsBrandExOrBuilder>
          getSpotgoodsbrandsFieldBuilder() {
        if (spotgoodsbrandsBuilder_ == null) {
          spotgoodsbrandsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              SpotGoodsBrandEx, SpotGoodsBrandEx.Builder, SpotGoodsBrandExOrBuilder>(
                  spotgoodsbrands_,
                  ((bitField0_ & 0x00000400) != 0),
                  getParentForChildren(),
                  isClean());
          spotgoodsbrands_ = null;
        }
        return spotgoodsbrandsBuilder_;
      }

      private java.util.List<WRSConvertDetailEx> wrsconvertdetails_ =
        java.util.Collections.emptyList();
      private void ensureWrsconvertdetailsIsMutable() {
        if (!((bitField0_ & 0x00000800) != 0)) {
          wrsconvertdetails_ = new java.util.ArrayList<WRSConvertDetailEx>(wrsconvertdetails_);
          bitField0_ |= 0x00000800;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          WRSConvertDetailEx, WRSConvertDetailEx.Builder, WRSConvertDetailExOrBuilder> wrsconvertdetailsBuilder_;

      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public java.util.List<WRSConvertDetailEx> getWrsconvertdetailsList() {
        if (wrsconvertdetailsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(wrsconvertdetails_);
        } else {
          return wrsconvertdetailsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public int getWrsconvertdetailsCount() {
        if (wrsconvertdetailsBuilder_ == null) {
          return wrsconvertdetails_.size();
        } else {
          return wrsconvertdetailsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public WRSConvertDetailEx getWrsconvertdetails(int index) {
        if (wrsconvertdetailsBuilder_ == null) {
          return wrsconvertdetails_.get(index);
        } else {
          return wrsconvertdetailsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder setWrsconvertdetails(
          int index, WRSConvertDetailEx value) {
        if (wrsconvertdetailsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.set(index, value);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder setWrsconvertdetails(
          int index, WRSConvertDetailEx.Builder builderForValue) {
        if (wrsconvertdetailsBuilder_ == null) {
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.set(index, builderForValue.build());
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder addWrsconvertdetails(WRSConvertDetailEx value) {
        if (wrsconvertdetailsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.add(value);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder addWrsconvertdetails(
          int index, WRSConvertDetailEx value) {
        if (wrsconvertdetailsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.add(index, value);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder addWrsconvertdetails(
          WRSConvertDetailEx.Builder builderForValue) {
        if (wrsconvertdetailsBuilder_ == null) {
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.add(builderForValue.build());
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder addWrsconvertdetails(
          int index, WRSConvertDetailEx.Builder builderForValue) {
        if (wrsconvertdetailsBuilder_ == null) {
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.add(index, builderForValue.build());
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder addAllWrsconvertdetails(
          Iterable<? extends WRSConvertDetailEx> values) {
        if (wrsconvertdetailsBuilder_ == null) {
          ensureWrsconvertdetailsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, wrsconvertdetails_);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder clearWrsconvertdetails() {
        if (wrsconvertdetailsBuilder_ == null) {
          wrsconvertdetails_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000800);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public Builder removeWrsconvertdetails(int index) {
        if (wrsconvertdetailsBuilder_ == null) {
          ensureWrsconvertdetailsIsMutable();
          wrsconvertdetails_.remove(index);
          onChanged();
        } else {
          wrsconvertdetailsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public WRSConvertDetailEx.Builder getWrsconvertdetailsBuilder(
          int index) {
        return getWrsconvertdetailsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public WRSConvertDetailExOrBuilder getWrsconvertdetailsOrBuilder(
          int index) {
        if (wrsconvertdetailsBuilder_ == null) {
          return wrsconvertdetails_.get(index);  } else {
          return wrsconvertdetailsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public java.util.List<? extends WRSConvertDetailExOrBuilder>
           getWrsconvertdetailsOrBuilderList() {
        if (wrsconvertdetailsBuilder_ != null) {
          return wrsconvertdetailsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(wrsconvertdetails_);
        }
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public WRSConvertDetailEx.Builder addWrsconvertdetailsBuilder() {
        return getWrsconvertdetailsFieldBuilder().addBuilder(
            WRSConvertDetailEx.getDefaultInstance());
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public WRSConvertDetailEx.Builder addWrsconvertdetailsBuilder(
          int index) {
        return getWrsconvertdetailsFieldBuilder().addBuilder(
            index, WRSConvertDetailEx.getDefaultInstance());
      }
      /**
       * <pre>
       * WRSConvertDetailEx 现货商品折算配置明细数据
       * </pre>
       *
       * <code>repeated .ManageServiceMI2.WRSConvertDetailEx wrsconvertdetails = 12;</code>
       */
      public java.util.List<WRSConvertDetailEx.Builder>
           getWrsconvertdetailsBuilderList() {
        return getWrsconvertdetailsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          WRSConvertDetailEx, WRSConvertDetailEx.Builder, WRSConvertDetailExOrBuilder>
          getWrsconvertdetailsFieldBuilder() {
        if (wrsconvertdetailsBuilder_ == null) {
          wrsconvertdetailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              WRSConvertDetailEx, WRSConvertDetailEx.Builder, WRSConvertDetailExOrBuilder>(
                  wrsconvertdetails_,
                  ((bitField0_ & 0x00000800) != 0),
                  getParentForChildren(),
                  isClean());
          wrsconvertdetails_ = null;
        }
        return wrsconvertdetailsBuilder_;
      }
      @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:ManageServiceMI2.DeliveryGoodsApplyReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.DeliveryGoodsApplyReq)
    private static final DeliveryGoodsApplyReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new DeliveryGoodsApplyReq();
    }

    public static DeliveryGoodsApplyReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface SpotGoodsModelExOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.SpotGoodsModelEx)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return Whether the modelname field is set.
     */
    boolean hasModelname();
    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return The modelname.
     */
    String getModelname();
    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return The bytes for modelname.
     */
    com.google.protobuf.ByteString
        getModelnameBytes();
  }
  /**
   * <pre>
   * 现货商品型号数据 0 29 125
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.SpotGoodsModelEx}
   */
  public static final class SpotGoodsModelEx extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.SpotGoodsModelEx)
      SpotGoodsModelExOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SpotGoodsModelEx.newBuilder() to construct.
    private SpotGoodsModelEx(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private SpotGoodsModelEx() {
      modelname_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SpotGoodsModelEx(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000001;
              modelname_ = bs;
              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 ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsModelEx_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              SpotGoodsModelEx.class, Builder.class);
    }

    private int bitField0_;
    public static final int MODELNAME_FIELD_NUMBER = 1;
    private volatile Object modelname_;
    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return Whether the modelname field is set.
     */
    @Override
    public boolean hasModelname() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return The modelname.
     */
    @Override
    public String getModelname() {
      Object ref = modelname_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          modelname_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 型号名称
     * </pre>
     *
     * <code>optional string modelname = 1;</code>
     * @return The bytes for modelname.
     */
    @Override
    public com.google.protobuf.ByteString
        getModelnameBytes() {
      Object ref = modelname_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        modelname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, modelname_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, modelname_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasModelname() != other.hasModelname()) return false;
      if (hasModelname()) {
        if (!getModelname()
            .equals(other.getModelname())) 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();
      if (hasModelname()) {
        hash = (37 * hash) + MODELNAME_FIELD_NUMBER;
        hash = (53 * hash) + getModelname().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static SpotGoodsModelEx parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsModelEx parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsModelEx parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsModelEx parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsModelEx parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsModelEx parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsModelEx parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static SpotGoodsModelEx 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 SpotGoodsModelEx parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static SpotGoodsModelEx 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 SpotGoodsModelEx parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static SpotGoodsModelEx 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(SpotGoodsModelEx 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>
     * 现货商品型号数据 0 29 125
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.SpotGoodsModelEx}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.SpotGoodsModelEx)
        SpotGoodsModelExOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsModelEx_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                SpotGoodsModelEx.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.SpotGoodsModelEx.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();
        modelname_ = "";
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor;
      }

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

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

      @Override
      public SpotGoodsModelEx buildPartial() {
        SpotGoodsModelEx result = new SpotGoodsModelEx(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          to_bitField0_ |= 0x00000001;
        }
        result.modelname_ = modelname_;
        result.bitField0_ = to_bitField0_;
        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 SpotGoodsModelEx) {
          return mergeFrom((SpotGoodsModelEx)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(SpotGoodsModelEx other) {
        if (other == SpotGoodsModelEx.getDefaultInstance()) return this;
        if (other.hasModelname()) {
          bitField0_ |= 0x00000001;
          modelname_ = other.modelname_;
          onChanged();
        }
        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 {
        SpotGoodsModelEx parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (SpotGoodsModelEx) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Object modelname_ = "";
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @return Whether the modelname field is set.
       */
      public boolean hasModelname() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @return The modelname.
       */
      public String getModelname() {
        Object ref = modelname_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            modelname_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @return The bytes for modelname.
       */
      public com.google.protobuf.ByteString
          getModelnameBytes() {
        Object ref = modelname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          modelname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @param value The modelname to set.
       * @return This builder for chaining.
       */
      public Builder setModelname(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        modelname_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearModelname() {
        bitField0_ = (bitField0_ & ~0x00000001);
        modelname_ = getDefaultInstance().getModelname();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 型号名称
       * </pre>
       *
       * <code>optional string modelname = 1;</code>
       * @param value The bytes for modelname to set.
       * @return This builder for chaining.
       */
      public Builder setModelnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        modelname_ = value;
        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:ManageServiceMI2.SpotGoodsModelEx)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.SpotGoodsModelEx)
    private static final SpotGoodsModelEx DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new SpotGoodsModelEx();
    }

    public static SpotGoodsModelEx getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface SpotGoodsBrandExOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.SpotGoodsBrandEx)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return Whether the brandname field is set.
     */
    boolean hasBrandname();
    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return The brandname.
     */
    String getBrandname();
    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return The bytes for brandname.
     */
    com.google.protobuf.ByteString
        getBrandnameBytes();
  }
  /**
   * <pre>
   * 现货商品品牌数据 0 29 126
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.SpotGoodsBrandEx}
   */
  public static final class SpotGoodsBrandEx extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.SpotGoodsBrandEx)
      SpotGoodsBrandExOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SpotGoodsBrandEx.newBuilder() to construct.
    private SpotGoodsBrandEx(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private SpotGoodsBrandEx() {
      brandname_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SpotGoodsBrandEx(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000001;
              brandname_ = bs;
              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 ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsBrandEx_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              SpotGoodsBrandEx.class, Builder.class);
    }

    private int bitField0_;
    public static final int BRANDNAME_FIELD_NUMBER = 1;
    private volatile Object brandname_;
    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return Whether the brandname field is set.
     */
    @Override
    public boolean hasBrandname() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return The brandname.
     */
    @Override
    public String getBrandname() {
      Object ref = brandname_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          brandname_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 品牌名称
     * </pre>
     *
     * <code>optional string brandname = 1;</code>
     * @return The bytes for brandname.
     */
    @Override
    public com.google.protobuf.ByteString
        getBrandnameBytes() {
      Object ref = brandname_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        brandname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, brandname_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, brandname_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasBrandname() != other.hasBrandname()) return false;
      if (hasBrandname()) {
        if (!getBrandname()
            .equals(other.getBrandname())) 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();
      if (hasBrandname()) {
        hash = (37 * hash) + BRANDNAME_FIELD_NUMBER;
        hash = (53 * hash) + getBrandname().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static SpotGoodsBrandEx parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsBrandEx parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsBrandEx parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsBrandEx parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsBrandEx parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static SpotGoodsBrandEx parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static SpotGoodsBrandEx parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static SpotGoodsBrandEx 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 SpotGoodsBrandEx parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static SpotGoodsBrandEx 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 SpotGoodsBrandEx parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static SpotGoodsBrandEx 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(SpotGoodsBrandEx 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>
     * 现货商品品牌数据 0 29 126
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.SpotGoodsBrandEx}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.SpotGoodsBrandEx)
        SpotGoodsBrandExOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsBrandEx_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                SpotGoodsBrandEx.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.SpotGoodsBrandEx.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();
        brandname_ = "";
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor;
      }

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

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

      @Override
      public SpotGoodsBrandEx buildPartial() {
        SpotGoodsBrandEx result = new SpotGoodsBrandEx(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          to_bitField0_ |= 0x00000001;
        }
        result.brandname_ = brandname_;
        result.bitField0_ = to_bitField0_;
        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 SpotGoodsBrandEx) {
          return mergeFrom((SpotGoodsBrandEx)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(SpotGoodsBrandEx other) {
        if (other == SpotGoodsBrandEx.getDefaultInstance()) return this;
        if (other.hasBrandname()) {
          bitField0_ |= 0x00000001;
          brandname_ = other.brandname_;
          onChanged();
        }
        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 {
        SpotGoodsBrandEx parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (SpotGoodsBrandEx) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Object brandname_ = "";
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @return Whether the brandname field is set.
       */
      public boolean hasBrandname() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @return The brandname.
       */
      public String getBrandname() {
        Object ref = brandname_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            brandname_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @return The bytes for brandname.
       */
      public com.google.protobuf.ByteString
          getBrandnameBytes() {
        Object ref = brandname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          brandname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @param value The brandname to set.
       * @return This builder for chaining.
       */
      public Builder setBrandname(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        brandname_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearBrandname() {
        bitField0_ = (bitField0_ & ~0x00000001);
        brandname_ = getDefaultInstance().getBrandname();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 品牌名称
       * </pre>
       *
       * <code>optional string brandname = 1;</code>
       * @param value The bytes for brandname to set.
       * @return This builder for chaining.
       */
      public Builder setBrandnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        brandname_ = value;
        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:ManageServiceMI2.SpotGoodsBrandEx)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.SpotGoodsBrandEx)
    private static final SpotGoodsBrandEx DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new SpotGoodsBrandEx();
    }

    public static SpotGoodsBrandEx getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface WRSConvertDetailExOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.WRSConvertDetailEx)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 1;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 1;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();

    /**
     * <pre>
     * double 套保系数
     * </pre>
     *
     * <code>optional double convertratio = 2;</code>
     * @return Whether the convertratio field is set.
     */
    boolean hasConvertratio();
    /**
     * <pre>
     * double 套保系数
     * </pre>
     *
     * <code>optional double convertratio = 2;</code>
     * @return The convertratio.
     */
    double getConvertratio();
  }
  /**
   * <pre>
   * 现货商品折算配置明细数据 0 29 127
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.WRSConvertDetailEx}
   */
  public static final class WRSConvertDetailEx extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.WRSConvertDetailEx)
      WRSConvertDetailExOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use WRSConvertDetailEx.newBuilder() to construct.
    private WRSConvertDetailEx(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private WRSConvertDetailEx() {
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private WRSConvertDetailEx(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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: {
              bitField0_ |= 0x00000001;
              middlegoodsid_ = input.readUInt64();
              break;
            }
            case 17: {
              bitField0_ |= 0x00000002;
              convertratio_ = input.readDouble();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_WRSConvertDetailEx_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              WRSConvertDetailEx.class, Builder.class);
    }

    private int bitField0_;
    public static final int MIDDLEGOODSID_FIELD_NUMBER = 1;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 1;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 1;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    public static final int CONVERTRATIO_FIELD_NUMBER = 2;
    private double convertratio_;
    /**
     * <pre>
     * double 套保系数
     * </pre>
     *
     * <code>optional double convertratio = 2;</code>
     * @return Whether the convertratio field is set.
     */
    @Override
    public boolean hasConvertratio() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * double 套保系数
     * </pre>
     *
     * <code>optional double convertratio = 2;</code>
     * @return The convertratio.
     */
    @Override
    public double getConvertratio() {
      return convertratio_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeUInt64(1, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeDouble(2, convertratio_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(1, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(2, convertratio_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) return false;
      }
      if (hasConvertratio() != other.hasConvertratio()) return false;
      if (hasConvertratio()) {
        if (Double.doubleToLongBits(getConvertratio())
            != Double.doubleToLongBits(
                other.getConvertratio())) 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();
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      if (hasConvertratio()) {
        hash = (37 * hash) + CONVERTRATIO_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            Double.doubleToLongBits(getConvertratio()));
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static WRSConvertDetailEx parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static WRSConvertDetailEx parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static WRSConvertDetailEx parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static WRSConvertDetailEx parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static WRSConvertDetailEx parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static WRSConvertDetailEx parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static WRSConvertDetailEx parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static WRSConvertDetailEx 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 WRSConvertDetailEx parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static WRSConvertDetailEx 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 WRSConvertDetailEx parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static WRSConvertDetailEx 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(WRSConvertDetailEx 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>
     * 现货商品折算配置明细数据 0 29 127
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.WRSConvertDetailEx}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.WRSConvertDetailEx)
        WRSConvertDetailExOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_WRSConvertDetailEx_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                WRSConvertDetailEx.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.WRSConvertDetailEx.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();
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000001);
        convertratio_ = 0D;
        bitField0_ = (bitField0_ & ~0x00000002);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor;
      }

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

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

      @Override
      public WRSConvertDetailEx buildPartial() {
        WRSConvertDetailEx result = new WRSConvertDetailEx(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.convertratio_ = convertratio_;
          to_bitField0_ |= 0x00000002;
        }
        result.bitField0_ = to_bitField0_;
        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 WRSConvertDetailEx) {
          return mergeFrom((WRSConvertDetailEx)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(WRSConvertDetailEx other) {
        if (other == WRSConvertDetailEx.getDefaultInstance()) return this;
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        if (other.hasConvertratio()) {
          setConvertratio(other.getConvertratio());
        }
        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 {
        WRSConvertDetailEx parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (WRSConvertDetailEx) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 1;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 1;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 1;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000001;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000001);
        middlegoodsid_ = 0L;
        onChanged();
        return this;
      }

      private double convertratio_ ;
      /**
       * <pre>
       * double 套保系数
       * </pre>
       *
       * <code>optional double convertratio = 2;</code>
       * @return Whether the convertratio field is set.
       */
      @Override
      public boolean hasConvertratio() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * double 套保系数
       * </pre>
       *
       * <code>optional double convertratio = 2;</code>
       * @return The convertratio.
       */
      @Override
      public double getConvertratio() {
        return convertratio_;
      }
      /**
       * <pre>
       * double 套保系数
       * </pre>
       *
       * <code>optional double convertratio = 2;</code>
       * @param value The convertratio to set.
       * @return This builder for chaining.
       */
      public Builder setConvertratio(double value) {
        bitField0_ |= 0x00000002;
        convertratio_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * double 套保系数
       * </pre>
       *
       * <code>optional double convertratio = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearConvertratio() {
        bitField0_ = (bitField0_ & ~0x00000002);
        convertratio_ = 0D;
        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:ManageServiceMI2.WRSConvertDetailEx)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.WRSConvertDetailEx)
    private static final WRSConvertDetailEx DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new WRSConvertDetailEx();
    }

    public static WRSConvertDetailEx getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface DeliveryGoodsApplyRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.DeliveryGoodsApplyRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return Whether the wrstandardid field is set.
     */
    boolean hasWrstandardid();
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return The wrstandardid.
     */
    long getWrstandardid();

    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return Whether the deliverygoodsid field is set.
     */
    boolean hasDeliverygoodsid();
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return The deliverygoodsid.
     */
    long getDeliverygoodsid();
  }
  /**
   * <pre>
   * 现货品种申请响应 0 29 128
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.DeliveryGoodsApplyRsp}
   */
  public static final class DeliveryGoodsApplyRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.DeliveryGoodsApplyRsp)
      DeliveryGoodsApplyRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeliveryGoodsApplyRsp.newBuilder() to construct.
    private DeliveryGoodsApplyRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeliveryGoodsApplyRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeliveryGoodsApplyRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              wrstandardid_ = input.readUInt64();
              break;
            }
            case 40: {
              bitField0_ |= 0x00000010;
              deliverygoodsid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              DeliveryGoodsApplyRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int WRSTANDARDID_FIELD_NUMBER = 4;
    private long wrstandardid_;
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return Whether the wrstandardid field is set.
     */
    @Override
    public boolean hasWrstandardid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return The wrstandardid.
     */
    @Override
    public long getWrstandardid() {
      return wrstandardid_;
    }

    public static final int DELIVERYGOODSID_FIELD_NUMBER = 5;
    private long deliverygoodsid_;
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return Whether the deliverygoodsid field is set.
     */
    @Override
    public boolean hasDeliverygoodsid() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return The deliverygoodsid.
     */
    @Override
    public long getDeliverygoodsid() {
      return deliverygoodsid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, wrstandardid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeUInt64(5, deliverygoodsid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, wrstandardid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(5, deliverygoodsid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasWrstandardid() != other.hasWrstandardid()) return false;
      if (hasWrstandardid()) {
        if (getWrstandardid()
            != other.getWrstandardid()) return false;
      }
      if (hasDeliverygoodsid() != other.hasDeliverygoodsid()) return false;
      if (hasDeliverygoodsid()) {
        if (getDeliverygoodsid()
            != other.getDeliverygoodsid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasWrstandardid()) {
        hash = (37 * hash) + WRSTANDARDID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getWrstandardid());
      }
      if (hasDeliverygoodsid()) {
        hash = (37 * hash) + DELIVERYGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getDeliverygoodsid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static DeliveryGoodsApplyRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsApplyRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsApplyRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyRsp 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 DeliveryGoodsApplyRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyRsp 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 DeliveryGoodsApplyRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsApplyRsp 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(DeliveryGoodsApplyRsp 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>
     * 现货品种申请响应 0 29 128
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.DeliveryGoodsApplyRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.DeliveryGoodsApplyRsp)
        DeliveryGoodsApplyRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                DeliveryGoodsApplyRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.DeliveryGoodsApplyRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        wrstandardid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        deliverygoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000010);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor;
      }

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

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

      @Override
      public DeliveryGoodsApplyRsp buildPartial() {
        DeliveryGoodsApplyRsp result = new DeliveryGoodsApplyRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.wrstandardid_ = wrstandardid_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.deliverygoodsid_ = deliverygoodsid_;
          to_bitField0_ |= 0x00000010;
        }
        result.bitField0_ = to_bitField0_;
        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 DeliveryGoodsApplyRsp) {
          return mergeFrom((DeliveryGoodsApplyRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(DeliveryGoodsApplyRsp other) {
        if (other == DeliveryGoodsApplyRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasWrstandardid()) {
          setWrstandardid(other.getWrstandardid());
        }
        if (other.hasDeliverygoodsid()) {
          setDeliverygoodsid(other.getDeliverygoodsid());
        }
        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 {
        DeliveryGoodsApplyRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (DeliveryGoodsApplyRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long wrstandardid_ ;
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return Whether the wrstandardid field is set.
       */
      @Override
      public boolean hasWrstandardid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return The wrstandardid.
       */
      @Override
      public long getWrstandardid() {
        return wrstandardid_;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @param value The wrstandardid to set.
       * @return This builder for chaining.
       */
      public Builder setWrstandardid(long value) {
        bitField0_ |= 0x00000008;
        wrstandardid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearWrstandardid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        wrstandardid_ = 0L;
        onChanged();
        return this;
      }

      private long deliverygoodsid_ ;
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return Whether the deliverygoodsid field is set.
       */
      @Override
      public boolean hasDeliverygoodsid() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return The deliverygoodsid.
       */
      @Override
      public long getDeliverygoodsid() {
        return deliverygoodsid_;
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @param value The deliverygoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodsid(long value) {
        bitField0_ |= 0x00000010;
        deliverygoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeliverygoodsid() {
        bitField0_ = (bitField0_ & ~0x00000010);
        deliverygoodsid_ = 0L;
        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:ManageServiceMI2.DeliveryGoodsApplyRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.DeliveryGoodsApplyRsp)
    private static final DeliveryGoodsApplyRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new DeliveryGoodsApplyRsp();
    }

    public static DeliveryGoodsApplyRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface DeliveryGoodsCancelReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.DeliveryGoodsCancelReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 2;</code>
     * @return Whether the wrstandardid field is set.
     */
    boolean hasWrstandardid();
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 2;</code>
     * @return The wrstandardid.
     */
    long getWrstandardid();

    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return Whether the isvalid field is set.
     */
    boolean hasIsvalid();
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return The isvalid.
     */
    int getIsvalid();
  }
  /**
   * <pre>
   * 现货品种停用请求 0 29 129
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.DeliveryGoodsCancelReq}
   */
  public static final class DeliveryGoodsCancelReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.DeliveryGoodsCancelReq)
      DeliveryGoodsCancelReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeliveryGoodsCancelReq.newBuilder() to construct.
    private DeliveryGoodsCancelReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeliveryGoodsCancelReq() {
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeliveryGoodsCancelReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              wrstandardid_ = input.readUInt64();
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              isvalid_ = 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 ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              DeliveryGoodsCancelReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int WRSTANDARDID_FIELD_NUMBER = 2;
    private long wrstandardid_;
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 2;</code>
     * @return Whether the wrstandardid field is set.
     */
    @Override
    public boolean hasWrstandardid() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 2;</code>
     * @return The wrstandardid.
     */
    @Override
    public long getWrstandardid() {
      return wrstandardid_;
    }

    public static final int ISVALID_FIELD_NUMBER = 3;
    private int isvalid_;
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return Whether the isvalid field is set.
     */
    @Override
    public boolean hasIsvalid() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return The isvalid.
     */
    @Override
    public int getIsvalid() {
      return isvalid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeUInt64(2, wrstandardid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeInt32(3, isvalid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(2, wrstandardid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, isvalid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasWrstandardid() != other.hasWrstandardid()) return false;
      if (hasWrstandardid()) {
        if (getWrstandardid()
            != other.getWrstandardid()) return false;
      }
      if (hasIsvalid() != other.hasIsvalid()) return false;
      if (hasIsvalid()) {
        if (getIsvalid()
            != other.getIsvalid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasWrstandardid()) {
        hash = (37 * hash) + WRSTANDARDID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getWrstandardid());
      }
      if (hasIsvalid()) {
        hash = (37 * hash) + ISVALID_FIELD_NUMBER;
        hash = (53 * hash) + getIsvalid();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static DeliveryGoodsCancelReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelReq 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 DeliveryGoodsCancelReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelReq 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 DeliveryGoodsCancelReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelReq 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(DeliveryGoodsCancelReq 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>
     * 现货品种停用请求 0 29 129
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.DeliveryGoodsCancelReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.DeliveryGoodsCancelReq)
        DeliveryGoodsCancelReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                DeliveryGoodsCancelReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.DeliveryGoodsCancelReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        wrstandardid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        isvalid_ = 0;
        bitField0_ = (bitField0_ & ~0x00000004);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor;
      }

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

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

      @Override
      public DeliveryGoodsCancelReq buildPartial() {
        DeliveryGoodsCancelReq result = new DeliveryGoodsCancelReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.wrstandardid_ = wrstandardid_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.isvalid_ = isvalid_;
          to_bitField0_ |= 0x00000004;
        }
        result.bitField0_ = to_bitField0_;
        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 DeliveryGoodsCancelReq) {
          return mergeFrom((DeliveryGoodsCancelReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(DeliveryGoodsCancelReq other) {
        if (other == DeliveryGoodsCancelReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasWrstandardid()) {
          setWrstandardid(other.getWrstandardid());
        }
        if (other.hasIsvalid()) {
          setIsvalid(other.getIsvalid());
        }
        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 {
        DeliveryGoodsCancelReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (DeliveryGoodsCancelReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private long wrstandardid_ ;
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 2;</code>
       * @return Whether the wrstandardid field is set.
       */
      @Override
      public boolean hasWrstandardid() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 2;</code>
       * @return The wrstandardid.
       */
      @Override
      public long getWrstandardid() {
        return wrstandardid_;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 2;</code>
       * @param value The wrstandardid to set.
       * @return This builder for chaining.
       */
      public Builder setWrstandardid(long value) {
        bitField0_ |= 0x00000002;
        wrstandardid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearWrstandardid() {
        bitField0_ = (bitField0_ & ~0x00000002);
        wrstandardid_ = 0L;
        onChanged();
        return this;
      }

      private int isvalid_ ;
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return Whether the isvalid field is set.
       */
      @Override
      public boolean hasIsvalid() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return The isvalid.
       */
      @Override
      public int getIsvalid() {
        return isvalid_;
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @param value The isvalid to set.
       * @return This builder for chaining.
       */
      public Builder setIsvalid(int value) {
        bitField0_ |= 0x00000004;
        isvalid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearIsvalid() {
        bitField0_ = (bitField0_ & ~0x00000004);
        isvalid_ = 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:ManageServiceMI2.DeliveryGoodsCancelReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.DeliveryGoodsCancelReq)
    private static final DeliveryGoodsCancelReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new DeliveryGoodsCancelReq();
    }

    public static DeliveryGoodsCancelReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface DeliveryGoodsCancelRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.DeliveryGoodsCancelRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return Whether the wrstandardid field is set.
     */
    boolean hasWrstandardid();
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return The wrstandardid.
     */
    long getWrstandardid();

    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return Whether the deliverygoodsid field is set.
     */
    boolean hasDeliverygoodsid();
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return The deliverygoodsid.
     */
    long getDeliverygoodsid();
  }
  /**
   * <pre>
   * 现货品种停用响应 0 29 130
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.DeliveryGoodsCancelRsp}
   */
  public static final class DeliveryGoodsCancelRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.DeliveryGoodsCancelRsp)
      DeliveryGoodsCancelRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeliveryGoodsCancelRsp.newBuilder() to construct.
    private DeliveryGoodsCancelRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private DeliveryGoodsCancelRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeliveryGoodsCancelRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              wrstandardid_ = input.readUInt64();
              break;
            }
            case 40: {
              bitField0_ |= 0x00000010;
              deliverygoodsid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              DeliveryGoodsCancelRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int WRSTANDARDID_FIELD_NUMBER = 4;
    private long wrstandardid_;
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return Whether the wrstandardid field is set.
     */
    @Override
    public boolean hasWrstandardid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 现货商品ID
     * </pre>
     *
     * <code>optional uint64 wrstandardid = 4;</code>
     * @return The wrstandardid.
     */
    @Override
    public long getWrstandardid() {
      return wrstandardid_;
    }

    public static final int DELIVERYGOODSID_FIELD_NUMBER = 5;
    private long deliverygoodsid_;
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return Whether the deliverygoodsid field is set.
     */
    @Override
    public boolean hasDeliverygoodsid() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * uint64 现货品种ID
     * </pre>
     *
     * <code>optional uint64 deliverygoodsid = 5;</code>
     * @return The deliverygoodsid.
     */
    @Override
    public long getDeliverygoodsid() {
      return deliverygoodsid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, wrstandardid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeUInt64(5, deliverygoodsid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, wrstandardid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(5, deliverygoodsid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasWrstandardid() != other.hasWrstandardid()) return false;
      if (hasWrstandardid()) {
        if (getWrstandardid()
            != other.getWrstandardid()) return false;
      }
      if (hasDeliverygoodsid() != other.hasDeliverygoodsid()) return false;
      if (hasDeliverygoodsid()) {
        if (getDeliverygoodsid()
            != other.getDeliverygoodsid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasWrstandardid()) {
        hash = (37 * hash) + WRSTANDARDID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getWrstandardid());
      }
      if (hasDeliverygoodsid()) {
        hash = (37 * hash) + DELIVERYGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getDeliverygoodsid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static DeliveryGoodsCancelRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static DeliveryGoodsCancelRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static DeliveryGoodsCancelRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelRsp 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 DeliveryGoodsCancelRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelRsp 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 DeliveryGoodsCancelRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static DeliveryGoodsCancelRsp 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(DeliveryGoodsCancelRsp 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>
     * 现货品种停用响应 0 29 130
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.DeliveryGoodsCancelRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.DeliveryGoodsCancelRsp)
        DeliveryGoodsCancelRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                DeliveryGoodsCancelRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.DeliveryGoodsCancelRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        wrstandardid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        deliverygoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000010);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor;
      }

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

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

      @Override
      public DeliveryGoodsCancelRsp buildPartial() {
        DeliveryGoodsCancelRsp result = new DeliveryGoodsCancelRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.wrstandardid_ = wrstandardid_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.deliverygoodsid_ = deliverygoodsid_;
          to_bitField0_ |= 0x00000010;
        }
        result.bitField0_ = to_bitField0_;
        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 DeliveryGoodsCancelRsp) {
          return mergeFrom((DeliveryGoodsCancelRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(DeliveryGoodsCancelRsp other) {
        if (other == DeliveryGoodsCancelRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasWrstandardid()) {
          setWrstandardid(other.getWrstandardid());
        }
        if (other.hasDeliverygoodsid()) {
          setDeliverygoodsid(other.getDeliverygoodsid());
        }
        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 {
        DeliveryGoodsCancelRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (DeliveryGoodsCancelRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long wrstandardid_ ;
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return Whether the wrstandardid field is set.
       */
      @Override
      public boolean hasWrstandardid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return The wrstandardid.
       */
      @Override
      public long getWrstandardid() {
        return wrstandardid_;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @param value The wrstandardid to set.
       * @return This builder for chaining.
       */
      public Builder setWrstandardid(long value) {
        bitField0_ |= 0x00000008;
        wrstandardid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货商品ID
       * </pre>
       *
       * <code>optional uint64 wrstandardid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearWrstandardid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        wrstandardid_ = 0L;
        onChanged();
        return this;
      }

      private long deliverygoodsid_ ;
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return Whether the deliverygoodsid field is set.
       */
      @Override
      public boolean hasDeliverygoodsid() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return The deliverygoodsid.
       */
      @Override
      public long getDeliverygoodsid() {
        return deliverygoodsid_;
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @param value The deliverygoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setDeliverygoodsid(long value) {
        bitField0_ |= 0x00000010;
        deliverygoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 现货品种ID
       * </pre>
       *
       * <code>optional uint64 deliverygoodsid = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearDeliverygoodsid() {
        bitField0_ = (bitField0_ & ~0x00000010);
        deliverygoodsid_ = 0L;
        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:ManageServiceMI2.DeliveryGoodsCancelRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.DeliveryGoodsCancelRsp)
    private static final DeliveryGoodsCancelRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new DeliveryGoodsCancelRsp();
    }

    public static DeliveryGoodsCancelRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return Whether the middlegoodsname field is set.
     */
    boolean hasMiddlegoodsname();
    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return The middlegoodsname.
     */
    String getMiddlegoodsname();
    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return The bytes for middlegoodsname.
     */
    com.google.protobuf.ByteString
        getMiddlegoodsnameBytes();

    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return Whether the middlegoodscode field is set.
     */
    boolean hasMiddlegoodscode();
    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return The middlegoodscode.
     */
    String getMiddlegoodscode();
    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return The bytes for middlegoodscode.
     */
    com.google.protobuf.ByteString
        getMiddlegoodscodeBytes();

    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 4;</code>
     * @return Whether the goodsunitid field is set.
     */
    boolean hasGoodsunitid();
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 4;</code>
     * @return The goodsunitid.
     */
    int getGoodsunitid();

    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 5;</code>
     * @return Whether the relatedgoodsid field is set.
     */
    boolean hasRelatedgoodsid();
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 5;</code>
     * @return The relatedgoodsid.
     */
    long getRelatedgoodsid();

    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 6;</code>
     * @return Whether the evaluateratio field is set.
     */
    boolean hasEvaluateratio();
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 6;</code>
     * @return The evaluateratio.
     */
    double getEvaluateratio();

    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 7;</code>
     * @return Whether the qtydecimalplace field is set.
     */
    boolean hasQtydecimalplace();
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 7;</code>
     * @return The qtydecimalplace.
     */
    int getQtydecimalplace();

    /**
     * <pre>
     * uint64 创建人
     * </pre>
     *
     * <code>optional uint64 creatorid = 8;</code>
     * @return Whether the creatorid field is set.
     */
    boolean hasCreatorid();
    /**
     * <pre>
     * uint64 创建人
     * </pre>
     *
     * <code>optional uint64 creatorid = 8;</code>
     * @return The creatorid.
     */
    long getCreatorid();

    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 9;</code>
     * @return Whether the modifierid field is set.
     */
    boolean hasModifierid();
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 9;</code>
     * @return The modifierid.
     */
    long getModifierid();

    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 10;</code>
     * @return Whether the relatedgoodstype field is set.
     */
    boolean hasRelatedgoodstype();
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 10;</code>
     * @return The relatedgoodstype.
     */
    int getRelatedgoodstype();

    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 11;</code>
     * @return Whether the needhedgeratio field is set.
     */
    boolean hasNeedhedgeratio();
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 11;</code>
     * @return The needhedgeratio.
     */
    double getNeedhedgeratio();

    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 12;</code>
     * @return Whether the areauserid field is set.
     */
    boolean hasAreauserid();
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 12;</code>
     * @return The areauserid.
     */
    long getAreauserid();

    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 13;</code>
     * @return Whether the goodsgroupid field is set.
     */
    boolean hasGoodsgroupid();
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 13;</code>
     * @return The goodsgroupid.
     */
    long getGoodsgroupid();

    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return Whether the remark field is set.
     */
    boolean hasRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return The remark.
     */
    String getRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return The bytes for remark.
     */
    com.google.protobuf.ByteString
        getRemarkBytes();
  }
  /**
   * <pre>
   * 套保品种新增请求 0 29 131
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsReq}
   */
  public static final class ErmsMiddelGoodsReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsReq)
      ErmsMiddelGoodsReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsReq.newBuilder() to construct.
    private ErmsMiddelGoodsReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsReq() {
      middlegoodsname_ = "";
      middlegoodscode_ = "";
      remark_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 18: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000002;
              middlegoodsname_ = bs;
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              middlegoodscode_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              goodsunitid_ = input.readInt32();
              break;
            }
            case 40: {
              bitField0_ |= 0x00000010;
              relatedgoodsid_ = input.readUInt64();
              break;
            }
            case 49: {
              bitField0_ |= 0x00000020;
              evaluateratio_ = input.readDouble();
              break;
            }
            case 56: {
              bitField0_ |= 0x00000040;
              qtydecimalplace_ = input.readInt32();
              break;
            }
            case 64: {
              bitField0_ |= 0x00000080;
              creatorid_ = input.readUInt64();
              break;
            }
            case 72: {
              bitField0_ |= 0x00000100;
              modifierid_ = input.readUInt64();
              break;
            }
            case 80: {
              bitField0_ |= 0x00000200;
              relatedgoodstype_ = input.readInt32();
              break;
            }
            case 89: {
              bitField0_ |= 0x00000400;
              needhedgeratio_ = input.readDouble();
              break;
            }
            case 96: {
              bitField0_ |= 0x00000800;
              areauserid_ = input.readUInt64();
              break;
            }
            case 104: {
              bitField0_ |= 0x00001000;
              goodsgroupid_ = input.readUInt64();
              break;
            }
            case 114: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00002000;
              remark_ = bs;
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int MIDDLEGOODSNAME_FIELD_NUMBER = 2;
    private volatile Object middlegoodsname_;
    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return Whether the middlegoodsname field is set.
     */
    @Override
    public boolean hasMiddlegoodsname() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return The middlegoodsname.
     */
    @Override
    public String getMiddlegoodsname() {
      Object ref = middlegoodsname_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          middlegoodsname_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 套保品种名称
     * </pre>
     *
     * <code>optional string middlegoodsname = 2;</code>
     * @return The bytes for middlegoodsname.
     */
    @Override
    public com.google.protobuf.ByteString
        getMiddlegoodsnameBytes() {
      Object ref = middlegoodsname_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        middlegoodsname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MIDDLEGOODSCODE_FIELD_NUMBER = 3;
    private volatile Object middlegoodscode_;
    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return Whether the middlegoodscode field is set.
     */
    @Override
    public boolean hasMiddlegoodscode() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return The middlegoodscode.
     */
    @Override
    public String getMiddlegoodscode() {
      Object ref = middlegoodscode_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          middlegoodscode_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 套保品种代码
     * </pre>
     *
     * <code>optional string middlegoodscode = 3;</code>
     * @return The bytes for middlegoodscode.
     */
    @Override
    public com.google.protobuf.ByteString
        getMiddlegoodscodeBytes() {
      Object ref = middlegoodscode_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        middlegoodscode_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int GOODSUNITID_FIELD_NUMBER = 4;
    private int goodsunitid_;
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 4;</code>
     * @return Whether the goodsunitid field is set.
     */
    @Override
    public boolean hasGoodsunitid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 4;</code>
     * @return The goodsunitid.
     */
    @Override
    public int getGoodsunitid() {
      return goodsunitid_;
    }

    public static final int RELATEDGOODSID_FIELD_NUMBER = 5;
    private long relatedgoodsid_;
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 5;</code>
     * @return Whether the relatedgoodsid field is set.
     */
    @Override
    public boolean hasRelatedgoodsid() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 5;</code>
     * @return The relatedgoodsid.
     */
    @Override
    public long getRelatedgoodsid() {
      return relatedgoodsid_;
    }

    public static final int EVALUATERATIO_FIELD_NUMBER = 6;
    private double evaluateratio_;
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 6;</code>
     * @return Whether the evaluateratio field is set.
     */
    @Override
    public boolean hasEvaluateratio() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 6;</code>
     * @return The evaluateratio.
     */
    @Override
    public double getEvaluateratio() {
      return evaluateratio_;
    }

    public static final int QTYDECIMALPLACE_FIELD_NUMBER = 7;
    private int qtydecimalplace_;
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 7;</code>
     * @return Whether the qtydecimalplace field is set.
     */
    @Override
    public boolean hasQtydecimalplace() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 7;</code>
     * @return The qtydecimalplace.
     */
    @Override
    public int getQtydecimalplace() {
      return qtydecimalplace_;
    }

    public static final int CREATORID_FIELD_NUMBER = 8;
    private long creatorid_;
    /**
     * <pre>
     * uint64 创建人
     * </pre>
     *
     * <code>optional uint64 creatorid = 8;</code>
     * @return Whether the creatorid field is set.
     */
    @Override
    public boolean hasCreatorid() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * <pre>
     * uint64 创建人
     * </pre>
     *
     * <code>optional uint64 creatorid = 8;</code>
     * @return The creatorid.
     */
    @Override
    public long getCreatorid() {
      return creatorid_;
    }

    public static final int MODIFIERID_FIELD_NUMBER = 9;
    private long modifierid_;
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 9;</code>
     * @return Whether the modifierid field is set.
     */
    @Override
    public boolean hasModifierid() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 9;</code>
     * @return The modifierid.
     */
    @Override
    public long getModifierid() {
      return modifierid_;
    }

    public static final int RELATEDGOODSTYPE_FIELD_NUMBER = 10;
    private int relatedgoodstype_;
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 10;</code>
     * @return Whether the relatedgoodstype field is set.
     */
    @Override
    public boolean hasRelatedgoodstype() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 10;</code>
     * @return The relatedgoodstype.
     */
    @Override
    public int getRelatedgoodstype() {
      return relatedgoodstype_;
    }

    public static final int NEEDHEDGERATIO_FIELD_NUMBER = 11;
    private double needhedgeratio_;
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 11;</code>
     * @return Whether the needhedgeratio field is set.
     */
    @Override
    public boolean hasNeedhedgeratio() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 11;</code>
     * @return The needhedgeratio.
     */
    @Override
    public double getNeedhedgeratio() {
      return needhedgeratio_;
    }

    public static final int AREAUSERID_FIELD_NUMBER = 12;
    private long areauserid_;
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 12;</code>
     * @return Whether the areauserid field is set.
     */
    @Override
    public boolean hasAreauserid() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 12;</code>
     * @return The areauserid.
     */
    @Override
    public long getAreauserid() {
      return areauserid_;
    }

    public static final int GOODSGROUPID_FIELD_NUMBER = 13;
    private long goodsgroupid_;
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 13;</code>
     * @return Whether the goodsgroupid field is set.
     */
    @Override
    public boolean hasGoodsgroupid() {
      return ((bitField0_ & 0x00001000) != 0);
    }
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 13;</code>
     * @return The goodsgroupid.
     */
    @Override
    public long getGoodsgroupid() {
      return goodsgroupid_;
    }

    public static final int REMARK_FIELD_NUMBER = 14;
    private volatile Object remark_;
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return Whether the remark field is set.
     */
    @Override
    public boolean hasRemark() {
      return ((bitField0_ & 0x00002000) != 0);
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return The remark.
     */
    @Override
    public String getRemark() {
      Object ref = remark_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          remark_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 14;</code>
     * @return The bytes for remark.
     */
    @Override
    public com.google.protobuf.ByteString
        getRemarkBytes() {
      Object ref = remark_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        remark_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, middlegoodsname_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, middlegoodscode_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeInt32(4, goodsunitid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeUInt64(5, relatedgoodsid_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeDouble(6, evaluateratio_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        output.writeInt32(7, qtydecimalplace_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        output.writeUInt64(8, creatorid_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        output.writeUInt64(9, modifierid_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        output.writeInt32(10, relatedgoodstype_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        output.writeDouble(11, needhedgeratio_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        output.writeUInt64(12, areauserid_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        output.writeUInt64(13, goodsgroupid_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 14, remark_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, middlegoodsname_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, middlegoodscode_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, goodsunitid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(5, relatedgoodsid_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(6, evaluateratio_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(7, qtydecimalplace_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(8, creatorid_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(9, modifierid_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(10, relatedgoodstype_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(11, needhedgeratio_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(12, areauserid_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(13, goodsgroupid_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, remark_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasMiddlegoodsname() != other.hasMiddlegoodsname()) return false;
      if (hasMiddlegoodsname()) {
        if (!getMiddlegoodsname()
            .equals(other.getMiddlegoodsname())) return false;
      }
      if (hasMiddlegoodscode() != other.hasMiddlegoodscode()) return false;
      if (hasMiddlegoodscode()) {
        if (!getMiddlegoodscode()
            .equals(other.getMiddlegoodscode())) return false;
      }
      if (hasGoodsunitid() != other.hasGoodsunitid()) return false;
      if (hasGoodsunitid()) {
        if (getGoodsunitid()
            != other.getGoodsunitid()) return false;
      }
      if (hasRelatedgoodsid() != other.hasRelatedgoodsid()) return false;
      if (hasRelatedgoodsid()) {
        if (getRelatedgoodsid()
            != other.getRelatedgoodsid()) return false;
      }
      if (hasEvaluateratio() != other.hasEvaluateratio()) return false;
      if (hasEvaluateratio()) {
        if (Double.doubleToLongBits(getEvaluateratio())
            != Double.doubleToLongBits(
                other.getEvaluateratio())) return false;
      }
      if (hasQtydecimalplace() != other.hasQtydecimalplace()) return false;
      if (hasQtydecimalplace()) {
        if (getQtydecimalplace()
            != other.getQtydecimalplace()) return false;
      }
      if (hasCreatorid() != other.hasCreatorid()) return false;
      if (hasCreatorid()) {
        if (getCreatorid()
            != other.getCreatorid()) return false;
      }
      if (hasModifierid() != other.hasModifierid()) return false;
      if (hasModifierid()) {
        if (getModifierid()
            != other.getModifierid()) return false;
      }
      if (hasRelatedgoodstype() != other.hasRelatedgoodstype()) return false;
      if (hasRelatedgoodstype()) {
        if (getRelatedgoodstype()
            != other.getRelatedgoodstype()) return false;
      }
      if (hasNeedhedgeratio() != other.hasNeedhedgeratio()) return false;
      if (hasNeedhedgeratio()) {
        if (Double.doubleToLongBits(getNeedhedgeratio())
            != Double.doubleToLongBits(
                other.getNeedhedgeratio())) return false;
      }
      if (hasAreauserid() != other.hasAreauserid()) return false;
      if (hasAreauserid()) {
        if (getAreauserid()
            != other.getAreauserid()) return false;
      }
      if (hasGoodsgroupid() != other.hasGoodsgroupid()) return false;
      if (hasGoodsgroupid()) {
        if (getGoodsgroupid()
            != other.getGoodsgroupid()) return false;
      }
      if (hasRemark() != other.hasRemark()) return false;
      if (hasRemark()) {
        if (!getRemark()
            .equals(other.getRemark())) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasMiddlegoodsname()) {
        hash = (37 * hash) + MIDDLEGOODSNAME_FIELD_NUMBER;
        hash = (53 * hash) + getMiddlegoodsname().hashCode();
      }
      if (hasMiddlegoodscode()) {
        hash = (37 * hash) + MIDDLEGOODSCODE_FIELD_NUMBER;
        hash = (53 * hash) + getMiddlegoodscode().hashCode();
      }
      if (hasGoodsunitid()) {
        hash = (37 * hash) + GOODSUNITID_FIELD_NUMBER;
        hash = (53 * hash) + getGoodsunitid();
      }
      if (hasRelatedgoodsid()) {
        hash = (37 * hash) + RELATEDGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getRelatedgoodsid());
      }
      if (hasEvaluateratio()) {
        hash = (37 * hash) + EVALUATERATIO_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            Double.doubleToLongBits(getEvaluateratio()));
      }
      if (hasQtydecimalplace()) {
        hash = (37 * hash) + QTYDECIMALPLACE_FIELD_NUMBER;
        hash = (53 * hash) + getQtydecimalplace();
      }
      if (hasCreatorid()) {
        hash = (37 * hash) + CREATORID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCreatorid());
      }
      if (hasModifierid()) {
        hash = (37 * hash) + MODIFIERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getModifierid());
      }
      if (hasRelatedgoodstype()) {
        hash = (37 * hash) + RELATEDGOODSTYPE_FIELD_NUMBER;
        hash = (53 * hash) + getRelatedgoodstype();
      }
      if (hasNeedhedgeratio()) {
        hash = (37 * hash) + NEEDHEDGERATIO_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            Double.doubleToLongBits(getNeedhedgeratio()));
      }
      if (hasAreauserid()) {
        hash = (37 * hash) + AREAUSERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getAreauserid());
      }
      if (hasGoodsgroupid()) {
        hash = (37 * hash) + GOODSGROUPID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getGoodsgroupid());
      }
      if (hasRemark()) {
        hash = (37 * hash) + REMARK_FIELD_NUMBER;
        hash = (53 * hash) + getRemark().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsReq 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 ErmsMiddelGoodsReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsReq 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 ErmsMiddelGoodsReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsReq 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(ErmsMiddelGoodsReq 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>
     * 套保品种新增请求 0 29 131
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsReq)
        ErmsMiddelGoodsReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        middlegoodsname_ = "";
        bitField0_ = (bitField0_ & ~0x00000002);
        middlegoodscode_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        goodsunitid_ = 0;
        bitField0_ = (bitField0_ & ~0x00000008);
        relatedgoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000010);
        evaluateratio_ = 0D;
        bitField0_ = (bitField0_ & ~0x00000020);
        qtydecimalplace_ = 0;
        bitField0_ = (bitField0_ & ~0x00000040);
        creatorid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000080);
        modifierid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000100);
        relatedgoodstype_ = 0;
        bitField0_ = (bitField0_ & ~0x00000200);
        needhedgeratio_ = 0D;
        bitField0_ = (bitField0_ & ~0x00000400);
        areauserid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000800);
        goodsgroupid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00001000);
        remark_ = "";
        bitField0_ = (bitField0_ & ~0x00002000);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsReq buildPartial() {
        ErmsMiddelGoodsReq result = new ErmsMiddelGoodsReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          to_bitField0_ |= 0x00000002;
        }
        result.middlegoodsname_ = middlegoodsname_;
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.middlegoodscode_ = middlegoodscode_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.goodsunitid_ = goodsunitid_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.relatedgoodsid_ = relatedgoodsid_;
          to_bitField0_ |= 0x00000010;
        }
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.evaluateratio_ = evaluateratio_;
          to_bitField0_ |= 0x00000020;
        }
        if (((from_bitField0_ & 0x00000040) != 0)) {
          result.qtydecimalplace_ = qtydecimalplace_;
          to_bitField0_ |= 0x00000040;
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          result.creatorid_ = creatorid_;
          to_bitField0_ |= 0x00000080;
        }
        if (((from_bitField0_ & 0x00000100) != 0)) {
          result.modifierid_ = modifierid_;
          to_bitField0_ |= 0x00000100;
        }
        if (((from_bitField0_ & 0x00000200) != 0)) {
          result.relatedgoodstype_ = relatedgoodstype_;
          to_bitField0_ |= 0x00000200;
        }
        if (((from_bitField0_ & 0x00000400) != 0)) {
          result.needhedgeratio_ = needhedgeratio_;
          to_bitField0_ |= 0x00000400;
        }
        if (((from_bitField0_ & 0x00000800) != 0)) {
          result.areauserid_ = areauserid_;
          to_bitField0_ |= 0x00000800;
        }
        if (((from_bitField0_ & 0x00001000) != 0)) {
          result.goodsgroupid_ = goodsgroupid_;
          to_bitField0_ |= 0x00001000;
        }
        if (((from_bitField0_ & 0x00002000) != 0)) {
          to_bitField0_ |= 0x00002000;
        }
        result.remark_ = remark_;
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsReq) {
          return mergeFrom((ErmsMiddelGoodsReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsReq other) {
        if (other == ErmsMiddelGoodsReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasMiddlegoodsname()) {
          bitField0_ |= 0x00000002;
          middlegoodsname_ = other.middlegoodsname_;
          onChanged();
        }
        if (other.hasMiddlegoodscode()) {
          bitField0_ |= 0x00000004;
          middlegoodscode_ = other.middlegoodscode_;
          onChanged();
        }
        if (other.hasGoodsunitid()) {
          setGoodsunitid(other.getGoodsunitid());
        }
        if (other.hasRelatedgoodsid()) {
          setRelatedgoodsid(other.getRelatedgoodsid());
        }
        if (other.hasEvaluateratio()) {
          setEvaluateratio(other.getEvaluateratio());
        }
        if (other.hasQtydecimalplace()) {
          setQtydecimalplace(other.getQtydecimalplace());
        }
        if (other.hasCreatorid()) {
          setCreatorid(other.getCreatorid());
        }
        if (other.hasModifierid()) {
          setModifierid(other.getModifierid());
        }
        if (other.hasRelatedgoodstype()) {
          setRelatedgoodstype(other.getRelatedgoodstype());
        }
        if (other.hasNeedhedgeratio()) {
          setNeedhedgeratio(other.getNeedhedgeratio());
        }
        if (other.hasAreauserid()) {
          setAreauserid(other.getAreauserid());
        }
        if (other.hasGoodsgroupid()) {
          setGoodsgroupid(other.getGoodsgroupid());
        }
        if (other.hasRemark()) {
          bitField0_ |= 0x00002000;
          remark_ = other.remark_;
          onChanged();
        }
        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 {
        ErmsMiddelGoodsReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private Object middlegoodsname_ = "";
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @return Whether the middlegoodsname field is set.
       */
      public boolean hasMiddlegoodsname() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @return The middlegoodsname.
       */
      public String getMiddlegoodsname() {
        Object ref = middlegoodsname_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            middlegoodsname_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @return The bytes for middlegoodsname.
       */
      public com.google.protobuf.ByteString
          getMiddlegoodsnameBytes() {
        Object ref = middlegoodsname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          middlegoodsname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @param value The middlegoodsname to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsname(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        middlegoodsname_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsname() {
        bitField0_ = (bitField0_ & ~0x00000002);
        middlegoodsname_ = getDefaultInstance().getMiddlegoodsname();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 套保品种名称
       * </pre>
       *
       * <code>optional string middlegoodsname = 2;</code>
       * @param value The bytes for middlegoodsname to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        middlegoodsname_ = value;
        onChanged();
        return this;
      }

      private Object middlegoodscode_ = "";
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @return Whether the middlegoodscode field is set.
       */
      public boolean hasMiddlegoodscode() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @return The middlegoodscode.
       */
      public String getMiddlegoodscode() {
        Object ref = middlegoodscode_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            middlegoodscode_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @return The bytes for middlegoodscode.
       */
      public com.google.protobuf.ByteString
          getMiddlegoodscodeBytes() {
        Object ref = middlegoodscode_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          middlegoodscode_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @param value The middlegoodscode to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodscode(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        middlegoodscode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodscode() {
        bitField0_ = (bitField0_ & ~0x00000004);
        middlegoodscode_ = getDefaultInstance().getMiddlegoodscode();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 套保品种代码
       * </pre>
       *
       * <code>optional string middlegoodscode = 3;</code>
       * @param value The bytes for middlegoodscode to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodscodeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        middlegoodscode_ = value;
        onChanged();
        return this;
      }

      private int goodsunitid_ ;
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 4;</code>
       * @return Whether the goodsunitid field is set.
       */
      @Override
      public boolean hasGoodsunitid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 4;</code>
       * @return The goodsunitid.
       */
      @Override
      public int getGoodsunitid() {
        return goodsunitid_;
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 4;</code>
       * @param value The goodsunitid to set.
       * @return This builder for chaining.
       */
      public Builder setGoodsunitid(int value) {
        bitField0_ |= 0x00000008;
        goodsunitid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearGoodsunitid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        goodsunitid_ = 0;
        onChanged();
        return this;
      }

      private long relatedgoodsid_ ;
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 5;</code>
       * @return Whether the relatedgoodsid field is set.
       */
      @Override
      public boolean hasRelatedgoodsid() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 5;</code>
       * @return The relatedgoodsid.
       */
      @Override
      public long getRelatedgoodsid() {
        return relatedgoodsid_;
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 5;</code>
       * @param value The relatedgoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setRelatedgoodsid(long value) {
        bitField0_ |= 0x00000010;
        relatedgoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearRelatedgoodsid() {
        bitField0_ = (bitField0_ & ~0x00000010);
        relatedgoodsid_ = 0L;
        onChanged();
        return this;
      }

      private double evaluateratio_ ;
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 6;</code>
       * @return Whether the evaluateratio field is set.
       */
      @Override
      public boolean hasEvaluateratio() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 6;</code>
       * @return The evaluateratio.
       */
      @Override
      public double getEvaluateratio() {
        return evaluateratio_;
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 6;</code>
       * @param value The evaluateratio to set.
       * @return This builder for chaining.
       */
      public Builder setEvaluateratio(double value) {
        bitField0_ |= 0x00000020;
        evaluateratio_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearEvaluateratio() {
        bitField0_ = (bitField0_ & ~0x00000020);
        evaluateratio_ = 0D;
        onChanged();
        return this;
      }

      private int qtydecimalplace_ ;
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 7;</code>
       * @return Whether the qtydecimalplace field is set.
       */
      @Override
      public boolean hasQtydecimalplace() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 7;</code>
       * @return The qtydecimalplace.
       */
      @Override
      public int getQtydecimalplace() {
        return qtydecimalplace_;
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 7;</code>
       * @param value The qtydecimalplace to set.
       * @return This builder for chaining.
       */
      public Builder setQtydecimalplace(int value) {
        bitField0_ |= 0x00000040;
        qtydecimalplace_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearQtydecimalplace() {
        bitField0_ = (bitField0_ & ~0x00000040);
        qtydecimalplace_ = 0;
        onChanged();
        return this;
      }

      private long creatorid_ ;
      /**
       * <pre>
       * uint64 创建人
       * </pre>
       *
       * <code>optional uint64 creatorid = 8;</code>
       * @return Whether the creatorid field is set.
       */
      @Override
      public boolean hasCreatorid() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <pre>
       * uint64 创建人
       * </pre>
       *
       * <code>optional uint64 creatorid = 8;</code>
       * @return The creatorid.
       */
      @Override
      public long getCreatorid() {
        return creatorid_;
      }
      /**
       * <pre>
       * uint64 创建人
       * </pre>
       *
       * <code>optional uint64 creatorid = 8;</code>
       * @param value The creatorid to set.
       * @return This builder for chaining.
       */
      public Builder setCreatorid(long value) {
        bitField0_ |= 0x00000080;
        creatorid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 创建人
       * </pre>
       *
       * <code>optional uint64 creatorid = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearCreatorid() {
        bitField0_ = (bitField0_ & ~0x00000080);
        creatorid_ = 0L;
        onChanged();
        return this;
      }

      private long modifierid_ ;
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 9;</code>
       * @return Whether the modifierid field is set.
       */
      @Override
      public boolean hasModifierid() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 9;</code>
       * @return The modifierid.
       */
      @Override
      public long getModifierid() {
        return modifierid_;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 9;</code>
       * @param value The modifierid to set.
       * @return This builder for chaining.
       */
      public Builder setModifierid(long value) {
        bitField0_ |= 0x00000100;
        modifierid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearModifierid() {
        bitField0_ = (bitField0_ & ~0x00000100);
        modifierid_ = 0L;
        onChanged();
        return this;
      }

      private int relatedgoodstype_ ;
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 10;</code>
       * @return Whether the relatedgoodstype field is set.
       */
      @Override
      public boolean hasRelatedgoodstype() {
        return ((bitField0_ & 0x00000200) != 0);
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 10;</code>
       * @return The relatedgoodstype.
       */
      @Override
      public int getRelatedgoodstype() {
        return relatedgoodstype_;
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 10;</code>
       * @param value The relatedgoodstype to set.
       * @return This builder for chaining.
       */
      public Builder setRelatedgoodstype(int value) {
        bitField0_ |= 0x00000200;
        relatedgoodstype_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearRelatedgoodstype() {
        bitField0_ = (bitField0_ & ~0x00000200);
        relatedgoodstype_ = 0;
        onChanged();
        return this;
      }

      private double needhedgeratio_ ;
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 11;</code>
       * @return Whether the needhedgeratio field is set.
       */
      @Override
      public boolean hasNeedhedgeratio() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 11;</code>
       * @return The needhedgeratio.
       */
      @Override
      public double getNeedhedgeratio() {
        return needhedgeratio_;
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 11;</code>
       * @param value The needhedgeratio to set.
       * @return This builder for chaining.
       */
      public Builder setNeedhedgeratio(double value) {
        bitField0_ |= 0x00000400;
        needhedgeratio_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearNeedhedgeratio() {
        bitField0_ = (bitField0_ & ~0x00000400);
        needhedgeratio_ = 0D;
        onChanged();
        return this;
      }

      private long areauserid_ ;
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 12;</code>
       * @return Whether the areauserid field is set.
       */
      @Override
      public boolean hasAreauserid() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 12;</code>
       * @return The areauserid.
       */
      @Override
      public long getAreauserid() {
        return areauserid_;
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 12;</code>
       * @param value The areauserid to set.
       * @return This builder for chaining.
       */
      public Builder setAreauserid(long value) {
        bitField0_ |= 0x00000800;
        areauserid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearAreauserid() {
        bitField0_ = (bitField0_ & ~0x00000800);
        areauserid_ = 0L;
        onChanged();
        return this;
      }

      private long goodsgroupid_ ;
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 13;</code>
       * @return Whether the goodsgroupid field is set.
       */
      @Override
      public boolean hasGoodsgroupid() {
        return ((bitField0_ & 0x00001000) != 0);
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 13;</code>
       * @return The goodsgroupid.
       */
      @Override
      public long getGoodsgroupid() {
        return goodsgroupid_;
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 13;</code>
       * @param value The goodsgroupid to set.
       * @return This builder for chaining.
       */
      public Builder setGoodsgroupid(long value) {
        bitField0_ |= 0x00001000;
        goodsgroupid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 13;</code>
       * @return This builder for chaining.
       */
      public Builder clearGoodsgroupid() {
        bitField0_ = (bitField0_ & ~0x00001000);
        goodsgroupid_ = 0L;
        onChanged();
        return this;
      }

      private Object remark_ = "";
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @return Whether the remark field is set.
       */
      public boolean hasRemark() {
        return ((bitField0_ & 0x00002000) != 0);
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @return The remark.
       */
      public String getRemark() {
        Object ref = remark_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            remark_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @return The bytes for remark.
       */
      public com.google.protobuf.ByteString
          getRemarkBytes() {
        Object ref = remark_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          remark_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @param value The remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemark(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00002000;
        remark_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @return This builder for chaining.
       */
      public Builder clearRemark() {
        bitField0_ = (bitField0_ & ~0x00002000);
        remark_ = getDefaultInstance().getRemark();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 14;</code>
       * @param value The bytes for remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemarkBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00002000;
        remark_ = value;
        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:ManageServiceMI2.ErmsMiddelGoodsReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsReq)
    private static final ErmsMiddelGoodsReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsReq();
    }

    public static ErmsMiddelGoodsReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();
  }
  /**
   * <pre>
   * 套保品种新增响应 0 29 132
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsRsp}
   */
  public static final class ErmsMiddelGoodsRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsRsp)
      ErmsMiddelGoodsRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsRsp.newBuilder() to construct.
    private ErmsMiddelGoodsRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              middlegoodsid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MIDDLEGOODSID_FIELD_NUMBER = 4;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, middlegoodsid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, middlegoodsid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsRsp 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 ErmsMiddelGoodsRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsRsp 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 ErmsMiddelGoodsRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsRsp 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(ErmsMiddelGoodsRsp 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>
     * 套保品种新增响应 0 29 132
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsRsp)
        ErmsMiddelGoodsRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsRsp buildPartial() {
        ErmsMiddelGoodsRsp result = new ErmsMiddelGoodsRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000008;
        }
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsRsp) {
          return mergeFrom((ErmsMiddelGoodsRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsRsp other) {
        if (other == ErmsMiddelGoodsRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        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 {
        ErmsMiddelGoodsRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000008;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        middlegoodsid_ = 0L;
        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:ManageServiceMI2.ErmsMiddelGoodsRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsRsp)
    private static final ErmsMiddelGoodsRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsRsp();
    }

    public static ErmsMiddelGoodsRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsEditReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsEditReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();

    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 3;</code>
     * @return Whether the goodsunitid field is set.
     */
    boolean hasGoodsunitid();
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 3;</code>
     * @return The goodsunitid.
     */
    int getGoodsunitid();

    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 4;</code>
     * @return Whether the relatedgoodsid field is set.
     */
    boolean hasRelatedgoodsid();
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 4;</code>
     * @return The relatedgoodsid.
     */
    long getRelatedgoodsid();

    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 5;</code>
     * @return Whether the evaluateratio field is set.
     */
    boolean hasEvaluateratio();
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 5;</code>
     * @return The evaluateratio.
     */
    double getEvaluateratio();

    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 6;</code>
     * @return Whether the qtydecimalplace field is set.
     */
    boolean hasQtydecimalplace();
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 6;</code>
     * @return The qtydecimalplace.
     */
    int getQtydecimalplace();

    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 7;</code>
     * @return Whether the modifierid field is set.
     */
    boolean hasModifierid();
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 7;</code>
     * @return The modifierid.
     */
    long getModifierid();

    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 8;</code>
     * @return Whether the relatedgoodstype field is set.
     */
    boolean hasRelatedgoodstype();
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 8;</code>
     * @return The relatedgoodstype.
     */
    int getRelatedgoodstype();

    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 9;</code>
     * @return Whether the needhedgeratio field is set.
     */
    boolean hasNeedhedgeratio();
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 9;</code>
     * @return The needhedgeratio.
     */
    double getNeedhedgeratio();

    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 10;</code>
     * @return Whether the areauserid field is set.
     */
    boolean hasAreauserid();
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 10;</code>
     * @return The areauserid.
     */
    long getAreauserid();

    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 11;</code>
     * @return Whether the goodsgroupid field is set.
     */
    boolean hasGoodsgroupid();
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 11;</code>
     * @return The goodsgroupid.
     */
    long getGoodsgroupid();

    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return Whether the remark field is set.
     */
    boolean hasRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return The remark.
     */
    String getRemark();
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return The bytes for remark.
     */
    com.google.protobuf.ByteString
        getRemarkBytes();
  }
  /**
   * <pre>
   * 套保品种修改请求 0 29 133
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsEditReq}
   */
  public static final class ErmsMiddelGoodsEditReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsEditReq)
      ErmsMiddelGoodsEditReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsEditReq.newBuilder() to construct.
    private ErmsMiddelGoodsEditReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsEditReq() {
      remark_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsEditReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              middlegoodsid_ = input.readUInt64();
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              goodsunitid_ = input.readInt32();
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              relatedgoodsid_ = input.readUInt64();
              break;
            }
            case 41: {
              bitField0_ |= 0x00000010;
              evaluateratio_ = input.readDouble();
              break;
            }
            case 48: {
              bitField0_ |= 0x00000020;
              qtydecimalplace_ = input.readInt32();
              break;
            }
            case 56: {
              bitField0_ |= 0x00000040;
              modifierid_ = input.readUInt64();
              break;
            }
            case 64: {
              bitField0_ |= 0x00000080;
              relatedgoodstype_ = input.readInt32();
              break;
            }
            case 73: {
              bitField0_ |= 0x00000100;
              needhedgeratio_ = input.readDouble();
              break;
            }
            case 80: {
              bitField0_ |= 0x00000200;
              areauserid_ = input.readUInt64();
              break;
            }
            case 88: {
              bitField0_ |= 0x00000400;
              goodsgroupid_ = input.readUInt64();
              break;
            }
            case 98: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000800;
              remark_ = bs;
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsEditReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int MIDDLEGOODSID_FIELD_NUMBER = 2;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    public static final int GOODSUNITID_FIELD_NUMBER = 3;
    private int goodsunitid_;
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 3;</code>
     * @return Whether the goodsunitid field is set.
     */
    @Override
    public boolean hasGoodsunitid() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * int32 单位ID
     * </pre>
     *
     * <code>optional int32 goodsunitid = 3;</code>
     * @return The goodsunitid.
     */
    @Override
    public int getGoodsunitid() {
      return goodsunitid_;
    }

    public static final int RELATEDGOODSID_FIELD_NUMBER = 4;
    private long relatedgoodsid_;
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 4;</code>
     * @return Whether the relatedgoodsid field is set.
     */
    @Override
    public boolean hasRelatedgoodsid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 关联交易商品ID
     * </pre>
     *
     * <code>optional uint64 relatedgoodsid = 4;</code>
     * @return The relatedgoodsid.
     */
    @Override
    public long getRelatedgoodsid() {
      return relatedgoodsid_;
    }

    public static final int EVALUATERATIO_FIELD_NUMBER = 5;
    private double evaluateratio_;
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 5;</code>
     * @return Whether the evaluateratio field is set.
     */
    @Override
    public boolean hasEvaluateratio() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * double 估价系数
     * </pre>
     *
     * <code>optional double evaluateratio = 5;</code>
     * @return The evaluateratio.
     */
    @Override
    public double getEvaluateratio() {
      return evaluateratio_;
    }

    public static final int QTYDECIMALPLACE_FIELD_NUMBER = 6;
    private int qtydecimalplace_;
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 6;</code>
     * @return Whether the qtydecimalplace field is set.
     */
    @Override
    public boolean hasQtydecimalplace() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * <pre>
     * int32 数量小数位
     * </pre>
     *
     * <code>optional int32 qtydecimalplace = 6;</code>
     * @return The qtydecimalplace.
     */
    @Override
    public int getQtydecimalplace() {
      return qtydecimalplace_;
    }

    public static final int MODIFIERID_FIELD_NUMBER = 7;
    private long modifierid_;
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 7;</code>
     * @return Whether the modifierid field is set.
     */
    @Override
    public boolean hasModifierid() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 7;</code>
     * @return The modifierid.
     */
    @Override
    public long getModifierid() {
      return modifierid_;
    }

    public static final int RELATEDGOODSTYPE_FIELD_NUMBER = 8;
    private int relatedgoodstype_;
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 8;</code>
     * @return Whether the relatedgoodstype field is set.
     */
    @Override
    public boolean hasRelatedgoodstype() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * <pre>
     * int32 关联商品类型 - 1:期货合约 2:现货品种
     * </pre>
     *
     * <code>optional int32 relatedgoodstype = 8;</code>
     * @return The relatedgoodstype.
     */
    @Override
    public int getRelatedgoodstype() {
      return relatedgoodstype_;
    }

    public static final int NEEDHEDGERATIO_FIELD_NUMBER = 9;
    private double needhedgeratio_;
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 9;</code>
     * @return Whether the needhedgeratio field is set.
     */
    @Override
    public boolean hasNeedhedgeratio() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * <pre>
     * double 套保比率
     * </pre>
     *
     * <code>optional double needhedgeratio = 9;</code>
     * @return The needhedgeratio.
     */
    @Override
    public double getNeedhedgeratio() {
      return needhedgeratio_;
    }

    public static final int AREAUSERID_FIELD_NUMBER = 10;
    private long areauserid_;
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 10;</code>
     * @return Whether the areauserid field is set.
     */
    @Override
    public boolean hasAreauserid() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * <pre>
     * uint64 机构用户ID
     * </pre>
     *
     * <code>optional uint64 areauserid = 10;</code>
     * @return The areauserid.
     */
    @Override
    public long getAreauserid() {
      return areauserid_;
    }

    public static final int GOODSGROUPID_FIELD_NUMBER = 11;
    private long goodsgroupid_;
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 11;</code>
     * @return Whether the goodsgroupid field is set.
     */
    @Override
    public boolean hasGoodsgroupid() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * <pre>
     * uint64 关联期货品种ID
     * </pre>
     *
     * <code>optional uint64 goodsgroupid = 11;</code>
     * @return The goodsgroupid.
     */
    @Override
    public long getGoodsgroupid() {
      return goodsgroupid_;
    }

    public static final int REMARK_FIELD_NUMBER = 12;
    private volatile Object remark_;
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return Whether the remark field is set.
     */
    @Override
    public boolean hasRemark() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return The remark.
     */
    @Override
    public String getRemark() {
      Object ref = remark_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          remark_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 备注
     * </pre>
     *
     * <code>optional string remark = 12;</code>
     * @return The bytes for remark.
     */
    @Override
    public com.google.protobuf.ByteString
        getRemarkBytes() {
      Object ref = remark_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        remark_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeUInt64(2, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeInt32(3, goodsunitid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, relatedgoodsid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeDouble(5, evaluateratio_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeInt32(6, qtydecimalplace_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        output.writeUInt64(7, modifierid_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        output.writeInt32(8, relatedgoodstype_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        output.writeDouble(9, needhedgeratio_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        output.writeUInt64(10, areauserid_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        output.writeUInt64(11, goodsgroupid_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 12, remark_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(2, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, goodsunitid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, relatedgoodsid_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(5, evaluateratio_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(6, qtydecimalplace_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(7, modifierid_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(8, relatedgoodstype_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(9, needhedgeratio_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(10, areauserid_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(11, goodsgroupid_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, remark_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) return false;
      }
      if (hasGoodsunitid() != other.hasGoodsunitid()) return false;
      if (hasGoodsunitid()) {
        if (getGoodsunitid()
            != other.getGoodsunitid()) return false;
      }
      if (hasRelatedgoodsid() != other.hasRelatedgoodsid()) return false;
      if (hasRelatedgoodsid()) {
        if (getRelatedgoodsid()
            != other.getRelatedgoodsid()) return false;
      }
      if (hasEvaluateratio() != other.hasEvaluateratio()) return false;
      if (hasEvaluateratio()) {
        if (Double.doubleToLongBits(getEvaluateratio())
            != Double.doubleToLongBits(
                other.getEvaluateratio())) return false;
      }
      if (hasQtydecimalplace() != other.hasQtydecimalplace()) return false;
      if (hasQtydecimalplace()) {
        if (getQtydecimalplace()
            != other.getQtydecimalplace()) return false;
      }
      if (hasModifierid() != other.hasModifierid()) return false;
      if (hasModifierid()) {
        if (getModifierid()
            != other.getModifierid()) return false;
      }
      if (hasRelatedgoodstype() != other.hasRelatedgoodstype()) return false;
      if (hasRelatedgoodstype()) {
        if (getRelatedgoodstype()
            != other.getRelatedgoodstype()) return false;
      }
      if (hasNeedhedgeratio() != other.hasNeedhedgeratio()) return false;
      if (hasNeedhedgeratio()) {
        if (Double.doubleToLongBits(getNeedhedgeratio())
            != Double.doubleToLongBits(
                other.getNeedhedgeratio())) return false;
      }
      if (hasAreauserid() != other.hasAreauserid()) return false;
      if (hasAreauserid()) {
        if (getAreauserid()
            != other.getAreauserid()) return false;
      }
      if (hasGoodsgroupid() != other.hasGoodsgroupid()) return false;
      if (hasGoodsgroupid()) {
        if (getGoodsgroupid()
            != other.getGoodsgroupid()) return false;
      }
      if (hasRemark() != other.hasRemark()) return false;
      if (hasRemark()) {
        if (!getRemark()
            .equals(other.getRemark())) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      if (hasGoodsunitid()) {
        hash = (37 * hash) + GOODSUNITID_FIELD_NUMBER;
        hash = (53 * hash) + getGoodsunitid();
      }
      if (hasRelatedgoodsid()) {
        hash = (37 * hash) + RELATEDGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getRelatedgoodsid());
      }
      if (hasEvaluateratio()) {
        hash = (37 * hash) + EVALUATERATIO_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            Double.doubleToLongBits(getEvaluateratio()));
      }
      if (hasQtydecimalplace()) {
        hash = (37 * hash) + QTYDECIMALPLACE_FIELD_NUMBER;
        hash = (53 * hash) + getQtydecimalplace();
      }
      if (hasModifierid()) {
        hash = (37 * hash) + MODIFIERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getModifierid());
      }
      if (hasRelatedgoodstype()) {
        hash = (37 * hash) + RELATEDGOODSTYPE_FIELD_NUMBER;
        hash = (53 * hash) + getRelatedgoodstype();
      }
      if (hasNeedhedgeratio()) {
        hash = (37 * hash) + NEEDHEDGERATIO_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            Double.doubleToLongBits(getNeedhedgeratio()));
      }
      if (hasAreauserid()) {
        hash = (37 * hash) + AREAUSERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getAreauserid());
      }
      if (hasGoodsgroupid()) {
        hash = (37 * hash) + GOODSGROUPID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getGoodsgroupid());
      }
      if (hasRemark()) {
        hash = (37 * hash) + REMARK_FIELD_NUMBER;
        hash = (53 * hash) + getRemark().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsEditReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditReq 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 ErmsMiddelGoodsEditReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditReq 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 ErmsMiddelGoodsEditReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditReq 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(ErmsMiddelGoodsEditReq 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>
     * 套保品种修改请求 0 29 133
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsEditReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsEditReq)
        ErmsMiddelGoodsEditReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsEditReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsEditReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        goodsunitid_ = 0;
        bitField0_ = (bitField0_ & ~0x00000004);
        relatedgoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        evaluateratio_ = 0D;
        bitField0_ = (bitField0_ & ~0x00000010);
        qtydecimalplace_ = 0;
        bitField0_ = (bitField0_ & ~0x00000020);
        modifierid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000040);
        relatedgoodstype_ = 0;
        bitField0_ = (bitField0_ & ~0x00000080);
        needhedgeratio_ = 0D;
        bitField0_ = (bitField0_ & ~0x00000100);
        areauserid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000200);
        goodsgroupid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000400);
        remark_ = "";
        bitField0_ = (bitField0_ & ~0x00000800);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsEditReq buildPartial() {
        ErmsMiddelGoodsEditReq result = new ErmsMiddelGoodsEditReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.goodsunitid_ = goodsunitid_;
          to_bitField0_ |= 0x00000004;
        }
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.relatedgoodsid_ = relatedgoodsid_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.evaluateratio_ = evaluateratio_;
          to_bitField0_ |= 0x00000010;
        }
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.qtydecimalplace_ = qtydecimalplace_;
          to_bitField0_ |= 0x00000020;
        }
        if (((from_bitField0_ & 0x00000040) != 0)) {
          result.modifierid_ = modifierid_;
          to_bitField0_ |= 0x00000040;
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          result.relatedgoodstype_ = relatedgoodstype_;
          to_bitField0_ |= 0x00000080;
        }
        if (((from_bitField0_ & 0x00000100) != 0)) {
          result.needhedgeratio_ = needhedgeratio_;
          to_bitField0_ |= 0x00000100;
        }
        if (((from_bitField0_ & 0x00000200) != 0)) {
          result.areauserid_ = areauserid_;
          to_bitField0_ |= 0x00000200;
        }
        if (((from_bitField0_ & 0x00000400) != 0)) {
          result.goodsgroupid_ = goodsgroupid_;
          to_bitField0_ |= 0x00000400;
        }
        if (((from_bitField0_ & 0x00000800) != 0)) {
          to_bitField0_ |= 0x00000800;
        }
        result.remark_ = remark_;
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsEditReq) {
          return mergeFrom((ErmsMiddelGoodsEditReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsEditReq other) {
        if (other == ErmsMiddelGoodsEditReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        if (other.hasGoodsunitid()) {
          setGoodsunitid(other.getGoodsunitid());
        }
        if (other.hasRelatedgoodsid()) {
          setRelatedgoodsid(other.getRelatedgoodsid());
        }
        if (other.hasEvaluateratio()) {
          setEvaluateratio(other.getEvaluateratio());
        }
        if (other.hasQtydecimalplace()) {
          setQtydecimalplace(other.getQtydecimalplace());
        }
        if (other.hasModifierid()) {
          setModifierid(other.getModifierid());
        }
        if (other.hasRelatedgoodstype()) {
          setRelatedgoodstype(other.getRelatedgoodstype());
        }
        if (other.hasNeedhedgeratio()) {
          setNeedhedgeratio(other.getNeedhedgeratio());
        }
        if (other.hasAreauserid()) {
          setAreauserid(other.getAreauserid());
        }
        if (other.hasGoodsgroupid()) {
          setGoodsgroupid(other.getGoodsgroupid());
        }
        if (other.hasRemark()) {
          bitField0_ |= 0x00000800;
          remark_ = other.remark_;
          onChanged();
        }
        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 {
        ErmsMiddelGoodsEditReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsEditReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000002;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000002);
        middlegoodsid_ = 0L;
        onChanged();
        return this;
      }

      private int goodsunitid_ ;
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 3;</code>
       * @return Whether the goodsunitid field is set.
       */
      @Override
      public boolean hasGoodsunitid() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 3;</code>
       * @return The goodsunitid.
       */
      @Override
      public int getGoodsunitid() {
        return goodsunitid_;
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 3;</code>
       * @param value The goodsunitid to set.
       * @return This builder for chaining.
       */
      public Builder setGoodsunitid(int value) {
        bitField0_ |= 0x00000004;
        goodsunitid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 单位ID
       * </pre>
       *
       * <code>optional int32 goodsunitid = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearGoodsunitid() {
        bitField0_ = (bitField0_ & ~0x00000004);
        goodsunitid_ = 0;
        onChanged();
        return this;
      }

      private long relatedgoodsid_ ;
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 4;</code>
       * @return Whether the relatedgoodsid field is set.
       */
      @Override
      public boolean hasRelatedgoodsid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 4;</code>
       * @return The relatedgoodsid.
       */
      @Override
      public long getRelatedgoodsid() {
        return relatedgoodsid_;
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 4;</code>
       * @param value The relatedgoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setRelatedgoodsid(long value) {
        bitField0_ |= 0x00000008;
        relatedgoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 关联交易商品ID
       * </pre>
       *
       * <code>optional uint64 relatedgoodsid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearRelatedgoodsid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        relatedgoodsid_ = 0L;
        onChanged();
        return this;
      }

      private double evaluateratio_ ;
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 5;</code>
       * @return Whether the evaluateratio field is set.
       */
      @Override
      public boolean hasEvaluateratio() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 5;</code>
       * @return The evaluateratio.
       */
      @Override
      public double getEvaluateratio() {
        return evaluateratio_;
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 5;</code>
       * @param value The evaluateratio to set.
       * @return This builder for chaining.
       */
      public Builder setEvaluateratio(double value) {
        bitField0_ |= 0x00000010;
        evaluateratio_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * double 估价系数
       * </pre>
       *
       * <code>optional double evaluateratio = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearEvaluateratio() {
        bitField0_ = (bitField0_ & ~0x00000010);
        evaluateratio_ = 0D;
        onChanged();
        return this;
      }

      private int qtydecimalplace_ ;
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 6;</code>
       * @return Whether the qtydecimalplace field is set.
       */
      @Override
      public boolean hasQtydecimalplace() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 6;</code>
       * @return The qtydecimalplace.
       */
      @Override
      public int getQtydecimalplace() {
        return qtydecimalplace_;
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 6;</code>
       * @param value The qtydecimalplace to set.
       * @return This builder for chaining.
       */
      public Builder setQtydecimalplace(int value) {
        bitField0_ |= 0x00000020;
        qtydecimalplace_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 数量小数位
       * </pre>
       *
       * <code>optional int32 qtydecimalplace = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearQtydecimalplace() {
        bitField0_ = (bitField0_ & ~0x00000020);
        qtydecimalplace_ = 0;
        onChanged();
        return this;
      }

      private long modifierid_ ;
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 7;</code>
       * @return Whether the modifierid field is set.
       */
      @Override
      public boolean hasModifierid() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 7;</code>
       * @return The modifierid.
       */
      @Override
      public long getModifierid() {
        return modifierid_;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 7;</code>
       * @param value The modifierid to set.
       * @return This builder for chaining.
       */
      public Builder setModifierid(long value) {
        bitField0_ |= 0x00000040;
        modifierid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearModifierid() {
        bitField0_ = (bitField0_ & ~0x00000040);
        modifierid_ = 0L;
        onChanged();
        return this;
      }

      private int relatedgoodstype_ ;
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 8;</code>
       * @return Whether the relatedgoodstype field is set.
       */
      @Override
      public boolean hasRelatedgoodstype() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 8;</code>
       * @return The relatedgoodstype.
       */
      @Override
      public int getRelatedgoodstype() {
        return relatedgoodstype_;
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 8;</code>
       * @param value The relatedgoodstype to set.
       * @return This builder for chaining.
       */
      public Builder setRelatedgoodstype(int value) {
        bitField0_ |= 0x00000080;
        relatedgoodstype_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 关联商品类型 - 1:期货合约 2:现货品种
       * </pre>
       *
       * <code>optional int32 relatedgoodstype = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearRelatedgoodstype() {
        bitField0_ = (bitField0_ & ~0x00000080);
        relatedgoodstype_ = 0;
        onChanged();
        return this;
      }

      private double needhedgeratio_ ;
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 9;</code>
       * @return Whether the needhedgeratio field is set.
       */
      @Override
      public boolean hasNeedhedgeratio() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 9;</code>
       * @return The needhedgeratio.
       */
      @Override
      public double getNeedhedgeratio() {
        return needhedgeratio_;
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 9;</code>
       * @param value The needhedgeratio to set.
       * @return This builder for chaining.
       */
      public Builder setNeedhedgeratio(double value) {
        bitField0_ |= 0x00000100;
        needhedgeratio_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * double 套保比率
       * </pre>
       *
       * <code>optional double needhedgeratio = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearNeedhedgeratio() {
        bitField0_ = (bitField0_ & ~0x00000100);
        needhedgeratio_ = 0D;
        onChanged();
        return this;
      }

      private long areauserid_ ;
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 10;</code>
       * @return Whether the areauserid field is set.
       */
      @Override
      public boolean hasAreauserid() {
        return ((bitField0_ & 0x00000200) != 0);
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 10;</code>
       * @return The areauserid.
       */
      @Override
      public long getAreauserid() {
        return areauserid_;
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 10;</code>
       * @param value The areauserid to set.
       * @return This builder for chaining.
       */
      public Builder setAreauserid(long value) {
        bitField0_ |= 0x00000200;
        areauserid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 机构用户ID
       * </pre>
       *
       * <code>optional uint64 areauserid = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearAreauserid() {
        bitField0_ = (bitField0_ & ~0x00000200);
        areauserid_ = 0L;
        onChanged();
        return this;
      }

      private long goodsgroupid_ ;
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 11;</code>
       * @return Whether the goodsgroupid field is set.
       */
      @Override
      public boolean hasGoodsgroupid() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 11;</code>
       * @return The goodsgroupid.
       */
      @Override
      public long getGoodsgroupid() {
        return goodsgroupid_;
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 11;</code>
       * @param value The goodsgroupid to set.
       * @return This builder for chaining.
       */
      public Builder setGoodsgroupid(long value) {
        bitField0_ |= 0x00000400;
        goodsgroupid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 关联期货品种ID
       * </pre>
       *
       * <code>optional uint64 goodsgroupid = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearGoodsgroupid() {
        bitField0_ = (bitField0_ & ~0x00000400);
        goodsgroupid_ = 0L;
        onChanged();
        return this;
      }

      private Object remark_ = "";
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @return Whether the remark field is set.
       */
      public boolean hasRemark() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @return The remark.
       */
      public String getRemark() {
        Object ref = remark_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            remark_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @return The bytes for remark.
       */
      public com.google.protobuf.ByteString
          getRemarkBytes() {
        Object ref = remark_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          remark_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @param value The remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemark(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000800;
        remark_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearRemark() {
        bitField0_ = (bitField0_ & ~0x00000800);
        remark_ = getDefaultInstance().getRemark();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 备注
       * </pre>
       *
       * <code>optional string remark = 12;</code>
       * @param value The bytes for remark to set.
       * @return This builder for chaining.
       */
      public Builder setRemarkBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000800;
        remark_ = value;
        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:ManageServiceMI2.ErmsMiddelGoodsEditReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsEditReq)
    private static final ErmsMiddelGoodsEditReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsEditReq();
    }

    public static ErmsMiddelGoodsEditReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsEditRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsEditRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();
  }
  /**
   * <pre>
   * 套保品种修改响应 0 29 134
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsEditRsp}
   */
  public static final class ErmsMiddelGoodsEditRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsEditRsp)
      ErmsMiddelGoodsEditRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsEditRsp.newBuilder() to construct.
    private ErmsMiddelGoodsEditRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsEditRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsEditRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              middlegoodsid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsEditRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MIDDLEGOODSID_FIELD_NUMBER = 4;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, middlegoodsid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, middlegoodsid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsEditRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsEditRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditRsp 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 ErmsMiddelGoodsEditRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditRsp 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 ErmsMiddelGoodsEditRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsEditRsp 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(ErmsMiddelGoodsEditRsp 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>
     * 套保品种修改响应 0 29 134
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsEditRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsEditRsp)
        ErmsMiddelGoodsEditRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsEditRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsEditRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsEditRsp buildPartial() {
        ErmsMiddelGoodsEditRsp result = new ErmsMiddelGoodsEditRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000008;
        }
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsEditRsp) {
          return mergeFrom((ErmsMiddelGoodsEditRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsEditRsp other) {
        if (other == ErmsMiddelGoodsEditRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        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 {
        ErmsMiddelGoodsEditRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsEditRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000008;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        middlegoodsid_ = 0L;
        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:ManageServiceMI2.ErmsMiddelGoodsEditRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsEditRsp)
    private static final ErmsMiddelGoodsEditRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsEditRsp();
    }

    public static ErmsMiddelGoodsEditRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsStopReqOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsStopReq)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();

    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return Whether the isvalid field is set.
     */
    boolean hasIsvalid();
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return The isvalid.
     */
    int getIsvalid();

    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 4;</code>
     * @return Whether the modifierid field is set.
     */
    boolean hasModifierid();
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 4;</code>
     * @return The modifierid.
     */
    long getModifierid();
  }
  /**
   * <pre>
   * 套保品种停用请求 0 29 135
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsStopReq}
   */
  public static final class ErmsMiddelGoodsStopReq extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsStopReq)
      ErmsMiddelGoodsStopReqOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsStopReq.newBuilder() to construct.
    private ErmsMiddelGoodsStopReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsStopReq() {
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsStopReq(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              middlegoodsid_ = input.readUInt64();
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              isvalid_ = input.readInt32();
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              modifierid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsStopReq.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int MIDDLEGOODSID_FIELD_NUMBER = 2;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 2;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    public static final int ISVALID_FIELD_NUMBER = 3;
    private int isvalid_;
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return Whether the isvalid field is set.
     */
    @Override
    public boolean hasIsvalid() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * int32 是否有效 - 0:无效 1:有效
     * </pre>
     *
     * <code>optional int32 isvalid = 3;</code>
     * @return The isvalid.
     */
    @Override
    public int getIsvalid() {
      return isvalid_;
    }

    public static final int MODIFIERID_FIELD_NUMBER = 4;
    private long modifierid_;
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 4;</code>
     * @return Whether the modifierid field is set.
     */
    @Override
    public boolean hasModifierid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 修改人
     * </pre>
     *
     * <code>optional uint64 modifierid = 4;</code>
     * @return The modifierid.
     */
    @Override
    public long getModifierid() {
      return modifierid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeUInt64(2, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeInt32(3, isvalid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, modifierid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(2, middlegoodsid_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, isvalid_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, modifierid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) return false;
      }
      if (hasIsvalid() != other.hasIsvalid()) return false;
      if (hasIsvalid()) {
        if (getIsvalid()
            != other.getIsvalid()) return false;
      }
      if (hasModifierid() != other.hasModifierid()) return false;
      if (hasModifierid()) {
        if (getModifierid()
            != other.getModifierid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      if (hasIsvalid()) {
        hash = (37 * hash) + ISVALID_FIELD_NUMBER;
        hash = (53 * hash) + getIsvalid();
      }
      if (hasModifierid()) {
        hash = (37 * hash) + MODIFIERID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getModifierid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsStopReq parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopReq parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopReq 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 ErmsMiddelGoodsStopReq parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopReq 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 ErmsMiddelGoodsStopReq parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopReq 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(ErmsMiddelGoodsStopReq 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>
     * 套保品种停用请求 0 29 135
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsStopReq}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsStopReq)
        ErmsMiddelGoodsStopReqOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsStopReq.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsStopReq.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        isvalid_ = 0;
        bitField0_ = (bitField0_ & ~0x00000004);
        modifierid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsStopReq buildPartial() {
        ErmsMiddelGoodsStopReq result = new ErmsMiddelGoodsStopReq(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.isvalid_ = isvalid_;
          to_bitField0_ |= 0x00000004;
        }
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.modifierid_ = modifierid_;
          to_bitField0_ |= 0x00000008;
        }
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsStopReq) {
          return mergeFrom((ErmsMiddelGoodsStopReq)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsStopReq other) {
        if (other == ErmsMiddelGoodsStopReq.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        if (other.hasIsvalid()) {
          setIsvalid(other.getIsvalid());
        }
        if (other.hasModifierid()) {
          setModifierid(other.getModifierid());
        }
        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 {
        ErmsMiddelGoodsStopReq parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsStopReq) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000002;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000002);
        middlegoodsid_ = 0L;
        onChanged();
        return this;
      }

      private int isvalid_ ;
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return Whether the isvalid field is set.
       */
      @Override
      public boolean hasIsvalid() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return The isvalid.
       */
      @Override
      public int getIsvalid() {
        return isvalid_;
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @param value The isvalid to set.
       * @return This builder for chaining.
       */
      public Builder setIsvalid(int value) {
        bitField0_ |= 0x00000004;
        isvalid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 是否有效 - 0:无效 1:有效
       * </pre>
       *
       * <code>optional int32 isvalid = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearIsvalid() {
        bitField0_ = (bitField0_ & ~0x00000004);
        isvalid_ = 0;
        onChanged();
        return this;
      }

      private long modifierid_ ;
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 4;</code>
       * @return Whether the modifierid field is set.
       */
      @Override
      public boolean hasModifierid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 4;</code>
       * @return The modifierid.
       */
      @Override
      public long getModifierid() {
        return modifierid_;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 4;</code>
       * @param value The modifierid to set.
       * @return This builder for chaining.
       */
      public Builder setModifierid(long value) {
        bitField0_ |= 0x00000008;
        modifierid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 修改人
       * </pre>
       *
       * <code>optional uint64 modifierid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearModifierid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        modifierid_ = 0L;
        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:ManageServiceMI2.ErmsMiddelGoodsStopReq)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsStopReq)
    private static final ErmsMiddelGoodsStopReq DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsStopReq();
    }

    public static ErmsMiddelGoodsStopReq getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  public interface ErmsMiddelGoodsStopRspOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ManageServiceMI2.ErmsMiddelGoodsStopRsp)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    boolean hasHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    Common.MessageHead getHeader();
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    Common.MessageHeadOrBuilder getHeaderOrBuilder();

    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    boolean hasRetCode();
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    int getRetCode();

    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    boolean hasRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    String getRetDesc();
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    com.google.protobuf.ByteString
        getRetDescBytes();

    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    boolean hasMiddlegoodsid();
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    long getMiddlegoodsid();
  }
  /**
   * <pre>
   * 套保品种停用响应 0 29 136
   * </pre>
   *
   * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsStopRsp}
   */
  public static final class ErmsMiddelGoodsStopRsp extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ManageServiceMI2.ErmsMiddelGoodsStopRsp)
      ErmsMiddelGoodsStopRspOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ErmsMiddelGoodsStopRsp.newBuilder() to construct.
    private ErmsMiddelGoodsStopRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ErmsMiddelGoodsStopRsp() {
      retDesc_ = "";
    }

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

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ErmsMiddelGoodsStopRsp(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      int mutable_bitField0_ = 0;
      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 10: {
              Common.MessageHead.Builder subBuilder = null;
              if (((bitField0_ & 0x00000001) != 0)) {
                subBuilder = header_.toBuilder();
              }
              header_ = input.readMessage(Common.MessageHead.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(header_);
                header_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000001;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              retCode_ = input.readInt32();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              retDesc_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              middlegoodsid_ = input.readUInt64();
              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 ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ErmsMiddelGoodsStopRsp.class, Builder.class);
    }

    private int bitField0_;
    public static final int HEADER_FIELD_NUMBER = 1;
    private Common.MessageHead header_;
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return Whether the header field is set.
     */
    @Override
    public boolean hasHeader() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     * @return The header.
     */
    @Override
    public Common.MessageHead getHeader() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }
    /**
     * <pre>
     * MessageHead 消息头
     * </pre>
     *
     * <code>optional .MessageHead Header = 1;</code>
     */
    @Override
    public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
      return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
    }

    public static final int RETCODE_FIELD_NUMBER = 2;
    private int retCode_;
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return Whether the retCode field is set.
     */
    @Override
    public boolean hasRetCode() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <pre>
     * int32 返回码
     * </pre>
     *
     * <code>optional int32 RetCode = 2;</code>
     * @return The retCode.
     */
    @Override
    public int getRetCode() {
      return retCode_;
    }

    public static final int RETDESC_FIELD_NUMBER = 3;
    private volatile Object retDesc_;
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return Whether the retDesc field is set.
     */
    @Override
    public boolean hasRetDesc() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The retDesc.
     */
    @Override
    public String getRetDesc() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          retDesc_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * string 描述信息
     * </pre>
     *
     * <code>optional string RetDesc = 3;</code>
     * @return The bytes for retDesc.
     */
    @Override
    public com.google.protobuf.ByteString
        getRetDescBytes() {
      Object ref = retDesc_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        retDesc_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MIDDLEGOODSID_FIELD_NUMBER = 4;
    private long middlegoodsid_;
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return Whether the middlegoodsid field is set.
     */
    @Override
    public boolean hasMiddlegoodsid() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * uint64 套保品种ID
     * </pre>
     *
     * <code>optional uint64 middlegoodsid = 4;</code>
     * @return The middlegoodsid.
     */
    @Override
    public long getMiddlegoodsid() {
      return middlegoodsid_;
    }

    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 (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeInt32(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeUInt64(4, middlegoodsid_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getHeader());
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, retCode_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, retDesc_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(4, middlegoodsid_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (hasHeader() != other.hasHeader()) return false;
      if (hasHeader()) {
        if (!getHeader()
            .equals(other.getHeader())) return false;
      }
      if (hasRetCode() != other.hasRetCode()) return false;
      if (hasRetCode()) {
        if (getRetCode()
            != other.getRetCode()) return false;
      }
      if (hasRetDesc() != other.hasRetDesc()) return false;
      if (hasRetDesc()) {
        if (!getRetDesc()
            .equals(other.getRetDesc())) return false;
      }
      if (hasMiddlegoodsid() != other.hasMiddlegoodsid()) return false;
      if (hasMiddlegoodsid()) {
        if (getMiddlegoodsid()
            != other.getMiddlegoodsid()) 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();
      if (hasHeader()) {
        hash = (37 * hash) + HEADER_FIELD_NUMBER;
        hash = (53 * hash) + getHeader().hashCode();
      }
      if (hasRetCode()) {
        hash = (37 * hash) + RETCODE_FIELD_NUMBER;
        hash = (53 * hash) + getRetCode();
      }
      if (hasRetDesc()) {
        hash = (37 * hash) + RETDESC_FIELD_NUMBER;
        hash = (53 * hash) + getRetDesc().hashCode();
      }
      if (hasMiddlegoodsid()) {
        hash = (37 * hash) + MIDDLEGOODSID_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMiddlegoodsid());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ErmsMiddelGoodsStopRsp parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ErmsMiddelGoodsStopRsp parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopRsp 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 ErmsMiddelGoodsStopRsp parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopRsp 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 ErmsMiddelGoodsStopRsp parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ErmsMiddelGoodsStopRsp 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(ErmsMiddelGoodsStopRsp 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>
     * 套保品种停用响应 0 29 136
     * </pre>
     *
     * Protobuf type {@code ManageServiceMI2.ErmsMiddelGoodsStopRsp}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ManageServiceMI2.ErmsMiddelGoodsStopRsp)
        ErmsMiddelGoodsStopRspOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ErmsMiddelGoodsStopRsp.class, Builder.class);
      }

      // Construct using cn.muchinfo.rma.protobuf.protoclasses.ManageServiceMI2.ErmsMiddelGoodsStopRsp.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getHeaderFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (headerBuilder_ == null) {
          header_ = null;
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        retCode_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        retDesc_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        middlegoodsid_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }

      @Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ManageServiceMI2.internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor;
      }

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

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

      @Override
      public ErmsMiddelGoodsStopRsp buildPartial() {
        ErmsMiddelGoodsStopRsp result = new ErmsMiddelGoodsStopRsp(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          if (headerBuilder_ == null) {
            result.header_ = header_;
          } else {
            result.header_ = headerBuilder_.build();
          }
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.retCode_ = retCode_;
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.retDesc_ = retDesc_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.middlegoodsid_ = middlegoodsid_;
          to_bitField0_ |= 0x00000008;
        }
        result.bitField0_ = to_bitField0_;
        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 ErmsMiddelGoodsStopRsp) {
          return mergeFrom((ErmsMiddelGoodsStopRsp)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ErmsMiddelGoodsStopRsp other) {
        if (other == ErmsMiddelGoodsStopRsp.getDefaultInstance()) return this;
        if (other.hasHeader()) {
          mergeHeader(other.getHeader());
        }
        if (other.hasRetCode()) {
          setRetCode(other.getRetCode());
        }
        if (other.hasRetDesc()) {
          bitField0_ |= 0x00000004;
          retDesc_ = other.retDesc_;
          onChanged();
        }
        if (other.hasMiddlegoodsid()) {
          setMiddlegoodsid(other.getMiddlegoodsid());
        }
        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 {
        ErmsMiddelGoodsStopRsp parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ErmsMiddelGoodsStopRsp) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private Common.MessageHead header_;
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder> headerBuilder_;
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return Whether the header field is set.
       */
      public boolean hasHeader() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       * @return The header.
       */
      public Common.MessageHead getHeader() {
        if (headerBuilder_ == null) {
          return header_ == null ? Common.MessageHead.getDefaultInstance() : header_;
        } else {
          return headerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          header_ = value;
          onChanged();
        } else {
          headerBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder setHeader(
          Common.MessageHead.Builder builderForValue) {
        if (headerBuilder_ == null) {
          header_ = builderForValue.build();
          onChanged();
        } else {
          headerBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder mergeHeader(Common.MessageHead value) {
        if (headerBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
              header_ != null &&
              header_ != Common.MessageHead.getDefaultInstance()) {
            header_ =
              Common.MessageHead.newBuilder(header_).mergeFrom(value).buildPartial();
          } else {
            header_ = value;
          }
          onChanged();
        } else {
          headerBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000001;
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Builder clearHeader() {
        if (headerBuilder_ == null) {
          header_ = null;
          onChanged();
        } else {
          headerBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHead.Builder getHeaderBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getHeaderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      public Common.MessageHeadOrBuilder getHeaderOrBuilder() {
        if (headerBuilder_ != null) {
          return headerBuilder_.getMessageOrBuilder();
        } else {
          return header_ == null ?
              Common.MessageHead.getDefaultInstance() : header_;
        }
      }
      /**
       * <pre>
       * MessageHead 消息头
       * </pre>
       *
       * <code>optional .MessageHead Header = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>
          getHeaderFieldBuilder() {
        if (headerBuilder_ == null) {
          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              Common.MessageHead, Common.MessageHead.Builder, Common.MessageHeadOrBuilder>(
                  getHeader(),
                  getParentForChildren(),
                  isClean());
          header_ = null;
        }
        return headerBuilder_;
      }

      private int retCode_ ;
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return Whether the retCode field is set.
       */
      @Override
      public boolean hasRetCode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return The retCode.
       */
      @Override
      public int getRetCode() {
        return retCode_;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @param value The retCode to set.
       * @return This builder for chaining.
       */
      public Builder setRetCode(int value) {
        bitField0_ |= 0x00000002;
        retCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * int32 返回码
       * </pre>
       *
       * <code>optional int32 RetCode = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetCode() {
        bitField0_ = (bitField0_ & ~0x00000002);
        retCode_ = 0;
        onChanged();
        return this;
      }

      private Object retDesc_ = "";
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return Whether the retDesc field is set.
       */
      public boolean hasRetDesc() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The retDesc.
       */
      public String getRetDesc() {
        Object ref = retDesc_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            retDesc_ = s;
          }
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return The bytes for retDesc.
       */
      public com.google.protobuf.ByteString
          getRetDescBytes() {
        Object ref = retDesc_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          retDesc_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDesc(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRetDesc() {
        bitField0_ = (bitField0_ & ~0x00000004);
        retDesc_ = getDefaultInstance().getRetDesc();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * string 描述信息
       * </pre>
       *
       * <code>optional string RetDesc = 3;</code>
       * @param value The bytes for retDesc to set.
       * @return This builder for chaining.
       */
      public Builder setRetDescBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        retDesc_ = value;
        onChanged();
        return this;
      }

      private long middlegoodsid_ ;
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return Whether the middlegoodsid field is set.
       */
      @Override
      public boolean hasMiddlegoodsid() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return The middlegoodsid.
       */
      @Override
      public long getMiddlegoodsid() {
        return middlegoodsid_;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @param value The middlegoodsid to set.
       * @return This builder for chaining.
       */
      public Builder setMiddlegoodsid(long value) {
        bitField0_ |= 0x00000008;
        middlegoodsid_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * uint64 套保品种ID
       * </pre>
       *
       * <code>optional uint64 middlegoodsid = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearMiddlegoodsid() {
        bitField0_ = (bitField0_ & ~0x00000008);
        middlegoodsid_ = 0L;
        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:ManageServiceMI2.ErmsMiddelGoodsStopRsp)
    }

    // @@protoc_insertion_point(class_scope:ManageServiceMI2.ErmsMiddelGoodsStopRsp)
    private static final ErmsMiddelGoodsStopRsp DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ErmsMiddelGoodsStopRsp();
    }

    public static ErmsMiddelGoodsStopRsp getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_UserInfoCheckMangeReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_SpotGoodsModelEx_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_SpotGoodsBrandEx_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_WRSConvertDetailEx_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    String[] descriptorData = {
      "\n\026ManageServiceMI2.proto\022\020ManageServiceM" +
      "I2\032\014Common.proto\"}\n\025UserInfoCheckMangeRe" +
      "q\022\034\n\006Header\030\001 \001(\0132\014.MessageHead\022\021\n\taudit" +
      "flag\030\002 \001(\004\022\016\n\006userid\030\003 \001(\004\022\023\n\013audituseri" +
      "d\030\004 \001(\004\022\016\n\006remark\030\005 \001(\t\"g\n\025UserInfoCheck" +
      "MangeRsp\022\034\n\006Header\030\001 \001(\0132\014.MessageHead\022\017" +
      "\n\007RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003 \001(\t\022\016\n\006user" +
      "id\030\004 \001(\004\"\213\003\n\025DeliveryGoodsApplyReq\022\034\n\006He" +
      "ader\030\001 \001(\0132\014.MessageHead\022\016\n\006userid\030\002 \001(\004" +
      "\022\017\n\007loginid\030\003 \001(\004\022\031\n\021deliverygoodscode\030\004" +
      " \001(\t\022\031\n\021deliverygoodsname\030\005 \001(\t\022\024\n\014wrsta" +
      "ndardid\030\006 \001(\004\022\016\n\006unitid\030\007 \001(\004\022\014\n\004type\030\010 " +
      "\001(\005\022\016\n\006remark\030\t \001(\t\022;\n\017spotgoodsmodels\030\n" +
      " \003(\0132\".ManageServiceMI2.SpotGoodsModelEx" +
      "\022;\n\017spotgoodsbrands\030\013 \003(\0132\".ManageServic" +
      "eMI2.SpotGoodsBrandEx\022?\n\021wrsconvertdetai" +
      "ls\030\014 \003(\0132$.ManageServiceMI2.WRSConvertDe" +
      "tailEx\"%\n\020SpotGoodsModelEx\022\021\n\tmodelname\030" +
      "\001 \001(\t\"%\n\020SpotGoodsBrandEx\022\021\n\tbrandname\030\001" +
      " \001(\t\"A\n\022WRSConvertDetailEx\022\025\n\rmiddlegood" +
      "sid\030\001 \001(\004\022\024\n\014convertratio\030\002 \001(\001\"\206\001\n\025Deli" +
      "veryGoodsApplyRsp\022\034\n\006Header\030\001 \001(\0132\014.Mess" +
      "ageHead\022\017\n\007RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003 \001(" +
      "\t\022\024\n\014wrstandardid\030\004 \001(\004\022\027\n\017deliverygoods" +
      "id\030\005 \001(\004\"]\n\026DeliveryGoodsCancelReq\022\034\n\006He" +
      "ader\030\001 \001(\0132\014.MessageHead\022\024\n\014wrstandardid" +
      "\030\002 \001(\004\022\017\n\007isvalid\030\003 \001(\005\"\207\001\n\026DeliveryGood" +
      "sCancelRsp\022\034\n\006Header\030\001 \001(\0132\014.MessageHead" +
      "\022\017\n\007RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003 \001(\t\022\024\n\014wr" +
      "standardid\030\004 \001(\004\022\027\n\017deliverygoodsid\030\005 \001(" +
      "\004\"\324\002\n\022ErmsMiddelGoodsReq\022\034\n\006Header\030\001 \001(\013" +
      "2\014.MessageHead\022\027\n\017middlegoodsname\030\002 \001(\t\022" +
      "\027\n\017middlegoodscode\030\003 \001(\t\022\023\n\013goodsunitid\030" +
      "\004 \001(\005\022\026\n\016relatedgoodsid\030\005 \001(\004\022\025\n\revaluat" +
      "eratio\030\006 \001(\001\022\027\n\017qtydecimalplace\030\007 \001(\005\022\021\n" +
      "\tcreatorid\030\010 \001(\004\022\022\n\nmodifierid\030\t \001(\004\022\030\n\020" +
      "relatedgoodstype\030\n \001(\005\022\026\n\016needhedgeratio" +
      "\030\013 \001(\001\022\022\n\nareauserid\030\014 \001(\004\022\024\n\014goodsgroup" +
      "id\030\r \001(\004\022\016\n\006remark\030\016 \001(\t\"k\n\022ErmsMiddelGo" +
      "odsRsp\022\034\n\006Header\030\001 \001(\0132\014.MessageHead\022\017\n\007" +
      "RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003 \001(\t\022\025\n\rmiddle" +
      "goodsid\030\004 \001(\004\"\252\002\n\026ErmsMiddelGoodsEditReq" +
      "\022\034\n\006Header\030\001 \001(\0132\014.MessageHead\022\025\n\rmiddle" +
      "goodsid\030\002 \001(\004\022\023\n\013goodsunitid\030\003 \001(\005\022\026\n\016re" +
      "latedgoodsid\030\004 \001(\004\022\025\n\revaluateratio\030\005 \001(" +
      "\001\022\027\n\017qtydecimalplace\030\006 \001(\005\022\022\n\nmodifierid" +
      "\030\007 \001(\004\022\030\n\020relatedgoodstype\030\010 \001(\005\022\026\n\016need" +
      "hedgeratio\030\t \001(\001\022\022\n\nareauserid\030\n \001(\004\022\024\n\014" +
      "goodsgroupid\030\013 \001(\004\022\016\n\006remark\030\014 \001(\t\"o\n\026Er" +
      "msMiddelGoodsEditRsp\022\034\n\006Header\030\001 \001(\0132\014.M" +
      "essageHead\022\017\n\007RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003" +
      " \001(\t\022\025\n\rmiddlegoodsid\030\004 \001(\004\"r\n\026ErmsMidde" +
      "lGoodsStopReq\022\034\n\006Header\030\001 \001(\0132\014.MessageH" +
      "ead\022\025\n\rmiddlegoodsid\030\002 \001(\004\022\017\n\007isvalid\030\003 " +
      "\001(\005\022\022\n\nmodifierid\030\004 \001(\004\"o\n\026ErmsMiddelGoo" +
      "dsStopRsp\022\034\n\006Header\030\001 \001(\0132\014.MessageHead\022" +
      "\017\n\007RetCode\030\002 \001(\005\022\017\n\007RetDesc\030\003 \001(\t\022\025\n\rmid" +
      "dlegoodsid\030\004 \001(\004B?\n%cn.muchinfo.rma.prot" +
      "obuf.protoclassesZ\026com.muchinfo.mtp.prot" +
      "o"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          Common.getDescriptor(),
        });
    internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_ManageServiceMI2_UserInfoCheckMangeReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_UserInfoCheckMangeReq_descriptor,
        new String[] { "Header", "Auditflag", "Userid", "Audituserid", "Remark", });
    internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_UserInfoCheckMangeRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Userid", });
    internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_DeliveryGoodsApplyReq_descriptor,
        new String[] { "Header", "Userid", "Loginid", "Deliverygoodscode", "Deliverygoodsname", "Wrstandardid", "Unitid", "Type", "Remark", "Spotgoodsmodels", "Spotgoodsbrands", "Wrsconvertdetails", });
    internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_ManageServiceMI2_SpotGoodsModelEx_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_SpotGoodsModelEx_descriptor,
        new String[] { "Modelname", });
    internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_ManageServiceMI2_SpotGoodsBrandEx_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_SpotGoodsBrandEx_descriptor,
        new String[] { "Brandname", });
    internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_ManageServiceMI2_WRSConvertDetailEx_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_WRSConvertDetailEx_descriptor,
        new String[] { "Middlegoodsid", "Convertratio", });
    internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_DeliveryGoodsApplyRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Wrstandardid", "Deliverygoodsid", });
    internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_DeliveryGoodsCancelReq_descriptor,
        new String[] { "Header", "Wrstandardid", "Isvalid", });
    internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_DeliveryGoodsCancelRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Wrstandardid", "Deliverygoodsid", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsReq_descriptor,
        new String[] { "Header", "Middlegoodsname", "Middlegoodscode", "Goodsunitid", "Relatedgoodsid", "Evaluateratio", "Qtydecimalplace", "Creatorid", "Modifierid", "Relatedgoodstype", "Needhedgeratio", "Areauserid", "Goodsgroupid", "Remark", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Middlegoodsid", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsEditReq_descriptor,
        new String[] { "Header", "Middlegoodsid", "Goodsunitid", "Relatedgoodsid", "Evaluateratio", "Qtydecimalplace", "Modifierid", "Relatedgoodstype", "Needhedgeratio", "Areauserid", "Goodsgroupid", "Remark", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsEditRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Middlegoodsid", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsStopReq_descriptor,
        new String[] { "Header", "Middlegoodsid", "Isvalid", "Modifierid", });
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ManageServiceMI2_ErmsMiddelGoodsStopRsp_descriptor,
        new String[] { "Header", "RetCode", "RetDesc", "Middlegoodsid", });
    Common.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
