Example #1
0
        public static string getGroupJson(FPRole role, List<UserAC> users)
        {
            if (role == null)
                role = new FPRole();
            if (users == null)
                users = new List<UserAC>();

            string str = string.Empty;
            string ids = string.Empty;

            foreach (var u in users)
            {
                str = str + u.eng_name + ",";
                ids = ids + u.objectId + ",";
            }

            if (str != string.Empty)
                str = str.Substring(0, str.Length - 1);
            if (ids != string.Empty)
                ids = ids.Substring(0, ids.Length - 1);

            StringBuilder groupJson = new StringBuilder();

            groupJson.Append("{").Append("objectid:'").Append(role.objectId.ToString()).Append("',")
                .Append("name:'").Append(role.name == null ? string.Empty : role.name.ToString()).Append("',")
                .Append("user_ids:'").Append(ids.Replace("'", "\\\'")).Append("',")
                 .Append("user_names:'").Append(str.Replace("'", "\\\'")).Append("'}");

            return groupJson.ToString();
        }
Example #2
0
        public bool update(FPRole role, DbTransaction transaction)
        {
            IFPObjectDAO fpObjectDAO = DAOFactory.getInstance().createFPObjectDAO();
            fpObjectDAO.update(role, transaction);

            SqlTransaction trans = (SqlTransaction)transaction;
            String sql = "update FPRole set name=@name, other=@other where ObjectId = @ObjectId";
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = sql;
            cmd.Transaction = trans;
            cmd.Connection = trans.Connection;
            cmd.Parameters.Add(genSqlParameter("ObjectId", SqlDbType.Int, 10, role.objectId));
            cmd.Parameters.Add(genSqlParameter("name", SqlDbType.NVarChar, 255, role.name));
            cmd.Parameters.Add(genSqlParameter("other", SqlDbType.NVarChar, 255, role.other));
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            return true;
        }
Example #3
0
        public bool add(FPRole role, DbTransaction transaction)
        {
            IFPObjectDAO fpObjectDAO = DAOFactory.getInstance().createFPObjectDAO();
            fpObjectDAO.add(role, transaction);

            SqlTransaction trans = (SqlTransaction)transaction;
            String sql = "insert into FPRole(ObjectId, name, other) values " +
                "(@ObjectId, @name, @other)";
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = sql;
            cmd.Transaction = trans;
            cmd.Connection = trans.Connection;
            cmd.Parameters.Add(genSqlParameter("ObjectId", SqlDbType.Int, 10, role.objectId));
            cmd.Parameters.Add(genSqlParameter("name", SqlDbType.NVarChar, 255, role.name));
            cmd.Parameters.Add(genSqlParameter("other", SqlDbType.NVarChar, 255, role.other));
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            return true;
        }
Example #4
0
        public object AddGroup(string roleID, string name, string userids)
        {
            UserAC user = (UserAC)Session["user"];
            IFPService service = (IFPService)FPServiceHolder.getInstance().getService("fpService");
            IFPObjectService objectService = (IFPObjectService)FPServiceHolder.getInstance().getService("fpObjectService");
            int rid = 0;
            int.TryParse(roleID, out rid);
            FPRole role = objectService.getRoles(" where FPObject.ObjectId='" + rid + "'", user).FirstOrDefault();

            string result = string.Empty;
            if (role ==null)//ÐÂÔö
            {
                role = new FPRole();
                role.name = name;
                service.addRole(role, user);
                result = "your information added sucessfully!";
            }
            else//ÐÞ¸Ä
            {
                role.name = name;
                service.updateRole(role, user);
                result = "your information updated sucessfully!";
            }

            List<UserAC> users = objectService.getUsersByRole(roleID, user);
            if (users != null)
            {
                foreach (var u in users)
                {
                    if (u.roles != null && u.roles.Exists (c=>c.objectId ==role.objectId))
                    {
                        u.roles.RemoveAll(c => c.objectId == role.objectId);                      
                        service.updateUserRole(u);
                    }
                }
            }

            if (!string.IsNullOrEmpty(userids))
            {
                var array = userids.Split(',');
                foreach (var item in array)
                {
                    if (!string.IsNullOrEmpty(item))
                    {
                        UserAC u = objectService.getUserByID(int.Parse(item), user);
                        if (u.roles .Count()==0|| (u.roles != null && u.roles.Exists(c => c.objectId == role.objectId)==false))
                        {
                            u.roles.Add(role);
                            service.updateUserRole(u);
                        }
                    }
                }
            }

            return Json(result);
        }
