public async Task <IActionResult> Edit(int id, [Bind("StaffSalaryId,OnDate,StaffId,PaidAmount,CalcualteAmount,Remarks")] StaffSalary staffSalary) { if (id != staffSalary.StaffSalaryId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(staffSalary); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StaffSalaryExists(staffSalary.StaffSalaryId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["StaffId"] = new SelectList(_context.Staff, "StaffId", "StaffId", staffSalary.StaffId); return(View(staffSalary)); }
public bool SaveStaffSalary(StaffSalary staffSalary) { //throw new NotImplementedException(); IStaffSalaryDAL dAL = new StaffSalaryDAL(); if (dAL.QueryById(staffSalary.Id) != null) { if (dAL.Update(staffSalary) > 0) { return(true); } else { return(false); } } else { if (dAL.Add(staffSalary) > 0) { return(true); } else { return(false); } } }
public async Task <IActionResult> Edit(int id, [Bind("SsId,StaffId,MonthName,Amount,Date")] StaffSalary staffSalary) { if (id != staffSalary.SsId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(staffSalary); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StaffSalaryExists(staffSalary.SsId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(staffSalary)); }
public async Task <IActionResult> Create([Bind("SsId,StaffId,MonthName,Amount,Date")] StaffSalary staffSalary) { if (ModelState.IsValid) { _context.Add(staffSalary); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(staffSalary)); }
public async Task <IActionResult> Create([Bind("StaffSalaryId,OnDate,StaffId,PaidAmount,CalcualteAmount,Remarks")] StaffSalary staffSalary) { if (ModelState.IsValid) { _context.Add(staffSalary); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["StaffId"] = new SelectList(_context.Staff, "StaffId", "StaffId", staffSalary.StaffId); return(View(staffSalary)); }
private void UpdateSelectedStaff() { StaffModel staff = (StaffModel)StaffsList.SelectedItem; if (staff != null) { StaffFullNameValue.Text = staff.Person.FullName; StaffSalaryList.ItemsSource = null; StaffSalaryList.ItemsSource = StaffSalary.FilterStaffSalariesByMonth(staff.GetStaffSalaries, (DateTime)SelectedDateValue.SelectedDate); TotalReceivedThisMonthValue.Value = StaffSalary.TotalReceivedByMonth(staff.GetStaffSalaries, (DateTime)SelectedDateValue.SelectedDate); StaffShouldReceiveThisMonthValue.Value = staff.GetStaffShouldReceiveThisMonth; } }
/// <summary> /// 工资发放 /// </summary> /// <param name="staffSalary"></param> /// <returns></returns> public ActionResult PaySalary(StaffSalary staffSalary) { //检查该月份该员工是否已经发过工资 var staffSal = SalaryHelper.CheckIfPaid(staffSalary.StaffId, staffSalary.SalaryMonth); if (staffSal != null) { TempData["CheckErr"] = "该员工" + staffSalary.SalaryMonth.Year + "-" + staffSalary.SalaryMonth.Month + "的薪资已经发放,请核查"; return(RedirectToAction("SalaryList")); } //获取该员工该薪资月的送水记录,统计提成用 var dailyRecords = DailyRecordHelper.DailyRecordList() .Where(item => item.VisitDate.Year == staffSalary.SalaryMonth.Year && item.VisitDate.Month == staffSalary.SalaryMonth.Month && item.StaffId == staffSalary.StaffId); //判断是否需要薪资发放类型 var salaryType = CompanyPayTypeHelper.GetById(SalaryPayType); if (salaryType == null) { MongoBase.Insert(new CompanyPayType { Id = SalaryPayType, PayType = "员工薪资支出" }); } staffSalary.Id = ObjectId.NewObjectId().ToString(); staffSalary.Commission = dailyRecords.Sum(i => i.SendBucketAmount) * Commission(); //提成 MongoBase.Insert(staffSalary); //公司当月支出增多相应金额 CompanyPayRecord companyRecord = new CompanyPayRecord() { Id = ObjectId.NewObjectId().ToString(), IsPayType = true, PayTypeId = SalaryPayType, StaffId = staffSalary.StaffId, TransSum = staffSalary.Salary, TransTime = Convert.ToDateTime(staffSalary.SalaryMonth + "-28") }; MongoBase.Insert(companyRecord); return(RedirectToAction("SalaryList")); }
/// <summary> /// 更新实体 /// </summary> /// <param name="user"></param> public static void Update(StaffSalary salary) { try { using (Mongo mongo = new Mongo(_connectionString)) { mongo.Connect(); var db = mongo.GetDatabase(_dbName); var collection = db.GetCollection <StaffSalary>(); // 更新对象 collection.Update(salary, item => item.Id == salary.Id); } } catch (Exception ex) { log.Error(ex); throw; } }
public ActionResult SalaryPaymentDetail(string id) { ISalaryGrantBLL salaryGrantBLL = new SalaryGrantBLL(); IStaffBLL staffBLL = new StaffBLL(); ISalaryBLL salaryBLL = new SalaryBLL(); ISalaryItemBLL salaryItemBLL = new SalaryItemBLL(); IOrgBLL orgBLL = new OrgBLL(); List <StaffPayment> staffPaymentList = salaryGrantBLL.GetAllStaffPaymentByPaymentId(Convert.ToInt32(id)); List <Models.StaffPayment> staffPaymentListView = new List <Models.StaffPayment>(); foreach (var sp in staffPaymentList) { Models.StaffPayment staffPayment = new Models.StaffPayment { Id = sp.Id, OddAmout = sp.OddAmout, MinusAmout = sp.MinusAmout }; //获取Model.StaffSalary,为StaffPayment装载StaffSalary StaffSalary staffSalary = salaryGrantBLL.GetStaffSalaryById(sp.StaffSalaryId); Models.StaffSalary staffSalaryView = new Models.StaffSalary { Id = staffSalary.Id, StaffFileNumber = staffSalary.StaffFileNumber }; Staff staff = staffBLL.GetStaffById(staffSalary.StaffId); staffSalaryView.Staff = new Models.Staff { Id = staff.Id, StaffName = staff.StaffName }; ThirdOrg thirdOrg = orgBLL.GetThirdOrgById(staff.ThirdOrgId); SecondOrg secondOrg = orgBLL.GetSecondOrgById(thirdOrg.ParentOrgId); FirstOrg firstOrg = orgBLL.GetFirstOrgById(secondOrg.ParentOrgId); Models.FirstOrg firstOrgView = new Models.FirstOrg { Id = firstOrg.Id, OrgLevel = firstOrg.OrgLevel, OrgName = firstOrg.OrgName }; Models.SecondeOrg secondeOrgView = new Models.SecondeOrg { Id = secondOrg.Id, OrgName = secondOrg.OrgName, OrgLevel = secondOrg.OrgLevel, ParentOrg = firstOrgView }; staffSalaryView.ThirdOrg = new Models.ThirdOrg { Id = thirdOrg.Id, ParentOrg = secondeOrgView, OrgLevel = thirdOrg.OrgLevel, OrgName = thirdOrg.OrgName }; SalaryStandard salaryStandard = salaryBLL.GetSalaryStandardById(staffSalary.StandardId); Models.SalaryStandard salaryStandardView = new Models.SalaryStandard { Id = salaryStandard.Id, StandardName = salaryStandard.StandardName, }; List <StandardMapItem> standardMapItemList = salaryBLL.GetAllStandardMapItemByStandardId(salaryStandard.Id); foreach (var item in standardMapItemList) { SalaryItem salaryItem = salaryItemBLL.GetSalaryItemById(item.ItemId); Models.SalaryItem salaryItemView = new Models.SalaryItem { Id = salaryItem.Id, Name = salaryItem.Name }; salaryStandardView.ItemAmout.Add(salaryItemView, item.Amout);; } staffSalaryView.SalaryStandard = salaryStandardView; staffPayment.StaffSalary = staffSalaryView; SalaryPayment salaryPayment = salaryGrantBLL.GetSalaryPaymentById(sp.PaymentId); staffPayment.SalaryPayment = new Models.SalaryPayment { Id = salaryPayment.Id, TotalPerson = salaryPayment.TotalPerson, TotalAmout = salaryPayment.TotalAmout, FileState = salaryPayment.FileState, FileNumber = salaryPayment.FileNumber, Registrant = salaryPayment.Registrant, RegistTime = salaryPayment.RegistTime, TotalReal = salaryPayment.TotalReal, CheckBy = salaryPayment.CheckBy, CheckTime = salaryPayment.CheckTime }; staffPaymentListView.Add(staffPayment); } ViewData["staffPaymentListView"] = staffPaymentListView; return(View()); }
public void WriteJsonSalary(StaffSalary staffSalary) { using StreamWriter sw = File.CreateText($"{path + StaffSalaryFolder}\\{staffSalary.name}_{staffSalary.payTime}.json"); sw.Write(JsonConvert.SerializeObject(staffSalary)); }