コード例 #1
0
ファイル: AreaBL.cs プロジェクト: EvertNube/nbLibros
 public bool add(AreaDTO Area)
 {
     using (var context = getContext())
     {
         try
         {
             Area nuevo = new Area();
             nuevo.Nombre = Area.Nombre;
             nuevo.Descripcion = Area.Descripcion;
             nuevo.Estado = true;
             nuevo.IdEmpresa = Area.IdEmpresa;
             context.Area.Add(nuevo);
             context.SaveChanges();
             return true;
         }
         catch (Exception e)
         {
             throw e;
         }
     }
 }
コード例 #2
0
ファイル: AdminController.cs プロジェクト: EvertNube/nbLibros
 private static void PintarAreasIE(AreaDTO obj, System.Data.DataTable dt)
 {
     DataRow row1 = dt.NewRow();
     row1[0] = obj.Nombre.ToUpper();
     dt.Rows.Add(row1);
     DataRow row2 = dt.NewRow();
     row2[1] = "VENTAS";
     row2[2] = obj.Ingresos.ToString("N2", CultureInfo.InvariantCulture);
     row2[3] = obj.Ingresos_SinIGV.ToString("N2", CultureInfo.InvariantCulture);
     dt.Rows.Add(row2);
     DataRow row3 = dt.NewRow();
     row3[1] = "GASTOS";
     row3[2] = obj.Egresos.ToString("N2", CultureInfo.InvariantCulture);
     row3[3] = obj.Egresos_SinIGV.ToString("N2", CultureInfo.InvariantCulture);
     dt.Rows.Add(row3);
     DataRow row4 = dt.NewRow();
     row4[0] = "NETO";
     row4[2] = (obj.Ingresos + obj.Egresos).ToString("N2", CultureInfo.InvariantCulture);
     row4[3] = (obj.Ingresos_SinIGV + obj.Egresos_SinIGV).ToString("N2", CultureInfo.InvariantCulture);
     dt.Rows.Add(row4);
 }
コード例 #3
0
ファイル: AdminController.cs プロジェクト: EvertNube/nbLibros
        private static void PintarAreas(AreaDTO obj, Decimal SumaTotal, System.Data.DataTable dt)
        {
            System.Data.DataRow row1 = dt.NewRow();
            row1[0] = obj.Nombre;
            row1["Monto con IGV"] = obj.SumaClientes.ToString("N2", CultureInfo.InvariantCulture);
            row1["Monto sin IGV"] = obj.SumaClientes_SinIGV.ToString("N2", CultureInfo.InvariantCulture);
            Decimal porcentaje = SumaTotal == 0 ? 0 : obj.SumaClientes / SumaTotal;
            row1["Porcentaje"] = porcentaje.ToString("P2", CultureInfo.InvariantCulture);
            dt.Rows.Add(row1);

            foreach (var item in obj.lstClientes)
            {
                if (item.Monto != 0)
                {
                    System.Data.DataRow row2 = dt.NewRow();
                    row2[1] = item.Nombre;
                    row2["Monto con IGV"] = item.Monto.ToString("N2", CultureInfo.InvariantCulture);
                    row2["Monto sin IGV"] = item.MontoSinIGV.ToString("N2", CultureInfo.InvariantCulture);
                    dt.Rows.Add(row2);
                }
            }
        }
コード例 #4
0
ファイル: AdminController.cs プロジェクト: EvertNube/nbLibros
        public ActionResult AddArea(AreaDTO dto)
        {
            if (!this.currentUser()) { return RedirectToAction("Ingresar"); }
            if (!this.isAdministrator()) { return RedirectToAction("Index"); }
            try
            {
                AreaBL objBL = new AreaBL();
                if (dto.IdArea == 0)
                {
                    if (objBL.add(dto))
                    {
                        createResponseMessage(CONSTANTES.SUCCESS);
                        return RedirectToAction("Areas");
                    }
                }
                else if (dto.IdArea != 0)
                {
                    if (objBL.update(dto))
                    {
                        createResponseMessage(CONSTANTES.SUCCESS);
                        return RedirectToAction("Areas");
                    }
                    else
                    {
                        createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_UPDATE_MESSAGE);
                    }

                }
                else
                {
                    createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_INSERT_MESSAGE);
                }
            }
            catch (Exception e)
            {
                if (dto.IdArea != 0)
                    createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_UPDATE_MESSAGE);
                else createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_INSERT_MESSAGE);
            }
            TempData["Area"] = dto;
            return RedirectToAction("Area");
        }
