Beispiel #1
0
        public long insertarActualizarDetalleComprobanteCliente(DetalleComprobanteModel model)
        {
            Mapper.CreateMap <DetalleComprobanteModel, InsertarActualizarDetalleComprobanteClienteCommand>();
            var command = Mapper.Map <DetalleComprobanteModel, InsertarActualizarDetalleComprobanteClienteCommand>(model);
            var resp    = (InsertarActualizarDetalleComprobanteClienteOutput)command.Execute();

            return(resp.iddetallecomprobantecliente);
        }
        public async Task <IActionResult> Edit(long id, DetalleComprobanteModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var detalleComprobante = _mapper.Map <DetalleComprobanteDto>(model);

            detalleComprobante.Id = id;
            await _detalleComprobanteRepositorio.Modificar(detalleComprobante);

            return(Ok(model));
        }
        public async Task <IActionResult> Insert(DetalleComprobanteModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                var detalleComprobante = _mapper.Map <DetalleComprobanteDto>(model);
                await _detalleComprobanteRepositorio.Insertar(detalleComprobante);

                return(Ok(model));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
            return(Ok(null));
        }
Beispiel #4
0
        public JsonResult AgregarDetalleIncidencia(int?idproducto, string serie, string imei, decimal?precio, DateTime?fechaemision)
        {
            Session["DetalleComprobanteModel"] = null;
            var detalle = new DetalleComprobanteModel();

            var inventario = new InventarioData().obtenerProductoInventario(idproducto.Value, serie, imei);

            if (inventario != null)
            {
                if ((Int32)Constantes.EstadoProducto.NoDisponible != inventario.idestado)
                {
                    return(Json(new
                    {
                        res = false,
                        msj = "El producto que intenta ingresar, está actualmente " +
                              "está dentro de un proceso de reparación."
                    }));
                }
            }



            var producto = new ProductoData().obtenerProducto(idproducto.Value);

            detalle.cantidad         = 1;
            detalle.codigoproducto   = producto.codigoproducto;
            detalle.descripcionlarga = producto.descripcionlarga;
            detalle.total            = precio;
            detalle.serie            = serie;
            detalle.imei             = imei;
            detalle.idproducto       = idproducto.Value;


            Session["DetalleComprobanteModel"] = detalle;

            return(Json(new { res = true }));
        }
