Ejemplo n.º 1
0
        public override TaskIts IndexScheduleJob()
        {
            try
            {
                List <TaskParamIts> parameters = new List <TaskParamIts>();

                var dtPeriodo = (cbPeriodo.SelectedItem as CalendarMonth).DateTime;
                dtPeriodo = DataUtil.GetDataFinalDoMes(dtPeriodo);
                var grupoSelect    = cbGrupoEvento.SelectedItem as GrupoEvento;
                var tpFechamento   = IndexTipoFechamento();
                var consGrpEvtFunc = chkConsGrpFunc.Checked;
                var cts            = new CancellationTokenSource();
                var usuario        = new Usuario()
                {
                    IdUsuario      = userLogado.IdUsuario,
                    NomeUsuario    = userLogado.NomeUsuario,
                    NomeUtilizador = userLogado.NomeUtilizador
                };

                var classe          = "ITE.Entidades.DaoManager.RHDaoManager.FolhaDaoManager, ITE.Entidades, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null";
                var descricaoTarefa = "Calculo Folha Pagamento";
                var metodo          = "ExecutaCalculoFolha";
                var idProcess       = "{BA501F85-6216-466F-8534-C650F6E57A94}";


                var p_periodo   = new TaskParamIts(dtPeriodo.GetType(), "periodo", dtPeriodo);
                var p_usuario   = new TaskParamIts(usuario.GetType(), "usuario", usuario);
                var p_tipoFech  = new TaskParamIts(tpFechamento.GetType(), "tipoFechamento", tpFechamento);
                var p_grpEvento = new TaskParamIts(grupoSelect.GetType(), "grupoEvento", grupoSelect);
                var p_cnsGf     = new TaskParamIts(consGrpEvtFunc.GetType(), "considerGrpFunc", consGrpEvtFunc);
                var p_cancel    = new TaskParamIts(typeof(CancellationTokenSource), "cts", cts.ToString());

                parameters.Add(p_periodo);
                parameters.Add(p_usuario);
                parameters.Add(p_tipoFech);
                parameters.Add(p_grpEvento);
                parameters.Add(p_cnsGf);
                parameters.Add(p_cancel);

                var bytes = SerializeIts.SerializeObject(parameters);

                base.SchedulerJob = new TaskIts(Guid.NewGuid().ToString(), 1, 1, userLogado.IdUsuario, classe, metodo,
                                                descricaoTarefa, idProcess, bytes);
            }
            catch (Exception ex)
            {
                XMessageIts.ExceptionMessageDetails(ex, "Por favor preencha todos os parametros");
            }

            return(base.SchedulerJob);
        }
Ejemplo n.º 2
0
        private TaskIts indexarTarefa()
        {
            var proccessSelected = cbProcesso.SelectedItem as ProcessIts;

            if (proccessSelected != null)
            {
                memDescProcess.Text = proccessSelected.DescricaoProcesso;

                if (proccessSelected.CodigoProcesso == "INS_TSTE")
                {
                    //List<TaskParamIts> parameters = new List<TaskParamIts>();
                    //var vezes = ParseUtil.ToInt(txtNumVezes.Text);
                    //var schedulerControl = new Scheduler.Manager.SchedulerControl();
                    //var id = Guid.NewGuid().ToString();
                    ////o que será gravado no banco
                    //var className = Type.GetType(proccessSelected.ClassName).FullName;

                    //var methodName = proccessSelected.Metodo;

                    //var arguments = String.Format("{0}, {1}, {2}", vezes, cts, id);

                    //var p = new TaskParamIts(vezes.GetType(), "nVezes", vezes);
                    //var p2 = new TaskParamIts(typeof(String), "taskId", id);
                    //var p1 = new TaskParamIts(typeof(CancellationTokenSource), "cts", cts.ToString());
                    //parameters.Add(p);
                    //parameters.Add(p2);
                    //parameters.Add(p1);

                    //var bytes = SerializeIts.SerializeObject(parameters);

                    //var task = new TaskIts(id, 1, 1, 1, className, methodName,
                    //    proccessSelected.NomeProcesso, proccessSelected.IdProcess, bytes);

                    //schedulerControl.CreateTask(task, cts);
                    //return task;
                }
                else if (proccessSelected.CodigoProcesso == "FEC_FOLHA")
                {
                    try
                    {
                        List <TaskParamIts> parameters = new List <TaskParamIts>();
                        //FillCbGrupoEventos();

                        var periodo   = dtPeriodo.DateTime;
                        var usuario   = UnitWork.Usuario;
                        var n_usuario = new ITE.Entidades.POCO.Usuario();
                        n_usuario.Update(usuario);
                        n_usuario.IdUsuario = usuario.IdUsuario;
                        var tipoFechamento = IndexTipoFechamentoFolha();
                        var grupoEvento    = cbGrupoEvento.SelectedItem as GrupoEvento;
                        var consGrpEvtFunc = chkConsdGrpFunc.Checked;


                        var schedulerControl = new Scheduler.Manager.SchedulerControl();
                        var id = Guid.NewGuid().ToString();
                        //o que será gravado no banco
                        var className = proccessSelected.ClassName;

                        var methodName = proccessSelected.Metodo;

                        var p_periodo   = new TaskParamIts(periodo.GetType(), "periodo", periodo);
                        var p_usuario   = new TaskParamIts(usuario.GetType().BaseType, "usuario", n_usuario);
                        var p_tipoFech  = new TaskParamIts(tipoFechamento.GetType(), "tipoFechamento", tipoFechamento);
                        var p_grpEvento = new TaskParamIts(grupoEvento.GetType(), "grupoEvento", grupoEvento);
                        var p_cnsGf     = new TaskParamIts(consGrpEvtFunc.GetType(), "considerGrpFunc", consGrpEvtFunc);
                        var p_cancel    = new TaskParamIts(typeof(CancellationTokenSource), "cts", cts.ToString());

                        parameters.Add(p_periodo);
                        parameters.Add(p_usuario);
                        parameters.Add(p_tipoFech);
                        parameters.Add(p_grpEvento);
                        parameters.Add(p_cnsGf);
                        parameters.Add(p_cancel);

                        var bytes = SerializeIts.SerializeObject(parameters);

                        var task = new TaskIts(id, 1, 1, 1, className, methodName,
                                               proccessSelected.NomeProcesso, proccessSelected.IdProcess, bytes);

                        schedulerControl.CreateTask(task, cts);
                        return(task);
                    }
                    catch (Exception ex)
                    {
                        XMessageIts.ExceptionMessage(ex);
                    }
                }
                return(null);
            }
            return(null);
        }