Example #1
0
        private void _cambiaStato_Click(object sender, EventArgs e)
        {
            DocumentoGenerico documento = SelezionaDa(Archivio.GetInstance().GetDocumenti());

            if (documento != null)
            {
                documento.CambiaStato();
            }
        }
Example #2
0
        private void InserisciRichiesta_Click(object sender, EventArgs e)
        {
            using (EditingDialog editDialog = new EditingDialog())
            {
                editDialog.SetEditableType((typeof(RichiestaDiLavoro)));
                if (editDialog.ShowDialog() == DialogResult.OK)
                {
                    String   nome = String.Empty, cognome = String.Empty, codiceFiscale = String.Empty, Email = String.Empty, via = String.Empty;
                    ulong    telefono = 0;
                    DateTime nascita  = new DateTime();

                    foreach (KeyValuePair <PropertyInfo, object> tb in editDialog.RequisitiControl.Properties)
                    {
                        if (tb.Key.Name == ("Nome"))
                        {
                            nome = (string)tb.Value;
                        }
                        if (tb.Key.Name == "Cognome")
                        {
                            cognome = (string)tb.Value;
                        }
                        if (tb.Key.Name == "Email")
                        {
                            Email = (string)tb.Value;
                        }
                        if (tb.Key.Name == "Telefono")
                        {
                            telefono = (ulong)tb.Value;
                        }
                        if (tb.Key.Name == "CodiceFiscale")
                        {
                            codiceFiscale = (string)tb.Value;
                        }
                        if (tb.Key.Name == "Indirizzo")
                        {
                            via = (string)tb.Value;
                        }
                        if (tb.Key.Name == "DataDiNascita")
                        {
                            nascita = (DateTime)tb.Value;
                        }
                    }
                    DocumentoGenerico d = DocumentoFactory.CreateRichiestaDiLavoro(
                        nome, cognome, nascita, telefono, Email, codiceFiscale, via);
                    foreach (RequisitoPersonale rp in editDialog.Requisiti)
                    {
                        d.AggiungiRequisito(rp);
                    }
                    Archivio.GetInstance().AggiungiDocumento(d);
                }
            }
        }
Example #3
0
 private void CheckRequisitiPanel()
 {
     if (_editingObject is DocumentoGenerico)
     {
         DocumentoGenerico doc = (DocumentoGenerico)_editingObject;
         if (doc.State.Equals("Disattivo"))
         {
             SetVisiblePanelBottom(false);
         }
         else
         {
             SetVisiblePanelBottom(true);
         }
     }
 }
Example #4
0
        private void InserisciOfferta_Click(object sender, EventArgs e)
        {
            using (EditingDialog editDialog = new EditingDialog())
            {
                editDialog.SetEditableType((typeof(OffertaDiLavoro)));
                if (editDialog.ShowDialog() == DialogResult.OK)
                {
                    String nomeAzienda = String.Empty, Descrizione = String.Empty, TipoContratto = String.Empty, Email = String.Empty;
                    int    PostiDisponibili = 0;

                    foreach (KeyValuePair <PropertyInfo, object> tb in editDialog.RequisitiControl.Properties)
                    {
                        if (tb.Key.Name == ("NomeAzienda"))
                        {
                            nomeAzienda = (string)tb.Value;
                        }
                        if (tb.Key.Name == "PostiDisponibili")
                        {
                            PostiDisponibili = (int)tb.Value;
                        }
                        if (tb.Key.Name == "Descrizione")
                        {
                            Descrizione = (string)tb.Value;
                        }
                        if (tb.Key.Name == "TipoContratto")
                        {
                            TipoContratto = (string)tb.Value;
                        }
                        if (tb.Key.Name == "Email")
                        {
                            Email = (string)tb.Value;
                        }
                    }

                    DocumentoGenerico d = DocumentoFactory.CreateOffertaDiLavoro(
                        nomeAzienda, PostiDisponibili, Descrizione, TipoContratto, Email);
                    foreach (RequisitoPersonale rp in editDialog.Requisiti)
                    {
                        d.AggiungiRequisito(rp);
                    }
                    Archivio.GetInstance().AggiungiDocumento(d);
                }
            }
        }
