Exemplo n.º 1
0
        public ActionResult Edit(ApplyDetailModel2 model)
        {
            try
            {
                var applyDal = new CHK_STAFF_APPLYDETAIL_DAL();
                var item     = applyDal.Get(model.APPLYDETAIL_ID);
                ApplyitemDao.Delete("APPLYDETAIL_ID", model.APPLYDETAIL_ID);

                var BeginTime = Convert.ToDateTime(model.BeginTime);
                var EndTime   = Convert.ToDateTime(model.EndTime);

                item.APPLY_STATE  = (byte)6;
                item.APPLY_USR_ID = UserState.UserID;
                item.AUD_USR_ID   = UserState.UserID;
                item.BEGIN_TIME   = BeginTime.AddHours(model.BeginTimeHours);
                item.END_TIME     = EndTime.AddHours(model.EndTimeHours);
                item.HOLLI_TYP    = (byte)model.HOLLI_TYP;
                item.APPLY_REASON = model.APPLY_REASON;


                var id = AppDao.UpdateObject(item);

                var detail = new CHK_STAFF_APPLYITEM()
                {
                    HOLLI_TYP      = item.HOLLI_TYP,
                    APPLY_DATE     = item.BEGIN_TIME,
                    APPLYDETAIL_ID = item.APPLYDETAIL_ID,
                    CHK_STAFF_ID   = item.CHK_STAFF_ID,
                    A_P_TYP        = 1
                };

                var d = getDiffDays(BeginTime, EndTime);

                for (var i = 0; i < d; i++)
                {
                    detail.APPLY_DATE = BeginTime.Date;
                    detail.A_P_TYP    = 1;
                    ApplyitemDao.AddObject(detail);

                    detail.A_P_TYP = 2;
                    ApplyitemDao.AddObject(detail);

                    BeginTime = BeginTime.AddDays(1);
                }
                if (model.BeginTimeHours == 8 && model.EndTimeHours >= 12)
                {
                    detail.A_P_TYP    = 1;
                    detail.APPLY_DATE = BeginTime.Date;
                    ApplyitemDao.AddObject(detail);
                }
                if (model.BeginTimeHours == 8 && model.EndTimeHours == 17)
                {
                    detail.A_P_TYP    = 2;
                    detail.APPLY_DATE = BeginTime.Date;
                    ApplyitemDao.AddObject(detail);
                }
                if (model.BeginTimeHours == 12)
                {
                    detail.A_P_TYP    = 2;
                    detail.APPLY_DATE = BeginTime.Date;
                    ApplyitemDao.AddObject(detail);
                }

                Alter("撤消成功!", util.Enum.AlterTypeEnum.Success, false, true);
                return(Redirect("/Home/Blank"));
            }
            catch (Exception ex)
            {
                LogHelper.ErrorLog("撤消出错。", ex);
                ModelState.AddModelError("", "撤消出错。");
                return(View(model));
            }
        }