public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (TypeGroup != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(TypeGroup) : 0);
         hashCode = (hashCode * 397) ^ (Type != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Type) : 0);
         hashCode = (hashCode * 397) ^ (Category != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Category) : 0);
         hashCode = (hashCode * 397) ^ (Territory != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Territory) : 0);
         hashCode = (hashCode * 397) ^ (Name != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Name) : 0);
         hashCode = (hashCode * 397) ^ Count.GetHashCode();
         hashCode = (hashCode * 397) ^ Cost.GetHashCode();
         hashCode = (hashCode * 397) ^ SummNds.GetHashCode();
         hashCode = (hashCode * 397) ^ (NameCompany != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(NameCompany) : 0);
         hashCode = (hashCode * 397) ^ Ttn.GetHashCode();
         hashCode = (hashCode * 397) ^ ShipmentDate.GetHashCode();
         hashCode = (hashCode * 397) ^ (ContractNumber != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(ContractNumber) : 0);
         hashCode = (hashCode * 397) ^ ContractDate.GetHashCode();
         hashCode = (hashCode * 397) ^ (IntentionBay != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(IntentionBay) : 0);
         hashCode = (hashCode * 397) ^ (PaymentForm != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(PaymentForm) : 0);
         hashCode = (hashCode * 397) ^ (WorkGuild != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(WorkGuild) : 0);
         return(hashCode);
     }
 }