Beispiel #1
0
        public HttpResponseMessage SaveRole(string roleJson, string contextJson, string rightJson)
        {
            AdmRoleContract roleDTO = new AdmRoleContract();

            roleDTO = JsonConvert.DeserializeObject <AdmRoleContract>(roleJson);
            string[]       selectedContexts = JsonConvert.DeserializeObject <string[]>(contextJson);
            string[]       rightIds         = JsonConvert.DeserializeObject <string[]>(rightJson);
            string         roleId           = "";
            string         errMessage       = string.Empty;
            SqlTransaction tran             = DataProvider.beginTrans();

            try
            {
                businessRule.RegistInstants(roleDTO);
                if (roleDTO.Id > 0)
                {
                    roleId = roleDT.Update(roleDTO, tran);
                }
                else
                {
                    businessRule.RegistRule("Insert");
                    if (businessRule.CheckRules(out errMessage))
                    {
                        roleId = roleDT.Insert(roleDTO, tran);
                    }
                    else
                    {
                        return(handleBRFailed(errMessage, tran));
                    }
                }
                deleteContext(roleDTO.Id.ToString(), tran);
                foreach (string contextId in selectedContexts)
                {
                    AdmRolecontextContract roleCtxDTO = new AdmRolecontextContract();
                    roleCtxDTO.Roleid     = Converter.ToInt32(roleId);
                    roleCtxDTO.Contextid  = Converter.ToInt32(contextId);
                    roleCtxDTO.Permission = "1";
                    roleCtx.Insert(roleCtxDTO, tran);
                }
                deleteRight(roleDTO.Id.ToString(), tran);
                foreach (string rightId in rightIds)
                {
                    AdmRolerightContract roleRightDTO = new AdmRolerightContract();
                    roleRightDTO.Roleid  = Converter.ToInt32(roleId);
                    roleRightDTO.Rightid = Converter.ToInt32(rightId);
                    roleRightDT.Insert(roleRightDTO, tran);
                }
                DataProvider.CommitTrans(tran);
                UpdateUserSitemap(roleDTO.Id.ToString());
            }
            catch (Exception e)
            {
                DataProvider.RollbackTrans(tran);
            }
            finally
            {
                tran.Dispose();
            }
            return(Request.CreateResponse <string>(HttpStatusCode.OK, errMessage != string.Empty ? errMessage : roleId));
        }
Beispiel #2
0
        /// <summary>
        /// Cập nhật thông tin đối tượng
        /// </summary>
        /// <param name="menu"></param>
        /// <param name="tran"></param>
        /// <returns></returns>
        public string Update(AdmRolerightContract admroleright, SqlTransaction tran = null)
        {
            string query = String.Format("UPDATE " + TableName + @" SET RoleID={0},RightID={1}
                            WHERE ID=" + admroleright.Id.ToString(),
                                         (admroleright.Roleid != null? admroleright.Roleid.ToString() : "null").ToString(),
                                         (admroleright.Rightid != null? admroleright.Rightid.ToString() : "null").ToString());

            if (tran == null)
            {
                DataProvider.ExecuteNonQuery(query);
            }
            else
            {
                DataProvider.ExecuteNonQueryWithTransaction(query, tran);
            }
            return(admroleright.Id.ToString());
        }
Beispiel #3
0
        /// <summary>
        /// Insert đối tượng vào database
        /// </summary>
        /// <param name="menu"></param>
        /// <returns></returns>
        public string Insert(AdmRolerightContract admroleright, SqlTransaction tran = null)
        {
            DataTable dtResult = null;
            string    query    = string.Format(@"INSERT INTO Adm_RoleRight
                                        VALUES ({0},{1})",

                                               (admroleright.Roleid != null? admroleright.Roleid.ToString() : "null").ToString(),
                                               (admroleright.Rightid != null? admroleright.Rightid.ToString() : "null").ToString());

            query += " ; select SCOPE_IDENTITY();";
            if (tran == null)
            {
                dtResult = DataProvider.ExecuteQuery(query);
            }
            else
            {
                dtResult = DataProvider.ExecuteQueryWithTransaction(query, tran);
            }
            if (dtResult != null && dtResult.Rows.Count > 0)
            {
                return(dtResult.Rows[0][0].ToString());
            }
            return("");
        }