public ActionResult GestionMenu()
        {
            GestionMenuModel model = new GestionMenuModel();

            model.Menu        = new MantenimientoMenuModel();
            model.MenuDetalle = new MantenimientoMenuDetalleModel();

            SeguridadMVC.Seguridad.SessionWrapper sesionSeguridad = new SeguridadMVC.Seguridad.SessionWrapper();


            ProxyApiProducto proxyComun = new ProxyApiProducto();

            var responseProducto = proxyComun.ListarProductoPorUsuario(sesionSeguridad.Usuario.Idusuario);

            model.MenuDetalle.ListProducto = new List <SelectListItemCustom>();

            foreach (var item in responseProducto.Hits)
            {
                model.MenuDetalle.ListProducto.Add(new SelectListItemCustom()
                {
                    Text  = item.prod_descrip,
                    Value = item.prod_id.ToString()
                });
            }



            return(View(model));
        }
        public PartialViewResult MantMenuDetalle(MantenimientoMenuDetalleModel model)
        {
            SeguridadMVC.Seguridad.SessionWrapper sesionSeguridad = new SeguridadMVC.Seguridad.SessionWrapper();


            ProxyApiProducto proxyProducto = new ProxyApiProducto();

            var responseProducto = proxyProducto.ListarProductoPorUsuario(sesionSeguridad.Usuario.Idusuario);


            var objProducto = proxyProducto.LeerProducto(model.CodigoProducto);


            model.ListProducto = new List <SelectListItemCustom>();

            foreach (var item in responseProducto.Hits)
            {
                model.ListProducto.Add(new SelectListItemCustom()
                {
                    Text  = item.prod_descrip,
                    Value = item.prod_id.ToString()
                });
            }



            if (ModelState.IsValid)
            {
                if (model.CodigoMenu != 0)
                {
                    ProxyApiRestaurante         objProxy = new ProxyApiRestaurante();
                    MenuDetalleRegistrarRequest request  = new MenuDetalleRegistrarRequest();
                    request.MenuDetalle = new MenuDetalle();
                    request.MenuDetalle.mede_disponible = true;
                    request.MenuDetalle.mede_precio     = objProducto.Hit.prod_precio;
                    request.MenuDetalle.menu_id         = model.CodigoMenu;
                    request.MenuDetalle.prod_id         = model.CodigoProducto;

                    var response = objProxy.RegistrarMenuDetalle(request);
                }
            }
            else
            {
            }



            return(PartialView(model));
        }
        public JsonResult EliminarProducto(string datos)
        {
            ProcesoResponse  respuesta     = new ProcesoResponse();
            ProxyApiProducto proxyProducto = new ProxyApiProducto();

            foreach (string item in datos.Split(';'))
            {
                if (item != string.Empty)
                {
                    proxyProducto.Eliminar(Convert.ToInt32(item));
                }
            }

            var jsonResult = new JsonResult {
                JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

            jsonResult.Data = respuesta;

            return(jsonResult);
        }
        public JsonResult LitaPrecios(FormCollection frm)
        {
            string iDisplayLength = HttpContext.Request.Form["iDisplayLength"];
            string iDisplayStart  = HttpContext.Request.Form["iDisplayStart"];
            string sEcho          = HttpContext.Request.Form["sEcho"];
            string sData          = HttpContext.Request.Form["sData"];

            ResponseOperacionBE o_ResponseOperacion = new ResponseOperacionBE();

            o_ResponseOperacion.OperacionType = new OperacionType();
            o_ResponseOperacion.OperacionType.codigo_operacion  = "LISTA_PRECIOS";
            o_ResponseOperacion.OperacionType.nombre_operacion  = "Listar precios";
            o_ResponseOperacion.OperacionType.mensaje_operacion = "Listado con éxito";
            o_ResponseOperacion.OperacionType.estado_operacion  = "0";

            RequestOperacionBE Request = new RequestOperacionBE();

            Request = new JavaScriptSerializer().Deserialize <RequestOperacionBE>(sData);
            Request.DataTableRquest = new DataTableRequest();

            Request.DataTableRquest.iDisplayLength = Convert.ToInt32(iDisplayLength);
            Request.DataTableRquest.iDisplayStart  = Convert.ToInt32(iDisplayStart);
            Request.DataTableRquest.sEcho          = sEcho;


            DataTableResponse ResponseOperacion = new DataTableResponse();
            int nIdIniComp = Request.DataTableRquest.iDisplayStart;
            int nIdFinComp = Request.DataTableRquest.iDisplayLength;

            nIdFinComp = nIdIniComp + nIdFinComp;
            nIdIniComp = nIdIniComp + 1;

            try
            {
                SeguridadMVC.Seguridad.SessionWrapper objSesion = new SeguridadMVC.Seguridad.SessionWrapper();
                ProxyApiUsuario apiUsuario = new ProxyApiUsuario();

                var responseUsuario = apiUsuario.ObtenerUsuario(objSesion.Usuario.Idusuario);


                var deserailizar = new JsonSerializerSettings();
                deserailizar.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat;

                deserailizar.Culture = System.Threading.Thread.CurrentThread.CurrentCulture;
                var parameter = Newtonsoft.Json.JsonConvert.DeserializeObject <ListarPrecioRequest>(Request.OperacionType.Objeto1.ToString(), deserailizar);

                parameter.prm_reginicio = nIdIniComp;
                parameter.prm_regfin    = nIdFinComp;



                parameter.RucRestaurante = responseUsuario.Restaurante.rest_ruc;

                ProxyApiProducto proxyProducto = new ProxyApiProducto();

                ListaPrecioResponse result = proxyProducto.ListarPrecio(parameter);



                ResponseOperacion.aaData               = result.Hits;
                ResponseOperacion.iTotalRecords        = Request.DataTableRquest.iDisplayLength;
                ResponseOperacion.iTotalDisplayRecords = result.totalregistros;
                ResponseOperacion.sEcho = Request.DataTableRquest.sEcho;

                o_ResponseOperacion.DataTableResponse = ResponseOperacion;
            }
            catch (Exception err)
            {
                o_ResponseOperacion.OperacionType.mensaje_operacion = "Error inesperado";
                o_ResponseOperacion.OperacionType.estado_operacion  = "-1";
            }

            var jsonResult = new JsonResult {
                JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

            jsonResult.Data = o_ResponseOperacion;
            return(jsonResult);
        }
        public ActionResult MantenimientoListaPrecio(MantenimientoListaPrecioModel model)
        {
            try
            {
                ProxyApiComun proxyComun        = new ProxyApiComun();
                var           responseTipoComun = proxyComun.ObtenerTipoComida();

                model.ListComida = new List <SelectListItemCustom>();

                foreach (var item in responseTipoComun.TipoComida)
                {
                    model.ListComida.Add(new SelectListItemCustom()
                    {
                        Text  = item.tico_descrip,
                        Value = item.tico_id.ToString()
                    });
                }



                SeguridadMVC.Seguridad.SessionWrapper objSesion = new SeguridadMVC.Seguridad.SessionWrapper();



                ProxyApiUsuario apiUsuario = new ProxyApiUsuario();

                var responseUsuario = apiUsuario.ObtenerUsuario(objSesion.Usuario.Idusuario);



                RegistrarProductoRequest registrarProducto = new RegistrarProductoRequest();
                registrarProducto.Producto              = new Producto();
                registrarProducto.Producto.tico_id      = model.CodigoTipoComida;
                registrarProducto.Producto.prod_descrip = model.DescripcionProducto;
                registrarProducto.Producto.prod_nombre  = model.DescripcionProducto;
                registrarProducto.Producto.prod_precio  = Convert.ToDecimal(model.PrecioProducto);
                registrarProducto.Producto.rest_ruc     = responseUsuario.Restaurante.rest_ruc;

                registrarProducto.Producto.tico_id = model.CodigoTipoComida;


                ProxyApiProducto proxyProducto = new ProxyApiProducto();

                RegistrarProductoResponse result = proxyProducto.RegistrarProducto(registrarProducto);


                if (result.status.estado == 0)
                {
                    model.CodigoTipoComida = 0;

                    model.DescripcionProducto = "";
                    model.PrecioProducto      = "";

                    return(RedirectToAction("MantenimientoListaPrecio"));
                }
                else
                {
                    ModelState.AddModelError("MensajeGeneral", result.status.mensaje);
                }
            }
            catch (Exception err)
            {
                ModelState.AddModelError("MensajeGeneral", err.Message);
            }

            return(View(model));
        }