/// <summary> /// 通知代理人 /// </summary> /// <param name="sourceEmps"></param> /// <returns></returns> public void NoticeReplace(List <string> sourceEmps) { if (base.Form.BaseEmployee.Email == null) { return; } sourceEmps.ForEach(emp => { BaseEmployee sourceEmployee = new BaseEmployeeBll().Single(emp); List <FormProxy> replaceEmployees = new BaseServices <FormProxy>().LoadEntities(c => c.SourceEmpNo == emp && c.FormId == base.Form.FormType.FormId && c.StarTime <DateTime.Now && c.EndTime> DateTime.Now).ToList(); replaceEmployees.ForEach(e => base.ListArgs.Add(new EmailFormEventArgs() { To = new Dictionary <string, string> { { e.BaseEmployee.Email, e.BaseEmployee.Account } }, Subject = "表单签核通知【代签】[" + base.Form.FormType.FormName + "]", NickName = e.BaseEmployee.Account, Title = "表单签核通知【代签】[" + base.Form.FormType.FormName + "]", From = "MINICUT", Content = "<p>系统中有一张由" + base.Form.BaseEmployee.Account + "申请的表单需要您或 <b>" + sourceEmployee.Account + "</b> 的处理;</p><p>表单号为:" + base.Form.FormNo + ";</p>", Date = DateTime.Now, Link = $"进入系统处理表单<a href='{HostUrl}{"/eForm/Signing/Index"}' >进入系统</a>" })); }); }
/// <summary> /// 通知审核人 /// </summary> /// <param name="signers"></param> /// <returns></returns> public void NoticeSigner(List <string> signers) { if (base.Form.BaseEmployee.Email == null) { return; } signers.ForEach(emp => { BaseEmployee signerEmployee = new BaseEmployeeBll().Single(emp); base.ListArgs.Add(new EmailFormEventArgs() { To = new Dictionary <string, string> { { signerEmployee.Email, signerEmployee.Account } }, Subject = "表单签核通知[" + base.Form.FormType.FormName + "]", NickName = signerEmployee.Account, Title = "表单签核通知[" + base.Form.FormType.FormName + "]", From = "MINICUT", Content = "<p>系统中有一张由 " + base.Form.BaseEmployee.Account + " 申请的表单需要您要的处理;</p><p>表单号为:" + base.Form.FormNo + ";</p>", Date = DateTime.Now, Link = $"进入系统处理表单<a href='{HostUrl}{"/eForm/Signing/Index"}' >进入系统</a>" }); }); }
public void PatPost() { const string path = "/upfile/employee/"; var cemera = new CemeraLoad(path); var context = HttpContext; string uid = context.Request.QueryString["input"]; if (!string.IsNullOrEmpty(context.Request["Filename"]) && !string.IsNullOrEmpty(context.Request["Upload"])) { cemera.ResponseText(cemera.UploadTempAvatar(uid)); } if (string.IsNullOrEmpty(context.Request["avatar1"]) || string.IsNullOrEmpty(context.Request["avatar2"]) || string.IsNullOrEmpty(context.Request["avatar3"])) { return; } cemera.CreateDir(uid); if (!(cemera.SaveAvatar("avatar1", uid) && cemera.SaveAvatar("avatar2", uid) && cemera.SaveAvatar("avatar3", uid))) { System.IO.File.Delete(CemeraLoad.GetMapPath(path + uid + ".jpg")); cemera.ResponseText("<?xml version=\"1.0\" ?><root><face success=\"0\"/></root>"); return; } System.IO.File.Delete(CemeraLoad.GetMapPath(path + uid + ".jpg")); BaseEmployee employee = new BaseEmployeeBll().Single(uid); cemera.GenerationCard(Server.MapPath($"{path}{uid}/large.jpg"), employee.EmpNo, employee.BaseDepartment.FullName, employee.RealName); cemera.ResponseText("<?xml version=\"1.0\" ?><root><face success=\"1\"/></root>"); }
/// <summary> /// 月结日考勤汇总 /// </summary> /// <param name="keywords"></param> /// <param name="departmentId"></param> /// <param name="yearMonth"></param> public DataTable AttendnceTotal(string keywords, string departmentId, string yearMonth) { //DateTime end = DateTime.MinValue; //var start = this.YearMonth(yearMonth, "25", out end); DateTime start = (DateTime.Parse($"{yearMonth.Substring(0, 4)}-{yearMonth.Substring(4, 2)}-{25}")).AddMonths(-1).AddDays(1); //26 DateTime end = DateTime.Parse($"{yearMonth.Substring(0, 4)}-{yearMonth.Substring(4, 2)}-{25}"); //25 BaseEmployeeBll baseEmployeeBll = new BaseEmployeeBll(); //所有在职员工 var employees = //baseEmployeeBll.GetListIsDimission(); baseEmployeeBll.GetListByWheresql($" AND empNo in ({new BaseDataScopePermissionBll().GetScopeUserIdList("58e86c4c-8022-4d30-95d5-b3d0eedcc878", "", "")})"); if (!string.IsNullOrEmpty(keywords)) { var newemployee = new List <BaseEmployee>(); keywords.Split(',').ToList().ForEach(m => { newemployee.Add(employees.FirstOrDefault(c => c.EmpNo == m)); }); newemployee.RemoveAll(c => c == null); employees = newemployee; } List <HrmsAttAnalysis> attAnalysis = DataFactory.Database().FindList <HrmsAttAnalysis>($"AND attdate>='{start}' AND attdate <= '{end}'"); List <HrmsPersonAttView> hrmsPersonAttViews = new List <HrmsPersonAttView>(); employees.ForEach(m => { var currentAtt = attAnalysis.Where(k => k.EmpNo == m.EmpNo).ToList(); HrmsPersonAttView hrmsPersonAttView = new HrmsPersonAttView { Calendar = yearMonth }; var day1 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 1); var day2 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 2); var day3 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 3); var day4 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 4); var day5 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 5); var day6 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 6); var day7 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 7); var day8 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 8); var day9 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 9); var day10 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 10); var day11 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 11); var day12 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 12); var day13 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 13); var day14 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 14); var day15 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 15); var day16 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 16); var day17 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 17); var day18 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 18); var day19 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 19); var day20 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 20); var day21 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 21); var day22 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 22); var day23 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 23); var day24 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 24); var day25 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 25); var day26 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 26); var day27 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 27); var day28 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 28); var day29 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 29); var day30 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 30); var day31 = currentAtt.FirstOrDefault(k => k.AttDate.Day == 31); hrmsPersonAttView.D1 = day1 != null ? day1.Overtime + day1.WeekendOvertime + day1.HolidayOvertime : 0; hrmsPersonAttView.D2 = day2 != null ? day2.Overtime + day2.WeekendOvertime + day2.HolidayOvertime : 0; hrmsPersonAttView.D3 = day3 != null ? day3.Overtime + day3.WeekendOvertime + day3.HolidayOvertime : 0; hrmsPersonAttView.D4 = day4 != null ? day4.Overtime + day4.WeekendOvertime + day4.HolidayOvertime : 0; hrmsPersonAttView.D5 = day5 != null ? day5.Overtime + day5.WeekendOvertime + day5.HolidayOvertime : 0; hrmsPersonAttView.D6 = day6 != null ? day6.Overtime + day6.WeekendOvertime + day6.HolidayOvertime : 0; hrmsPersonAttView.D7 = day7 != null ? day7.Overtime + day7.WeekendOvertime + day7.HolidayOvertime : 0; hrmsPersonAttView.D8 = day8 != null ? day8.Overtime + day8.WeekendOvertime + day8.HolidayOvertime : 0; hrmsPersonAttView.D9 = day9 != null ? day9.Overtime + day9.WeekendOvertime + day9.HolidayOvertime : 0; hrmsPersonAttView.D10 = day10 != null ? day10.Overtime + day10.WeekendOvertime + day10.HolidayOvertime : 0; hrmsPersonAttView.D11 = day11 != null ? day11.Overtime + day11.WeekendOvertime + day11.HolidayOvertime : 0; hrmsPersonAttView.D12 = day12 != null ? day12.Overtime + day12.WeekendOvertime + day12.HolidayOvertime : 0; hrmsPersonAttView.D13 = day13 != null ? day13.Overtime + day13.WeekendOvertime + day13.HolidayOvertime : 0; hrmsPersonAttView.D14 = day14 != null ? day14.Overtime + day14.WeekendOvertime + day14.HolidayOvertime : 0; hrmsPersonAttView.D15 = day15 != null ? day15.Overtime + day15.WeekendOvertime + day15.HolidayOvertime : 0; hrmsPersonAttView.D16 = day16 != null ? day16.Overtime + day16.WeekendOvertime + day16.HolidayOvertime : 0; hrmsPersonAttView.D17 = day17 != null ? day17.Overtime + day17.WeekendOvertime + day17.HolidayOvertime : 0; hrmsPersonAttView.D18 = day18 != null ? day18.Overtime + day18.WeekendOvertime + day18.HolidayOvertime : 0; hrmsPersonAttView.D19 = day19 != null ? day19.Overtime + day19.WeekendOvertime + day19.HolidayOvertime : 0; hrmsPersonAttView.D20 = day20 != null ? day20.Overtime + day20.WeekendOvertime + day20.HolidayOvertime : 0; hrmsPersonAttView.D21 = day21 != null ? day21.Overtime + day21.WeekendOvertime + day21.HolidayOvertime : 0; hrmsPersonAttView.D22 = day22 != null ? day22.Overtime + day22.WeekendOvertime + day22.HolidayOvertime : 0; hrmsPersonAttView.D23 = day23 != null ? day23.Overtime + day23.WeekendOvertime + day23.HolidayOvertime : 0; hrmsPersonAttView.D24 = day24 != null ? day24.Overtime + day24.WeekendOvertime + day24.HolidayOvertime : 0; hrmsPersonAttView.D25 = day25 != null ? day25.Overtime + day25.WeekendOvertime + day25.HolidayOvertime : 0; hrmsPersonAttView.D26 = day26 != null ? day26.Overtime + day26.WeekendOvertime + day26.HolidayOvertime : 0; hrmsPersonAttView.D27 = day27 != null ? day27.Overtime + day27.WeekendOvertime + day27.HolidayOvertime : 0; hrmsPersonAttView.D28 = day28 != null ? day28.Overtime + day28.WeekendOvertime + day28.HolidayOvertime : 0; hrmsPersonAttView.D29 = day29 != null ? day29.Overtime + day29.WeekendOvertime + day29.HolidayOvertime : 0; hrmsPersonAttView.D30 = day30 != null ? day30.Overtime + day30.WeekendOvertime + day30.HolidayOvertime : 0; hrmsPersonAttView.D31 = day31 != null ? day31.Overtime + day31.WeekendOvertime + day31.HolidayOvertime : 0; //总和 foreach (var hrmsAttAnalysis in currentAtt) { hrmsPersonAttView.TotalOvertime += hrmsAttAnalysis.Overtime; hrmsPersonAttView.TotalWeekendOvertime += hrmsAttAnalysis.WeekendOvertime; hrmsPersonAttView.TotalHolidayOvertime += hrmsAttAnalysis.HolidayOvertime; hrmsPersonAttView.TotalAllOvertime = hrmsPersonAttView.TotalOvertime + hrmsPersonAttView.TotalWeekendOvertime + hrmsPersonAttView.TotalHolidayOvertime; } hrmsPersonAttView.EmpNo = m.EmpNo; hrmsPersonAttView.Name = m.RealName; hrmsPersonAttViews.Add(hrmsPersonAttView); }); return(hrmsPersonAttViews.ToDataTable()); }