根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V1.0
#region 根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V1.0
/// <summary>
/// 13.0 根据群ID和用户Id查询
/// </summary>
/// <param name="userId"></param>
/// <param name="qunId"></param>
/// <returns></returns>
public string QueryQunByUserIdAndQunId(int userId, int qunId)
{
string where = "";
if (userId > 0 && qunId > 0)
where = string.Format("UserId={0} and QunId={1} and Deleted='{2}'", userId, qunId, false);
T_UserRolePermission model = m_userRolePermissionManager.GetModelByQunIdAndUserId(qunId, userId);
//判断是否存在
if (model == null)
{
return Convert.ToString(ErrorCode.DATA_NOT_EXIST);
}
M_User user = m_userManager.GetModel(userId);
#region 格式
//<qun>
// <qunId>xxx</qunId>1
// <qunNo>群编号</qunNo>2
// <qunName>="群名称"</qunName>3
// <iconUrl>群头像地址</iconUrl> 4
// <isPublish>公开/私密</isPublish>5
// <description>群介绍</description>6
// <contact>联系方式</contact> 7
// <address>地点</address>8
// <createrId>群主Id</createrId>9
// <createrIconUrl>群主头像地址</createrIconUrl> 10
// <createrName>群主用户名</createrName> 11
// <qunTypeName>类别名称</qunTypeName> 12
// <groupName>用户所在的组名称</groupName>13
//</qun>
#endregion
M_Qun qun = m_qunManager.GetModel(qunId);
StringBuilder sb = new StringBuilder();
M_QunType qunTypeModel = m_qunTypeManager.GetModelByTypeId((int)t_qunTypeRelationManager.GetModelByqunId(qun.ID).QunTypId);
M_Groups groupsModel = m_groupsManager.GetModelByQunId(qun.ID);
sb.Append("<quns>");
sb.AppendFormat(@"<qun qunId = ""{0}"" qunNo = ""{1}"" qunName = ""{2}"" iconUrl = ""{3}"" isPublish = ""{4}"" description = ""{5}"" contact = ""{6}"" address = ""{7}"" createrId = ""{8}"" createrIconUrl = ""{9}"" createrName = ""{10}"" qunTypeName = ""{11}"" groupName = ""{12}"" />",
qun.ID, //0
qun.QunNo, //1
qun.QunName,//2
qun.Logo, //3
qun.IsOpen, //4
qun.Description, //5
qun.Contact, //6
qun.Address, //7
model.UserId, //8
user.Icon, //9
user.UserName, //10
qunTypeModel == null ? "" : qunTypeModel.TypeName, //11
groupsModel == null ? "" : groupsModel.GroupsName //12
);
sb.Append("</quns>");
return sb.ToString();
}
#endregion
#region 根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V2.0
#region 13.0 根据群ID + string QueryQunByUserIdAndQunId(int userId, int qunId)
/// <summary>
/// 13.0 根据群ID查询
/// </summary>
/// <param name="userId"></param>
/// <param name="qunId"></param>
/// <returns></returns>
public string QueryQunByQunId(int qunId)
{
M_Qun qun = m_qunManager.GetModel(qunId);
string where = string.Format("QunId={0} and IsQunCreater='true' and Deleted='false'", qunId);
DataSet ds = m_userRolePermissionManager.GetList(where);
M_User user = null;
if (ds != null && ds.Tables.Count > 0)
user = m_userManager.GetModel(Convert.ToInt32(ds.Tables[0].Rows[0]["UserId"]));
//判断是否存在
if (user == null)
{
return Convert.ToString(ErrorCode.DATA_NOT_EXIST);
}
#region 格式
//<qun>
// <qunId>xxx</qunId>1
// <qunNo>群编号</qunNo>2
// <qunName>="群名称"</qunName>3
// <iconUrl>群头像地址</iconUrl> 4
// <isPublish>公开/私密</isPublish>5
// <description>群介绍</description>6
// <contact>联系方式</contact> 7
// <address>地点</address>8
// <createrId>群主Id</createrId>9
// <createrIconUrl>群主头像地址</createrIconUrl> 10
// <createrName>群主用户名</createrName> 11
// <qunTypeName>类别名称</qunTypeName> 12
// <groupName>用户所在的组名称</groupName>13
//</qun>
#endregion
StringBuilder sb = new StringBuilder();
M_QunType qunTypeModel = m_qunTypeManager.GetModelByTypeId((int)t_qunTypeRelationManager.GetModelByqunId(qun.ID).QunTypId);
M_Groups groupsModel = m_groupsManager.GetModelByQunId(qun.ID);
sb.Append("<quns>");
sb.AppendFormat(@"<qun qunId = ""{0}"" qunNo = ""{1}"" qunName = ""{2}"" iconUrl = ""{3}"" isPublish = ""{4}"" description = ""{5}"" contact = ""{6}"" address = ""{7}"" createrId = ""{8}"" createrIconUrl = ""{9}"" createrName = ""{10}"" qunTypeName = ""{11}"" groupName = ""{12}"" />",
qun.ID, //0
qun.QunNo, //1
qun.QunName,//2
qun.Logo, //3
qun.IsOpen, //4
qun.Description, //5
qun.Contact, //6
qun.Address, //7
user.ID, //8
user.Icon, //9
user.UserName, //10
qunTypeModel == null ? "" : qunTypeModel.TypeName, //11
groupsModel == null ? "" : groupsModel.GroupsName //12
);
sb.Append("</quns>");
return sb.ToString();
}
#endregion
根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V1.0的更多相关文章
- 关于计算机的ID和用户ID之间的关系
关于计算机的ID和用户ID之间的关系 计算机安装完系统后就会生成计算机ID,然后系统会以计算机ID为前缀附加数字创建Administrator(500)和Guest(501)用户ID,其他用户的ID将 ...
- 第11章 使用OpenID Connect添加用户身份验证 - Identity Server 4 中文文档(v1.0.0)
在本快速入门中,我们希望通过OpenID Connect协议向我们的IdentityServer添加对交互式用户身份验证的支持. 一旦到位,我们将创建一个将使用IdentityServer进行身份验证 ...
- 【转】linux 设置用户id 设置组id
linux 设置用户id 设置组id 转自 linux 设置用户id 设置组id 最近看apue,简单记录对设置用户id理解(设置组id同理). 1. 相关的id好像很多,共有哪些? 文件2个 ...
- 转: unix实际用户ID和有效用户ID解析
今天在看APUE,这两个问题很难理解,GOOGLE一下,有篇文章总结的不错,看了一下才明白透彻了. 由于用户在UNIX下经常会遇到 SUID.SGID的概念,而且SUID和SGID涉及到系统安全,所以 ...
- 《UNIX环境高级编程》笔记--更改用户ID和组ID
在unix系统中,特权是基于用户和组ID的,当程序需要增加特权,或需要访问当前并不允许访问的资源时,我们需要更换自己 用户ID或组ID,使的新ID具有合适的特权或访问权限.与此类似,当程序需要降低其特 ...
- 设置用户ID和设置组ID
与一个进程关联的ID有6个或更多,如下图所示: 与每个进程相关联的用户ID和组ID 实际用户ID 实际组ID 我们实际是谁 有效用户ID 有效组ID 附加组ID 用于文件访问权限检索 保存的设置用户I ...
- 文件和目录之设置用户ID和设置组ID
与一个进程相关联的ID有6个或更多,它们如表4-4所示: 表4-4 与每个进程相关联的用户ID和组ID 实际用户ID 我们实际上是谁 实际组ID ...
- 进程控制之更改用户ID和组ID
在UNIX系统中,特权(例如能改变当前日期的表示法以及访问控制(例如,能否读.写一特定文件))是基于用户ID和组ID的.当程序需要增加特权,或需要访问当前并不允许访问的资源时,我们需要更换自己的用户I ...
- linux系统学习笔记:无死角理解保存的设置用户ID,设置用户ID位,有效用户ID,实际用户ID
一.基本概念 实际用户ID(RUID):用于标识一个系统中用户是谁,一般是在登录之后,就被唯一的确定,就是登录的用户的uid. 有效用户ID(EUID):用于系统决定用户对系统资源的权限,也就是说当用 ...
随机推荐
- select语句后面加上for update的作用
Select…For Update语句的语法与select语句相同,只是在select语句的后面加FOR UPDATE [NOWAIT]子句. 该语句用来锁定特定的行(如果有where子句,就是满足w ...
- 播放器音乐源之天天动听API
搜索歌曲API:http://so.ard.iyyin.com/s/song_with_out?q={0}&page={1}&size={2} {0}=需要搜索的歌曲或歌手 {1}=查 ...
- js 函数(function)
<Javascript高级程序设计第三版> 3.7 函数 1. ECMAScript中的函数在定义时,不必指定是否返回值. 2. 位于return语句之后的任何code都永远不会执行.(之 ...
- DPark安装及相关资料整理
最近需要处理海量数据的分布式计算及数据挖掘,经过多次选择(hadoop,Spark,DPark),最后还是选择了DPark,主要是看中DPark的轻量级及python的灵活性,且除了豆瓣外,在几个友公 ...
- [python] 如何用python操作Excel
直接上代码: from openpyxl import Workbook from openpyxl.cell import get_column_letter wb = Workbook() des ...
- Eclipse图标含义
学习了这么久,之前也没注意,这次在csdn找个了文章,记录一下: Eclipse的Package Explorer中用图标表示了很多内容,刚刚开始接触Eclipse时对这些图标表示的内容并不清楚,而且 ...
- TCP 协议三次握手过程解析带实例
TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标 ...
- Linux磁盘及文件系统管理 3---- 文件系统
1 文件系统 1 操作系统通过文件系统来管理文件及数据,磁盘或分区需要创建文件系统之后才能为操作系统使用,创建文件系统的过程称为格式化 2 没有文件系统的设备称为裸设备 3 常见的文件系统有fat32 ...
- C#泛型详解
我们在编写程序时,经常遇到两个模块的功能非常相似,只是一个是处理int数据,另一个是处理string数据,或者其他自定义的数据类型,但我们没有办法,只能分别写多个方法处理每个数据类型,因为方法的参数类 ...
- 【斐波拉契+数论+同余】【ZOJ3707】Calculate Prime S
题目大意: S[n] 表示 集合{1,2,3,4,5.......n} 不存在连续元素的子集个数 Prime S 表示S[n]与之前的所有S[i]互质; 问 找到大于第K个PrimeS 能整除X 的第 ...