public async Task <FileResponse> GetAsync(Guid campaignContentId)
        {
            var file = await _fileInfoRepository.GetAsync(campaignContentId.ToString());

            if (file == null)
            {
                return(null);
            }

            var fileBlobUrl = await _fileRepository.GetBlobUrl(file.Name);

            return(new FileResponse
            {
                Id = file.Id,
                BlobUrl = fileBlobUrl,
                Type = file.Type,
                Name = file.Name,
            });
        }
Ejemplo n.º 2
0
        public async Task <FileResponseModel> GetAsync(Guid ruleContentId)
        {
            var file = await _fileInfoRepository.GetAsync(ruleContentId.ToString());

            if (file == null)
            {
                return(null);
            }

            var fileBlobUrl = await _fileRepository.GetBlobUrl(file.Name);

            return(new FileResponseModel()
            {
                Id = file.Id,
                BlobUrl = fileBlobUrl,
                Type = file.Type,
                Name = file.Name,
                RuleContentId = file.RuleContentId
            });
        }
Ejemplo n.º 3
0
        public async Task DeleteAsync(string merchantId, string invoiceId)
        {
            IInvoice entity = await _invoiceRepository.GetAsync(merchantId, invoiceId);

            if (entity == null)
            {
                return;
            }

            var invoice = Mapper.Map <Invoice>(entity);

            var invoiceStatus = invoice.Status.ParsePayEnum <InvoiceStatus>();

            if (invoiceStatus == InvoiceStatus.Draft)
            {
                await _invoiceRepository.DeleteAsync(merchantId, invoiceId);

                IEnumerable <IFileInfo> fileInfos = await _fileInfoRepository.GetAsync(invoiceId);

                foreach (IFileInfo fileInfo in fileInfos)
                {
                    await _fileInfoRepository.DeleteAsync(invoiceId, fileInfo.FileId);

                    await _fileRepository.DeleteAsync(fileInfo.FileId);
                }

                await _log.WriteInfoAsync(nameof(InvoiceService), nameof(DeleteAsync),
                                          invoice.ToContext().ToJson(),
                                          $"Delete invoce {invoice.InvoiceId}, for merchant {invoice.MerchantId} with status {invoice.Status}");
            }
            else if (invoiceStatus == InvoiceStatus.Unpaid)
            {
                invoice.Status = InvoiceStatus.Removed.ToString();
                await _invoiceRepository.UpdateAsync(invoice);

                await _log.WriteInfoAsync(nameof(InvoiceService), nameof(DeleteAsync),
                                          invoice.ToContext().ToJson(),
                                          $"Delete invoce {invoice.InvoiceId}, for merchant {invoice.MerchantId} with status {InvoiceStatus.Unpaid}");
            }
            else
            {
                await _log.WriteInfoAsync(nameof(InvoiceService), nameof(DeleteAsync), invoice.ToContext().ToJson(),
                                          $"CANNOT delete invoce {invoice.InvoiceId}, for merchant {invoice.MerchantId} in current status");
            }
        }
Ejemplo n.º 4
0
 public async Task <IEnumerable <FileInfo> > GetInfoAsync(string invoiceId)
 {
     return(await _fileInfoRepository.GetAsync(invoiceId));
 }