示例#1
0
文件: BpmBll.cs 项目: sanxchen/MntApp
        /// <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>"
                }));
            });
        }
示例#2
0
文件: BpmBll.cs 项目: sanxchen/MntApp
        /// <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>"
                });
            });
        }
示例#3
0
        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>");
        }
示例#4
0
        /// <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());
        }