Beispiel #5
0
        public JsonResult RegistrarNuevaIncidencia(IncidenciaModel modelo)
        {
            var respuesta = string.Empty;

            modelo.idusuarioregistro   = Usuario.Idusuario;
            modelo.fechahoraregistro   = DateTime.Now;
            modelo.atendidaxcallcenter = false;
            modelo.idestado            = (Int32)Constantes.EstadoIncidencia.EnProceso;
            modelo.idsucursal          = Usuario.idsucursal;
            modelo.idproducto          = Convert.ToInt32(modelo.ItemIncidencia);

            ///////Registrado previamente
            if (modelo.iddocumentocompra != null)
            {
                var detallecomprobante = FacturacionData.GetListarDetalleComprobante(modelo.iddocumentocompra).ToList();
                var hoy             = DateTime.Now.Date;
                var fechareparacion = detallecomprobante[0].fechaemision;
                modelo.fechaemision    = fechareparacion;
                modelo.idsucursalventa = detallecomprobante[0].idsucursalventa;
                var periodo = Convert.ToInt16(ConfigurationManager.AppSettings["PeriodoGarantiaReparacion"]);
                modelo.idtipogarantia  = (int)Constantes.TipoGarantia.Reparacion;
                modelo.periodogarantia = periodo;
                if ((hoy - fechareparacion).TotalDays > periodo)
                {
                    modelo.engarantia = false;
                }
                else
                {
                    modelo.engarantia = true;
                }
            }
            else
            {
                var detalle_aux            = (DetalleComprobanteModel)Session["DetalleComprobanteModel"];
                var detalledocumentocompra = new DetalleComprobanteModel();
                var documentocompra        = (ComprobanteModel)Session["ComprobanteCliente"];

                documentocompra.idconceptofacturacion = (Int16)(Constantes.ConceptoFacturacion.Venta);
                documentocompra.ventapartner          = true;
                documentocompra.idusuarioregistro     = Usuario.Idusuario;
                documentocompra.idcliente             = modelo.idcliente;
                documentocompra.ventaenlinea          = false;
                documentocompra.total             = 0;
                documentocompra.subtotal          = 0;
                documentocompra.igv               = 0;
                documentocompra.idestado          = (Int16)(Constantes.EstadoFacturacion.Facturado);
                documentocompra.idpartner         = modelo.idpartner;
                documentocompra.idsucursalventa   = modelo.idsucursalventa;
                documentocompra.fechahoraregistro = DateTime.Now;

                modelo.iddocumentocompra = new FacturacionData().insertarActualizarComprobanteCliente(documentocompra);
                modelo.fechaemision      = documentocompra.fechaemision;

                detalledocumentocompra.cantidad          = 1;
                detalledocumentocompra.idproducto        = modelo.idproducto;
                detalledocumentocompra.iddocumentocompra = modelo.iddocumentocompra;
                detalledocumentocompra.total             = detalle_aux.total;
                detalledocumentocompra.igv   = detalle_aux.igv;
                detalledocumentocompra.imei  = detalle_aux.imei;
                detalledocumentocompra.serie = detalle_aux.serie;
                var iddetalledocumento = new FacturacionData().insertarActualizarDetalleComprobanteCliente(detalledocumentocompra);
            }

            // Evaluar si garantia DAP

            var producto  = new ProductoData().obtenerProducto(modelo.idproducto);
            var garantias = new IncidenciaData()
                            .ListarEvaluarGarantia(producto.idtipoproducto.Value
                                                   , producto.idfabricante.Value
                                                   , modelo.idpartner
                                                   ).ToList();

            if (garantias != null && garantias.ToList().Count != 0)
            {
                //Dar prioridad a la garantia DAP
                //
                var dap = AgendamientoData.EvaluarGarantia(DateTime.Now.Date
                                                           , modelo.fechaemision.Value
                                                           , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.DAP)).SingleOrDefault());

                var garantia_cliente = AgendamientoData.EvaluarGarantia(DateTime.Now.Date
                                                                        , modelo.fechaemision.Value
                                                                        , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)).SingleOrDefault());

                if (dap)
                {
                    modelo.idtipogarantia     = (int)Constantes.TipoGarantia.DAP;
                    modelo.periodogarantia    = garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.DAP)).Single().periodo;
                    modelo.engarantia         = true;
                    modelo.requiereevaluacion = true;
                }
                else if (garantia_cliente)
                {
                    modelo.idtipogarantia     = (int)Constantes.TipoGarantia.Cliente;
                    modelo.periodogarantia    = garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)).Single().periodo;
                    modelo.engarantia         = true;
                    modelo.requiereevaluacion = true;
                }
                else
                {
                    modelo.idtipogarantia     = (int)Constantes.TipoGarantia.Cliente;
                    modelo.periodogarantia    = garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)).Single().periodo;
                    modelo.engarantia         = false;
                    modelo.requiereevaluacion = false;
                }
            }
            else
            {
                //modelo.idtipogarantia = (int)Constantes.TipoGarantia.Cliente;
                modelo.periodogarantia    = 0;
                modelo.engarantia         = false;
                modelo.requiereevaluacion = false;
            }


            try
            {
                var detalle_aux = (DetalleComprobanteModel)Session["DetalleComprobanteModel"];

                modelo.__tipooperacion = 1; // Actualizacion y Agregacion general
                modelo.idetapa         = (Int32)Constantes.Etapa.Registro;
                modelo.activo          = true;
                modelo.serie           = detalle_aux.serie;
                modelo.imei            = detalle_aux.imei;
                modelo.idproducto      = detalle_aux.idproducto;
                var result = new IncidenciaData().insertarActualizarIncidencia(modelo);

                return(Json(new
                {
                    engarantia = modelo.engarantia,
                    res = true,
                    incidencia = result.idincidencia,
                    num_incidencia = result.numeroincidencia,
                }));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.InnerException.ToString());
                return(Json(new { res = false, Errors = ModelState.Errors() }, JsonRequestBehavior.AllowGet));
            }
        }
Beispiel #6
0
        public static InsertarTipoTransporteOutput InsertarActualizarDetalleComprobante(DetalleComprobanteModel model, out string res)
        {
            if (model.idcomprobantedetalle == 0)
            {
                model.idcomprobantedetalle = null;
            }
            var comando = new InsertarActualizarComprobanteDetalleCommand();

            comando.idcomprobante = model.idcomprobante;
            comando.numcp         = model.numcp;

            res = "OK";

            var respuesta = (InsertarTipoTransporteOutput)comando.Execute();

            return(respuesta);
        }