Example #1
0
        public async Task <ActionResult <Contrato_detalle> > Update([FromBody] Contrato_detalle _Contrato_detalle)
        {
            Contrato_detalle _Contrato_detalleq = _Contrato_detalle;

            try
            {
                using (var transaction = _context.Database.BeginTransaction())
                {
                    try
                    {
                        _Contrato_detalleq = await(from c in _context.Contrato_detalle
                                                   .Where(q => q.Contrato_detalleId == _Contrato_detalle.Contrato_detalleId)
                                                   select c
                                                   ).FirstOrDefaultAsync();

                        _context.Entry(_Contrato_detalleq).CurrentValues.SetValues((_Contrato_detalle));

                        //_context.Contrato_detalle.Update(_Contrato_detalleq);
                        await _context.SaveChangesAsync();

                        BitacoraWrite _write = new BitacoraWrite(_context, new Bitacora
                        {
                            IdOperacion  = _Contrato_detalle.Contrato_detalleId,
                            DocType      = "Contrato_detalle",
                            ClaseInicial =
                                Newtonsoft.Json.JsonConvert.SerializeObject(_Contrato_detalleq, new JsonSerializerSettings {
                                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                            }),
                            ResultadoSerializado = Newtonsoft.Json.JsonConvert.SerializeObject(_Contrato_detalle, new JsonSerializerSettings {
                                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                            }),
                            Accion              = "Insertar",
                            FechaCreacion       = DateTime.Now,
                            FechaModificacion   = DateTime.Now,
                            UsuarioCreacion     = _Contrato_detalle.UsuarioCreacion,
                            UsuarioModificacion = _Contrato_detalle.UsuarioModificacion,
                            UsuarioEjecucion    = _Contrato_detalle.UsuarioModificacion,
                        });

                        await _context.SaveChangesAsync();

                        transaction.Commit();
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                        throw ex;
                        // return BadRequest($"Ocurrio un error:{ex.Message}");
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(await Task.Run(() => BadRequest($"Ocurrio un error:{ex.Message}")));
            }

            return(await Task.Run(() => Ok(_Contrato_detalleq)));
        }
Example #2
0
        public async Task <ActionResult <Contrato_detalle> > GetContrato_detalleById(Int64 Contrato_detalleId)
        {
            Contrato_detalle Items = new Contrato_detalle();

            try
            {
                Items = await _context.Contrato_detalle.Where(q => q.Contrato_detalleId == Contrato_detalleId).FirstOrDefaultAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }


            return(await Task.Run(() => Ok(Items)));
        }
Example #3
0
        public async Task <ActionResult <Contrato_detalle> > Delete([FromBody] Contrato_detalle _Contrato_detalle)
        {
            Contrato_detalle _Contrato_detalleq = new Contrato_detalle();

            try
            {
                _Contrato_detalleq = _context.Contrato_detalle
                                     .Where(x => x.Contrato_detalleId == (Int64)_Contrato_detalle.Contrato_detalleId)
                                     .FirstOrDefault();

                _context.Contrato_detalle.Remove(_Contrato_detalleq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(await Task.Run(() => BadRequest($"Ocurrio un error:{ex.Message}")));
            }

            return(await Task.Run(() => Ok(_Contrato_detalleq)));
        }
Example #4
0
        public async Task <ActionResult <Contrato> > InsertConsolidado([FromBody] ContratoDTO _Contrato)
        {
            Contrato _Contratoq = new Contrato();

            try
            {
                using (var transaction = _context.Database.BeginTransaction())
                {
                    try
                    {
                        _Contratoq = _Contrato.Contrato;
                        _context.Contrato.Add(_Contratoq);
                        await _context.SaveChangesAsync();

                        BitacoraWrite _write = new BitacoraWrite(_context, new Bitacora
                        {
                            IdOperacion  = _Contratoq.ContratoId,
                            DocType      = "Contrato",
                            ClaseInicial =
                                Newtonsoft.Json.JsonConvert.SerializeObject(_Contratoq, new JsonSerializerSettings {
                                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                            }),
                            Accion              = "Insertar",
                            FechaCreacion       = DateTime.Now,
                            FechaModificacion   = DateTime.Now,
                            UsuarioCreacion     = _Contratoq.UsuarioCreacion,
                            UsuarioModificacion = _Contratoq.UsuarioModificacion,
                            UsuarioEjecucion    = _Contratoq.UsuarioModificacion,
                        });

                        await _context.SaveChangesAsync();


                        Contrato_detalle _contratodetalle = new Contrato_detalle();
                        foreach (Contrato_detalle _cd in _Contratoq.Contrato_detalle)
                        {
                            _contratodetalle          = _cd;
                            _contratodetalle.Contrato = _Contratoq;
                            _context.Contrato_detalle.Add(_contratodetalle);
                            await _context.SaveChangesAsync();

                            _write = new BitacoraWrite(_context, new Bitacora
                            {
                                IdOperacion  = _contratodetalle.Contrato_detalleId,
                                DocType      = "Contrato_detalle",
                                ClaseInicial =
                                    Newtonsoft.Json.JsonConvert.SerializeObject(_contratodetalle, new JsonSerializerSettings {
                                    ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                                }),
                                Accion              = "Insertar",
                                FechaCreacion       = DateTime.Now,
                                FechaModificacion   = DateTime.Now,
                                UsuarioCreacion     = _contratodetalle.UsuarioCreacion,
                                UsuarioModificacion = _contratodetalle.UsuarioModificacion,
                                UsuarioEjecucion    = _contratodetalle.UsuarioModificacion,
                            });

                            await _context.SaveChangesAsync();
                        }

                        Contrato_plan_pagos _Contrato_plan_pagosq = new Contrato_plan_pagos();

                        foreach (Contrato_plan_pagos _cpp in _Contratoq.Contrato_plan_pagos)
                        {
                            _Contrato_plan_pagosq          = _cpp;
                            _Contrato_plan_pagosq.Contrato = _Contratoq;
                            _context.Contrato_plan_pagos.Add(_Contrato_plan_pagosq);
                            await _context.SaveChangesAsync();

                            _write = new BitacoraWrite(_context, new Bitacora
                            {
                                IdOperacion  = _Contrato_plan_pagosq.Nro_cuota,
                                DocType      = "Contrato_plan_pagos",
                                ClaseInicial =
                                    Newtonsoft.Json.JsonConvert.SerializeObject(_Contrato_plan_pagosq, new JsonSerializerSettings {
                                    ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                                }),
                                Accion              = "Insertar",
                                FechaCreacion       = DateTime.Now,
                                FechaModificacion   = DateTime.Now,
                                UsuarioCreacion     = _Contrato_plan_pagosq.UsuarioCreacion,
                                UsuarioModificacion = _Contrato_plan_pagosq.UsuarioModificacion,
                                UsuarioEjecucion    = _Contrato_plan_pagosq.UsuarioModificacion,
                            });
                        }

                        await _context.SaveChangesAsync();

                        transaction.Commit();
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                        throw ex;
                        // return BadRequest($"Ocurrio un error:{ex.Message}");
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }

            return(await Task.Run(() => Ok(_Contratoq)));
        }