Esempio n. 1
0
        public ActionResult create()
        {
            try
            {
                ViewBag.Employee_Profile = dbcontext.Employee_Profile.Where(a => a.Active == true).ToList().Select(m => new { Code = m.Code + "-[" + m.Full_Name + ']', ID = m.ID });
                ViewBag.Vacations_Setup  = dbcontext.Vacations_Setup.ToList().Select(m => new { Code = "" + m.LeaveTypeCode + "-----[" + m.LeaveTypeNameEnglish + ']', ID = m.ID }).ToList();
                //DateTime Statis = DateTime.Now;
                var new_record = new LeavesTransactionBalance {
                    TransactionDate = DateTime.Now, Created_Date = DateTime.Now, Created_By = User.Identity.Name, Remain = 0, Balance = 0, Value = 0
                };
                var stru   = dbcontext.StructureModels.FirstOrDefault(m => m.All_Models == ChModels.Personnel).Structure_Code;
                var model_ = dbcontext.LeavesTransactionBalance.ToList();
                if (model_.Count() == 0)
                {
                    new_record.Serial_LB = stru + "1";
                }
                else
                {
                    new_record.Serial_LB = stru + (model_.LastOrDefault().ID + 1).ToString();
                }

                var model = new Headers {
                    LeavesTransactionBalance = new_record, TransactionType = TransactionType.Increasing
                };

                return(View(model));
            }
            catch (Exception)
            {
                return(RedirectToAction("index"));
            }
        }
Esempio n. 2
0
        public ActionResult Create(Headers model, FormCollection form)
        {
            try
            {
                ViewBag.Employee_Profile = dbcontext.Employee_Profile.Where(a => a.Active == true).ToList().Select(m => new { Code = m.Code + "-[" + m.Full_Name + ']', ID = m.ID });
                ViewBag.Vacations_Setup  = dbcontext.Vacations_Setup.ToList().Select(m => new { Code = "" + m.LeaveTypeCode + "-----[" + m.LeaveTypeNameEnglish + ']', ID = m.ID }).ToList();

                LeavesTransactionBalance new_Record = new LeavesTransactionBalance();

                new_Record.SerialNo   = model.LeavesTransactionBalance.SerialNo;
                new_Record.EmployeeID = model.LeavesTransactionBalance.EmployeeID;
                new_Record.VacCode    = model.LeavesTransactionBalance.VacCode;
                new_Record.SerialLTB  = model.LeavesTransactionBalance.SerialLTB;
                new_Record.Serial_LB  = model.LeavesTransactionBalance.Serial_LB;
                var FromBalance    = form["FromBalance"].Split(',');
                var CurrentBalance = form["CurrentBalance"].Split(',');

                DateTime?Balance = DateTime.Parse(FromBalance[0]);
                new_Record.Year = Balance.Value.Year;

                new_Record.TransactionDate = model.LeavesTransactionBalance.TransactionDate;
                if (model.LeavesTransactionBalance.Balance == 0 || model.LeavesTransactionBalance.Remain == 0)
                {
                    TempData["Message"] = "There should be value in Balance and Remain";
                    return(RedirectToAction("Create"));
                }
                new_Record.Value = model.LeavesTransactionBalance.Value;
                new_Record.Notes = model.LeavesTransactionBalance.Notes;
                var Current = int.Parse(CurrentBalance[0]);
                new_Record.Balance       = Current;
                new_Record.Remain        = model.LeavesTransactionBalance.Remain;
                new_Record.Company_ID    = model.LeavesTransactionBalance.Company_ID;
                new_Record.RowIndx       = model.LeavesTransactionBalance.RowIndx;
                new_Record.Created_By    = User.Identity.Name;
                new_Record.Created_Date  = DateTime.Now.Date;
                new_Record.Modified_By   = model.LeavesTransactionBalance.Modified_By;
                new_Record.Modified_Date = model.LeavesTransactionBalance.Modified_Date;
                var list = dbcontext.LeavesTransactionBalance.Where(a => a.VacCode == model.LeavesTransactionBalance.VacCode && a.EmployeeID == model.LeavesTransactionBalance.EmployeeID && a.Year == Balance.Value.Year).ToList();
                if (list.Count() == 0)
                {
                    new_Record.Check = true;
                }
                else
                {
                    var te = list.Where(m => m.Check == true);
                    foreach (var item in te)
                    {
                        item.Check = false;
                        dbcontext.SaveChanges();
                    }
                    new_Record.Check = true;
                }
                var Header = dbcontext.LeavesTransactionBalance.Add(new_Record);
                dbcontext.SaveChanges();

                return(RedirectToAction("index"));
            }
            catch (Exception e)
            {
                return(View(model));
            }
        }