public JsonResult registrarCotizacion(int?idsucursalreparacion, long?idordentrabajo) { var model = new VentaCotizacionModel(); var modelDetalle = new VentaCotizacionDetalleModel(); var listadoactual = (List <VentaCotizacionDetalleModel>)Session["CotizacionDetalleModel"]; var modOrdenTrabajo = new ReparacionesData().obtenerOrdenTrabajo(idordentrabajo.Value); var modOrdenServicio = new OrdenServicioData().obtenerOrdenServicio(modOrdenTrabajo.idordenserviciotecnico.Value); model.fechahoraregistro = DateTime.Now; model.idusuarioregistro = Usuario.Idusuario; model.idsucursal = idsucursalreparacion.Value; model.idordenservicio = modOrdenTrabajo.idordenserviciotecnico.Value; model.idcliente = modOrdenServicio.idcliente; model.idmoneda = 8; model.str_total = (Convert.ToDecimal(listadoactual.Sum(x => x.costototal).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.total = Convert.ToDecimal(model.str_total); model.subtotal = Convert.ToDecimal(model.str_subtotal); model.igv = Convert.ToDecimal(model.str_igv); model.generoventa = false; model.__tipooperacion = 1; var idcotizacion = new VentaData().insertarActualizarCotizacion(model); foreach (var item in listadoactual) { modelDetalle = new VentaCotizacionDetalleModel(); modelDetalle.idcotizacion = idcotizacion; modelDetalle.costototal = item.costototal; modelDetalle.iddiagnostico = item.iddiagnostico; modelDetalle.descripcion = item.descripcion; modelDetalle.idreparacion = item.idreparacion; modelDetalle.idproducto = item.idrepuesto; new VentaData().insertarActualizarDetalleCotizacion(modelDetalle); #region registrar_reparacion //var modelReparacionDetalle = new OrdenTrabajoDetalleModel(); //modelReparacionDetalle.costo = item.costototal; //modelReparacionDetalle.descripcion = item.descripcion; //modelReparacionDetalle.iddiagnostico = item.iddiagnostico; //modelReparacionDetalle.idreparacion = item.idreparacion; //modelReparacionDetalle.idrepuesto = item.idrepuesto; //modelReparacionDetalle.idordentrabajo = idordentrabajo.Value; //modelReparacionDetalle.__idoperacion = 1; //new ReparacionesData().InsertarActualizarOrdenTrabajoDetalle(modelReparacionDetalle); #endregion } modOrdenServicio.idestado = (Int32)Constantes.EstadoOrdenServicio.EnEsperaRespuestaCliente; modOrdenServicio.__tipooperacion = 2; new OrdenServicioData().InsertarActualizarOrdenServicio(modOrdenServicio); //modOrdenTrabajo.idusuarioregistro = Usuario.Idusuario; //modOrdenTrabajo.numeroordentrabajo = "100-0000067661"; //modOrdenTrabajo.fechahoraregistro = DateTime.Now; modOrdenTrabajo.idestado = (Int32)Constantes.EstadoOrdenTrabajo.CotizacionCompleta; modOrdenTrabajo.__tipooperacion = 2; new ReparacionesData().InsertarActualizarOrdenTrabajo(modOrdenTrabajo); return(Json(new { res = true })); }