Example #5
0
 public bool delete(FPRole role, DbTransaction transaction)
 {
     IFPObjectDAO fpObjectDAO = DAOFactory.getInstance().createFPObjectDAO();
     return fpObjectDAO.delete(role, transaction);
 }
Example #6
0
        private List<FPRole> getQueryResult(SqlCommand cmd)
        {
            DbDataReader reader = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            IUserDAO userDao = DAOFactory.getInstance().createUserDAO();

            List<FPRole> roles = new List<FPRole>();
            FPRole role = null;

            dt.Load(reader);
            reader.Close();

            if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    role = new FPRole();
                    role.objectId = getInt(dt.Rows[i]["ObjectId"]);
                    role.createDate = getDateTime(dt.Rows[i]["CreateDate"]);
                    role.updateDate = getDateTime(dt.Rows[i]["UpdateDate"]);
                    role.updateBy = getString(dt.Rows[i]["UpdateBy"]);
                    role.isDeleted = (getInt(dt.Rows[i]["IsDeleted"]) == 1);
                    role.name = getString(dt.Rows[i]["name"]);
                    role.other = getString(dt.Rows[i]["other"]);
                 //   role.userList = userDao.getUserByRole(role, cmd.Transaction);
                    roles.Add(role);
                }
            }
            return roles;
        }
Example #7
0
 public bool deleteRole(FPRole role, UserAC currentUser)
 {
     IDatabase db = DAOFactory.getInstance().getDatabase();
     DbConnection conn = db.getConnection();
     DbTransaction transaction = db.beginTransaction(conn);
     try
     {
         IFPRoleDAO roleDao = DAOFactory.getInstance().createFPRoleDAO();
         role.updateBy = currentUser.eng_name;
         role.updateDate = DateTime.Now;
         role.name = role.name;
         role.other = role.other;
         roleDao.delete(role, transaction);
         transaction.Commit();
         return true;
     }
     catch (Exception e)
     {
         transaction.Rollback();
         throw e;
     }
     finally
     {
         conn.Close();
     }  
 }
Example #8
0
        public object AddGroup(string roleID, string name, string itemselector)
        {
            try
            {
                UserAC user = (UserAC)Session["user"];
                IFPService service = (IFPService)FPServiceHolder.getInstance().getService("fpService");
                IFPObjectService objectService = (IFPObjectService)FPServiceHolder.getInstance().getService("fpObjectService");
                int rid = 0;
                int.TryParse(roleID, out rid);
                FPRole role = objectService.getRoles(" and FPObject.ObjectId='" + rid + "'", user).FirstOrDefault();

                string result = string.Empty;
                bool bresult = false;
                if (role == null)//新增
                {
                    role = new FPRole();
                    role.name = name;
                    service.addRole(role, user);
                    result = "your information added sucessfully!";
                    bresult = true;
                }
                else//修改
                {
                    role.name = name;
                    service.updateRole(role, user);
                    result = "your information updated sucessfully!";
                    bresult = true;
                }

                List<UserAC> users = objectService.getUsersByRole(roleID, user);
                if (users != null)
                {
                    foreach (var u in users)
                    {
                        if (u.roles != null && u.roles.Exists(c => c.objectId == role.objectId))
                        {
                            u.roles.RemoveAll(c => c.objectId == role.objectId);
                            service.updateUserRole(u);
                        }
                    }
                }

                if (!string.IsNullOrEmpty(itemselector))
                {
                    var array = itemselector.Split(',');
                    foreach (var item in array)
                    {
                        if (!string.IsNullOrEmpty(item))
                        {
                            UserAC u = objectService.getUserByID(int.Parse(item), user);
                            if (u.roles.Count() == 0 || (u.roles != null && u.roles.Exists(c => c.objectId == role.objectId) == false))
                            {
                                u.roles.Add(role);
                                service.updateUserRole(u);
                            }
                        }
                    }
                }

                return Content("{success:" + bresult.ToString().ToLower() + ", result:\"" + result + "\"}");
            }
            catch (Exception ex)
            {
                return Content("{success:false, result:\"" + ex.Message + "\"}");
            }
        }