Esempio n. 1
0
        public int DeleteData(List <IDto> listDto)
        {
            int returnCode = CommonData.DbReturnCode.Succeed;

            try
            {
                using (BaseDao context = new BaseDao())
                {
                    context.BeginTransaction();
                    foreach (SYS_UserDetailDTO _UserDeleteDto in listDto)
                    {
                        #region Delete GroupAssign

                        var _groupsassign = context.ms_groupsassign.AsQueryable();
                        _groupsassign = _groupsassign.Where(ga => ga.UserCode.Equals(_UserDeleteDto.UserName));
                        foreach (var ga in _groupsassign)
                        {
                            context.DeleteObject(ga);
                            context.Saves();
                        }

                        if (returnCode != CommonData.DbReturnCode.Succeed)
                        {
                            context.Rollback();
                            return(returnCode);
                        }

                        #endregion Delete GroupAssign

                        #region Delete User

                        var _user = context.ms_users.FirstOrDefault(u => u.Code.Equals(_UserDeleteDto.UserName));
                        //_user = _user.Where(u => u.Code.Equals(_UserDeleteDto.UserName));
                        if (returnCode == CommonData.DbReturnCode.Succeed)
                        {
                            context.DeleteObject(_user);
                            //context.Saves();
                            returnCode = context.Saves(CommonData.FunctionGr.SY_Users, CommonData.Action.Delete,
                                                       new { _user.Code, _user.DisplayName },
                                                       typeof(ms_users).Name);
                        }
                        if (returnCode != CommonData.DbReturnCode.Succeed)
                        {
                            context.Rollback();
                            return(returnCode);
                        }
                    }
                    //Commit to database
                    if (returnCode == CommonData.DbReturnCode.Succeed)
                    {
                        context.Commit();
                    }

                    #endregion Delete User
                }
            }
            catch (Exception ex)
            {
                returnCode = this.ProcessDbException(ex);
            }

            return(returnCode);
        }
Esempio n. 2
0
        public int UpdateData(SYS_UserDetailDTO _UserUpdateDto)
        {
            int returnCode = CommonData.DbReturnCode.Succeed;

            try
            {
                using (BaseDao context = new BaseDao())
                {
                    context.BeginTransaction();

                    #region Update User

                    ms_users _users = context.ms_users.FirstOrDefault(u => u.ID.Equals(_UserUpdateDto.ID));
                    if (_users != null)
                    {
                        _users.ID          = _UserUpdateDto.ID;
                        _users.Code        = _UserUpdateDto.UserName;
                        _users.DisplayName = _UserUpdateDto.FullName;
                        _users.Status      = _UserUpdateDto.Status;
                        _users.Password    = _UserUpdateDto.Password;

                        //Save to database
                        //returnCode = context.Saves();
                        returnCode = context.Saves(CommonData.FunctionGr.SY_Users, CommonData.Action.Update,
                                                   new { _users.Code, _users.DisplayName, _users.Status },
                                                   typeof(ms_users).Name);

                        //Check if error occur
                        if (returnCode != CommonData.DbReturnCode.Succeed)
                        {
                            context.Rollback();
                            return(returnCode);
                        }
                    }
                    else
                    {
                        returnCode = CommonData.DbReturnCode.DataNotFound;
                    }

                    #endregion Update User

                    #region Delete GroupAssign

                    var _groupsassign = context.ms_groupsassign.AsQueryable();
                    _groupsassign = _groupsassign.Where(ga => ga.UserCode.Equals(_UserUpdateDto.UserName));
                    foreach (var ga in _groupsassign)
                    {
                        context.DeleteObject(ga);
                    }

                    #endregion Delete GroupAssign

                    #region Insert data to GroupAssign Table

                    ms_groupsassign groupsassign = null;
                    foreach (var item in _UserUpdateDto.UserGroups)
                    {
                        groupsassign            = new ms_groupsassign();
                        groupsassign.UserCode   = _UserUpdateDto.UserName;
                        groupsassign.GroupCode  = item.Code;
                        groupsassign.SystemData = "0";
                        context.ms_groupsassign.AddObject(groupsassign);
                        returnCode = context.Saves();
                    }

                    if (returnCode != CommonData.DbReturnCode.Succeed)
                    {
                        context.Rollback();
                        return(returnCode);
                    }

                    //Commit to database
                    if (returnCode == CommonData.DbReturnCode.Succeed)
                    {
                        context.Commit();
                    }

                    #endregion Insert data to GroupAssign Table
                }
            }
            catch (Exception ex)
            {
                returnCode = this.ProcessDbException(ex);
            }

            return(returnCode);
        }