< Summary

Class:WinSolutions.Sveta.Server.Data.DataModel.Entities.Contragent
Assembly:WinSolutions.Sveta.Server
File(s):/opt/dev/sveta_api_build/WinSolutions.Sveta.Server/Data/DataModel/Entities/Contragent.cs
Covered lines:15
Uncovered lines:31
Coverable lines:46
Total lines:240
Line coverage:32.6% (15 of 46)
Covered branches:0
Total branches:0

Metrics

MethodLine coverage Branch coverage
get_FullName()0%100%
get_ShortName()100%100%
get_Ownership()0%100%
get_JuridicAddress()100%100%
get_PhysicAddress()100%100%
get_Inn()100%100%
get_Kpp()100%100%
get_BankAccounts()0%100%
get_User()0%100%
get_Bik()0%100%
get_SettlementAccount()0%100%
get_BankName()0%100%
get_СorrespondentAccount()0%100%
get_Okpo()100%100%
get_Okato()100%100%
get_Okved()100%100%
get_Ogrn()100%100%
get_Owner()100%100%
get_TaxSystem()0%100%
get_TaxSystemCRM()100%100%
get_ChiefAccountant()0%100%
get_Email()100%100%
get_PhoneNumber()100%100%
get_WebSite()0%100%
get_WalletId()100%100%
get_WalletShortId()0%100%
get_ContragentsKind()100%100%
get_ContractsAsSeller()0%100%
get_ContractsAsBuyer()0%100%
get_MovementsAsCustomer()0%100%
get_MovementsAsSupplier()0%100%
get_Departments()0%100%
get_ExternalKey()0%100%
GetRecvisits()0%100%

File(s)

