Пример #1
0
        public MessageReport Update(tblAccessLevel obj)
        {
            MessageReport report;

            try
            {
                _tblAccessLevelRepository.Update(obj);
                Save();
                report = new MessageReport(true, "Cập nhật thành công");
            }
            catch (Exception ex)
            {
                report = new MessageReport(false, ex.InnerException != null ? ex.InnerException.ToString() : ex.Message);
            }
            return(report);
        }
Пример #2
0
 /// <summary>
 /// Returns employee's role.
 /// </summary>
 /// <param name="userName"></param>
 /// <param name="password"></param>
 /// <returns></returns>
 public string Role(string userName, string password)
 {
     try
     {
         using (EmployeeEntities context = new EmployeeEntities())
         {
             tblManager     manager    = (from x in context.tblManagers where x.EmployeeID == id select x).First();
             tblSector      sector     = (from s in context.tblSectors where s.SectorID == manager.SectorID select s).First();
             tblAccessLevel accesLevel = (from a in context.tblAccessLevels where a.AccessLevelID == manager.AccessLevelID select a).First();
             return(accesLevel.AccessLevel + "-" + sector.SectorName);
         }
     }
     catch
     {
         return("employee");
     }
 }
Пример #3
0
        public tblAccessLevel GetAccessLevelByID(int accesLevelId)
        {
            try
            {
                using (WorkingHoursDBEntities context = new WorkingHoursDBEntities())
                {
                    tblAccessLevel accLevelFromDB = (from r in context.tblAccessLevels
                                                     where r.ID == accesLevelId
                                                     select r).First();


                    return(accLevelFromDB);
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine("Exception" + ex.Message.ToString());
                return(null);
            }
        }
        public ActionResult Update(tblAccessLevel obj, string hidValueSelectedDoor = "", string hidValueSelectedControllerTime = "", int pageNumber = 1)
        {
            ViewBag.urlValue = url ?? Request.Url.PathAndQuery;

            //Kiểm tra
            var oldObj = _tblAccessLevelService.GetById(obj.AccessLevelID);

            if (oldObj == null)
            {
                ViewBag.Error = "Bản ghi không tồn tại";
                return(View(obj));
            }

            if (!ModelState.IsValid)
            {
                return(View(oldObj));
            }

            //Lọc lấy controller + time
            if (!string.IsNullOrWhiteSpace(hidValueSelectedControllerTime) || !string.IsNullOrWhiteSpace(hidValueSelectedDoor))
            {
                var details = _tblAccessLevelDetailService.GetAllByLevelId(obj.AccessLevelID.ToString());
                if (details.Any())
                {
                    foreach (var item in details)
                    {
                        _tblAccessLevelDetailService.DeleteById(item.Id);
                    }
                }

                //Tách các chuỗi theo dấu cách ,
                var idControllerTimes = hidValueSelectedControllerTime.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                if (idControllerTimes.Any())
                {
                    foreach (var item in idControllerTimes)
                    {
                        //Lọc lấy dữ liệu với dấu cách -
                        var mapObj = item.Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries);
                        if (mapObj.Any() && mapObj.Length > 1)
                        {
                            var newObj = new tblAccessLevelDetail()
                            {
                                AccessLevelID = obj.AccessLevelID.ToString(),
                                ControllerID  = mapObj[0].ToString(),
                                TimezoneID    = mapObj[1].ToString(),
                                DoorIndexes   = "",
                            };

                            //Lọc lấy danh sách door có dấu cách ,
                            var idDoor = hidValueSelectedDoor.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                            if (idDoor.Any())
                            {
                                var count = 0;

                                //var listDoor = "";
                                foreach (var item1 in idDoor.Where(n => n.Contains(newObj.ControllerID)))
                                {
                                    //if (item1.Contains(newObj.ControllerID))
                                    //{

                                    //}
                                    count++;

                                    var mapObj1 = item1.Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries);

                                    if (mapObj1.Any() && mapObj1.Length > 1)
                                    {
                                        newObj.DoorIndexes += string.Format("{0}{1}", mapObj1[1].ToString(), idDoor.Where(n => n.Contains(newObj.ControllerID)).Count() == count ? "" : ";");
                                    }
                                }

                                //Save vào bản detail
                                _tblAccessLevelDetailService.Create(newObj);
                            }
                        }
                    }
                }
            }

            //Gán giá trị
            oldObj.AccessLevelName = obj.AccessLevelName;
            oldObj.Description     = obj.Description;
            oldObj.Inactive        = obj.Inactive;

            //Thực hiện cập nhật
            var result = _tblAccessLevelService.Update(oldObj);

            if (result.isSuccess)
            {
                WriteLog.Write(result, GetCurrentUser.GetUser(), oldObj.AccessLevelID.ToString(), oldObj.AccessLevelName, "tblAccessLevel", ConstField.AccessControlCode, ActionConfigO.Update);

                return(RedirectToAction("Index"));
            }
            else
            {
                ModelState.AddModelError("", result.Message);
                return(View(oldObj));
            }
        }
        public ActionResult Create(tblAccessLevel obj, string hidValueSelectedDoor = "", string hidValueSelectedControllerTime = "", bool SaveAndCountinue = false)
        {
            ViewBag.hidValueSelectedDoorValue           = hidValueSelectedDoor;
            ViewBag.hidValueSelectedControllerTimeValue = hidValueSelectedControllerTime;

            ViewBag.urlValue = url ?? Request.Url.PathAndQuery;

            //Kiểm tra
            if (!ModelState.IsValid)
            {
                return(View(obj));
            }

            //Gán giá trị
            obj.AccessLevelID = Guid.NewGuid();

            //Lọc lấy controller + time
            if (!string.IsNullOrWhiteSpace(hidValueSelectedControllerTime) && !string.IsNullOrWhiteSpace(hidValueSelectedDoor))
            {
                //Tách các chuỗi theo dấu cách ,
                var idControllerTimes = hidValueSelectedControllerTime.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                if (idControllerTimes.Any())
                {
                    foreach (var item in idControllerTimes)
                    {
                        //Lọc lấy dữ liệu với dấu cách -
                        var mapObj = item.Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries);
                        if (mapObj.Any() && mapObj.Length > 1)
                        {
                            var newObj = new tblAccessLevelDetail()
                            {
                                AccessLevelID = obj.AccessLevelID.ToString(),
                                ControllerID  = mapObj[0].ToString(),
                                TimezoneID    = mapObj[1].ToString(),
                                DoorIndexes   = "",
                            };

                            //Lọc lấy danh sách door có dấu cách ,
                            var idDoor = hidValueSelectedDoor.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                            if (idDoor.Any())
                            {
                                var count = 0;

                                //var listDoor = "";
                                foreach (var item1 in idDoor.Where(n => n.Contains(newObj.ControllerID)))
                                {
                                    //if (item1.Contains(newObj.ControllerID))
                                    //{

                                    //}
                                    count++;

                                    var mapObj1 = item1.Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries);

                                    if (mapObj1.Any() && mapObj1.Length > 1)
                                    {
                                        newObj.DoorIndexes += string.Format("{0}{1}", mapObj1[1].ToString(), idDoor.Where(n => n.Contains(newObj.ControllerID)).Count() == count ? "" : ";");
                                    }
                                }

                                //Save vào bản detail
                                _tblAccessLevelDetailService.Create(newObj);
                            }
                        }
                    }
                }
            }

            //Thực hiện thêm mới
            var result = _tblAccessLevelService.Create(obj);

            if (result.isSuccess)
            {
                WriteLog.Write(result, GetCurrentUser.GetUser(), obj.AccessLevelID.ToString(), obj.AccessLevelName, "tblAccessLevel", ConstField.AccessControlCode, ActionConfigO.Create);

                TempData["Success"] = result.Message;

                if (SaveAndCountinue)
                {
                    return(RedirectToAction("Create"));
                }

                return(RedirectToAction("Index"));
            }
            else
            {
                ModelState.AddModelError("", result.Message);
                return(View(obj));
            }
        }