public JsonResult UpdateSalary(IndexSalariesListVM obj)
        {
            var    result  = (dynamic)null;
            string message = (dynamic)null;

            try
            {
                if (obj.Salaries != null)
                {
                    var Salaries = new UpdateSalary_Salaries()
                    {
                        Id           = obj.Salaries.Id,
                        TermNo       = obj.Salaries.TermNo,
                        SalaryTypeId = obj.Salaries.SalaryTypeId,
                        StaffId      = obj.Salaries.StaffId,
                        Date         = obj.Salaries.Date,
                        Amount       = obj.Salaries.Amount,
                        Remark       = obj.Salaries.Remark
                    };
                    var model = new UpdateSalary()
                    {
                        Salaries = Salaries
                    };
                    message = _SalariesServ.UpdateSalary(model);
                    result  = Json(new { success = true, Message = message });
                }
            }
            catch (Exception ex)
            {
                result = Json(new { success = false, Message = "ERROR101:Salaries/UpdateSalary - " + ex.Message });
            }
            return(result);
        }
        public async Task <IActionResult> SalariesList(long staffId, long salaryYear)
        {
            try
            {
                var SalariesList = Task.Run(() => _SalariesServ.getSalariesList(staffId, salaryYear));
                var result       = await SalariesList;
                ViewBag.ddlTermNo      = _SalariesServ.dropdown_TermNo(staffId, salaryYear);
                ViewBag.ddlBonusTermNo = _SalariesServ.dropdown_BonusTermNo(staffId, salaryYear);
                ViewBag.ddlStaffs      = _StaffsServ.dropdown_Staffs();
                var getStaffs = new IndexSalariesListVM_Staffs()
                {
                    Id            = result.Staffs.Id,
                    DesignationId = result.Staffs.DesignationId,
                    FirstName     = result.Staffs.FirstName,
                    LastName      = result.Staffs.LastName,
                    Name          = result.Staffs.Name,
                    Designation   = result.Staffs.Designation,
                    Cell          = result.Staffs.Cell,
                    Email         = result.Staffs.Email,
                    Address       = result.Staffs.Address
                };
                var list = new List <IndexSalariesListVM_Salaries>();
                foreach (var item in result._Salaries.ToList())
                {
                    var temp = new IndexSalariesListVM_Salaries()
                    {
                        Id           = item.Id,
                        StaffId      = item.StaffId,
                        StaffName    = item.StaffName,
                        TermNo       = item.TermNo,
                        SalaryTypeId = item.SalaryTypeId,
                        Date         = item.Date,
                        Amount       = item.Amount,
                        Remark       = item.Remark
                    };
                    list.Add(temp);
                }
                ;

                var model = new IndexSalariesListVM()
                {
                    Amount      = result.Amount,
                    BonusAmount = result.BonusAmount,
                    Staffs      = getStaffs,
                    _Salaries   = list,
                };


                return(View("StaffDetailsWithSalary", model));
            }
            catch (Exception)
            {
                return(BadRequest());
            }
        }
        public async Task <IActionResult> SalariesListByAdmin(long staffId, long salaryYear)
        {
            try
            {
                var SalariesList = Task.Run(() => _SalariesServ.getSalariesList(staffId, salaryYear));
                var result       = await SalariesList;
                ViewBag.ddlStaffs = _StaffsServ.dropdown_Staffs();
                var list = new List <IndexSalariesListVM_Salaries>();
                foreach (var item in result._Salaries.ToList())
                {
                    var temp = new IndexSalariesListVM_Salaries()
                    {
                        Id        = item.Id,
                        StaffId   = item.StaffId,
                        StaffName = item.StaffName,
                        Date      = item.Date,
                        Amount    = item.Amount,
                        Remark    = item.Remark
                    };
                    list.Add(temp);
                }
                ;

                var model = new IndexSalariesListVM()
                {
                    _Salaries = list
                };


                return(View("SalariesListByAdmin", model));
            }
            catch (Exception)
            {
                return(BadRequest());
            }
        }