public void Approve(int userId, int userDestinoId, string obs) { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pedidos.PedidoId.ToString(), userId)) { WFWorkflow.EnviarMensaje(WS.Eventos.SOLICITUD_APROBADA, WorkflowId, Pedidos.PedidoId, userDestinoId, obs); } }
public void Revise(int userId, int userDestinoId, string obs) { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pedidos.PedidoId.ToString(), userId)) { WFWorkflow.EnviarMensaje(WS.Eventos.RECHAZADO_PARCIAL, WorkflowId, Pedidos.PedidoId, userDestinoId, obs); } }
public void Send(int userId, int userDestinoId, string obs) { if (Save(userId) > 0) { // status 11 es Por corregir, esto ocurre si es devuelto el formulario pues hay que volverlo a enviar if (Pagos.StatusId == 11) { if (!WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pagos.PagoId.ToString(), userId) || !WFWorkflow.EnviarMensaje(WS.Eventos.SOLICITUD_CORREGIDA, WorkflowId, Pagos.PagoId, userDestinoId, obs, "PAGOS")) { //lblError.Text = ESMensajes.ObtenerMensaje(425); return; } } else // se está enviando por primera vez el formulario { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pagos.PagoId.ToString(), userId) && WFWorkflow.EnviarMensaje(WS.Eventos.CREAR_SOLICITUD, WorkflowId, Pagos.PagoId, userId, userDestinoId, "PAGOS")) { WFWorkflow.EnviarMensaje(WS.Eventos.INCLUIR_SOLICITUD, WorkflowId, Pagos.PagoId, userDestinoId, obs); } else { //lblError.Text = ESMensajes.ObtenerMensaje(425); return; } } } }
public int Save(int userId) { pedido = pedido ?? new WFSublimacionPedidos(); pedido.TipoTransId = 1; // 1 el cliente está realizando un abono pedido.MotivoId = int.Parse(ddlTipoTransaccion.SelectedValue); pedido.EmpleadoId = userId; // _usuarioLogueado pedido.CentroId = 1; // 1 es Caracas, San Martín pedido.NumTrans = txtNroTransaccion.Text; pedido.IvaAplicable = 0.12m; pedido.MontoTotal = Convert.ToDecimal(txtMonto.Text); pedido.FechaTrans = Convert.ToDateTime(txtCalendario.Text); pedido.FechaActual = DateTime.Now; pedido.FechaDeEntrega = DiasDeEntrega(DateTime.Now); pedido.Observaciones = txtObservaciones.Text; WFSublimacionPedidos.InsertarPedido(pedido); if (pedido.TransId > 0 && pedido.EstatusId == 0) { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionTrans, pedido.TransId.ToString(), userId)) { WFWorkflow.EnviarMensaje(WS.Eventos.CREAR_SOLICITUD, WorkflowId, pedido.TransId, userId, userId); } } return(pedido.TransId); }
private void CargarDocumentos() { int intCodModulo = ((WFModulo)arrModulos[Modulo]).intCodModulo; ddlDocumento.DataSource = WFWorkflow.ListarWorkflows(intCodModulo); ddlDocumento.DataValueField = "Id"; ddlDocumento.DataTextField = "Name"; ddlDocumento.DataBind(); int Id = ((WFWorkflow)WFWorkflow.ListarWorkflows(intCodModulo)[Documento]).Id; WorkflowId = Id == 0 ? -1 : Id; txtDescription.Text = ((WFWorkflow)WFWorkflow.ListarWorkflows(intCodModulo)[Documento]).Description; ddlDocumento.SelectedIndex = Documento; //if(Documento != 0) //{ // Label lblError = (Label)Page.FindControl("lblError"); // lblError.Visible = false; //} Label lblNombre = (Label)Global.FindMyControl(Page, "lblNombre"); lblNombre.Text = ((WFWorkflow)WFWorkflow.ListarWorkflows(intCodModulo)[Documento]).Name; }
private void CargarDocumentos() { ddlTipoDocumento.DataSource = WFWorkflow.ListarWorkflows(Convert.ToInt32(ddlModulo.SelectedValue)); ddlTipoDocumento.DataValueField = "Id"; ddlTipoDocumento.DataTextField = "Name"; ddlTipoDocumento.DataBind(); }
private void CargarWorkFlow() { if (Convert.ToInt32(ddlModulo.SelectedValue) > 0) { ddlWorkFlow.DataSource = WFWorkflow.ListarWorkflows(Convert.ToInt32(ddlModulo.SelectedValue)); ddlWorkFlow.DataValueField = "Id"; ddlWorkFlow.DataTextField = "Name"; ddlWorkFlow.DataBind(); } }
private void CargarWFInicial() { ArrayList arrWF = new ArrayList(); WFWorkflow objInicial = new WFWorkflow(0, 0, "[Seleccione]", ""); arrWF.Insert(0, objInicial); ddlWorkFlow.DataSource = arrWF; ddlWorkFlow.DataValueField = "Id"; ddlWorkFlow.DataTextField = "Name"; ddlWorkFlow.DataBind(); }
public int Save(int userId) { string strData = "<root>"; strData += "<Descripcion NombreClt='" + textbox1.Text + "' "; strData += "KilosPreQ='" + textbox2.Text + "' "; strData += "NombreDelSolici='" + textbox3.Text + "' "; strData += "KilosDeCojin='" + textbox4.Text + "' "; strData += "CodigoDePedido='" + textbox5.Text + "' "; strData += "KilosDeCordon='" + textbox6.Text + "' "; strData += "FechaPedido='" + textbox7.Text + "' "; strData += "KilosDeCemento='" + textbox8.Text + "' "; strData += "TipoFT='" + textbox9.Text + "' "; strData += "TiraAlfa='" + textbox10.Text + "' "; strData += "PesoEnKg='" + textbox11.Text + "' "; strData += "KilosDePintura='" + textbox12.Text + "'/>"; strData += "</root>"; Pedidos = Pedidos ?? new WFFormularioPedidos(); Pedidos.UserId = userId; // _usuarioLogueado Pedidos.FechaIngreso = DateTime.Now; Pedidos.FechaModificacion = DateTime.Now; Pedidos.DatoXml = strData; //Pedidos.StatusId: 1 es creado y 0 es no registrado en el workflow Pedidos.DocumentoId = 2; Pedidos.NombreClt = textbox1.Text; Pedidos.KilosPreQ = textbox2.Text; Pedidos.NombreSoli = textbox3.Text; Pedidos.KilosCojin = textbox4.Text; Pedidos.Codigo = Convert.ToInt32(textbox5.Text == string.Empty ? "0" : textbox5.Text); Pedidos.KilosCordon = textbox6.Text; Pedidos.Fecha = DateTime.Now; Pedidos.KilosCemento = textbox8.Text; Pedidos.Contenedor = textbox9.Text; Pedidos.KilosAlfa = textbox10.Text; Pedidos.PesoTotal = textbox11.Text; Pedidos.KilosPintura = textbox12.Text; Pedidos.PedidoId = WFFormularioPedidos.InsertarPedidos(Pedidos); if (Pedidos.PedidoId > 0 && Pedidos.StatusId == 0) { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pedidos.PedidoId.ToString(), userId)) { WFWorkflow.EnviarMensaje(WS.Eventos.CREAR_SOLICITUD, WorkflowId, Pedidos.PedidoId, userId, userId); } } return(Pedidos.PedidoId); }
public ArrayList Approvers(int userId, out int last) { string pedidoId = Pedidos == null || Pedidos.StatusId == 11 || Pedidos.StatusId == 1 ? "0" : Pedidos.PedidoId.ToString(); last = 0; // si pedidoId es 0 no existe o espera correción por lo tanto ni siquiera es el ultimo string ruta = String.Empty; if (pedidoId == "0") { // se consultan las políticas según lo que aparece en el formulario ruta = WFWorkflow.ObtenerRuta(WorkflowId, userId, "ClienteAlDia", "CreditoSuficiente", "HayEnAlmacen"); } else { last = WFWorkflow.UltimoDestino(WorkflowId, pedidoId); } return(WFAprobadores.ListarAprobadores(WorkflowId, pedidoId, ruta)); }
private void CargarWF() { if (Convert.ToInt32(ddlModulo.SelectedValue) > 0) { ArrayList arrWF = new ArrayList(); arrWF = WFWorkflow.ListarWorkflows(Convert.ToInt32(ddlModulo.SelectedValue)); // arrWF.RemoveAt(0); // WFWorkflow objInicial = new WFWorkflow(0,0,"Todos",""); // arrWF.Insert(0,objInicial); ddlWorkFlow.DataSource = arrWF; ddlWorkFlow.DataValueField = "Id"; ddlWorkFlow.DataTextField = "Name"; ddlWorkFlow.DataBind(); } else { CargarWFInicial(); CargarInicial(); } }
public void Send(int userId, int userDestinoId, string obs) { //if (Save(userId) > 0) // significa que se guardo un pedidoId válido //{ // status 11 es Por corregir, esto ocurre si es devuelto el formulario pues hay que volverlo a enviar if (Pedidos.StatusId == 11) { if (!WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pedidos.PedidoId.ToString(), userId) || !WFWorkflow.EnviarMensaje(WS.Eventos.SOLICITUD_CORREGIDA, WorkflowId, Pedidos.PedidoId, userDestinoId, obs, "ClienteAlDia", "CreditoSuficiente", "HayEnAlmacen")) { //lblError.Text = ESMensajes.ObtenerMensaje(425); return; } } else // se está enviando por primera vez el formulario { if (WFWorkflow.ActualizarUltimoUsuario(Queries.WF_ActualizarUltimaAprobacionPedido, Pedidos.PedidoId.ToString(), userId) && WFWorkflow.EnviarMensaje(WS.Eventos.CREAR_SOLICITUD, WorkflowId, Pedidos.PedidoId, userId, userDestinoId, "ClienteAlDia", "CreditoSuficiente", "HayEnAlmacen")) { WFWorkflow.EnviarMensaje(WS.Eventos.INCLUIR_SOLICITUD, WorkflowId, Pedidos.PedidoId, userDestinoId, obs); } else { //lblError.Text = ESMensajes.ObtenerMensaje(425); return; } } //} //else //{ // //if (S == 0) // // lblError.Text = ESMensajes.ObtenerMensaje(168); // //else // //{ // // if (S == -2) lblError.Text = ESMensajes.ObtenerMensaje(660); // // return; // //} //} }
private void btnReversar_Click(object sender, System.EventArgs e) { ArrayList arrWorkFlow = new ArrayList(); for (int intI = 0; intI < dgdWorkflow.Items.Count; intI++) { if (((CheckBox)dgdWorkflow.Items[intI].FindControl("chkSeleccione")).Checked) { WFSolicitudWF objNuevo = new WFSolicitudWF(); objNuevo.shtWorkFlow = Convert.ToInt16(((Label)dgdWorkflow.Items[intI].FindControl("lblCodWF")).Text); objNuevo.strReferencia = Convert.ToString(((Label)dgdWorkflow.Items[intI].FindControl("lblReferencia")).Text); objNuevo.strSolicitante = Convert.ToString(((Label)dgdWorkflow.Items[intI].FindControl("lblNumSolicitud")).Text); objNuevo.intCodUltimoAprobador = Convert.ToInt32(txtCodigoEmpleado.Text); objNuevo.intCodSiguienteAprobador = Convert.ToInt32(txtCodigoEmpleadoD.Text); WFSolicitudWF.ActualizarAprobadorHistorico(objNuevo.shtWorkFlow, objNuevo.strReferencia, objNuevo.strSolicitante, objNuevo.intCodSiguienteAprobador); WFWorkflow.EnviarMensaje(WS.Eventos.CAMBIO_DE_DESTINATARIO, objNuevo.shtWorkFlow, objNuevo.strReferencia, objNuevo.intCodSiguienteAprobador, objNuevo.intCodUltimoAprobador); arrWorkFlow.Add(objNuevo); } } LimpiarDestino(); }
protected void btnDel_Click(object sender, System.EventArgs e) { System.Web.UI.WebControls.TreeView wft = (System.Web.UI.WebControls.TreeView)Web.Global.FindMyControl(Page, "wfTreeView"); System.Web.UI.WebControls.TreeNode tn = Global.GetNodeFromPath(wft.Nodes, NodeIndex); if (tn == null || tn.ChildNodes.Count > 1) { return; } if (lstEscogencia.SelectedIndex > -1 && tn.Value[0] == 'R') { if (lstEscogencia.Items.Count > 1) { int ID = Convert.ToInt32(tn.Value.Substring(2)); ArrayList rutas = WFGrupoDeRoles.ObtenerGruposDeRoles(ID, tn.Text); string camino = ""; int i = 0; for (int j = rutas.Count; i < j; i++) { if (((WFGrupoDeRoles)rutas[i]).intCodRoles != Convert.ToInt32(lstEscogencia.SelectedValue)) { camino += ((WFGrupoDeRoles)rutas[i]).intCodRoles.ToString() + ";"; } } if (WFWorkflow.InsertarCamino(Int32.Parse(tn.Value.Substring(2)), camino)) { FirstTime = true; Initialize(); } } else { int ID = Convert.ToInt32(tn.Value.Substring(2)); if (WFWorkflow.BorrarCamino(ID)) { FirstTime = true; Initialize(); } } } /* * Microsoft.Web.UI.WebControls.TreeView tvw = (Microsoft.Web.UI.WebControls.TreeView)Page.FindControl("tvWorkflow"); * //NodeIndex = tvw.SelectedNodeIndex; * Microsoft.Web.UI.WebControls.TreeNode tn = tvw.GetNodeFromIndex(tvw.SelectedNodeIndex); * * if (lstEscogencia.SelectedIndex > -1 && tn.NodeData[0] != 'N') * { * if(lstEscogencia.Items.Count > 1) * { * int ID = Convert.ToInt32(tn.NodeData); * ArrayList rutas = WFGrupoDeRoles.ObtenerGruposDeRoles(ID,tn.Text); * * string camino = ""; * int i = 0; * for(int j=rutas.Count; i<j; i++) * { * if(((WFGrupoDeRoles)rutas[i]).intCodRoles != Convert.ToInt32(lstEscogencia.SelectedValue)) * camino += ((WFGrupoDeRoles)rutas[i]).intCodRoles.ToString() + ";"; * } * * if (WFWorkflow.InsertarCamino(Int32.Parse(tn.NodeData),camino)) * { * FirstTime = true; * Initialize(); * } * } * else * { * int ID = Convert.ToInt32(tn.NodeData); * * if (WFWorkflow.BorrarCamino(ID)) * { * FirstTime = true; * Initialize(); * } * } * } * */ }
public IResultServiceModel <WFFileState> SetInitialStateForFile(File file, string userId) { IResultServiceModel <WFFileState> rm = new ResultServiceModel <WFFileState>(); var now = DateTime.Now; WFWorkflow workflow = null; string wfCode = this.appConfigurationService.DefaultFileWorkflowCode; //Get the customer for the file before to find out what Workflow it needs if (file.WFWorkflow != null) { workflow = file.WFWorkflow; wfCode = workflow.Code; } else if (file.WFWorkflowId.HasValue) { var rmWF = this.GetWorkflowById(file.WFWorkflowId.Value); if (rmWF.Success) { workflow = rmWF.Value; } else { workflow = null; } } if (workflow == null) { var rmWF = this.GetWorkflowByCode(wfCode); if (rmWF.Success) { workflow = rmWF.Value; } else { workflow = null; } } var rmIS = this.wfStateRepository.GetInitialStateByWorkflowCode(wfCode); if (rmIS.Success) { var state = rmIS.Value; if (workflow == null) { workflow = state.WFWorkflows.Where(w => w.WFWorkflow.Code == wfCode).Select(w => w.WFWorkflow).FirstOrDefault(); } //put the workflow id and version to the file; if (workflow != null) { file.WFWorkflowId = workflow.Id; file.WFWorkflowVersion = workflow.WFWorkflowVersion; this.fileRepository.Update(file); this.fileRepository.Save(); } var fHis = new WFFileState() { EntityId = file.Id, UserId = userId, WFStateId = rmIS.Value.Id, TS = now }; fHis.Notes.Add(new WFFileStateNote() { UserId = userId, TS = now, Comment = state.Name }); this.wfFileStateRepository.Add(fHis); var rmSave = this.wfFileStateRepository.Save(); if (rmSave.Success) { rm = this.wfFileStateRepository.GetById(fHis.Id); //rm.OnSuccess(state); } else { rm.OnError(rmSave.ErrorMessage, rmSave.ErrorCode); } } else { rm.OnError(rmIS.ErrorMessage, rmIS.ErrorCode); } return(rm); }
public void Approve(int userId, int userDestinoId, string obs) { WFWorkflow.EnviarMensaje(WS.Eventos.SOLICITUD_APROBADA, WorkflowId, Pagos.PagoId, userDestinoId, obs); }
public void Revise(int userId, int userDestinoId, string obs) { WFWorkflow.EnviarMensaje(WS.Eventos.RECHAZADO_PARCIAL, WorkflowId, Pagos.PagoId, userDestinoId, obs); }
private void ddlTipoDocumento_SelectedIndexChanged(object sender, System.EventArgs e) { WorkflowId = (ddlTipoDocumento.SelectedValue == "0") ? Convert.ToInt32(-1) : Convert.ToInt32(ddlTipoDocumento.SelectedValue); txtDescripcion.Text = ((WFWorkflow)WFWorkflow.ListarWorkflows(Convert.ToInt32(ddlModulo.SelectedValue))[ddlTipoDocumento.SelectedIndex]).Description; }