コード例 #1
0
        public async Task <IActionResult> UpdateInvoiceDetail(DetaliiFacturaDTO detaliiFacturaDTO)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    DetaliiFactura detailFromDb = await _repository.GetInvoiceDetailById(detaliiFacturaDTO.IdDetaliiFactura);

                    if (detailFromDb == null)
                    {
                        return(BadRequest());
                    }
                    detailFromDb.NumeProdus = detaliiFacturaDTO.NumeProdus;
                    detailFromDb.Cantitate  = detaliiFacturaDTO.Cantitate;
                    detailFromDb.PretUnitar = detaliiFacturaDTO.PretUnitar;
                    detailFromDb.Valoare    = detaliiFacturaDTO.Valoare;
                    await _repository.EditInvoiceDetail(detailFromDb);

                    return(Ok());
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message.Split('.')[0]));
                }
            }
            return(BadRequest("Invalid Invoice Detail."));
        }
コード例 #2
0
        public async Task <DetaliiFactura> AddDetaliiFactura(DetaliiFactura detaliiFactura)
        {
            await _context.DetaliiFacturi.AddAsync(detaliiFactura);

            await _context.SaveChangesAsync();

            return(detaliiFactura);
        }
コード例 #3
0
        public async Task DeleteInvoiceDetail(DetaliiFactura invoiceDetail)
        {
            DetaliiFactura detailFromDb = await _context.DetaliiFacturi.Where(df => df.IdDetaliiFactura == invoiceDetail.IdDetaliiFactura).FirstOrDefaultAsync();

            if (detailFromDb != null)
            {
                _context.DetaliiFacturi.Remove(detailFromDb);
                await _context.SaveChangesAsync();
            }
        }
コード例 #4
0
        public async Task <ActionResult <DetaliiFactura> > Post([FromBody] DetaliiFactura detaliiFactura)
        {
            await _detaliiFacturaRepository.CreateDetaliiFacturaAsync(detaliiFactura);

            if (await _detaliiFacturaRepository.SaveAllAsync())
            {
                return(detaliiFactura);
            }
            else
            {
                return(BadRequest("Unable to add factura"));
            }
        }
コード例 #5
0
        public async Task <DetaliiFactura> EditInvoiceDetail(DetaliiFactura invoiceDetails)
        {
            DetaliiFactura invoiceDetailsFromDb = await _context.DetaliiFacturi.Where(df => df.IdDetaliiFactura == invoiceDetails.IdDetaliiFactura).FirstOrDefaultAsync();

            invoiceDetailsFromDb.NumeProdus = invoiceDetails.NumeProdus;
            invoiceDetailsFromDb.Cantitate  = invoiceDetails.Cantitate;
            invoiceDetailsFromDb.PretUnitar = invoiceDetails.PretUnitar;
            invoiceDetailsFromDb.Valoare    = invoiceDetails.Valoare;

            _context.DetaliiFacturi.Attach(invoiceDetailsFromDb);
            _context.Entry(invoiceDetailsFromDb).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(invoiceDetails);
        }
コード例 #6
0
        public async Task <DetaliiFacturaDto> CreateDetaliiFacturaAsync(DetaliiFactura newDetaliiFactura)
        {
            DetaliiFacturaDto detaliiFactura;

            detaliiFactura = new DetaliiFacturaDto
            {
                IdFactura  = newDetaliiFactura.IdFactura,
                IdLocatie  = newDetaliiFactura.IdLocatie,
                NumeProdus = newDetaliiFactura.NumeProdus,
                Cantitate  = newDetaliiFactura.Cantitate,
                PretUnitar = newDetaliiFactura.PretUnitar,
                Valoare    = newDetaliiFactura.Valoare
            };

            try { await _context.AddAsync(_mapper.Map <DetaliiFacturaDto, DetaliiFactura>(detaliiFactura)); }
            catch (Exception ex)
            {
                throw new Exception($"{nameof(detaliiFactura)} could not be saved: {ex.Message}");
            }

            return(detaliiFactura);
        }
