diff --git a/proto/PowersOfAttorney/PowerOfAttorneyValidation.proto b/proto/PowersOfAttorney/PowerOfAttorneyValidation.proto index 679ce5c8..fab5cfa1 100644 --- a/proto/PowersOfAttorney/PowerOfAttorneyValidation.proto +++ b/proto/PowersOfAttorney/PowerOfAttorneyValidation.proto @@ -46,7 +46,14 @@ message ValidationProtocol { } message ValidationCheckResult { - required string Status = 1; + required PowerOfAttorneyValidationCheckStatus Status = 1; required string Name = 2; optional PowerOfAttorneyValidationError Error = 3; } + +enum PowerOfAttorneyValidationCheckStatus { + UnknownCheckStatus = 0; //reserved for backward compatibility + Ok = 1; + Warning = 2; + Error = 3; +} diff --git a/src/Com/PowersOfAttorney.cs b/src/Com/PowersOfAttorney.cs index 7a3b94be..0d3e2bcd 100644 --- a/src/Com/PowersOfAttorney.cs +++ b/src/Com/PowersOfAttorney.cs @@ -319,10 +319,10 @@ public partial class PowerOfAttorneyValidationError : SafeComObject, IPowerOfAtt [Guid("AC2185A0-5D6D-4371-A487-A75EC0627897")] public interface IValidationCheckResult { - string Status { get; set; } - string Name { get; set; } + Com.PowerOfAttorneyValidationCheckStatus Status { get; } + string Name { get; } - PowerOfAttorneyValidationError Error { get; set; } + PowerOfAttorneyValidationError Error { get; } } [ComVisible(true)] @@ -332,6 +332,10 @@ public interface IValidationCheckResult [ComDefaultInterface(typeof(IValidationCheckResult))] public partial class ValidationCheckResult : SafeComObject, IValidationCheckResult { + Com.PowerOfAttorneyValidationCheckStatus IValidationCheckResult.Status + { + get { return (Com.PowerOfAttorneyValidationCheckStatus) Status; } + } } [ComVisible(true)] @@ -649,4 +653,16 @@ public enum PowerOfAttorneySendingType File = 2, DocumentContent = 3 } + + [ComVisible(true)] + [Guid("097F4C55-AB9A-4571-8A8E-3F1B0022CBF9")] + //NOTE: Это хотели, чтобы можно было использовать XML-сериализацию для классов + [XmlType(TypeName = "PowerOfAttorneyValidationCheckStatus", Namespace = "https://diadoc-api.kontur.ru")] + public enum PowerOfAttorneyValidationCheckStatus + { + UnknownCheckStatus = 0, + Ok = 1, + Warning = 2, + Error = 3 + } } diff --git a/src/Proto/PowersOfAttorney/PowerOfAttorneyValidation.proto.cs b/src/Proto/PowersOfAttorney/PowerOfAttorneyValidation.proto.cs index b7251589..649550af 100644 --- a/src/Proto/PowersOfAttorney/PowerOfAttorneyValidation.proto.cs +++ b/src/Proto/PowersOfAttorney/PowerOfAttorneyValidation.proto.cs @@ -182,9 +182,9 @@ public partial class ValidationCheckResult : global::ProtoBuf.IExtensible { public ValidationCheckResult() {} - private string _Status; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"Status", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string Status + private Diadoc.Api.Proto.PowersOfAttorney.PowerOfAttorneyValidationCheckStatus _Status; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"Status", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public Diadoc.Api.Proto.PowersOfAttorney.PowerOfAttorneyValidationCheckStatus Status { get { return _Status; } set { _Status = value; } @@ -236,4 +236,21 @@ public enum PowerOfAttorneyValidationStatusNamedId HasWarnings = 6 } -} + [global::ProtoBuf.ProtoContract(Name=@"PowerOfAttorneyValidationCheckStatus")] + public enum PowerOfAttorneyValidationCheckStatus + { + + [global::ProtoBuf.ProtoEnum(Name=@"UnknownCheckStatus", Value=0)] + UnknownCheckStatus = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"Ok", Value=1)] + Ok = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"Warning", Value=2)] + Warning = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"Error", Value=3)] + Error = 3 + } + +} \ No newline at end of file