public ActionResult EstadoFisico(long idincidencia) { Session["idincidencia"] = idincidencia; var model = new IncidenciaData().ObtenerIncidencia(idincidencia); var modSucursal = new SucursalData().obtenerSucursal(model.idsucursal); model.ListaAccesorios = GetListaAccesorios(); if (model.accesorios != null) { model.AccesoriosSeleccionados = model.accesorios.Split(',').ToArray(); } ViewData["ListaEstadosFiProducto"] = MantenimientoData.GetListarValoresxTabla(Convert.ToInt32(Constantes.MaestroTablas.TipoDano)); var sucursal = new SucursalData().ListarSucursal("", "", null, (Int32)Constantes.Partner.Smartway).Where(x => x.reparacion); var listasucursal = new SelectList( sucursal, "idsucursal", "nombre"); model.reparadoensucursal = modSucursal.reparacion; model.sucursaldelivery = modSucursal.delivery; ViewData["listasucursal"] = listasucursal; var direccion = MantenimientoData.GetListarDireccionesxCliente(model.idcliente); var listadirecciones = new SelectList(direccion, "iddireccion", "direccion"); ViewData["listadireccion"] = listadirecciones; return(View(model)); }
public JsonResult JsonGetListarIncidencia(string numeroincidencia , string numerodocumento , string fechainicio , string fechafin) { if (String.IsNullOrEmpty(numeroincidencia)) { numeroincidencia = null; } if (String.IsNullOrEmpty(numerodocumento)) { numerodocumento = null; } if (String.IsNullOrEmpty(fechainicio)) { fechainicio = null; } if (String.IsNullOrEmpty(fechafin)) { fechafin = null; } var listadoTotal = new IncidenciaData().ListarIncidencias(numeroincidencia, numerodocumento, fechainicio, fechafin).ToList(); var resjson1 = (new JqGridExtension <IncidenciaModel>()).DataBind(listadoTotal, listadoTotal.Count); return(resjson1); }
Incidencia RetIncidenciaById(int id) { //IncidenciaData rdr = new IncidenciaData(); IEntityRead <Incidencia> rdr = new IncidenciaData(); Incidencia inc = rdr.QueryEntity(id); return(inc); }
public JsonResult cargarRepuestos(int idreparacion, int idproducto) { var respuestos = new IncidenciaData().listarRepuestos(idreparacion, idproducto).ToList(); var listarepuestos = new SelectList( respuestos, "idproducto", "descripcionlarga"); return(Json(new { listarepuestos })); }
public PartialViewResult JsonAgregarIncidentes(long?idmanifiesto, long?idorden) { IncidenciaModel model = new IncidenciaModel(); model.idmanifiesto = idmanifiesto; model.idordentrabajo = idorden; var estacion = IncidenciaData.GetListarMaestroIncidencia("L").ToList(); var listaestacion = new SelectList( estacion, "idmaestroincidencia", "descripcion"); ViewData["ListadoMaestroIncidente"] = listaestacion; model.horaincidencia = DateTime.Now.Hour.ToString().PadLeft(2, '0') + ":" + DateTime.Now.Minute.ToString().PadLeft(2, '0'); model.fechaincidencia = DateTime.Now; return(PartialView("_AgregarIncidente", model)); }
public JsonResult SaveImage(long?id, string imageData, string imageData2, string imageData3, string imageData4, string imageData5, string imageData6) { long idincidencia = id.Value; var modIncidencia = new IncidenciaModel(); modIncidencia.__tipooperacion = 6; modIncidencia.idincidencia = idincidencia; modIncidencia.partedelantera = Convert.FromBase64String(imageData); modIncidencia.parteposterior = Convert.FromBase64String(imageData2); modIncidencia.partesuperior = Convert.FromBase64String(imageData3); modIncidencia.parteinferior = Convert.FromBase64String(imageData4); modIncidencia.parteizquierda = Convert.FromBase64String(imageData6); modIncidencia.partederecha = Convert.FromBase64String(imageData5); string Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/Delantera.png"); SaveNewImage(imageData, idincidencia, Pic_Path); Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/Posterior.png"); SaveNewImage(imageData2, idincidencia, Pic_Path); Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/Superior.png"); SaveNewImage(imageData3, idincidencia, Pic_Path); Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/Inferior.png"); SaveNewImage(imageData4, idincidencia, Pic_Path); Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/LateralDerecho.png"); SaveNewImage(imageData5, idincidencia, Pic_Path); Pic_Path = HttpContext.Server.MapPath("/Images/" + idincidencia + "/LateralIzquierdo.png"); SaveNewImage(imageData6, idincidencia, Pic_Path); var result = new IncidenciaData().insertarActualizarIncidencia(modIncidencia); return(Json(new { res = true })); }
public JsonResult RegistrarNuevaIncidenciaSinReclamo(IncidenciaModel modelo) { var respuesta = string.Empty; modelo.idusuarioregistro = Usuario.Idusuario; modelo.fechaemision = DateTime.Now; modelo.fechahoraregistro = DateTime.Now; modelo.atendidaxcallcenter = false; modelo.idestado = (Int32)Constantes.EstadoIncidencia.EnProceso; modelo.idsucursal = Usuario.idsucursal; modelo.serie = modelo.serie; modelo.imei = modelo.imei; modelo.activo = true; modelo.__tipooperacion = 1; //insertar var producto = new ProductoData().obtenerProducto(modelo.idproducto); var result = new IncidenciaData().insertarActualizarIncidencia(modelo); var numero_incidencia = new IncidenciaData().ObtenerIncidencia(result.idincidencia.Value); if (result == null) { ModelState.AddModelError("", respuesta); return(Json(new { res = false, Errors = ModelState.Errors() })); } else { return(Json(new { engarantia = modelo.engarantia, res = true, incidencia = result.idincidencia, num_incidencia = numero_incidencia.anioincidencia + "-" + numero_incidencia.numeroincidencia })); } }
public ActionResult AtencionEvaluacion(long idincidencia) { var model = new EvaluacionModel(); var dataIncidencia = new IncidenciaData(); var incidenciaModel = dataIncidencia.ObtenerIncidencia(idincidencia); var productoModel = new ProductoData().obtenerProducto(incidenciaModel.idproducto); var detallecomprobante = FacturacionData.GetListarDetalleComprobante(incidenciaModel.iddocumentocompra).ToList(); var evaluacion = AgendamientoData.ListarIncidenciaEvaluacion(idincidencia).ToList(); #region asignacion de propiedades model.numeroincidencia = incidenciaModel.numeroincidencia; model.anioincidencia = incidenciaModel.anioincidencia; model.falla = incidenciaModel.falla; model.producto = incidenciaModel.producto; model.requerimientocliente = incidenciaModel.requerimientocliente; model.codigoproducto = incidenciaModel.codigoproducto; model.idrequerimientocliente = incidenciaModel.idrequerimientocliente; model.incidenciagarantia = incidenciaModel.incidenciagarantia; model.requiereevaluacion = incidenciaModel.requiereevaluacion; model.idordenserviciotecnico = incidenciaModel.idordenserviciotecnico; #endregion if (!incidenciaModel.incidenciagarantia) // No fue vendido en smartway ni en partner ni reparado en smartway { return(View("SeguimientoIncidencia")); // no puede ingresar a esta página } if (detallecomprobante[0].idconceptofacturacion == (Int16)(Constantes.ConceptoFacturacion.Reparacion)) /// REPARADO EN SMARTWAY { ///Aca pensar en como se hará el tema del concepto de reparacion para la garantía /// } else { //vendido en smartway o partner var garantias = dataIncidencia.ListarEvaluarGarantia(productoModel.idtipoproducto.Value , incidenciaModel.idfabricante , incidenciaModel.idpartner ).ToList(); if (garantias != null && garantias.ToList().Count != 0) { //Dar prioridad a la garantia DAP // var dap = AgendamientoData.EvaluarGarantia(DateTime.Now.Date , detallecomprobante[0].fechaemision , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.DAP)).SingleOrDefault()); var garantia_cliente = AgendamientoData.EvaluarGarantia(DateTime.Now.Date , detallecomprobante[0].fechaemision , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)).SingleOrDefault()); if (garantia_cliente) { garantias.ForEach(x => { if (x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)) { x.resultado = true; model.garantia = "Con garantía de Cliente"; model.engarantia = true; } } ); model.idtipogarantia = (Int16)Constantes.TipoGarantia.Cliente; } if (dap) { garantias.ForEach(x => { if (x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.DAP)) { x.resultado = true; model.garantia = "Con garantía DAP"; model.engarantia = true; } } ); model.idtipogarantia = (Int16)Constantes.TipoGarantia.DAP; } if (garantia_cliente == false && dap == false) { model.garantia = "Fuera de garantía"; model.engarantia = false; } } else { model.garantia = "Fuera de garantía"; model.engarantia = false; garantias.Add(new Mantenimiento.Models.GarantiaModel() { descripcion = "No existen garantias registradas para este producto" }); } model.idincidencia = idincidencia; model.ListaGarantias = garantias; model.ListaCondiciones = dataIncidencia.ListarCondiciones (incidenciaModel.idtipoproducto, incidenciaModel.idfabricante).ToList(); model.idetapa = incidenciaModel.idetapa; if (incidenciaModel.idetapa >= 2) { int i = 0; evaluacion = evaluacion.OrderBy(x => x.idcondicion).ToList(); foreach (var item in model.ListaCondiciones.OrderBy(x => x.idcondicion).ToList()) { if (item.idcondicion == evaluacion[i].idcondicion) { item.activo = evaluacion[i].valor; } i++; } model.Evaluacion = true; model.ListaCondiciones = model.ListaCondiciones.OrderByDescending(x => x.valor).ToList(); } else { model.ListaCondiciones = model.ListaCondiciones.OrderByDescending(x => x.valor).ToList(); foreach (var item in model.ListaCondiciones) { if (item.valor) { item.activo = true; } else { item.activo = false; } } } } if (model.ideva.HasValue) { model.evaluacionrealizada = true; } else { model.evaluacionrealizada = false; } //if (incidenciaModel.idcoti.HasValue) // model.cotizacionrealizada = true; //else // model.cotizacionrealizada = false; return(View(model)); }
public JsonResult RegistrarEstadoFisico(IncidenciaModel model) { int idEstadoOrdenServicio; if (model.AccesoriosSeleccionados != null) { var modEstadoFisico = new EstadoFisicoModel(); modEstadoFisico.idincidencia = model.idincidencia.Value; modEstadoFisico.idsaccesorios = string.Join(",", model.AccesoriosSeleccionados); new AgendamientoData().insertarActualizarAccesorioIncidencia(modEstadoFisico); } var modIncidencia = new IncidenciaData().ObtenerIncidencia(model.idincidencia.Value); modIncidencia.__tipooperacion = 5;// cambiar estado modIncidencia.idestado = (int)(Constantes.EstadoIncidencia.Cerrada); modIncidencia.idetapa = (int)(Constantes.Etapa.EstadoFisico); if (model.idsucursalreparacion.HasValue) { modIncidencia.idsucursalreparacion = model.idsucursalreparacion; modIncidencia.idsucursaldestino = model.idsucursalreparacion; idEstadoOrdenServicio = (Int32)Constantes.EstadoOrdenServicio.PendienteDespacho; } else { modIncidencia.idsucursalreparacion = modIncidencia.idsucursal; idEstadoOrdenServicio = (Int32)Constantes.EstadoOrdenServicio.PendienteAsignacionTecnico; } modIncidencia.iddirecciondelivery = model.iddirecciondelivery; var result = new IncidenciaData().insertarActualizarIncidencia(modIncidencia); var ModInventario = new InventarioModel(); ModInventario.cantidad = 1; ModInventario.fechahoraregistro = DateTime.Now; //almacen principal var objAlmacen = InventarioData.GetListarAlmacen(modIncidencia.idsucursal, "001").FirstOrDefault(); ModInventario.idalmacen = objAlmacen.idalmacen.Value; ModInventario.iddocumentorecepcion = 0; ModInventario.idestado = (Int32)Constantes.Producto.PendienteReparar; ModInventario.idproducto = modIncidencia.idproducto; ModInventario.idusuarioregistro = Usuario.Idusuario; ModInventario.imei = modIncidencia.imei; ModInventario.serie = modIncidencia.serie; ModInventario.__idoperacion = 1; ModInventario.idinventario = new InventarioData().InsertarActualizarInventario(ModInventario); #region Para ordenes que se atienden en la misma localidad if (modIncidencia.idsucursal == modIncidencia.idsucursaldestino.Value) { idEstadoOrdenServicio = (Int32)Constantes.EstadoOrdenServicio.PendienteAsignacionTecnico; //modOrdenServicio.__tipooperacion = 2; //new OrdenServicioData().InsertarActualizarOrdenServicio(modOrdenServicio); } #endregion var modOrdenServicio = GenerarOrdenServicio(model.idincidencia.Value, idEstadoOrdenServicio, modIncidencia); return(Json(new { res = true, idordenservicio = modOrdenServicio.idordenserviciotecnico, numeroordenservicio = modOrdenServicio.numeroordenservicio })); }
public ActionResult Cotizar(long idordentrabajo) { Session["CotizacionDetalleModel"] = null; var model = new VentaCotizacionModel(); var dataIncidencia = new IncidenciaData(); var listadoactual = new List <VentaCotizacionDetalleModel>(); var modOrdenTrabajo = new ReparacionesData().obtenerOrdenTrabajo(idordentrabajo); var modOrdenServicio = new OrdenServicioData().obtenerOrdenServicio(modOrdenTrabajo.idordenserviciotecnico.Value); var modIncidencia = new IncidenciaData().ObtenerIncidencia(modOrdenServicio.idincidencia.Value); //var listadoTotal = new VentaData().listarCotizacionDetalle(idincidencia).ToList(); //var modIncidencia = dataIncidencia.ObtenerIncidencia(idincidencia); //var modSucursal = new SucursalData().obtenerSucursal(modIncidencia.idsucursal); #region EvaluacionDeGarantia //model.engarantia = modIncidencia.engarantia; //if (model.engarantia) //{ // if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.Cliente)) // model.garantia = "Con garantía de Cliente"; // else if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.DAP)) // model.garantia = "Con garantía DAP"; // else if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.SinGarantia)) // model.garantia = "Sin Garantia"; //} #endregion //if (listadoTotal.Count > 0) //{ // Session["CotizacionDetalleModel"] = listadoTotal; // model.idsucursalreparacion = listadoTotal[0].idsucursalreparacion; // model.str_total = (Convert.ToDecimal(listadoTotal.Sum(x => x.costo).ToString()) * (decimal)(1.00)).ToString("0.##"); // model.str_subtotal = (Convert.ToDecimal(model.str_total) / (decimal)(1.18)).ToString("0.##"); // model.str_igv = (Convert.ToDecimal(model.str_total) - Convert.ToDecimal(model.str_subtotal)).ToString("0.##"); // model.idcotizacion = listadoTotal[0].idcotizacion; // model.iddirecciondelivery = listadoTotal[0].iddirecciondelivery; // model.idsucursalreparacion = listadoTotal[0].idsucursalreparacion; //} //else //{ // if (!model.engarantia) // { // //listadoTotal.Add(new CotizacionDetalleModel // //{ // // costo = Convert.ToDecimal(20.00), // // descripcion = "Servicio de Reparación" // //}); // //listadoTotal.Add(new CotizacionDetalleModel // //{ // // costo = Convert.ToDecimal(10.00), // // descripcion = "Delivery" // //}); // } // Session["CotizacionDetalleModel"] = listadoTotal; //} #region combos var sucursal = new SucursalData().ListarSucursal("", "", null, (Int32)Constantes.Partner.Smartway).Where(x => x.reparacion); var listasucursal = new SelectList( sucursal, "idsucursal", "nombre"); ViewData["listasucursal"] = listasucursal; var diagnostico = new DiagnosticoData().listarDiagnostico(null, null, modIncidencia.idtipoproducto, modOrdenServicio.engarantia); var listadiagnostico = new SelectList(diagnostico, "iddiagnostico", "descripcion"); ViewData["listadiagnostico"] = listadiagnostico; #endregion #region Asignar propiedades cotizacion Model model.numeroincidencia = modIncidencia.numeroincidencia; model.falla = modIncidencia.falla; model.producto = modIncidencia.producto; model.codigoproducto = modIncidencia.codigoproducto; model.fechaasignacion = modOrdenTrabajo.fechahoraasignacion.Value; model.idpartner = modIncidencia.idpartner; model.idtipoproducto = modIncidencia.idtipoproducto; model.idfabricante = modIncidencia.idfabricante; model.idsucursal = modIncidencia.idsucursal; model.idproducto = modIncidencia.idproducto; #endregion return(View(model)); }
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)); } }
public JsonResult guardarIngresoosr(DocumentoRecepcionModel model) { var detalle = (List <DocumentoRecepcionDetalleModel>)Session["DocumentoRecepcion"]; #region comprobar requisitos de la carga var modProducto = new ProductoData().obtenerProducto(model.idproducto); foreach (var item in detalle) { switch (modProducto.idrequisitoascanear) { case (Int32)Constantes.Scanear.Imei: if (string.IsNullOrEmpty(item.imei)) { return(Json(new { res = false, msj = "La carga requiere del número de IMEI" })); } break; case (Int32)Constantes.Scanear.Mac: if (string.IsNullOrEmpty(item.mac)) { return(Json(new { res = false, msj = "La carga requiere del número de MAC" })); } break; case (Int32)Constantes.Scanear.Serie: if (string.IsNullOrEmpty(item.serie)) { return(Json(new { res = false, msj = "La carga requiere del número de Serie" })); } break; case (Int32)Constantes.Scanear.SerieImei: if (string.IsNullOrEmpty(item.imei)) { return(Json(new { res = false, msj = "La carga requiere del número de IMEI" })); } if (string.IsNullOrEmpty(item.serie)) { return(Json(new { res = false, msj = "La carga requiere del número de Serie" })); } break; case (Int32)Constantes.Scanear.SerieImeiMac: if (string.IsNullOrEmpty(item.imei)) { return(Json(new { res = false, msj = "La carga requiere del número de IMEI" })); } if (string.IsNullOrEmpty(item.serie)) { return(Json(new { res = false, msj = "La carga requiere del número de Serie" })); } if (string.IsNullOrEmpty(item.mac)) { return(Json(new { res = false, msj = "La carga requiere del número de MAC" })); } break; default: break; } } #endregion var dataIncidencia = new IncidenciaData(); List <InventarioModel> inventarios = new List <InventarioModel>(); InventarioModel inventarioModel = null; // new InventarioModel(); DocumentoRecepcionDetalleModel modelDetalle = null; OrdenServicioModel ordenModel = new OrdenServicioModel(); if (detalle == null) { return(Json(new { res = false, msj = "No existen datos cargados en el sistema." })); } model.fechahoraregistro = DateTime.Now; model.activo = true; model.idtiporecibo = (Int16)Constantes.TipoRecibo.Reparacion; model.idusuarioregistro = Usuario.Idusuario; model.iddocumentorecepcion = new RecepcionData().insertarActualizarDocumentoRecepcion(model); foreach (var item in detalle) { //traer documento de compra var detfact = FacturacionData.GetListarDetalleComprobante(null, item.serie).ToList(); bool cliente = false; bool reparacion = false; var garantias = dataIncidencia.ListarEvaluarGarantia(modProducto.idtipoproducto.Value , modProducto.idfabricante.Value , model.idpartner ).ToList(); if (detfact.Count > 0) { cliente = AgendamientoData.EvaluarGarantia(DateTime.Now.Date , detfact[0].fechaemision , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Cliente)).SingleOrDefault()); reparacion = AgendamientoData.EvaluarGarantia(DateTime.Now.Date , detfact[0].fechaemision , garantias.Where(x => x.idtipogarantia.Equals((Int16)Constantes.TipoGarantia.Reparacion)).SingleOrDefault()); } inventarioModel = new InventarioModel(); inventarioModel.cantidad = item.cantidad; inventarioModel.codigoproducto = item.codigo; inventarioModel.fechahoraregistro = DateTime.Now; inventarioModel.idalmacen = model.idalmacen; inventarioModel.idestado = (Int16)Constantes.Producto.PendienteReparar; inventarioModel.serie = item.serie; inventarioModel.imei = item.imei; inventarioModel.mac = item.mac; inventarioModel.pallet = item.pallet; inventarioModel.idusuarioregistro = Usuario.Idusuario; inventarioModel.__idoperacion = 1; inventarioModel.idproducto = model.idproducto; inventarioModel.iddocumentorecepcion = model.iddocumentorecepcion.Value; inventarioModel.idinventario = new InventarioData().InsertarActualizarInventario(inventarioModel); ordenModel = new OrdenServicioModel(); ordenModel.activo = true; ordenModel.anioincindecia = DateTime.Now.Year; ordenModel.bounce = "0"; ordenModel.idproducto = model.idproducto; ordenModel.codigoproducto = modProducto.codigoproducto; ordenModel.idusuario = Usuario.Idusuario; ordenModel.cotizado = false; ordenModel.documento_coincide = false; ordenModel.engarantia = cliente; ordenModel.idtipogarantia = (Int16)Constantes.TipoGarantia.Cliente; ordenModel.fechahoraregistro = DateTime.Now; if (detfact.Count != 0) { ordenModel.fechadocumento = detfact[0].fechaemision; } ordenModel.fecharecepcion = model.fechahorarecepcion; ordenModel.idestado = (Int16)Constantes.EstadoOrdenServicio.PendienteAsignacionTecnico; ordenModel.idtipoordenservicio = (Int16)Constantes.tipoordenservicio.osr; ordenModel.__tipooperacion = 1; ordenModel.idcliente = model.idcliente; ordenModel.idpartner = model.idpartner; ordenModel.serie = item.serie; ordenModel.imei = item.imei; ordenModel.mac = item.mac; ordenModel.iddocumentorecepcion = model.iddocumentorecepcion.Value; ordenModel.idinventario = inventarioModel.idinventario.Value; ordenModel = new OrdenServicioData().InsertarActualizarOrdenServicio(ordenModel); modelDetalle = new DocumentoRecepcionDetalleModel(); inventarioModel.idproducto = model.idproducto; modelDetalle.caja = ""; modelDetalle.cantidad = 1; modelDetalle.codigo = item.codigo; modelDetalle.fabricante = ""; modelDetalle.fechahorapersonalizacion = DateTime.Now; modelDetalle.fila = item.fila; modelDetalle.iddocumentorecepcion = model.iddocumentorecepcion.Value; modelDetalle.idfila = item.idfila; modelDetalle.idmodelo = item.idmodelo; modelDetalle.idproducto = inventarioModel.idproducto; modelDetalle.idusuariopersonalizacion = Usuario.Idusuario; modelDetalle.numeropallet = item.pallet; modelDetalle.repuesto = false; modelDetalle.serie = item.serie; modelDetalle.mac = item.mac; new RecepcionData().insertarActualizarDocumentoRecepcionDetalle(modelDetalle); } return(Json(new { res = true })); }
public ActionResult DetalleOrdenServicio(long idordenservicio) { var ordenServicio = new OrdenServicioData().obtenerOrdenServicio(idordenservicio); var ordentrabajo = new ReparacionesData().obtenerOrdenTrabajo(ordenServicio.idordentrabajo.Value); var listadoactual = VentaData.listarCotizacionDetalle(idordenservicio).ToList(); var model = new IncidenciaData().ObtenerIncidencia(ordenServicio.idincidencia.Value); model.idestado = ordenServicio.idestado; model.total = Math.Round(listadoactual.Sum(x => x.costototal), 2); model.subtotal = Math.Round(Convert.ToDecimal(model.total / Convert.ToDecimal(1.18)), 2); model.igv = Math.Round(model.total - model.subtotal, 2); model.editar = false; model.direccion = model.direccioncliente; if (listadoactual.Count > 0) { model.idcotizacion = listadoactual[0].idcotizacion; } var perfiles = Usuario.Perfiles; //Validar si es admin var autorizar = perfiles.Where(x => x.IdPerfil.Equals (Convert.ToInt32(Constantes.Perfil.Admin))).SingleOrDefault(); if (autorizar != null) { var sucursal = new SucursalData().ListarSucursal("", "", null); var listasucursal = new SelectList( sucursal, "idsucursal", "nombre"); ViewData["listasucursal"] = listasucursal; model.editarsucursal = true; model.idsucursal = Usuario.idsucursal; } ViewData["ListaTipoComprobante"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.TipoDocumentoCompra); ViewData["ListaCondicionReclamo"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.CondicionReclamo); ViewData["ListaTipoDocumento"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.TipoDocumento); ViewData["ListaTipoRequerimiento"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.RequerimientoCliente); var direccion = MantenimientoData.GetListarDireccionesxCliente(10); var listadirecciones = new SelectList(direccion, "iddireccion", "direccion"); ViewData["listadireccion"] = listadirecciones; var falla = new FallaData().listarFalla(null, null); var listafalla = new SelectList(falla, "idfalla", "descripcion"); ViewData["listafalla"] = listafalla; var tipoproducto = new ProductoData().listarTipoProducto(); var listatipoproducto = new SelectList( tipoproducto , "idtipoproducto" , "nombre" ); ViewData["listatipoproducto"] = listatipoproducto; var producto = new ProductoData().listarProducto("", "", null, null, null, false); var listaproducto = new SelectList(producto, "idproducto", "descripcionlarga"); ViewData["listaproducto"] = listaproducto; var fabricante = new PartnerData().ListarPartner(null, null); var listafabricante = new SelectList( fabricante , "idpartner" , "razonsocial" ); ViewData["listafabricante"] = listafabricante; var partners = new PartnerData().ListarPartner(null, null); var listapartners = new SelectList( partners , "idpartner" , "razonsocial" ); ViewData["listapartner"] = listapartners; var modelAtencion = new EvaluacionModel(); model.ListaAccesorios = GetListaAccesorios(); if (model.accesorios != null) { model.AccesoriosSeleccionados = model.accesorios.Split(',').ToArray(); } ViewData["ListaEstadosFiProducto"] = MantenimientoData.GetListarValoresxTabla(Convert.ToInt32(Constantes.MaestroTablas.TipoDano)); ViewBag.Base64StringSuperior = "data:image/png;base64," + Convert.ToBase64String(model.partesuperior, 0, model.partesuperior.Length); ViewBag.Base64StringInferior = "data:image/png;base64," + Convert.ToBase64String(model.parteinferior, 0, model.parteinferior.Length); ViewBag.Base64StringDelantera = "data:image/png;base64," + Convert.ToBase64String(model.partedelantera, 0, model.partedelantera.Length); ViewBag.Base64StringPosterior = "data:image/png;base64," + Convert.ToBase64String(model.parteposterior, 0, model.parteposterior.Length); ViewBag.Base64StringDerecha = "data:image/png;base64," + Convert.ToBase64String(model.partederecha, 0, model.partederecha.Length); ViewBag.Base64StringIzquierda = "data:image/png;base64," + Convert.ToBase64String(model.parteizquierda, 0, model.parteizquierda.Length); return(View(model)); }
public ActionResult VerIncidencia(long idincidencia) { var model = new IncidenciaData().ObtenerIncidencia(idincidencia); model.editar = false; model.direccion = model.direccioncliente; var perfiles = Usuario.Perfiles; //Validar si es admin var autorizar = perfiles.Where(x => x.IdPerfil.Equals (Convert.ToInt32(Constantes.Perfil.Admin))).SingleOrDefault(); if (autorizar != null) { var sucursal = new SucursalData().ListarSucursal("", "", null); var listasucursal = new SelectList( sucursal, "idsucursal", "nombre"); ViewData["listasucursal"] = listasucursal; model.editarsucursal = true; //model.idsucursal = Usuario.idsucursal; } if (!model.idincidencia.HasValue) { model.idpartner = Usuario.idpartner; } ViewData["ListaTipoComprobante"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.TipoDocumentoCompra); ViewData["ListaCondicionReclamo"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.CondicionReclamo); ViewData["ListaTipoDocumento"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.TipoDocumento); ViewData["ListaTipoRequerimiento"] = MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.RequerimientoCliente); var direccion = MantenimientoData.GetListarDireccionesxCliente(10); var listadirecciones = new SelectList(direccion, "iddireccion", "direccion"); ViewData["listadireccion"] = listadirecciones; var falla = new FallaData().listarFalla(null, null); var listafalla = new SelectList(falla, "idfalla", "descripcion"); ViewData["listafalla"] = listafalla; var tipoproducto = new ProductoData().listarTipoProducto(); var listatipoproducto = new SelectList( tipoproducto , "idtipoproducto" , "nombre" ); ViewData["listatipoproducto"] = listatipoproducto; var producto = new ProductoData().listarProducto("", "", null, null, null, false); var listaproducto = new SelectList(producto, "idproducto", "descripcionlarga"); ViewData["listaproducto"] = listaproducto; var fabricante = new PartnerData().ListarPartner(null, null); var listafabricante = new SelectList( fabricante , "idpartner" , "razonsocial" ); ViewData["listafabricante"] = listafabricante; var partners = new PartnerData().ListarPartner(null, null); var listapartners = new SelectList( partners , "idpartner" , "razonsocial" ); ViewData["listapartner"] = listapartners; var modelAtencion = new EvaluacionModel(); if (model.ideva.HasValue) { model.evaluacionrealizada = true; } else { model.evaluacionrealizada = false; } //if (model.idcoti.HasValue) // model.cotizacionrealizada = true; //else // model.cotizacionrealizada = false; if (model.incidenciagarantia) { return(View("IncidenciaGarantia", model)); } else { return(View("IncidenciaSinGarantia", model)); } }
public long Insertar(IncidenciaModel model) { return(IncidenciaData.InsertarActualizarIncidencia(model)); }
public JsonResult AprobarDesaprobarCotizacion(long idcotizacion, string estado, long idordenservicio) { var model = new VentaCotizacionModel(); var modOrdenServicio = new OrdenServicioData().obtenerOrdenServicio(idordenservicio); var modOrdenTrabajo = new OrdenTrabajoModel(); var TrabajoDetalleModel = new OrdenTrabajoDetalleModel(); if (estado == "aprobado") { modOrdenServicio.idestado = (Int32)Constantes.EstadoOrdenServicio.PendienteInicioReparacion; modOrdenServicio.cotizado = true; modOrdenTrabajo.idestado = (Int32)Constantes.EstadoOrdenTrabajo.Asignada; model.aceptado = true; } else if (estado == "rechazado") { modOrdenServicio.idestado = (Int32)Constantes.EstadoOrdenServicio.PendienteEntregaCliente; modOrdenTrabajo.idestado = (Int32)Constantes.EstadoOrdenTrabajo.Completada; model.aceptado = false; } modOrdenServicio.__tipooperacion = 2; modOrdenTrabajo.__tipooperacion = 2; model.__tipooperacion = 2; model.idcotizacion = idcotizacion; modOrdenServicio.idordenserviciotecnico = idordenservicio; modOrdenTrabajo.idordentrabajo = modOrdenServicio.idordentrabajo; new ReparacionesData().InsertarActualizarOrdenTrabajo(modOrdenTrabajo); new VentaData().insertarActualizarCotizacion(model); new OrdenServicioData().InsertarActualizarOrdenServicio(modOrdenServicio); #region registrar reparaciones TarifaModel modTarifa; AlmacenModel modAlmacen; var usuario = UsuariosData.ObtenerUsuario(16); var listadoTotal = VentaData.listarCotizacionDetalle(idordenservicio).ToList(); foreach (var item in listadoTotal) { if (item.descripcion != "Repuesto") { continue; } var modRepuesto = new ProductoData().obtenerProducto(item.idproducto); modAlmacen = new InventarioData().obtenerAlmacen(Constantes.CodAlmacen.Telecom_Repuestos); var existerepuesto = new InventarioData().obtenerInventario(modAlmacen.idalmacen.Value, item.idproducto, 45); #region enviomail StringBuilder sb = new StringBuilder(); sb.Append("<table width='100%' cellpadding='0' cellspacing='0' border='0' dir='ltr' style='font-size:16px;background-color:rgb(227,225,225)'>"); sb.Append("<tbody>"); sb.Append("<tr>"); sb.Append(" <td align='center' valign='top' style='margin:0;padding:40'>"); sb.Append(" <table align='center' border='0' cellspacing='0' cellpadding='0' width='700' bgcolor='#1ab394' style='width:700px;border:1px solid "); sb.Append(" transparent; "); sb.Append("order-radius:13px;margin:auto;background-color:#18a689'>"); sb.Append(" <tbody>"); sb.Append(" <tr>"); sb.Append(" <td>"); sb.Append(" <table cellpadding='0' cellspacing='0' border='0' width='100%'>"); sb.Append(" <tbody>"); sb.Append(" <tr>"); sb.Append(" <td valign='top' align='left' style='padding:0px;margin:0px'>"); sb.Append(" <table cellpadding='0' cellspacing='0' border='0' width='100%'>"); sb.Append(" <tbody>"); sb.Append(" <tr>"); sb.Append(" <td align='left' valign='top'>"); sb.Append(" <table width='100%' border='0' cellpadding='0' cellspacing='0' align='center'>"); sb.Append(" <tbody>"); sb.Append(" <tr>"); sb.Append(" <td align='left' valign='top' style='font-family:Arial,Helvetica,sans-serif;font-size:20px;border-radius:6px"); sb.Append(" color:rgb(' sb.Append('55,255,255)'>"); sb.Append(" <div style='text-align:center'><span style='color:rgb(255,255,255);font-weight:bold'><br></span></div>"); sb.Append(" <div style='text-align:center'><span style='color:rgb(255,255,255);font-weight:bold'>Smartway - SIR Notificaciones"); sb.Append(" </span></div>"); sb.Append(" <div style='text-align:center'><span style='color:rgb(255,255,255);font-weight:bold'><br></span></div>"); sb.Append(" <span style='color:rgb(38,38,38)'></span>"); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" </tbody>"); sb.Append(" </table>"); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" <tr>"); sb.Append(" <td>"); sb.Append(" <table width='100%' border='0' cellpadding='10' cellspacing='10' align='center' bgcolor='white'>"); sb.Append(" <tbody>"); sb.Append(" <tr>"); sb.Append(" <td align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38)"); sb.Append(" font-size:12px;background-color:rgb(255,255,255);width:190px ' colspan='4'> "); sb.Append(" Sr(a). "+ usuario.usr_str_nombre + ' ' + usuario.usr_str_apellidos + ""); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" <tr>"); sb.Append(" <td colspan='10' align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); sb.Append(" font-size:12px;background-color:rgb(255,255,255);width:190px ' colspan='4'>"); sb.Append(" Se le informa que el usuario "+ Usuario.NombreUsuario + " ha realizado una solicitud de respuesto para la reparación de la orden de servicio: " + modOrdenServicio.numeroordenservicio); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" <tr>"); sb.Append(" <td colspan='10' align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); sb.Append(" font-size:14px;font-weight:bold;background-color:rgb(255,255,255)' colspan='4'>"); sb.Append(" <span style='font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38)'>Se ha solicitado el siguiente respuesto.</span> "); sb.Append(""); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" <tr>"); sb.Append(" <td align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); sb.Append("ont-size:12px;background-color:rgb(255,255,255);width:190px'>"); sb.Append(" "+ modRepuesto.codigoproducto); sb.Append(" </td>"); sb.Append(" <td align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); sb.Append("ont-size:12px;background-color:rgb(255,255,255);width:190px'>"); sb.Append(" </td>"); sb.Append(" <td align='left' valign='top' style='padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); sb.Append("ont-size:12px;background-color:rgb(255,255,255);width:190px'>"); sb.Append(" "+ modRepuesto.descripcionlarga); sb.Append(" </td>"); //sb.Append(" < td align = 'left' valign = 'top' style = 'padding:10px;font-family:Arial,Helvetica,sans-serif;color:rgb(38,38,38);"); //sb.Append("ont-size:12px;background-color:rgb(255,255,255);width:190px'>"); //sb.Append(" " + existerepuesto == null ? "" : existerepuesto.serie); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" "); sb.Append(" "); sb.Append(" </tbody>"); sb.Append(" "); sb.Append(" </table>"); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" <tr>"); sb.Append(" <td>"); sb.Append(" "); sb.Append(" </tbody>"); sb.Append(" </table>"); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append(" </tbody>"); sb.Append(" </table>"); sb.Append(" </td>"); sb.Append(" </tr>"); sb.Append("</tbody>"); sb.Append("</table>"); #endregion bool correo = MailHelper.EnviarMail(usuario.usr_str_email, "[Se ha solicitado un repuesto de almacén]", sb.ToString(), true); if (existerepuesto == null) { } else if (existerepuesto.cantidad == 0) { // NO se notifica } else { existerepuesto.cantidad = existerepuesto.cantidad - 1; if (existerepuesto.serie != null || existerepuesto.imei != null) { if (existerepuesto.serie != "" || existerepuesto.imei != "") { existerepuesto.idestado = (Int32)Constantes.Producto.NoDisponible; } else { existerepuesto.idestado = (Int32)Constantes.Producto.Disponible; } } else { existerepuesto.idestado = (Int32)Constantes.Producto.Disponible; } existerepuesto.__idoperacion = 2; new InventarioData().InsertarActualizarInventario(existerepuesto); } var diagnostico = new DiagnosticoData().listarDiagnostico(null, null, null, null, item.iddiagnostico).FirstOrDefault(); var aux = new ReparacionData().listarReparacion(null , null, item.idreparacion).ToList(); var modReparacion = aux.Where(x => x.idreparacion.Value.Equals(item.idreparacion)).FirstOrDefault(); var modIncidencia = new IncidenciaData().ObtenerIncidencia(modOrdenServicio.idincidencia.Value); modTarifa = new AgendamientoData().calcularTarifa( modIncidencia.idtipoproducto , modReparacion.idnivelreparacion , modIncidencia.idpartner); TrabajoDetalleModel = new OrdenTrabajoDetalleModel(); TrabajoDetalleModel.activo = true; TrabajoDetalleModel.costo = modRepuesto.costounitario; TrabajoDetalleModel.diagnostico = diagnostico.descripcion; TrabajoDetalleModel.reparacion = modReparacion.descripcion; TrabajoDetalleModel.repuesto = modRepuesto.descripcionlarga; TrabajoDetalleModel.iddiagnostico = item.iddiagnostico; TrabajoDetalleModel.idrepuesto = item.idproducto; TrabajoDetalleModel.idreparacion = item.idreparacion; TrabajoDetalleModel.costo = modRepuesto.costounitario; TrabajoDetalleModel.descripcion = "Repuesto"; TrabajoDetalleModel.idordentrabajo = modOrdenServicio.idordentrabajo.Value; TrabajoDetalleModel.__idoperacion = 1; TrabajoDetalleModel.servicio = false; if (existerepuesto != null) { TrabajoDetalleModel.idinventario = existerepuesto.idinventario; } var asociado = new ReparacionesData().InsertarActualizarOrdenTrabajoDetalle(TrabajoDetalleModel); if (modTarifa != null) { TrabajoDetalleModel = new OrdenTrabajoDetalleModel(); TrabajoDetalleModel.activo = true; TrabajoDetalleModel.costo = modTarifa.costo.Value; TrabajoDetalleModel.diagnostico = diagnostico.descripcion; TrabajoDetalleModel.reparacion = modReparacion.nivelreparacion; TrabajoDetalleModel.repuesto = ""; TrabajoDetalleModel.iddiagnostico = item.iddiagnostico; TrabajoDetalleModel.idrepuesto = item.idrepuesto; TrabajoDetalleModel.idreparacion = item.idreparacion; TrabajoDetalleModel.descripcion = modReparacion.nivelreparacion; TrabajoDetalleModel.idordentrabajo = modOrdenServicio.idordentrabajo.Value; TrabajoDetalleModel.servicio = true; TrabajoDetalleModel.idservicioasociado = asociado; TrabajoDetalleModel.__idoperacion = 1; new ReparacionesData().InsertarActualizarOrdenTrabajoDetalle(TrabajoDetalleModel); } } // return Json(new { res = true }); #endregion return(Json(new { res = true })); }
public HtmlString BuildRoot(long?idincidencia) { if (idincidencia.HasValue) { var model = new IncidenciaData().ObtenerIncidencia(idincidencia.Value); var Navtag = new TagBuilder("nav"); Navtag.AddCssClass("navbar navbar"); var Divtag = new TagBuilder("div"); Divtag.AddCssClass("container-fluid"); var tag = new TagBuilder("ol"); tag.AddCssClass("nav navbar-nav"); var itemTag = construir_li("MenuIncidencia", "Ver Incidencia", "Agendamiento", "VerIncidencia", idincidencia.ToString(), false, true); tag.InnerHtml += itemTag.ToString(); if (model.idetapa == 1) { if (model.requiereevaluacion) { var itemTag2 = construir_li("MenuEvaluacion", "Evaluación de Garantía", "Evaluacion", "AtencionEvaluacion", idincidencia.ToString(), true, true); tag.InnerHtml += itemTag2.ToString(); var itemTab3 = construir_li("MenuPropuesta", "Propuesta", "Propuesta", "Propuesta", idincidencia.ToString(), true, false); tag.InnerHtml += itemTab3.ToString(); var itemTag5 = construir_li("MenuEstadoFisico", "Estado Físico", "Agendamiento", "EstadoFisico", idincidencia.ToString(), true, false); tag.InnerHtml += itemTag5.ToString(); } else { var itemTab3 = construir_li("MenuPropuesta", "Propuesta", "Propuesta", "Propuesta?idincidencia=", idincidencia.ToString(), true, true); tag.InnerHtml += itemTab3.ToString(); var itemTag5 = construir_li("MenuEstadoFisico", "Estado Físico", "Agendamiento", "EstadoFisico", idincidencia.ToString(), true, false); tag.InnerHtml += itemTag5.ToString(); } } else if (model.idetapa == 2) { if (model.requiereevaluacion) { var itemTag2 = construir_li("MenuEvaluacion", "Evaluación de Garantía", "Evaluacion", "AtencionEvaluacion", idincidencia.ToString(), false, true); tag.InnerHtml += itemTag2.ToString(); } var itemTab3 = construir_li("MenuPropuesta", "Propuesta", "Propuesta", "Propuesta", idincidencia.ToString(), true, true); tag.InnerHtml += itemTab3.ToString(); //var itemTag4 = construir_li("MenuCotizar", "Cotizacion", "/Agendamiento/Cotizacion/CotizarIncidencia?idincidencia=" + idincidencia, true, false); //tag.InnerHtml += itemTag4.ToString(); var itemTag5 = construir_li("MenuEstadoFisico", "Estado Físico", "Agendamiento", "EstadoFisico", idincidencia.ToString(), true, false); tag.InnerHtml += itemTag5.ToString(); } else if (model.idetapa == 3) { if (model.requiereevaluacion) { var itemTag2 = construir_li("MenuEvaluacion", "Evaluación de Garantía", "Evaluacion", "AtencionEvaluacion", idincidencia.ToString(), false, true); tag.InnerHtml += itemTag2.ToString(); } var itemTab3 = construir_li("MenuPropuesta", "Propuesta", "Propuesta", "Propuesta", idincidencia.ToString(), false, true); tag.InnerHtml += itemTab3.ToString(); //var itemTag4 = construir_li("MenuCotizar", "Cotizacion", "/Agendamiento/Cotizacion/CotizarIncidencia?idincidencia=" + idincidencia, true, true); //tag.InnerHtml += itemTag4.ToString(); var itemTag5 = construir_li("MenuEstadoFisico", "Estado Físico", "Agendamiento", "EstadoFisico", idincidencia.ToString(), true, true); tag.InnerHtml += itemTag5.ToString(); } else if (model.idetapa == 4) { if (model.requiereevaluacion) { var itemTag2 = construir_li("MenuEvaluacion", "Evaluación de Garantía", "Evaluacion", "AtencionEvaluacion", idincidencia.ToString(), false, true); tag.InnerHtml += itemTag2.ToString(); } var itemTab3 = construir_li("MenuPropuesta", "Propuesta", "Propuesta", "Propuesta", idincidencia.ToString(), false, true); tag.InnerHtml += itemTab3.ToString(); //var itemTag4 = construir_li("MenuCotizar", "Cotizacion", "/Agendamiento/Cotizacion/CotizarIncidencia?idincidencia=" + idincidencia, false, true); //tag.InnerHtml += itemTag4.ToString(); var itemTag5 = construir_li("MenuEstadoFisico", "Estado Físico", "Agendamiento", "EstadoFisico", idincidencia.ToString(), false, true); tag.InnerHtml += itemTag5.ToString(); } Divtag.InnerHtml += tag.ToString(); Navtag.InnerHtml += Divtag.ToString(); return(new MvcHtmlString(Navtag.ToString())); } else { var tag = new TagBuilder("ul"); tag.Attributes.Add("id", "ulestado"); tag.AddCssClass("nav nav-pills nav-stacked"); var itemTag = new TagBuilder("li"); var linkTag = new TagBuilder("a"); linkTag.InnerHtml = "Ver Incidencia" + " <span class='badge'>" + "Activo" + "</span>"; //linkTag.Attributes.Add("href", @Url.Action("VerIncidencia", "Agendamiento", new { idincidencia = @Model.idincidencia }", 1)); itemTag.Attributes.Add("id", "MenuIncidencia"); itemTag.InnerHtml = linkTag.ToString(); tag.InnerHtml += itemTag.ToString(); return(new MvcHtmlString(tag.ToString())); } }
public JsonResult realizarEvaluacion(EvaluacionModel modelo) { var dataIncidencia = new IncidenciaData(); var modevaluacion = new EvaluacionModel(); List <PropuestaModel> propuestas = new List <PropuestaModel>(); var modIncidencia = dataIncidencia.ObtenerIncidencia(modelo.idincidencia.Value); var ListaCondiciones = dataIncidencia.ListarCondiciones(modIncidencia.idtipoproducto, modIncidencia.idfabricante).ToList(); modelo.Evaluacion = true; //new AgendamientoData().eliminarEvaluacionPrevia(modelo.idincidencia); foreach (var item in modelo.ListaCondiciones) { var res = false; if (item.activo == null) { return(Json(res)); } modevaluacion.idincidencia = modelo.idincidencia; modevaluacion.idcondicion = item.idcondicion; modevaluacion.valor = item.activo.Value; modevaluacion.idusuarioregistro = Usuario.Idusuario; modevaluacion.fechahoraregistro = DateTime.Now; new AgendamientoData().insertarIncidenciaEvaluacion(modevaluacion); //modevaluacion = new EvaluacionModel(); var comparer = ListaCondiciones.Where(x => x.idcondicion.Equals(item.idcondicion)).Single().valor; if (!item.activo.Value == comparer) { modelo.Evaluacion = false; } } modIncidencia.__tipooperacion = 2; if (!modelo.Evaluacion) { modIncidencia.engarantia = false; } else { modIncidencia.engarantia = true; } modIncidencia.idetapa = (Int32)Constantes.Etapa.Evaluacion; new IncidenciaData().insertarActualizarIncidencia(modIncidencia); //var listadopropuesta = new SelectList( // propuestas, "idpropuesta", "descripcion"); //ViewData["ListaPropuestasEvaluacion"] = listadopropuesta; return(Json(new { res = true })); //PartialView("_EvaluacionIncidencia", modelo); }
public ActionResult Propuesta(long idincidencia) { var modeloSolucion = new SolucionModel(); var dataIncidencia = new IncidenciaData(); List <PropuestaModel> propuestas = new List <PropuestaModel>(); var modIncidencia = dataIncidencia.ObtenerIncidencia(idincidencia); propuestas = new IncidenciaData().listarPropuestaSolucion((int)Constantes.TipoGarantia.SinGarantia).ToList(); modeloSolucion.idincidencia = modIncidencia.idincidencia; modeloSolucion.anioincidencia = modIncidencia.anioincidencia; modeloSolucion.numeroincidencia = modIncidencia.numeroincidencia; modeloSolucion.requiereevaluacion = modIncidencia.requiereevaluacion; modeloSolucion.evaluacion = modIncidencia.evaluacionrealizada; modeloSolucion.falla = modIncidencia.falla; modeloSolucion.producto = modIncidencia.producto; modeloSolucion.requerimientocliente = modIncidencia.requerimientocliente; modeloSolucion.codigoproducto = modIncidencia.codigoproducto; modeloSolucion.idrequerimientocliente = modIncidencia.idrequerimientocliente; modeloSolucion.incidenciagarantia = modIncidencia.incidenciagarantia; modeloSolucion.idordenserviciotecnico = modIncidencia.idordenserviciotecnico; modeloSolucion.idpropuesta = modIncidencia.idpropuesta; modeloSolucion.idincidenciasolucion = modIncidencia.idincidenciasolucion; if (modIncidencia.engarantia) { if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.Cliente)) { modeloSolucion.garantia = "Con garantía de Cliente"; } else if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.DAP)) { modeloSolucion.garantia = "Con garantía DAP"; } else if (modIncidencia.idtipogarantia == (Int32)(Constantes.TipoGarantia.SinGarantia)) { modeloSolucion.garantia = "Fuera de Garantía"; } } else { modeloSolucion.garantia = "Fuera de Garantía"; } //if (modelo.Evaluacion) //{ if (modIncidencia.engarantia) { propuestas = new IncidenciaData().listarPropuestaSolucion(modIncidencia.idtipogarantia.Value).ToList(); modeloSolucion.resultadoevaluacion = "Procede por políticas de garantía"; modeloSolucion.engarantia = true; } else { propuestas = new IncidenciaData().listarPropuestaSolucion((int)Constantes.TipoGarantia.SinGarantia).ToList(); modeloSolucion.resultadoevaluacion = "El equipo no está dentro de la garantía."; modeloSolucion.engarantia = false;; } //} //else //{ // propuestas = new IncidenciaData().listarPropuestaSolucion((int)Constantes.TipoGarantia.SinGarantia).ToList(); // modelo.ResultadoEvaluacion = "No procede por políticas de garantía."; // modelo.engarantia = false; ; //} var listadopropuesta = new SelectList( propuestas, "idpropuesta", "descripcion"); ViewData["ListaEstadosPropuestas"] = listadopropuesta; modeloSolucion.observacion = modIncidencia.observacionsolucion; // modeloSolucion.idincidenciasolucion = modIncidencia.idincidenciasolucion; ViewData["ListaPropuestasEvaluacion"] = listadopropuesta; return(View(modeloSolucion)); }
public JsonResult RegistrarPropuesta(SolucionModel model) { //obtener propuesta individual (genera documentos) var propuesta = new AgendamientoData().obtenerPropuesta(model.idpropuesta.Value); //registrar propuesta en incidencia var modelincidencia = new IncidenciaModel(); modelincidencia.idincidencia = model.idincidencia; modelincidencia.engarantia = model.engarantia; //var model = new SolucionModel(); model.fechahoraregistro = DateTime.Now; model.idusuarioregistro = Usuario.Idusuario; model.clientesatisfecho = true; if (propuesta.requiereaprobacion) { model.idestado = (Int32)Constantes.SolucionIncidentes.PendienteAprobacion; //enviar correo } else if (propuesta.idpropuesta == (int)Constantes.Propuesta.rechazada) { var modIncidencia = new IncidenciaData().ObtenerIncidencia(model.idincidencia.Value); modIncidencia.__tipooperacion = 3;// cambiar estado modIncidencia.idestado = (int)(Constantes.EstadoIncidencia.Cerrada); var result = new IncidenciaData().insertarActualizarIncidencia(modIncidencia); model.idestado = (Int32)Constantes.SolucionIncidentes.Rechazada; } else { model.idestado = (Int32)Constantes.SolucionIncidentes.Aprobada; } model.idpropuesta = model.idpropuesta; var idincidenciasolucion = new AgendamientoData().insertarIncidenciaSolucion(model); if (idincidenciasolucion > 0) { modelincidencia.__tipooperacion = 3; //Propuesta Solucion modelincidencia.idetapa = (Int32)Constantes.Etapa.Propuesta; new IncidenciaData().insertarActualizarIncidencia(modelincidencia); if (propuesta.requierecotizacion) { return(Json(new { res = true, cotizacion = true, idincidencia = (model.idincidencia.Value) })); } } return(Json(new { res = true, finalizar = true })); }
public bool ActualizarIncidencias(Collection <Incidencia> incidencias) { ICollectionWrite <Incidencia> writer = new IncidenciaData(); return(writer.WriteCollection(incidencias)); }