Example #5
0
        private void _modificaDocumento_Click(object sender, EventArgs e)
        {
            DocumentoGenerico documento = SelezionaDa(Archivio.GetInstance().GetDocumenti());

            if (documento != null)
            {
                using (DocumentDialog documentDialog = new DocumentDialog())
                {
                    documentDialog.LoadItemsRequisiti(documento.GetRequisiti());
                    documentDialog.SetEditableObject(documento, true);
                    documentDialog.SetListBoxNewRequisiti();
                    if (documentDialog.ShowDialog() != DialogResult.OK)
                    {
                        documentDialog.ResetEditingObject();
                    }
                }
                RefreshListBox();
            }
        }
Example #6
0
        public void SetEditableObject(object editingObject, bool editable)
        {
            if (editingObject == null)
            {
                throw new ArgumentNullException("");
            }
            _editingObject = editingObject;
            if (_editingObject is DocumentoGenerico)
            {
                DocumentoGenerico doc = (DocumentoGenerico)_editingObject;
                _originalRequisiti = doc.GetRequisiti().ToList();
                if (doc.State.Equals("Disattivo"))
                {
                    SetVisiblePanelBottom(false);
                }
            }
            _originalValues.Clear();
            _errorCounter = 0;
            _tableLayoutPanel.Controls.Clear();



            foreach (PropertyInfo propertyInfo in _editingObject.GetType().GetProperties())
            {
                EditableAttribute[] attributes = (EditableAttribute[])propertyInfo.GetCustomAttributes(typeof(EditableAttribute), false);
                if (attributes.Length == 0)
                {
                    continue;
                }
                if (!propertyInfo.CanRead)
                {
                    throw new ApplicationException("!propertyInfo.CanRead");
                }
                if (propertyInfo.CanWrite)
                {
                    _originalValues.Add(propertyInfo, propertyInfo.GetValue(_editingObject, null));
                }
                AddRow(attributes[0], propertyInfo, editable);
            }
            RefreshTextBoxes(null);
        }
Example #7
0
        public void DocumentoValido()
        {
            int countL            = 0;
            int countF            = 0;
            DocumentoGenerico doc = (DocumentoGenerico)_editingObject;

            foreach (RequisitoPersonale rp in doc.GetRequisiti())
            {
                if (rp.GetType() == typeof(RequisitoPersonaleDiFormazione))
                {
                    countF++;
                }
                if (rp.GetType() == typeof(RequisitoPersonaleDiLingua))
                {
                    countL++;
                }
            }
            foreach (RequisitoPersonale rp in _newRequisiti)
            {
                if (rp.GetType() == typeof(RequisitoPersonaleDiFormazione))
                {
                    countF++;
                }
                if (rp.GetType() == typeof(RequisitoPersonaleDiLingua))
                {
                    countL++;
                }
            }
            if (countL >= 1 && countF >= 1)
            {
                _validDocument = true;
            }
            else
            {
                _validDocument = false;
            }
            OnHasErrorChanged();
        }