コード例 #7
0
ファイル: FacturiService.cs プロジェクト: seeker23/Accounting
        public bool Update(DetaliiFacturaReadOrCreate detaliiFactura)
        {
            try
            {
                var factura = new Facturi()
                {
                    IdFactura    = detaliiFactura.IdFactura,
                    IdLocatie    = detaliiFactura.IdLocatie,
                    NumarFactura = detaliiFactura.NumarFactura,
                    DataFactura  = DateTime.Now,
                    NumeClient   = detaliiFactura.NumeClient
                };
                _facturiRepository.Update(factura);

                int latestIdDetaliiFactura = _detaliiFacturaRepository.Table.Where(x => x.IdLocatie == detaliiFactura.IdLocatie && x.IdFactura == detaliiFactura.IdFactura).Max(x => x.IdDetaliiFactura);

                var detFactura = new DetaliiFactura()
                {
                    IdDetaliiFactura = latestIdDetaliiFactura,
                    IdFactura        = detaliiFactura.IdFactura,
                    IdLocatie        = detaliiFactura.IdLocatie,
                    NumeProdus       = detaliiFactura.NumeProdus,
                    PretUnitar       = detaliiFactura.PretUnitar,
                    Cantitate        = detaliiFactura.Cantitate,
                    Valoare          = detaliiFactura.PretUnitar * detaliiFactura.Cantitate
                };

                _detaliiFacturaRepository.Update(detFactura);

                return(true);
            }
            catch (Exception ex)
            {
                return(false);

                throw ex;
            }
        }
コード例 #8
0
        public async Task <IActionResult> DeleteInvoiceDetail(DetaliiFacturaDTO detaliiFacturaDTO)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    DetaliiFactura detailFromDb = await _repository.GetInvoiceDetailById(detaliiFacturaDTO.IdDetaliiFactura);

                    if (detailFromDb == null)
                    {
                        return(BadRequest());
                    }
                    await _repository.DeleteInvoiceDetail(detailFromDb);

                    return(Ok());
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message.Split('.')[0]));
                }
            }
            return(BadRequest("Invalid Invoice Detail."));
        }
コード例 #9
0
        public async Task <IActionResult> AddInvoiceDetails(DetaliiFacturaDTO detaliiFacturaDTO)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Factura invoiceFromDb = await _repository.GetInvoiceById(detaliiFacturaDTO.IdFactura);

                    if (invoiceFromDb == null)
                    {
                        return(BadRequest());
                    }
                    DetaliiFactura newDetaliiFactura = _mapper.Map <DetaliiFacturaDTO, DetaliiFactura>(detaliiFacturaDTO);
                    await _repository.AddDetaliiFactura(newDetaliiFactura);

                    return(Ok());
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message.Split('.')[0]));
                }
            }
            return(BadRequest("Invalid Invoice Detail."));
        }
コード例 #10
0
        private List <DetaliiFactura> generateSeedDetails()
        {
            List <DetaliiFactura> details    = new List <DetaliiFactura>();
            DetaliiFactura        temDetails = new DetaliiFactura()
            {
                IdFactura  = 1,
                IdLocatie  = 44,
                NumeProdus = "Pix albastru transparent.",
                Cantitate  = 20.0M,
                PretUnitar = 2.5M,
                Valoare    = 50.0M
            };

            details.Add(temDetails);
            DetaliiFactura temDetails2 = new DetaliiFactura()
            {
                IdFactura  = 1,
                IdLocatie  = 44,
                NumeProdus = "Creion albastru mic.",
                Cantitate  = 20.0M,
                PretUnitar = 2.0M,
                Valoare    = 40.0M
            };

            details.Add(temDetails2);
            DetaliiFactura temDetails3 = new DetaliiFactura()
            {
                IdFactura  = 1,
                IdLocatie  = 44,
                NumeProdus = "Marker negru permanent.",
                Cantitate  = 20.0M,
                PretUnitar = 6.3M,
                Valoare    = 126.0M
            };

            details.Add(temDetails3);
            DetaliiFactura temDetails4 = new DetaliiFactura()
            {
                IdFactura  = 2,
                IdLocatie  = 44,
                NumeProdus = "Marker negru permanent.",
                Cantitate  = 20.0M,
                PretUnitar = 6.3M,
                Valoare    = 126.0M
            };

            details.Add(temDetails4);
            DetaliiFactura temDetails5 = new DetaliiFactura()
            {
                IdFactura  = 3,
                IdLocatie  = 44,
                NumeProdus = "Marker negru permanent.",
                Cantitate  = 20.0M,
                PretUnitar = 6.3M,
                Valoare    = 126.0M
            };

            details.Add(temDetails5);
            DetaliiFactura temDetails6 = new DetaliiFactura()
            {
                IdFactura  = 3,
                IdLocatie  = 44,
                NumeProdus = "Marker negru permanent.",
                Cantitate  = 20.0M,
                PretUnitar = 6.3M,
                Valoare    = 126.0M
            };

            details.Add(temDetails6);
            return(details);
        }
コード例 #11
0
 public void UpdateDetaliiFactura(int idFactura, DetaliiFactura detaliiFactura)
 {
     throw new NotImplementedException();
 }