< Summary

Class:WinSolutions.Sveta.Server.Services.Implements.DirectoriesService
Assembly:WinSolutions.Sveta.Server
File(s):/opt/dev/sveta_api_build/WinSolutions.Sveta.Server/Services/Implements/DirectoriesService.cs
Covered lines:18
Uncovered lines:16
Coverable lines:34
Total lines:144
Line coverage:52.9% (18 of 34)
Covered branches:0
Total branches:0

Metrics

MethodLine coverage Branch coverage
.ctor(...)100%100%
GetCurrency()0%100%
GetCurrencies()0%100%
GetContragentKind()0%100%
GetEventKind()0%100%
GetNotificationStatus()100%100%
GetNotificationType()100%100%
GetRecordState()100%100%
GetUnitKind()0%100%
GetUnitKind()0%100%
GetUnitKindByCode()0%100%
GetVatKind()0%100%
GetVatKindByCode()0%100%
GetMovementStatus()0%100%
GetMovementType()100%100%
GetDeliveryTypes()100%100%
GetDeliveryType()100%100%
GetEventKinds()0%100%

File(s)

/opt/dev/sveta_api_build/WinSolutions.Sveta.Server/Services/Implements/DirectoriesService.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore;
 2using Microsoft.Extensions.Logging;
 3using System.Collections.Generic;
 4using System.Linq;
 5using System.Threading.Tasks;
 6using WinSolutions.Sveta.Server.Data.DataModel.Contexts;
 7using WinSolutions.Sveta.Server.Data.DataModel.Entities;
 8using WinSolutions.Sveta.Server.Services.Interfaces;
 9using WinSolutions.Sveta.Common;
 10using WinSolutions.Sveta.Common.Extensions;
 11using WinSolutions.Sveta.Server.Data.DataModel.Kinds;
 12
 13namespace WinSolutions.Sveta.Server.Services.Implements
 14{
 15    public class DirectoriesService : SvetaServiceBase, IDirectoriesService
 16    {
 17        private readonly SvetaDbContext _db;
 18        private readonly ILogger<IDirectoriesService> _logger;
 19
 20        public DirectoriesService(SvetaDbContext db, ILogger<IDirectoriesService> logger, IAuthenticationService authent
 18621            : base(authenticationService)
 18622        {
 18623            _db = db;
 18624            _logger = logger;
 18625        }
 26
 27        /// <summary>
 28        /// получить валюту
 29        /// </summary>
 30        /// <param name="id">id валюты</param>
 31        /// <returns></returns>
 032        public async Task<Currency> GetCurrency(long id) => await _db.refCurrency.Where(e => !e.IsDeleted).FirstOrDefaul
 33
 34        /// <summary>
 35        /// Получить список валют
 36        /// </summary>
 37        /// <param name="filter">фильтр по Name, Code, StrCode</param>
 38        /// <returns></returns>
 039        public async Task<List<Currency>> GetCurrencies(string filter = null) => await _db.refCurrency
 040            .AsNoTracking()
 041            .Include(d => d.RecState)
 042            .Where(d => !d.IsDeleted)
 043            .Where(x => (filter!= null ? x.NAME.ToUpper().Contains(filter.ToUpper()) || x.CODE.ToUpper().Contains(filter
 044            .ToListAsync();
 45
 46        /// <summary>
 47        ///Получить тип контрагента
 48        /// </summary>
 49        /// <param name="id">id типа контрагента</param>
 50        /// <returns></returns>
 051        public async Task<ContragentsKind> GetContragentKind(long id) => await _db.refContragentsKind.Where(e => !e.IsDe
 52        /// <summary>
 53        ///Получить тип события
 54        /// </summary>
 55        /// <param name="id">id типа события</param>
 56        /// <returns></returns>
 057        public async Task<EventsKind> GetEventKind(long id) => await _db.refEventsKind.Where(e => !e.IsDeleted).FirstOrD
 58        /// <summary>
 59        ///Получить статус нотификации
 60        /// </summary>
 61        /// <param name="id">id статуса</param>
 62        /// <returns></returns>
 74563        public async Task<NotificationsStatus> GetNotificationStatus(long id) => await _db.refNotificationsStatus.Where(
 64        /// <summary>
 65        /// Получить тип нотификации
 66        /// </summary>
 67        /// <param name="id">id типа</param>
 68        /// <returns></returns>
 74569        public async Task<NotificationsType> GetNotificationType(long id) => await _db.refNotificationsType.Where(e => !
 70        /// <summary>
 71        /// получить тип служебной записи RecordState
 72        /// </summary>
 73        /// <param name="id">id типа</param>
 74        /// <returns></returns>
 222275        public async Task<RecordsState> GetRecordState(long id) => await _db.refRecordsState.Where(e => !e.IsDeleted).Fi
 76        /// <summary>
 77        /// Получить единицу измерения
 78        /// </summary>
 79        /// <param name="id">id единицы измерения</param>
 80        /// <returns></returns>
 081        public async Task<UnitsKind> GetUnitKind(long id) => await _db.refUnitsKind.Where(e => !e.IsDeleted).FirstOrDefa
 82        /// <summary>
 83        /// Получить единицу измерения
 84        /// </summary>
 85        /// <param name="name">наименование единицы измерения</param>
 86        /// <returns></returns>
 87        public async Task<UnitsKind> GetUnitKind(string name) =>
 088            await _db.refUnitsKind.FirstOrDefaultAsync(d => !d.IsDeleted && d.Name.ToLower().Equals(name.NormalizeName()
 89        /// <summary>
 90        /// Получить единицу измерения
 91        /// </summary>
 92        /// <param name="code">код единицы измерения</param>
 93        /// <returns></returns>
 094        public async Task<UnitsKind> GetUnitKindByCode(int code) => await _db.refUnitsKind.Where(e => !e.IsDeleted).Firs
 95        /// <summary>
 96        /// Получить тип НДС
 97        /// </summary>
 98        /// <param name="id">id типа</param>
 99        /// <returns></returns>
 0100        public async Task<VatsKind> GetVatKind(long id) => await _db.refVatsKind.Where(e => !e.IsDeleted).FirstOrDefault
 101        /// <summary>
 102        /// Получить тип НДС
 103        /// </summary>
 104        /// <param name="code">код типа</param>
 105        /// <returns></returns>
 0106        public async Task<VatsKind> GetVatKindByCode(int code) => await _db.refVatsKind.Where(e => !e.IsDeleted).FirstOr
 107        /// <summary>
 108        /// Получить статус документа
 109        /// </summary>
 110        /// <param name="id">id статуса</param>
 111        /// <returns></returns>
 0112        public async Task<MovementStatus> GetMovementStatus(long id) => await _db.refMovementStatus.Where(e => !e.IsDele
 113        /// <summary>
 114        /// Получить тип документа
 115        /// </summary>
 116        /// <param name="id">id типа</param>
 117        /// <returns></returns>
 1118        public async Task<MovementType> GetMovementType(long id) => await _db.refMovementType.Where(e => !e.IsDeleted).F
 119        /// <summary>
 120        /// Получить список типо доставки
 121        /// </summary>
 122        /// <returns></returns>
 186123        public async Task<List<DeliveryType>> GetDeliveryTypes() => await _db.DeliveryTypes
 186124             .Include(x => x.DeliveryCostTypes)
 186125             .Include(x => x.RecState)
 186126             .AsNoTracking()
 186127             .Where(d => !d.IsDeleted).ToListAsync();
 128        /// <summary>
 129        /// получить тип доставки
 130        /// </summary>
 131        /// <param name="id">id типа</param>
 132        /// <returns></returns>
 44133        public async Task<DeliveryType> GetDeliveryType(long id) => await _db.DeliveryTypes
 44134             .Include(x => x.DeliveryCostTypes)
 44135             .Include(x => x.RecState)
 44136             .FirstOrDefaultAsync(d => !d.IsDeleted && d.Id == id);
 137
 138        /// <summary>
 139        /// Получает список видов событий
 140        /// </summary>
 141        /// <returns>список объектов EnumDTO</returns>
 0142        public async Task<List<EventsKind>> GetEventKinds() => await _db.refEventsKind.Where(e => !e.IsDeleted).ToListAs
 143    }
 144}