示例#1
0
        public bool CreateKardexEliminarCD(TbPrCompra domain)
        {
            //var domain = compraService.GetCompraById(idCompra);
            var kardex = new List <TbPrKardex>();


            foreach (var item in domain.TbPrCompraDetalle)
            {
                var existAntBod = item.IdInventarioNavigation.TbPrInventarioBodega.FirstOrDefault(i => i.IdBodega == item.IdBodega).ExistenciaBodega;
                var existActBod = existAntBod - item.Cantidad;
                if (existActBod < 0)
                {
                    return(false);
                }

                var k = new TbPrKardex
                {
                    CantidadMov     = item.Cantidad * -1,
                    CostoPromedio   = 0,
                    CostoMov        = item.SubTotalExcentoBase + item.SubTotalGravadoBase,
                    Fecha           = DateTime.Now,
                    ExistAct        = 0,
                    ExistAnt        = 0,
                    ExistActBod     = 0,
                    ExistAntBod     = 0,
                    IdBodegaDestino = item.IdBodega,
                    IdBodegaOrigen  = item.IdBodega,
                    IdDocumento     = domain.Id,
                    IdUsuario       = domain.IdUsuario,
                    IdMoneda        = domain.IdMoneda,
                    Observaciones   = "N/A",
                    PrecioPromedio  = 0,
                    PrecioUnit      = item.PrecioUnitarioBase,
                    IdInventario    = item.IdInventario,
                    TipoDocumento   = "CD",
                    SaldoFinal      = 0
                };

                kardex.Add(k);
            }

            try
            {
                service.SaveAll(kardex);
                return(true);
            }
            catch (Exception ex)
            {
                AltivaLog.Log.Insertar(ex.ToString(), "Error");
                return(true);

                throw;
            }
        }
示例#2
0
 public TbCeColaAprobacion FromCompraToCA(TbPrCompra domain, string estado)
 {
     return(new TbCeColaAprobacion
     {
         Estado = "X",
         Fecha = DateTime.Now,
         FechaDoc = domain.FechaDocumento,
         IdDoc = domain.Id,
         MontoDoc = domain.TotalBase,
         NumDoc = domain.NumeroDocumento,
         TipoDoc = "COMPRA",
         Anulado = domain.Anulado
     });
 }
        public ActionResult CambiarEstadoGasto(int id)
        {
            try
            {
                TbPrCompra compra = service.GetCompraByIdWithoutD(id);
                compra.Anulado = true;
                if (!compra.Borrador)
                {
                    compra = service.Update(compra);
                }

                return(Json(new { success = true }));
            }
            catch (Exception ex)
            {
                AltivaLog.Log.Insertar(ex.ToString(), "Error");
                throw;
            }
        }
示例#4
0
        public ActionResult CambiarEstadoCompra(int id)
        {
            try
            {
                var        res    = true;
                TbPrCompra compra = service.GetCompraById(id);
                compra.Anulado = true;
                if (!compra.Borrador)
                {
                    res = kardexMap.CreateKardexEliminarCD(compra);
                }
                if (res)
                {
                    compra = service.Update(compra);
                }

                return(Json(new { success = res }));
            }
            catch (Exception ex)
            {
                AltivaLog.Log.Insertar(ex.ToString(), "Error");
                throw;
            }
        }
示例#5
0
 public TbPrCompra SaveServicio(TbPrCompra domain)
 {
     return(repository.SaveServicio(domain));
 }
示例#6
0
 public TbPrCompra Save(TbPrCompra domain)
 {
     return(repository.Save(domain));
 }
示例#7
0
 public TbPrCompra UpdateGasto(TbPrCompra domain)
 {
     return(repository.Update(domain));
 }
示例#8
0
 public TbCeColaAprobacion CreateCACompra(TbPrCompra domain)
 {
     return(service.SaveCA(FromCompraToCA(domain, "X")));
 }