コード例 #1
0
        public async Task <Result <IRealEstate> > GetRealEstate(EntityFoundRealEstate estate)
        {
            return(await Task.Run(() =>
            {
                Result <IRealEstate> result = new Result <IRealEstate>();

                try
                {
                    var item = _repositoryRosreestr.GetRealEstate(estate.NobjectCn);

                    var resultExel = _createFile.CreateXlsx(ServiceConvert.GetConvertEstateToStrings(item), estate.NobjectCn);

                    _createFile.OpenFolderFile(resultExel);

                    if (item == null)
                    {
                        result.ErrorResult = new ErrorResult("Данных нет", EnumTypeError.ResultNotFound);
                    }

                    result.Item = item;
                }
                catch (Exception ex)
                {
                    result.ErrorResult = new ErrorResult(ex.Message, EnumTypeError.ErrorSite);
                    // Тут будет логер
                }

                return result;
            }).ConfigureAwait(false));
        }
コード例 #2
0
        public async Task <Result <bool> > ProcessList()
        {
            Result <bool> result = new Result <bool>();

            return(await Task.Run(() =>
            {
                try
                {
                    Parallel.ForEach(CollectionEstate, item =>
                    {
                        try
                        {
                            var a = _repositoryRosreestr.GetRealEstate(item.Id);

                            if (a != null)
                            {
                                item.Estate = a;
                            }
                            else
                            {
                                item.Estate = new ErrorEstate("Ничего не найдено");
                            }
                        }
                        catch (Exception ex)
                        {
                            item.Estate = new ErrorEstate(ex.Message);
                        }
                    });

                    var file = _createFile.CreateXlsx(ServiceConvert.ConvertCollectionEntityEstate(CollectionEstate), _fileName);
                    _createFile.CreateCsv(ServiceConvert.ConvertCollectionErrorEntityEstate(CollectionEstate), _createFile.CreateErrorName(_fileName));

                    _createFile.OpenFolderFile(file);

                    result.Item = true;
                }
                catch (Exception ex)
                {
                    result.ErrorResult = new ErrorResult(ex.Message, EnumTypeError.ErrorSite);
                }

                return result;
            }));
        }