public ActionResult Create() { try { List <SelectListItem> items = new List <SelectListItem>(); items.Insert(0, (new SelectListItem { Text = "All employee", Value = "1", })); items.Insert(1, (new SelectListItem { Text = "unit", Value = "2", })); items.Insert(2, (new SelectListItem { Text = "nationality", Value = "3", })); items.Insert(3, (new SelectListItem { Text = "Work location", Value = "4", })); items.Insert(4, (new SelectListItem { Text = "Cost center", Value = "5", })); items.Insert(5, (new SelectListItem { Text = "Cadre level", Value = "6", })); ViewBag.Object = new SelectList(items, "Value", "Text"); var EmployeeAnnualIncrease = new EmployeeAnnualIncreaseHistory { AllowncePercentage = 0, Month = 6, Year = 2020 }; var Employee_BasicSalary = new Employee_BasicSalary_History { Allowances_Percentage = 0 }; var model = new VM_EmployeeAnnualandSpecial { EmployeeAnnualIncreaseHistory = EmployeeAnnualIncrease, Employee_BasicSalary_History = Employee_BasicSalary, IncreaseType = IncreaseType.AnnualIncrease }; return(View(model)); } catch (Exception) { return(RedirectToAction("index")); } }
public ActionResult Create(VM_EmployeeAnnualandSpecial model, FormCollection form, HttpPostedFileBase MyItem, string SpecialConfirm) { try { List <SelectListItem> items = new List <SelectListItem>(); items.Insert(0, (new SelectListItem { Text = "All employee", Value = "1", })); items.Insert(1, (new SelectListItem { Text = "unit", Value = "2", })); items.Insert(2, (new SelectListItem { Text = "nationality", Value = "3", })); items.Insert(3, (new SelectListItem { Text = "Work location", Value = "4", })); items.Insert(4, (new SelectListItem { Text = "Cost center", Value = "5", })); items.Insert(5, (new SelectListItem { Text = "Cadre level", Value = "6", })); ViewBag.Object = new SelectList(items, "Value", "Text"); var ID_emp = form["ID_emp"].Split(','); var percentage = form["percentage"].Split(','); var money = form["money"].Split(','); var SpePer = form["SpePer"].Split(','); var SpeAmo = form["SpeAmo"].Split(','); if (SpecialConfirm == "Calculate") { for (var i = 0; i < ID_emp.Count(); i++) { if (ID_emp[i] != "") { var IDEmp = int.Parse(ID_emp[i]); //int ID2 = int.Parse(IDEmp); var Employee_Profile = dbcontext.Employee_Profile.Where(a => a.Active == true).FirstOrDefault(a => a.ID == IDEmp); var BasicSalary_A = Employee_Profile.BasicSalary_A; Employee_BasicSalary_History new_Record = new Employee_BasicSalary_History(); new_Record.Employee_Code = IDEmp.ToString(); new_Record.History_Year = model.EmployeeAnnualIncreaseHistory.Year; new_Record.History_Month = model.EmployeeAnnualIncreaseHistory.Month; new_Record.BasicSalary_A = BasicSalary_A; if (SpePer[0] == "0") { double per = double.Parse(SpeAmo[0]); new_Record.Allowances_Percentage = 0; new_Record.Allowances_Amount = per; new_Record.BasicSalary_A = BasicSalary_A; new_Record.Total_excluded_Amount = (BasicSalary_A + per); Employee_Profile.BasicSalary_A = Convert.ToDouble(new_Record.Total_excluded_Amount); Employee_Profile.Totalexecludedallowances = Convert.ToDouble(new_Record.Total_excluded_Amount); } else { double per = double.Parse(SpePer[0]); new_Record.Allowances_Percentage = per; var Allowances_Percentage = ((per * BasicSalary_A) / 100); new_Record.Allowances_Amount = 0; new_Record.BasicSalary_A = BasicSalary_A; new_Record.Total_excluded_Amount = (BasicSalary_A + Allowances_Percentage); Employee_Profile.BasicSalary_A = Convert.ToDouble(new_Record.Total_excluded_Amount); Employee_Profile.Totalexecludedallowances = Convert.ToDouble(new_Record.Total_excluded_Amount); } new_Record.Created_By = User.Identity.Name; new_Record.Created_Date = DateTime.Now.Date; var Header = dbcontext.Employee_BasicSalary_History.Add(new_Record); dbcontext.SaveChanges(); } } } else { if (MyItem == null) { foreach (var item in ID_emp) { if (item != "") { var PayrollGeneralSetup = dbcontext.PayrollGeneralSetup.FirstOrDefault().SalaryCodeID_BasicSalary; var PayrollSetup = int.Parse(PayrollGeneralSetup); var salary_code = dbcontext.salary_code.FirstOrDefault(a => a.ID == PayrollSetup).SalaryCodeDesc; var ID = int.Parse(item); var Employee_Profile = dbcontext.Employee_Profile.Where(a => a.Active == true).FirstOrDefault(a => a.ID == ID).ID; var emp = Employee_Profile.ToString(); var Employee_Financial_Contract_Header = dbcontext.Employee_Financial_Contract_Header.Where(a => a.IsActive == true).FirstOrDefault(a => a.Employee_Code == emp).ID; var FinancialContract = Employee_Financial_Contract_Header.ToString(); var Employee_Financial_Contract_Detail = dbcontext.Employee_Financial_Contract_Detail.Where(a => a.Contract_Number == FinancialContract).FirstOrDefault(a => a.Salarycodedescription == salary_code).SalaryCodeValue; var NewSalaryFinancial = dbcontext.Employee_Financial_Contract_Detail.Where(a => a.Contract_Number == FinancialContract).FirstOrDefault(a => a.Salarycodedescription == salary_code); EmployeeAnnualIncreaseHistory new_Record = new EmployeeAnnualIncreaseHistory(); new_Record.Employee_Code = emp.ToString(); new_Record.Year = model.EmployeeAnnualIncreaseHistory.Year; new_Record.Month = model.EmployeeAnnualIncreaseHistory.Month; new_Record.IncreaseType = model.IncreaseType.GetHashCode(); new_Record.Notes = model.EmployeeAnnualIncreaseHistory.Notes; if (percentage[1] == "0") { double per = double.Parse(money[1]); new_Record.AllowncePercentage = per; new_Record.AllownceAmount = per; new_Record.OldSalary = Employee_Financial_Contract_Detail; new_Record.NewSalary = (Employee_Financial_Contract_Detail + per); NewSalaryFinancial.SalaryCodeValue = new_Record.NewSalary; } else { double per = double.Parse(percentage[1]); new_Record.AllowncePercentage = model.EmployeeAnnualIncreaseHistory.AllowncePercentage; var Percentage = ((per * Employee_Financial_Contract_Detail) / 100); new_Record.AllownceAmount = Percentage; new_Record.OldSalary = Employee_Financial_Contract_Detail; new_Record.NewSalary = (Employee_Financial_Contract_Detail + Percentage); NewSalaryFinancial.SalaryCodeValue = new_Record.NewSalary; } new_Record.Created_By = User.Identity.Name; new_Record.Created_Date = DateTime.Now.Date; var Header = dbcontext.EmployeeAnnualIncreaseHistory.Add(new_Record); dbcontext.SaveChanges(); } } } else if (MyItem.FileName != null) { string folderpath = Server.MapPath("~/EmployeeAnnualFromExcel/"); Directory.CreateDirectory(folderpath); string FilePath = folderpath; string filename = MyItem.FileName + Guid.NewGuid() + Path.GetExtension(MyItem.FileName); string p = FilePath + "/" + filename; MyItem.SaveAs(p); var FileCombine = Path.Combine(p); var Listt = ReadExcelFile(FileCombine); TempData["list"] = Listt; return(RedirectToAction("ViewExecl", "EmployeeAnnualandSpecialAllowance")); } } //////////////// return(RedirectToAction("index")); } catch (Exception e) { return(View(model)); } }