/opt/dev/sveta_api_build/WinSolutions.Sveta.Server/Data/DataModel/Entities/Contragent.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3using System.Text;
 4using CrmVtbc.Integration;
 5using System;
 6using System.Collections.Generic;
 7using WinSolutions.Sveta.Server.Data.DataModel.Kinds;
 8
 9namespace WinSolutions.Sveta.Server.Data.DataModel.Entities
 10{
 11    [CrmCollection("Account")]
 12    public class Contragent : ExternalRecord, ITrackableRecord
 13    {
 14        /// <summary>
 15        /// Полное наименование организации
 16        /// </summary>
 17        [Required]
 18        [CrmMap("NrbDaDataName"), CrmOnlyLoad]
 019        public string FullName { get; set; }
 20
 21        /// <summary>
 22        /// Сокращенное наименование
 23        /// </summary>
 24        [Required]
 25        [CrmMap("NrbDaDataShortName"), CrmOnlyLoad]
 231526        public string ShortName { get; set; }
 27
 28        /// <summary>
 29        /// Организационно-правовая форма
 30        /// </summary>
 31        [CrmMap("NrbDaDataOwnership"), CrmOnlyLoad]
 032        public string Ownership { get; set; }
 33
 34        /// <summary>
 35        /// Юридический адрес
 36        /// </summary>
 37        [Required]
 114638        public Address JuridicAddress { get; set; }
 39
 40        /// <summary>
 41        /// Физический адрес
 42        /// </summary>
 43        [Required]
 114544        public Address PhysicAddress { get; set; }
 45
 46        /// <summary>
 47        /// ИНН
 48        /// </summary>
 49        [Required]
 50        [CrmMap("NrbDaDataINN"), CrmOnlyLoad]
 82451        public string Inn { get; set; }
 52
 53        /// <summary>
 54        /// КПП
 55        /// </summary>
 56        [Required]
 57        [CrmMap("NrbDaDataKPP"), CrmOnlyLoad]
 57558        public string Kpp { get; set; }
 59
 60        /// <summary>
 61        /// Банковские счета
 62        /// </summary>
 063        public List<BankAccount> BankAccounts { get; set; }
 64
 65        /// <summary>
 66        /// Пользователи
 67        /// </summary>
 068        public List<User> User { get; set; }
 69
 70        /// <summary>
 71        /// БИК  (поле под удаление)
 72        /// </summary>
 73        [Obsolete]
 074        public string Bik { get; set; }
 75
 76
 77        /// <summary>
 78        /// Расчетный счет (Р/С)  (поле под удаление)
 79        /// </summary>
 80        [Obsolete]
 081        public string SettlementAccount { get; set; }
 82
 83        /// <summary>
 84        /// Наименование банка  (поле под удаление)
 85        /// </summary>
 86        [Obsolete]
 087        public string BankName { get; set; }
 88
 89
 90        /// <summary>
 91        /// Корреспондендский счет (К/С)  (поле под удаление)
 92        /// </summary>
 93        [Obsolete]
 094        public string СorrespondentAccount { get; set; }
 95
 96        /// <summary>
 97        /// ОКПО
 98        /// </summary>
 57299        public string Okpo { get; set; }
 100
 101
 102        /// <summary>
 103        /// ОКАТО
 104        /// </summary>
 105        [CrmMap("NrbDaDataOKATO"), CrmOnlyLoad]
 572106        public string Okato { get; set; }
 107
 108
 109        /// <summary>
 110        /// ОКВЭД (основной)
 111        /// </summary>
 112        [CrmMap("NrbDaDataMainOKVED"), CrmOnlyLoad]
 572113        public string Okved { get; set; }
 114
 115
 116        /// <summary>
 117        /// ОГРН
 118        /// </summary>
 119        [Required]
 120        [CrmMap("NrbDaDataOGRN"), CrmOnlyLoad]
 574121        public string Ogrn { get; set; }
 122
 123
 124        /// <summary>
 125        /// Генеральный директор
 126        /// </summary>
 127        [Required]
 1884128        public User Owner { get; set; }
 129
 130        /// <summary>
 131        /// Система налогообложения
 132        /// </summary>
 133        //[Required]
 134        [Obsolete]
 0135        public TaxSystem TaxSystem { get; set; }
 136
 137        /// <summary>
 138        /// Система налогообложения из CRM
 139        /// </summary>
 140        [Required]
 141        [CrmMap("NrbDaDataChargeForm"), CrmOnlyLoad]
 3142        public string TaxSystemCRM { get; set; }
 143
 144        /// <summary>
 145        /// Главный бухгалтер
 146        /// </summary>
 147        [Required]
 148        [CrmMap("NrbChiefAccountantName"), CrmOnlyLoad]
 0149        public string ChiefAccountant { get; set; }
 150
 151
 152        /// <summary>
 153        /// Электронная почта
 154        /// </summary>
 155        [Required]
 156        [CrmMap("NrbEmail"), CrmOnlyLoad]
 725157        public string Email { get; set; }
 158
 159        /// <summary>
 160        /// Телефон
 161        /// </summary>
 162        [Required]
 163        [CrmMap("Phone"), CrmOnlyLoad]
 725164        public string PhoneNumber { get; set; }
 165
 166        /// <summary>
 167        /// Сайт
 168        /// </summary>
 169        [CrmMap("Web"), CrmOnlyLoad]
 0170        public string WebSite { get; set; }
 171
 172        /// <summary>
 173        /// Идентификатор кошелька в ВТБ
 174        /// </summary>
 175        [Required]
 176        [CrmMap("NrbSvetaFBRAccountId"), CrmOnlyLoad]
 516177        public string WalletId { get; set; }
 178
 179        /// <summary>
 180        /// Короткий идентификатор кошелька в ВТБ
 181        /// </summary>
 182        [Required]
 183        [CrmMap("NrbSvetaShortFBRAccountId"), CrmOnlyLoad]
 0184        public string WalletShortId { get; set; }
 185
 186        /// <summary>
 187        ///  Тип контрагента
 188        /// </summary>
 189        [Required]
 1457190        public ContragentsKind ContragentsKind { get; set; }
 191
 192        /// <summary>
 193        /// Контракты, где контрагент является продавцом
 194        /// </summary>
 0195        public List<SupplyContract> ContractsAsSeller { get; set; }
 196
 197        /// <summary>
 198        /// Контракты, где контрагент является покупателем
 199        /// </summary>
 0200        public List<SupplyContract> ContractsAsBuyer { get; set; }
 201
 202        /// <summary>
 203        /// Документы, где контрагент является покупателем
 204        /// </summary>
 0205        public List<Movement> MovementsAsCustomer { get; set; }
 206
 207        /// <summary>
 208        /// Документы, где контрагент является продавцом
 209        /// </summary>
 0210        public List<Movement> MovementsAsSupplier { get; set; }
 211
 212        /// <summary>
 213        /// ТТ, к которым привязан КА
 214        /// </summary>
 0215        public List<Department> Departments { get; set; }
 216
 217        /// <summary>
 218        /// Внешний ключ для CRM
 219        /// </summary>
 220        // [Required(AllowEmptyStrings = true)]
 221        [CrmKey("NrbTID"), CrmOnlyLoad]
 222        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
 0223        public Guid ExternalKey { get; set; }
 224
 225        public string GetRecvisits()
 0226        {
 0227            StringBuilder builder = new StringBuilder();
 0228            builder.Append(this.ShortName);
 0229            builder.Append(", ");
 0230            builder.Append("ИНН: ");
 0231            builder.Append(this.Inn);
 0232            builder.Append("Адрес: ");
 0233            builder.Append(this.JuridicAddress.FullAddress);
 0234            builder.Append(", ");
 0235            builder.Append("тел.: ");
 0236            builder.Append(this.PhoneNumber);
 0237            return builder.ToString();
 0238        }
 239    }
 240}