public JsonResult AgregarIncidente(IncidenciaModel model) { model.fecharegistro = DateTime.Now; model.idusuarioregistro = Convert.ToInt32(Usuario.Idusuario); if (model.horaincidencia != null) { var hm = model.horaincidencia.Split(':'); TimeSpan ts = new TimeSpan(Convert.ToInt32(hm[0]), Convert.ToInt32(hm[1]), 0); model.fechaincidencia = model.fechaincidencia.Date + ts; } else { model.fechaincidencia = DateTime.Now; } model.idusuarioregistro = Convert.ToInt32(Usuario.Idusuario); model.fecharegistro = DateTime.Now; DataAccess.Liquidacion.LiquidacionData.InsertarIncidencia(model); var jsonres = new { res = true, msj = "Se registró con éxito.", titulo = "Registro exitoso " }; return(Json(jsonres, JsonRequestBehavior.AllowGet)); }
public static long InsertarActualizarIncidenciaIndividual(IncidenciaModel model) { Mapper.CreateMap <IncidenciaModel, InsertarActualizarIncidenteCommand>(); var command = Mapper.Map <IncidenciaModel, InsertarActualizarIncidenteCommand>(model); var result = (InsertarActualizarIncidenteOutput)command.Execute(); return(result.idincidencia); }
public static long InsertarIncidencia(IncidenciaModel model) { Mapper.CreateMap <IncidenciaModel, InsertarActualizarIncidenteCommand>(); var comando = Mapper.Map <IncidenciaModel, InsertarActualizarIncidenteCommand>(model); var incidente = (InsertarActualizarIncidenteOutput)comando.Execute(); return(incidente.idincidencia); }
public IncidenciaModel insertarActualizarIncidencia(IncidenciaModel model) { Mapper.CreateMap <IncidenciaModel, InsertarActualizarIncidenciaCommand>(); var command = Mapper.Map <IncidenciaModel, InsertarActualizarIncidenciaCommand>(model); var resp = (InsertarActualizarIncidenciaOutput)command.Execute(); model.numeroincidencia = resp.numeroincidencia; model.idincidencia = resp.idincidencia; return(model); }
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 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 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 ActionResult RegistroNuevaIncidencia(IncidenciaModel model) { Session["DetalleComprobanteModel"] = null; var perfiles = Usuario.Perfiles; #region autorizacion var autorizar = perfiles.Where(x => x.IdPerfil.Equals (Convert.ToInt32(Constantes.Perfil.Admin))).SingleOrDefault(); if (autorizar != null) { var sucursal = new SucursalData().ListarSucursal("", "", null, Usuario.idpartner); var listasucursal = new SelectList( sucursal, "idsucursal", "nombre"); ViewData["listasucursal"] = listasucursal; model.editarsucursal = true; model.idsucursal = Usuario.idsucursal; model.idpartner = Usuario.idpartner; } else { model.idpartner = Usuario.idpartner; model.idsucursal = Usuario.idsucursal; } #endregion 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 falla = new FallaData().listarFalla(null, null); var listafalla = new SelectList(falla, "idfalla", "descripcion"); ViewData["listafalla"] = listafalla; // MantenimientoData.GetListarValoresxTabla((Int32)Constantes.MaestroTablas.Sintoma); 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 partners = new PartnerData().ListarPartner(null, null); var listapartners = new SelectList( partners , "idpartner" , "razonsocial" ); ViewData["listapartner"] = listapartners; model.fechahoraregistro = DateTime.Now; #region RedireccionPantallas if (model.idtiposolucion == (Int32)Constantes.TipoSolucion.LibroReclamaciones) { model.libroactivo = true; } model.editar = true; if (model.engarantia) { model.incidenciagarantia = true; return(View("IncidenciaGarantia", model)); } else { model.incidenciagarantia = false; return(View("IncidenciaSinGarantia", model)); } #endregion RedireccionPantallas }
public OrdenServicioModel GenerarOrdenServicio(long idincidencia, int idestado, IncidenciaModel ModIncidencia) { var modOrdenServicio = new OrdenServicioModel(); var producto = new InventarioData().obtenerProductoInventario(ModIncidencia.idproducto , ModIncidencia.serie , ModIncidencia.imei ); modOrdenServicio.idinventario = producto.idinventario; modOrdenServicio.cambioproducto = false; modOrdenServicio.fechahoraregistro = DateTime.Now; modOrdenServicio.idestado = idestado; modOrdenServicio.idusuario = Usuario.Idusuario; modOrdenServicio.idcliente = ModIncidencia.idcliente; modOrdenServicio.idincidencia = idincidencia; modOrdenServicio.idtipoordenservicio = (Int32)Constantes.tipoordenservicio.ost; modOrdenServicio.activo = true; modOrdenServicio.cotizado = false; modOrdenServicio.idproducto = ModIncidencia.idproducto; modOrdenServicio.engarantia = ModIncidencia.engarantia; modOrdenServicio.serie = ModIncidencia.serie; modOrdenServicio.imei = ModIncidencia.imei; modOrdenServicio.idsucursaldestino = ModIncidencia.idsucursaldestino.Value; modOrdenServicio.idsucursalorigen = ModIncidencia.idsucursal; modOrdenServicio.iddirecciondelivery = ModIncidencia.iddirecciondelivery; if (modOrdenServicio.iddirecciondelivery != null) { modOrdenServicio.delivery = true; } else { modOrdenServicio.delivery = false; } return(new OrdenServicioData().InsertarActualizarOrdenServicio(modOrdenServicio)); }
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 static long InsertarActualizarIncidencia(IncidenciaModel model) { string[] ordenes = model.idsorden.Split(','); InsertarIncidenciaParameterDto param; InsertarIncidenciaParameter parameters = new InsertarIncidenciaParameter(); parameters.Hits = new List <InsertarIncidenciaParameterDto>(); foreach (var item in ordenes) { param = new InsertarIncidenciaParameterDto(); param.descripcion = model.descripcion; param.fechaincidencia = model.fechaincidencia; param.fecharegistro = model.fecharegistro; param.idordentrabajo = Convert.ToInt64(item); param.idusuarioregistro = model.idusuarioregistro; param.activo = model.activo; param.observacion = model.observacion; param.idmaestroincidencia = model.idmaestroincidencia; param.recurso = model.recurso; param.documento = model.documento; parameters.Hits.Add(param); } parameters.Execute(); return(1); //bool existemasivo = false; //if (model.idmanifiesto == null || model.idmanifiesto == 0) //{ // var entrega = MonitoreoData.GetListarMaestroIncidente(null).SingleOrDefault(); // bool existe = (incidencias.Where(x => x.idmaestroincidencia.Equals(model.idmaestroincidencia)).SingleOrDefault() != null); // if (existe) // return -1; // Mapper.CreateMap<IncidenciaModel, InsertarActualizarIncidenteCommand>(); // var comando = Mapper.Map<IncidenciaModel, InsertarActualizarIncidenteCommand>(model); // //Actualiza estado de la orden // // if(model.idmaestroincidencia) // if (entrega != null) // { // if (entrega.tipo == "E") // if (incidencias.Where(x => x.tipo.Equals('E')).SingleOrDefault() != null) // return -1; // DataAccess.Seguimiento.SeguimientoData.ActualizarEstadoOT(model.idordentrabajo.Value // , Convert.ToInt32(DataAccess.Constantes.EstadoOT.PendienteRetornoDocumentario)); // } // var incidente = (InsertarActualizarIncidenteOutput)comando.Execute(); // return incidente.idincidencia; //} //else //{ // var ordenes = DataAccess.Monitoreo.MonitoreoData.GetListarOrdenesxManifiesto(model.idmanifiesto.Value); // foreach (var item in ordenes) // { // var incidencias = DataAccess.Monitoreo.MonitoreoData.GetListarDetalleMonitoreoOperaciones(item.idordentrabajo).OrderByDescending(x => x.fechainicio).ToList(); // var entrega = MonitoreoData.GetListarMaestroIncidente(null).SingleOrDefault(); // bool existe = (incidencias.Where(x => x.idmaestroincidencia.Equals(model.idmaestroincidencia)).SingleOrDefault() != null); // if (existe) // { // existemasivo = true; // continue; // } // try // { // if (entrega.tipo == "E") // if (incidencias.Where(x => x.tipo == "E").SingleOrDefault() != null) // { // existemasivo = true; // continue; // } // } // catch (Exception) // { // throw; // } // var comando = new InsertarActualizarIncidenteCommand(); // if (model.idincidente == 0) // model.idincidente = null; // comando.idincidencia = model.idincidente; // comando.descripcion = model.descripcion; // var hm = model.horaincidencia.Split(':'); // TimeSpan ts = new TimeSpan(Convert.ToInt32(hm[0]), Convert.ToInt32(hm[1]), 0); // comando.fechainicio = model.fechaincidencia.Value.Date + ts; // comando.fecharegistro = model.fecharegistro; // comando.recurso = model.recurso; // comando.documento = model.documento; // comando.idmaestroincidencia = model.idmaestroincidencia; // comando.idordentrabajo = item.idordentrabajo.Value; // comando.usuarioregistro = model.usuarioregistro; // comando.visible = model.visible; // comando.Execute(); // //Actualiza estado de la orden // if (entrega != null) // { // DataAccess.Seguimiento.SeguimientoData.ActualizarEstadoOT(item.idordentrabajo.Value // , Convert.ToInt32(DataAccess.Constantes.EstadoOT.PendienteRetornoDocumentario)); // } // } // if (existemasivo == true) // return -2; // else return 1; //} }