private void crearAcuerdo() { VIEW_CLIENTE cliente = new VIEW_CLIENTE(); cliente.TIPO_DOCUMENTO = ((TIPO_DOCUMENTO)cmbTipoDocumento.SelectedItem).TIPO; cliente.IDENTIFICACION = txtIdentificacion.Text.Trim(); cliente = serviciosVIEW_CLIENTE.buscarPrimeroVIEW_CLIENTE(cliente); if (cliente != null && cliente.ID > 0) { frmBuscarLiquidacion frm = new frmBuscarLiquidacion(cliente); frm.ShowDialog(this); buscarAcuerdos(); } else { MessageBox.Show("No se encontró el cliente", "Sin cliente", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void liquidar() { try { frmTipoLiquidacion frm = new frmTipoLiquidacion(); if (frm.ShowDialog(this) == DialogResult.Yes)//Pago total { wsServiciosLIQUIDACION.LIQUIDACION_DETALLE[] lstDetalles = new wsServiciosLIQUIDACION.LIQUIDACION_DETALLE[grdDatos.Rows.Count]; if (grdDatos.Rows != null && grdDatos.Rows.Count > 0 && myCliente != null && myCliente.ID > 0) { for (int i = 0; i < grdDatos.Rows.Count; i++) { wsServiciosLIQUIDACION.LIQUIDACION_DETALLE detalle = new wsServiciosLIQUIDACION.LIQUIDACION_DETALLE(); detalle.ID_TARIFA_DETALLE = int.Parse(grdDatos.Rows[i].Cells["ID_TARIFADETALLE"].Value.ToString()); detalle.VALOR_CONCEPTO = float.Parse(grdDatos.Rows[i].Cells["VALOR"].Value.ToString()); lstDetalles[i] = detalle; } wsServiciosLIQUIDACION.LIQUIDACION liquidacion = new wsServiciosLIQUIDACION.LIQUIDACION(); liquidacion.ID_CLIENTE = myCliente.ID; TIPO_LIQUIDACION tipo = new TIPO_LIQUIDACION(); tipo.TIPO = "PT"; tipo = serviciosTIPO_LIQUIDACION.buscarPrimeroTIPO_LIQUIDACION(tipo); if (tipo != null && tipo.ID > 0) { liquidacion.ID_TIPO_LIQUIDACION = tipo.ID; } liquidacion.TOTAL = total; wsServiciosLIQUIDACION.VIEW_CLIENTE tmpCliente = new wsServiciosLIQUIDACION.VIEW_CLIENTE(); tmpCliente.ID = myCliente.ID; tmpCliente.TIPO_DOCUMENTO = myCliente.TIPO_DOCUMENTO; tmpCliente.IDENTIFICACION = myCliente.IDENTIFICACION; tmpCliente.NOMBRES = myCliente.NOMBRES; tmpCliente.APELLIDOS = myCliente.APELLIDOS; tmpCliente.DIRECCION = myCliente.DIRECCION; tmpCliente.CIUDAD = myCliente.CIUDAD; tmpCliente.DEPARTAMENTO = myCliente.DEPARTAMENTO; tmpCliente.GENERO = myCliente.GENERO; tmpCliente.TELEFONO = myCliente.TELEFONO; tmpCliente.CELULAR = myCliente.CELULAR; tmpCliente.CORREO = myCliente.CORREO; tmpCliente.FECHA_NACIMIENTO = myCliente.FECHA_NACIMIENTO; liquidacion = serviciosLIQUIDACION.crearMultipleLIQUIDACION_2(liquidacion, lstDetalles, tmpCliente); if (liquidacion != null && liquidacion.ID > 0) { WSServiciosRECIBO.ServiciosRECIBO servicio = new WSServiciosRECIBO.ServiciosRECIBO(); var liquidacionSerializado = JsonConvert.SerializeObject(liquidacion); WSServiciosRECIBO.LIQUIDACION liquidacionDesserializado = JsonConvert.DeserializeObject <WSServiciosRECIBO.LIQUIDACION> (liquidacionSerializado); WSServiciosRECIBO.LIQUIDACION_DETALLE[] lstLiquidacionDetalle = new WSServiciosRECIBO.LIQUIDACION_DETALLE[lstDetalles.Length]; int i = 0; foreach (wsServiciosLIQUIDACION.LIQUIDACION_DETALLE item in lstDetalles) { var detalleSerializado = JsonConvert.SerializeObject(item); WSServiciosRECIBO.LIQUIDACION_DETALLE detalleDesserializado = JsonConvert.DeserializeObject <WSServiciosRECIBO.LIQUIDACION_DETALLE>(detalleSerializado); lstLiquidacionDetalle[i] = detalleDesserializado; i++; } var clienteSerializado = JsonConvert.SerializeObject(tmpCliente); WSServiciosRECIBO.VIEW_CLIENTE clienteDesserializado = JsonConvert.DeserializeObject <WSServiciosRECIBO.VIEW_CLIENTE>(clienteSerializado); recibo = servicio.generarRECIBO(liquidacionDesserializado, lstLiquidacionDetalle, clienteDesserializado); if (recibo != null && recibo.ID > 0) { btnLiquidar.Enabled = false; lblNumRecibo.Text = recibo.NUMERO_RECIBO; btnVerRecibo.Enabled = true; MessageBox.Show("Liquidación realizada correctamente", "Liquidación correcta", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { btnLiquidar.Enabled = true; lblNumRecibo.Text = "#"; btnVerRecibo.Enabled = false; MessageBox.Show("Ocurrio algún problema y la liquidación fue incorrecta", "Liquidación incorrecta", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Ocurrio un error desconocido y la liquidación no se realizó correctamente", "Liquidación incorrecta", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else//Acuerdo Pago { wsServiciosLIQUIDACION.LIQUIDACION_DETALLE[] lstDetalles = new wsServiciosLIQUIDACION.LIQUIDACION_DETALLE[grdDatos.Rows.Count]; if (grdDatos.Rows != null && grdDatos.Rows.Count > 0 && myCliente != null && myCliente.ID > 0) { for (int i = 0; i < grdDatos.Rows.Count; i++) { wsServiciosLIQUIDACION.LIQUIDACION_DETALLE detalle = new wsServiciosLIQUIDACION.LIQUIDACION_DETALLE(); detalle.ID_TARIFA_DETALLE = int.Parse(grdDatos.Rows[i].Cells["ID_TARIFADETALLE"].Value.ToString()); detalle.VALOR_CONCEPTO = float.Parse(grdDatos.Rows[i].Cells["VALOR"].Value.ToString()); lstDetalles[i] = detalle; } wsServiciosLIQUIDACION.LIQUIDACION liquidacion = new wsServiciosLIQUIDACION.LIQUIDACION(); liquidacion.ID_CLIENTE = myCliente.ID; TIPO_LIQUIDACION tipo = new TIPO_LIQUIDACION(); tipo.TIPO = "AP"; tipo = serviciosTIPO_LIQUIDACION.buscarPrimeroTIPO_LIQUIDACION(tipo); if (tipo != null && tipo.ID > 0) { liquidacion.ID_TIPO_LIQUIDACION = tipo.ID; } liquidacion.TOTAL = total; wsServiciosLIQUIDACION.VIEW_CLIENTE tmpCliente = new wsServiciosLIQUIDACION.VIEW_CLIENTE(); tmpCliente.ID = myCliente.ID; tmpCliente.TIPO_DOCUMENTO = myCliente.TIPO_DOCUMENTO; tmpCliente.IDENTIFICACION = myCliente.IDENTIFICACION; tmpCliente.NOMBRES = myCliente.NOMBRES; tmpCliente.APELLIDOS = myCliente.APELLIDOS; tmpCliente.DIRECCION = myCliente.DIRECCION; tmpCliente.CIUDAD = myCliente.CIUDAD; tmpCliente.DEPARTAMENTO = myCliente.DEPARTAMENTO; tmpCliente.GENERO = myCliente.GENERO; tmpCliente.TELEFONO = myCliente.TELEFONO; tmpCliente.CELULAR = myCliente.CELULAR; tmpCliente.CORREO = myCliente.CORREO; tmpCliente.FECHA_NACIMIENTO = myCliente.FECHA_NACIMIENTO; liquidacion = serviciosLIQUIDACION.crearMultipleLIQUIDACION_2(liquidacion, lstDetalles, tmpCliente); if (liquidacion != null && liquidacion.ID > 0) { frmBuscarLiquidacion buscarLiquidacion = new frmBuscarLiquidacion(myCliente); buscarLiquidacion.ShowDialog(this); } else { MessageBox.Show("Ocurrio un error desconocido y la liquidación no se realizó correctamente", "Liquidación incorrecta", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } catch (Exception exp) { } }