Ejemplo n.º 1
0
        /// <summary>
        /// Επιστρέφει τα προσωπικά στοιχεία του υπαλλήλου από το Identity XElement
        /// </summary>
        /// <param name="employeeIdentity"></param>
        /// <returns>ενα SalaryEmployeeInfo αντικείμενο</returns>
        public static SalaryEmployeeInfo GetEmployeeInfoFromElement(XElement employeeIdentity)
        {
            SalaryEmployeeInfo info = new SalaryEmployeeInfo();

            if (employeeIdentity != null)
            {
                info.Afm          = (string)employeeIdentity.Element(nsDefault + "tin").Value.ToString();
                info.Amka         = (string)employeeIdentity.Element(nsDefault + "amka").Value.ToString();
                info.FirstName    = (string)employeeIdentity.Element(nsDefault + "firstName").Value.ToString();
                info.LastName     = (string)employeeIdentity.Element(nsDefault + "lastName").Value.ToString();
                info.Am           = (string)employeeIdentity.Element(nsDefault + "amm").Value.ToString();
                info.ArTaut       = (string)employeeIdentity.Element(nsDefault + "policeId").Value.ToString();
                info.IsNewInsured = (employeeIdentity.Element(nsDefault + "newInsured") == null ? false : true);
            }

            return(info);
        }
Ejemplo n.º 2
0
        public static SalaryDetailsViewModel GetSalaryDetailsViewModel(XDocument xml, string tin)
        {
            SalaryDetailsViewModel model;


            // Διαβάζουμε για τον υπαλληλο το Indentification XElement και το αντίστοιχο SalaryEmployeeInfo instance
            XElement identification = EapXMLTool.GetEmployeeIdentification(xml, tin);

            if (identification != null)
            {
                SalaryEmployeeInfo employee = EapXMLTool.GetEmployeeInfoFromElement(identification);

                // Διαβάζουμε το payment parent XElement του Identification
                XElement payment = EapXMLTool.GetEmployeePaymentParent(identification);
                // και παίρνουμε όλα τα incomes του υπαλληλου
                IEnumerable <XElement> incomes = EapXMLTool.GetPaymentIncomes(payment);

                // κρατάμε τα incomes τακτικής μισθοδοσίας και αναδρομικών
                IEnumerable <XElement> incomesTaktikhs    = EapXMLTool.GetPaymentIncomesOfType(incomes, 0);
                IEnumerable <XElement> incomesAnadromikwn = EapXMLTool.GetPaymentIncomesOfType(incomes, 1);

                IEnumerable <XElement> incomesTrimhnes    = EapXMLTool.GetPaymentIncomesOfType(incomes, 2);
                IEnumerable <XElement> incomesEkpApodoxwn = EapXMLTool.GetPaymentIncomesOfType(incomes, 3);

                IEnumerable <XElement> incomesApozhmiwsh       = EapXMLTool.GetPaymentIncomesOfType(incomes, 4);
                IEnumerable <XElement> incomesApozhmiwshAdeias = EapXMLTool.GetPaymentIncomesOfType(incomes, 5);

                IEnumerable <XElement> incomesEteroxronismenh = EapXMLTool.GetPaymentIncomesOfType(incomes, 6);



                SalaryEmployeeDetails detailsTaktikwn    = EapXMLTool.GetPaymentTaktikisAmounts(incomesTaktikhs.ToList(), 0);
                SalaryEmployeeDetails detailsAnadromikwn = EapXMLTool.GetPaymentTaktikisAmounts(incomesAnadromikwn.ToList(), 1);

                SalaryEmployeeDetails detailsTrimhnesApodoxes = EapXMLTool.GetPaymentTaktikisAmounts(incomesTrimhnes.ToList(), 2);
                SalaryEmployeeDetails detailsEkpaidApodoxes   = EapXMLTool.GetPaymentTaktikisAmounts(incomesEkpApodoxwn.ToList(), 3);

                SalaryEmployeeDetails detailsApozhmiwsh       = EapXMLTool.GetPaymentTaktikisAmounts(incomesApozhmiwsh.ToList(), 4);
                SalaryEmployeeDetails detailsApozhmiwshAdeias = EapXMLTool.GetPaymentTaktikisAmounts(incomesApozhmiwshAdeias.ToList(), 5);

                SalaryEmployeeDetails detailsEteroxronismenh = EapXMLTool.GetPaymentTaktikisAmounts(incomesEteroxronismenh.ToList(), 6);


                SalaryTotals ABamounts = EapXMLTool.GetPaymentABAmounts(payment);


                model = new SalaryDetailsViewModel();

                model.SalaryEmployee     = employee;
                model.SalaryTotalAmounts = ABamounts;
                model.SalaryDetalis      = new List <SalaryEmployeeDetails>();

                if (detailsTaktikwn != null)
                {
                    model.SalaryDetalis.Add(detailsTaktikwn);
                }
                if (detailsAnadromikwn != null)
                {
                    model.SalaryDetalis.Add(detailsAnadromikwn);
                }

                if (detailsTrimhnesApodoxes != null)
                {
                    model.SalaryDetalis.Add(detailsTrimhnesApodoxes);
                }
                if (detailsEkpaidApodoxes != null)
                {
                    model.SalaryDetalis.Add(detailsEkpaidApodoxes);
                }

                if (detailsApozhmiwsh != null)
                {
                    model.SalaryDetalis.Add(detailsApozhmiwsh);
                }
                if (detailsApozhmiwshAdeias != null)
                {
                    model.SalaryDetalis.Add(detailsApozhmiwshAdeias);
                }

                if (detailsEteroxronismenh != null)
                {
                    model.SalaryDetalis.Add(detailsEteroxronismenh);
                }


                return(model);
            }
            else
            {
                return(null);
            }
        }