根据群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):用于系统决定用户对系统资源的权限,也就是说当用 ...
随机推荐
- FullScreenFragment Code
package com.dexode.fragment; import android.annotation.TargetApi; import android.app.Activity; impor ...
- MSBI常见问题总结
SSIS 1.对连接管理器“DC”的AcquireConnection方法调用失败,错误代码0xC0209303.可能在此之前已经发出错误消息,提供了有关AcquireConnection方法调用失败 ...
- 从一个Bug说开去--解决问题的思路,Linked Server, Bulk Insert, DataTable 作为参数传递
声名— 部分内容为杜撰,如有雷同,不胜荣幸! 版权所有,如要引用,请标明出处! 如果打赏,请自便! 1 背景介绍 最近一周在忙一个SQL Server 的Bug,一个简单的Bug,更新两张 ...
- OpenWRT交叉编译
对于当前不在OpenWRT repository中的软件,如果是用源码形式发布的,那么可以用OpenWRT Buildroot进行交叉编译. 首先编译好Buildroot(一般编译过一次固件,就已经编 ...
- TCP连接状态详解及TIME_WAIT过多的解决方法
上图对排除和定位网络或系统故障时大有帮助,但是怎样牢牢地将这张图刻在脑中呢?那么你就一定要对这张图的每一个状态,及转换的过程有深刻地认识,不能只停留在一知半解之中.下面对这张图的11种状态详细解释一下 ...
- docker文章
https://training.docker.com/self-paced-training http://special.csdncms.csdn.net/BeDocker/ http://clo ...
- lsof查看进程打开了哪些文件目录套接字
lsof查看进程打开了哪些文件目录套接字
- rails跑通第一个demo
rails -h 查看帮助 Usage: rails new APP_PATH [options] Options: -r, [--ruby=PATH] # Path to the Ruby bina ...
- ActiveX异步回调JavaScript
ActiveX异步回调JavaScript 开发环境:VC6.0. 背景知识:COM/ActiveX/JavaScript/MFC/Thread 想必用过Ajax的童鞋们都知道xmlhttp这个东西吧 ...
- la 3942 Rember_前缀树
#include <iostream> #include<cstdio> #include<cstring> using namespace std; #defin ...