private void SetExtraWorkTypeList(int?type, bool allowBlank = true)
        {
            IExtraWorkTypeService cs = new ExtraWorkTypeService(Settings.Default.db);


            List <ExtraWorkType> certType = cs.All();

            List <SelectListItem> select = new List <SelectListItem>();

            if (allowBlank)
            {
                select.Add(new SelectListItem {
                    Text = "", Value = ""
                });
            }

            foreach (var certt in certType)
            {
                if (type.HasValue && type.ToString().Equals(certt.id))
                {
                    select.Add(new SelectListItem {
                        Text = certt.name, Value = certt.id.ToString(), Selected = true
                    });
                }
                else
                {
                    select.Add(new SelectListItem {
                        Text = certt.name, Value = certt.id.ToString(), Selected = false
                    });
                }
            }
            ViewData["extraWorkTypeList"] = select;
        }
        /// <summary>
        /// 验证
        /// </summary>
        /// <param name="model"></param>
        /// <param name="dbString"></param>
        public void Validate(string dbString)
        {
            ValidateMessage msg = new ValidateMessage();

            if (string.IsNullOrEmpty(this.OtTimeStr))
            {
                msg.Contents.Add("日期不可空");
            }
            else
            {
                DateTime dt = DateTime.Now;
                if (DateTime.TryParse(this.OtTimeStr, out dt))
                {
                    //this.RecordAtDate = dt;
                }
                else
                {
                    msg.Contents.Add("日期格式错误");
                }
            }

            if (string.IsNullOrEmpty(this.StartHourStr))
            {
                msg.Contents.Add("开始时间不可空");
            }
            else
            {
                TimeSpan ts = DateTime.Now.TimeOfDay;
                if (TimeSpan.TryParse(this.StartHourStr, out ts))
                {
                    //this.RecordAtDate = dt;
                }
                else
                {
                    msg.Contents.Add("开始时间格式错误");
                }
            }

            if (string.IsNullOrEmpty(this.EndHourStr))
            {
                msg.Contents.Add("结束时间不可空");
            }
            else
            {
                TimeSpan ts = DateTime.Now.TimeOfDay;
                if (TimeSpan.TryParse(this.EndHourStr, out ts))
                {
                    //this.RecordAtDate = dt;
                }
                else
                {
                    msg.Contents.Add("结束时间格式错误");
                }
            }

            if (string.IsNullOrEmpty(this.OtTimeStr))
            {
                msg.Contents.Add("日期不可空");
            }
            else
            {
                DateTime dt = DateTime.Now;
                if (DateTime.TryParse(this.OtTimeStr, out dt))
                {
                    //this.RecordAtDate = dt;
                }
                else
                {
                    msg.Contents.Add("日期格式错误");
                }
            }
            if (string.IsNullOrEmpty(this.StaffNr))
            {
                msg.Contents.Add("工号");
            }
            else
            {
                BlueHrLib.Data.Staff staff = new StaffService(dbString).FindByNr(this.StaffNr);
                if (staff == null)
                {
                    msg.Contents.Add("人员编号不存在");
                }
            }

            if (string.IsNullOrEmpty(this.ExtraWorkTypeStr))
            {
                msg.Contents.Add("加班类别不可空");
            }
            else
            {
                IExtraWorkTypeService si    = new ExtraWorkTypeService(dbString);
                List <ExtraWorkType>  absTs = si.All();

                bool hasExists = absTs.Where(p => p.name.Equals(this.ExtraWorkTypeStr)).ToList().Count() > 0;

                if (!hasExists)
                {
                    msg.Contents.Add("加班类别不存在");
                }
                else
                {
                    ExtraWorkType abs = absTs.Where(p => p.name.Equals(this.ExtraWorkTypeStr)).FirstOrDefault();
                    this.ExtraWorkTypeId = abs.id;
                }
            }

            //if (string.IsNullOrEmpty(this.DurationTypeStr))
            //{
            //    msg.Contents.Add("时间单位不可空");
            //}
            //else
            //{
            //    bool isVal = DurationTypeStr != "Hour" || DurationTypeStr != "Day";

            //    if (!isVal)
            //    {
            //        msg.Contents.Add("时间单位不存在");
            //    }
            //    else
            //    {
            //        if (DurationTypeStr == "天" || DurationTypeStr == "Day")
            //        {
            //            DurationType = (int)BlueHrLib.Data.Enum.DurationType.Day;
            //        }

            //        if (DurationTypeStr == "小时" || DurationTypeStr == "Hour")
            //        {
            //            DurationType = (int)BlueHrLib.Data.Enum.DurationType.Hour;
            //        }
            //    }
            //}

            //if (string.IsNullOrEmpty(Remark))
            //{
            //    msg.Contents.Add("缺勤原因不可空");
            //}

            if (string.IsNullOrEmpty(this.Duration))
            {
                msg.Contents.Add("缺勤小时不可空");
            }

            //if (msg.Contents.Count == 0)
            //{
            //    if (this.ScheduleAt.HasValue)
            //    {
            //        IShiftScheduleService ss = new ShiftSheduleService(dbString);

            //        if (ss.IsDup(new ShiftSchedule() { id = 0, scheduleAt = this.ScheduleAt.Value, shiftId = this.Shift.id, staffNr = this.StaffNr }))
            //        {
            //            msg.Contents.Add("排班记录已存在,不可重复导入");
            //        }
            //    }
            //}

            msg.Success = msg.Contents.Count == 0;

            this.ValidateMessage = msg;
        }
Beispiel #3
0
        public ActionResult Index()
        {
            IExtraWorkTypeService s = new ExtraWorkTypeService(Settings.Default.db);

            return(View(s.All()));
        }