62,046
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 查询满足条件的用户总数
/// </summary>
/// <param name="userName">用户名</param>
/// <param name="userPass">验证状态</param>
/// <param name="power">权限</param>
/// <returns>用户总数</returns>
public int GetUserCount(string userName, int userPass, int power)
{
StringBuilder buffer = new StringBuilder();
buffer.Append("select count(1) from Users");
buffer.Append(" where 1=1 ");
if (userName != "")
{
buffer.Append(" and UserName like '%'+@UserName+'%' ");
}
if (userPass != -1)
{
buffer.Append(" and UserPass=@UserPass ");
}
if (power != -1)
{
buffer.Append(" and Power=@Power ");
}
SqlParameter[] parameters =
{
new SqlParameter("@UserName",SqlDbType.VarChar,20),
new SqlParameter("@UserPass",SqlDbType.TinyInt),
new SqlParameter("@Power",SqlDbType.TinyInt)
};
parameters[0].Value = userName;
parameters[1].Value = userPass;
parameters[2].Value = power;
SqlDbHelper db = new SqlDbHelper();
return int.Parse(db.ExecuteScalar(buffer.ToString(), CommandType.Text, parameters).ToString());
}
public static B_policyCollection SelectCollection(int userid, B_policy bmss, int pagerows, int pageno)
{
crsDBUtility.DBHelper db = new DBHelper();
B_policyCollection bpcon=new B_policyCollection();
string str_select = " WITH Table_Data AS ( SELECT ROW_NUMBER() OVER (ORDER BY Discount DESC) AS RowIndexs, *,dbo.fc_GetPolicyFlagName(Flag) as FlagName FROM B_Policy A WITH (NOLOCK) where 1 =1 and PromulgatorCode = " + userid;
if(bmss.Fromcitycode.Trim().ToUpper()!="ALL")
str_select += " and FromCityCode like '%/" + bmss.Fromcitycode.Trim().ToUpper() + "/%' ";
if (bmss.Tocitycode.Trim().ToUpper() != "ALL")
str_select += " and ToCityCode like '%/" + bmss.Tocitycode.Trim().ToUpper() + "/%' ";
if (bmss.Airwaycode.Trim().ToUpper() != "ALL")
str_select += " and AirwayCode like '%/" + bmss.Airwaycode.Trim().ToUpper() + "/%'";
if (bmss.Begindate != null && bmss.Begindate > DateTime.MinValue)
str_select += " and ( BeginDate >= '" + bmss.Begindate.Date.ToString() + "') ";
if (bmss.Enddate != null && bmss.Enddate > DateTime.MinValue)
str_select += " and ( Enddate <= '" + bmss.Enddate.Date.ToString().Trim() + "') ";
if(bmss.OverdueDate!=null&&bmss.OverdueDate>DateTime.MinValue)
str_select+=" and (Enddate<'"+bmss.OverdueDate.Date.ToString().Trim()+"')";
if (bmss.Traveltype != 0)
str_select += " and Traveltype = '" + bmss.Traveltype.ToString().Trim() + "'";
if (bmss.Flag == 1 || bmss.Flag == 2)
{
str_select += " and Flag = " + bmss.Flag + " ";
}
str_select += " )";
str_select += " SELECT * FROM Table_Data WHERE RowIndexs BETWEEN @row1 AND @row2 ";
DbCommand cmd = db.GetSqlStringCommond(str_select);
db.AddParameter(cmd, "@row1", pagerows * (pageno - 1) + 1);
db.AddParameter(cmd, "@row2", pagerows * pageno);
DataTable dt = db.ExecuteDataTable(cmd);
if (dt != null && dt.Rows.Count > 0)
{
foreach (DataRow dr in dt.Rows)
{
B_policy bms = ParseDataRow(dr);
if (bms != null)
{
bpcon.Add(bms);
}
}
}
return bpcon;
}