Example #8
0
        private void VisualizzaGraduatoria(object sender, EventArgs e)
        {
            using (SelectDialog selectDialog = new SelectDialog())
            {
                selectDialog.LoadItems(Archivio.GetInstance().GetDocumenti());
                if (selectDialog.ShowDialog() == DialogResult.OK)
                {
                    try
                    {
                        DocumentoGenerico documento = (DocumentoGenerico)selectDialog.SelectedItem;
                        if (documento != null)
                        {
                            Container.Controls.Clear();
                            Container.Controls.Add(Control);

                            if (documento is RichiestaDiLavoro)
                            {
                                Control.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoria("CalcoloSuRichiesta").Graduatoria(documento, Archivio.GetInstance().GetDocumenti()).ToList();
                                Control.Columns["Value"].HeaderText = "Posizione in graduatoria";
                                Control.Columns["Key"].HeaderText   = "Offerte di lavoro";
                            }
                            else
                            {
                                Control.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoria("CalcoloSuOfferta").Graduatoria(documento, Archivio.GetInstance().GetDocumenti()).ToList();
                                Control.Columns["Value"].HeaderText = "Punteggio";
                                Control.Columns["Key"].HeaderText   = "Richieste di lavoro";
                            }
                            RefreshControl();
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
        }
Example #9
0
        public override void Start()
        {
            FrmProgress frmProgreso = new FrmProgress();

            frmProgreso.Start(2, "Exportando ...");
            frmProgreso.Next();
            try
            {
                CReporte            reporte  = null;
                ExportFormatOptions opciones = null;
                ExportFormatType    formato;
                string nombreArchivo = string.Empty;
                string extension     = string.Empty;
                string sql           = string.Empty;
                if (base.m_ObjectFlow is DocumentoGenerico)
                {
                    DocumentoGenerico documento = (DocumentoGenerico)base.m_ObjectFlow;
                    reporte       = documento.TipoDocumento.Reporte;
                    nombreArchivo = string.Format("{0} - Nº {1} {2}", reporte.Nombre, documento.Numeracion, DateTime.Now.ToString("yyyy-MM-dd"));
                    sql           = reporte.SQL;
                    foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                    {
                        sql = sql.Replace(Parametro.Nombre, documento.ValueByProperty(Parametro.Propiedad).ToString());
                    }
                }
                else if (base.m_ObjectFlow is CReporte)
                {
                    reporte       = (CReporte)base.m_ObjectFlow;
                    nombreArchivo = string.Format("{0} {1}", reporte.Nombre, DateTime.Now.ToString("yyyy-MM-dd"));
                    sql           = reporte.SQL;
                    foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                    {
                        sql = sql.Replace(Parametro.Nombre, Parametro.Valor);
                    }
                }
                switch (base.m_Parameter)
                {
                case TypeEnum.CEnumExportFormat.PDF:
                    formato   = ExportFormatType.PortableDocFormat;
                    opciones  = new PdfRtfWordFormatOptions();
                    extension = ".pdf";
                    break;

                case TypeEnum.CEnumExportFormat.WORD:
                    formato   = ExportFormatType.WordForWindows;
                    opciones  = new PdfRtfWordFormatOptions();
                    extension = ".doc";
                    break;

                case TypeEnum.CEnumExportFormat.EXCEL:
                    formato   = ExportFormatType.Excel;
                    opciones  = new ExcelFormatOptions();
                    extension = ".xls";
                    break;

                default:
                    throw new Exception("El formato no es válido.");
                }
                if (reporte != null)
                {
                    ReportDocument CryRpt = new ReportDocument();
                    CryRpt.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, reporte.Ubicacion));
                    frmProgreso.Next();
                    // Si existe una consulta SQL se ejecuta.
                    if (sql.Trim().Length > 0)
                    {
                        CryRpt.SetDataSource(HelperNHibernate.GetDataSet(sql));
                    }
                    // Se reemplazan los parámetros Crystal.
                    foreach (ParametroReporte Parametro in reporte.ParametrosCrystal)
                    {
                        CryRpt.SetParameterValue(Parametro.Nombre, Parametro.Valor);
                    }
                    // Se exporta el reporte.
                    ExportOptions CrExportOptions;
                    DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions();
                    CrDiskFileDestinationOptions.DiskFileName = string.Format("{0}{1}{2}", FrmMain.CarpetaExportacion, nombreArchivo, extension);
                    CrExportOptions = CryRpt.ExportOptions;
                    {
                        CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
                        CrExportOptions.ExportFormatType      = formato;
                        CrExportOptions.DestinationOptions    = CrDiskFileDestinationOptions;
                        CrExportOptions.FormatOptions         = opciones;
                    }
                    // Se exporta el archivo.
                    CryRpt.Export();
                    // Se inicia un proceso para abrir el archivo.
                    Process.Start(CrDiskFileDestinationOptions.DiskFileName);
                }
                else
                {
                    throw new Exception("Entidad no válida.");
                }
                base.m_ResultProcess = EnumResult.SUCESS;
            }
            catch (Exception ex)
            {
                SoftException.Control(ex);
            }
            finally
            {
                frmProgreso.Close();
                base.Start();
            }
        }
        private void VisualizzaGraduatoriaFittizia(object sender, EventArgs e)
        {
            DocumentoGenerico documento = null;

            using (SelectDialog selectDialog = new SelectDialog())
            {
                selectDialog.LoadItems(Archivio.GetInstance().GetDocumenti());
                if (selectDialog.ShowDialog() == DialogResult.OK)
                {
                    documento = (DocumentoGenerico)selectDialog.SelectedItem;
                }
            }
            if (documento != null)
            {
                if (documento.State.Equals("Attivo"))
                {
                    using (RequisitiFittiziDialog dialog = new RequisitiFittiziDialog())
                    {
                        ISelezione selezione = new Selezione();
                        if (documento is OffertaDiLavoro)
                        {
                            selezione.Selezionatore = new SelezionatoreBase.SelezionatoreDaLista(documento.GetRequisiti().Select(req => req.Requisito));
                            dialog.Control.RequisitiViewControl.SetVisiblePanel(false);
                        }
                        new RequisitiViewPresenter(dialog.Control.RequisitiViewControl, dialog.Control.Panel2, null, selezione);
                        dialog.Control.Panel2.Controls.Add(dialog.Control.RequisitiViewControl);
                        if (dialog.ShowDialog() == DialogResult.OK)
                        {
                            List <RequisitoPersonale> listaRequisiti = new List <RequisitoPersonale>();
                            foreach (RequisitoPersonale rp in dialog.Control.RequisitiSelezionati.Items)
                            {
                                listaRequisiti.Add(rp);
                            }

                            if (documento is RichiestaDiLavoro)
                            {
                                Control.DataGridViewAttuale.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoria("CalcoloSuRichiesta").Graduatoria(documento, Archivio.GetInstance().GetDocumenti()).ToList();
                                Control.DataGridViewAttuale.Columns["Value"].HeaderText = "Posizione in graduatoria Attuale";
                                Control.DataGridViewAttuale.Columns["Key"].HeaderText   = "Offerte di lavoro";
                                Control.DataGridViewFittizia.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoriaFittizia("CalcoloSuRichiesta").GraduatoriaFittizia(documento, Archivio.GetInstance().GetDocumenti(), listaRequisiti).ToList();
                                Control.DataGridViewFittizia.Columns["Value"].HeaderText = "Posizione in graduatoria Fittizia";
                                Control.DataGridViewFittizia.Columns["Key"].HeaderText   = "Offerte di lavoro";
                            }
                            else
                            {
                                Control.DataGridViewAttuale.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoria("CalcoloSuOfferta").Graduatoria(documento, Archivio.GetInstance().GetDocumenti()).ToList();
                                Control.DataGridViewAttuale.Columns["Value"].HeaderText = "Punteggio Attuale";
                                Control.DataGridViewAttuale.Columns["Key"].HeaderText   = "Richieste di lavoro";
                                Control.DataGridViewFittizia.DataSource = CalcoloGraduatoriaFactory.GetCalcoloGraduatoriaFittizia("CalcoloSuOfferta").GraduatoriaFittizia(documento, Archivio.GetInstance().GetDocumenti(), listaRequisiti).ToList();
                                Control.DataGridViewFittizia.Columns["Value"].HeaderText = "Punteggio Fittizio";
                                Control.DataGridViewFittizia.Columns["Key"].HeaderText   = "Richieste di lavoro";
                            }
                            Container.Controls.Clear();
                            Container.Controls.Add(Control);
                            RefreshControl();
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Documento disattivo");
                }
            }
        }