private void btnGenerati_Click(object sender, System.EventArgs e)
        {
            // Situatia lunara a angajatului.
            Salaries.Business.SituatieLunaraAngajat situatieLunara     = new Salaries.Business.SituatieLunaraAngajat(objAngajat.AngajatId);
            Salaries.Data.InfoSituatieLunara        infoSituatieLunara = situatieLunara.GetSituatieLunaraAngajat(objAngajat.AngajatId, lunaData.LunaId);
            // Datele necesare comunicarii care nu sunt completate.
            string dateNecesareF = string.Empty;

            if (ExistaToateDatele() && infoSituatieLunara.SituatieID != -1)
            {
                // Sunt introduse in sesiune tipul comunicarii, numarul acesteia si suma
                // Tipul comunicarii.
                Session["TipComunicare"] = "comunicare prima.xml";
                // Numarul comunicarii.
                Session["Numar"] = txtNrCom.Text;
                // Valoarea primei.
                Session["Suma"] = infoSituatieLunara.PrimaProiect.ToString("N", Salaries.Business.VariabileGlobale.numberInfoFormatWithDigits);
                // Data inregistrarii declaratiei.
                Session["DataInregistrarii"] = txtDataInregistrarii.Text;
                // Numele managerului general.
                Session["ManagerGeneral"] = txtManagerGeneral.Text;
                // Numele directorului economic.
                Session["DirectorEconomic"] = txtDirectorEconomic.Text;
                //este generata comunicarea
                lblEroare.Text = "Comunicarea a fost generata.";

                Response.Redirect("Comunicari/comunicare.aspx?id=" + objAngajat.AngajatId);
            }
            else
            {
                if (dateNecesare == string.Empty)
                {
                    lblEroare.Text = "Pentru a genera comnunicarea trebuie sa generati situatia lunara a angajatului.";
                }
                else
                {
                    // Se stabileste separatorul.
                    char[] sep = { ':' };

                    // Se face impartirea in functie de separator.
                    Array aDate = dateNecesare.Split(sep);

                    for (int i = 0; i < aDate.Length - 2; i++)
                    {
                        dateNecesareF += aDate.GetValue(i).ToString() + ", ";
                    }

                    dateNecesareF += aDate.GetValue(aDate.Length - 2).ToString();

                    lblEroare.Text = "Pentru a genera comnunicarea trebuie sa mai completati urmatoarele campuri: " + dateNecesareF;
                }
            }
        }
Beispiel #2
0
        private void btnGenerati_Click(object sender, System.EventArgs e)
        {
            Salaries.Data.LunaData lunaAnterioara = luni.GetDetaliiByData(lunaData.Data.AddMonths(-1));

            // Situatia lunara a angajatului.
            Salaries.Business.SituatieLunaraAngajat situatieLunara = new Salaries.Business.SituatieLunaraAngajat(objAngajat.AngajatId);
            // Situatia lunara din luna curenta.
            Salaries.Data.InfoSituatieLunara infoSituatieLunara = situatieLunara.GetSituatieLunaraAngajat(objAngajat.AngajatId, lunaData.LunaId);
            // Situatia lunara de pe luna precedenta.
            Salaries.Data.InfoSituatieLunara infoSituatieLunaraAnt = situatieLunara.GetSituatieLunaraAngajat(objAngajat.AngajatId, lunaAnterioara.LunaId);

            Salaries.Business.Salariu salariu = new Salaries.Business.Salariu();
            salariu.AngajatID = objAngajat.AngajatId;

            // Valoarea indexata a venitului brut.
            float sumaMajorareSalariuBrut = 0;

            sumaMajorareSalariuBrut = float.Parse(objAngajat.SalariuBaza.ToString()) - salariu.CalculVenitBrutIndexat();

            if (infoSituatieLunara.SituatieID != -1 && infoSituatieLunaraAnt.SituatieID != -1)
            {
                // Tipul comunicarii.
                Session["TipComunicare"] = "comunicare majorare.xml";
                // Numarul comunicarii.
                Session["Numar"] = txtNrCom.Text;
                // Data inregistrarii comunicarii.
                Session["DataInregistrarii"] = txtDataInregistrarii.Text;
                // Salariul brut anterior.
                Session["SalariuBrutAnterior"] = infoSituatieLunaraAnt.SalariuBaza.ToString();
                // Indemnizatie conducere anterioara.
                Session["IndemnizatieConducereAnterioara"] = infoSituatieLunaraAnt.IndemnizatieConducere.ToString();
                // Suma cu care a fost majorat salariu de incadrare.
                Session["SumaMajorareSalariuBrut"] = sumaMajorareSalariuBrut.ToString();
                // Numele managerului general.
                Session["ManagerGeneral"] = txtManagerGeneral.Text;
                // Numele directorului economic.
                Session["DirectorEconomic"] = txtDirectorEconomic.Text;

                Response.Redirect("Comunicari/comunicare.aspx?id=" + objAngajat.AngajatId);

                lblEroare.Text = "Comunicarea a fost generata.";
            }
            else
            {
                lblEroare.Text = "Angajatul nu are situatii lunare generate!";
            }
        }