コード例 #5
0
ファイル: AdminController.cs プロジェクト: EvertNube/nbLibros
        public ActionResult Area(int? id = null)
        {
            if (!this.currentUser()) { return RedirectToAction("Ingresar"); }
            if (!this.isAdministrator()) { return RedirectToAction("Index"); }
            ViewBag.Title = "Área";
            MenuNavBarSelected(4);

            UsuarioDTO currentUser = getCurrentUser();

            AreaBL objBL = new AreaBL();

            var objSent = TempData["Area"];
            if (objSent != null) { TempData["Area"] = null; return View(objSent); }

            AreaDTO obj;
            if (id != null)
            {
                obj = objBL.getAreaEnEmpresa((int)currentUser.IdEmpresa, (int)id);
                if (obj == null) return RedirectToAction("Areas");
                if (obj.IdEmpresa != currentUser.IdEmpresa) return RedirectToAction("Areas");
                return View(obj);
            }
            obj = new AreaDTO();
            obj.IdEmpresa = currentUser.IdEmpresa;

            return View(obj);
        }
コード例 #6
0
ファイル: AreaBL.cs プロジェクト: EvertNube/nbLibros
 public bool update(AreaDTO Area)
 {
     using (var context = getContext())
     {
         try
         {
             var row = context.Area.Where(x => x.IdArea == Area.IdArea).SingleOrDefault();
             row.Nombre = Area.Nombre;
             row.Descripcion = Area.Descripcion;
             row.Estado = Area.Estado;
             row.IdEmpresa = Area.IdEmpresa;
             context.SaveChanges();
             return true;
         }
         catch (Exception e)
         {
             throw e;
         }
     }
 }
コード例 #7
0
ファイル: EmpresaBL.cs プロジェクト: EvertNube/nbLibros
        public List<AreaDTO> getTopEgrArea(int idEmpresa, int idPeriodo)
        {
            using (var context = getContext())
            {
                var periodo = context.Periodo.Where(x => x.IdPeriodo == idPeriodo).SingleOrDefault();

                if (periodo == null) { return new List<AreaDTO>(); }

                var result = context.SP_Rep_IngresosEgresosPorAreas(idEmpresa, periodo.FechaInicio, periodo.FechaFin).Select(x => new AreaDTO
                {
                    IdArea = x.IdArea,
                    Nombre = x.Nombre.Length > 27 ? x.Nombre.Substring(0, 27) + "." : x.Nombre,
                    Descripcion = x.Descripcion,
                    Estado = x.Estado,
                    IdEmpresa = x.IdEmpresa,
                    Ingresos = x.Ingreso.GetValueOrDefault(),
                    Egresos = x.Egreso.GetValueOrDefault()
                }).OrderBy(x => x.Egresos).ToList();

                if (result == null) { return new List<AreaDTO>(); }

                Decimal montoTotal = result.Sum(x => x.Egresos);

                List<AreaDTO> lista = result.Take(5).Select(x => new AreaDTO
                {
                    IdArea = x.IdArea,
                    Nombre = x.Nombre,
                    Descripcion = x.Descripcion,
                    Estado = x.Estado,
                    IdEmpresa = x.IdEmpresa,
                    Ingresos = x.Ingresos,
                    Egresos = x.Egresos,
                    Porcentaje = montoTotal != 0 ? (x.Egresos / montoTotal) : 0
                }).ToList();

                AreaDTO Otros = new AreaDTO() { Nombre = "Otros", Estado = true, IdEmpresa = 1 };
                Otros.Ingresos = result.Skip(5).Sum(x => x.Ingresos);
                Otros.Egresos = result.Skip(5).Sum(x => x.Egresos);
                Otros.Porcentaje = montoTotal != 0 ? (Otros.Egresos / montoTotal) : 0;

                lista.Add(Otros);

                return lista;
            }
        }