📄 special.cs
字号:
public IList<SpecialCategoryInfo> GetSpecialCategoryList(string specialCategoryId)
{
IList<SpecialCategoryInfo> list = new List<SpecialCategoryInfo>();
string strCommand = "SELECT * FROM PE_SpecialCategory Where SpecialCategoryId in (" + specialCategoryId + ") ORDER BY OrderId,SpecialCategoryID DESC";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, null))
{
while (reader.Read())
{
list.Add(SpecialCategoryInfoFromrdr(reader));
}
}
return list;
}
private static void GetSpecialCategoryParameters(SpecialCategoryInfo specialCategoryInfo, Parameters parms)
{
parms.AddInParameter("@SpecialCategoryId", DbType.Int32, specialCategoryInfo.SpecialCategoryId);
parms.AddInParameter("@SpecialCategoryName", DbType.String, specialCategoryInfo.SpecialCategoryName);
parms.AddInParameter("@SpecialCategoryDir", DbType.String, specialCategoryInfo.SpecialCategoryDir);
parms.AddInParameter("@SpecialTemplatePath", DbType.String, specialCategoryInfo.SpecialTemplatePath);
parms.AddInParameter("@SearchTemplatePath", DbType.String, specialCategoryInfo.SearchTemplatePath);
parms.AddInParameter("@OrderId", DbType.Int32, specialCategoryInfo.OrderId);
parms.AddInParameter("@OpenType", DbType.Boolean, specialCategoryInfo.OpenType);
parms.AddInParameter("@Description", DbType.String, specialCategoryInfo.Description);
parms.AddInParameter("@PagePostfix", DbType.String, specialCategoryInfo.PagePostfix);
parms.AddInParameter("@IsCreateHtml", DbType.Boolean, specialCategoryInfo.IsCreateHtml);
}
public SpecialInfo GetSpecialInfoById(int specialId)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@SpecialId", DbType.Int32, specialId);
string strCommand = "SELECT * FROM PE_Specials WHERE SpecialID =@SpecialId";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
if (reader.Read())
{
return SpecialInfoFromrdr(reader);
}
return new SpecialInfo(true);
}
}
public string GetSpecialInfoIds(int generalId)
{
StringBuilder builder = new StringBuilder();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@GeneralId", DbType.Int32, generalId);
string strCommand = "SELECT SpecialID FROM PE_SpecialInfos WHERE GeneralId =@GeneralId";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
builder.Append(reader.GetInt32("SpecialID"));
builder.Append(",");
}
}
return builder.ToString().TrimEnd(new char[] { ',' });
}
public IList<SpecialInfo> GetSpecialList()
{
IList<SpecialInfo> list = new List<SpecialInfo>();
string strCommand = "SELECT * FROM PE_Specials ORDER BY OrderId,SpecialID DESC";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, null))
{
while (reader.Read())
{
list.Add(SpecialInfoFromrdr(reader));
}
}
return list;
}
public IList<SpecialInfo> GetSpecialList(int specialCategoryId)
{
IList<SpecialInfo> list = new List<SpecialInfo>();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@SpecialCategoryId", DbType.Int32, specialCategoryId);
string strCommand = "SELECT * FROM PE_Specials";
if (specialCategoryId > 0)
{
strCommand = strCommand + " WHERE SpecialCategoryID = @SpecialCategoryId";
}
strCommand = strCommand + " ORDER BY SpecialCategoryID DESC,OrderId ASC";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
list.Add(SpecialInfoFromrdr(reader));
}
}
return list;
}
public IList<SpecialInfo> GetSpecialList(string specialId)
{
IList<SpecialInfo> list = new List<SpecialInfo>();
string str = "SELECT * FROM PE_Specials";
if (specialId.IndexOf(',') < 0)
{
str = str + " WHERE SpecialID = " + specialId;
}
else
{
str = str + " WHERE SpecialID IN (" + specialId + ")";
}
using (NullableDataReader reader = DBHelper.ExecuteReaderSql(str + " ORDER BY SpecialCategoryID DESC,OrderId ASC"))
{
while (reader.Read())
{
list.Add(SpecialInfoFromrdr(reader));
}
}
return list;
}
public IList<SpecialInfo> GetSpecialList(int startRowIndexId, int maxNumberRows, int specialCategoryId, int listType)
{
Database database = DatabaseFactory.CreateDatabase();
IList<SpecialInfo> list = new List<SpecialInfo>();
string str = "SpecialID";
string str2 = "DESC";
switch (listType)
{
case -2:
str = "SpecialID";
str2 = "ASC";
break;
case 1:
str = "SpecialID";
str2 = "DESC";
break;
case 2:
str = "SpecialCategoryID";
str2 = "ASC";
break;
case 3:
str = "SpecialCategoryID";
str2 = "DESC";
break;
}
DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");
database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32, startRowIndexId);
database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32, maxNumberRows);
database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String, str);
database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "*");
database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, str2);
database.AddInParameter(storedProcCommand, "@Filter", DbType.String);
if (specialCategoryId > 0)
{
database.SetParameterValue(storedProcCommand, "@Filter", "SpecialCategoryID=" + specialCategoryId);
}
else
{
database.SetParameterValue(storedProcCommand, "@Filter", "");
}
database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_Specials");
database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
{
while (reader.Read())
{
list.Add(SpecialInfoFromrdr(reader));
}
}
this.m_TotalOfSpecial = (int) database.GetParameterValue(storedProcCommand, "@Total");
return list;
}
private static void GetSpecialParameters(SpecialInfo specialInfo, Parameters parms)
{
parms.AddInParameter("@SpecialId", DbType.Int32, specialInfo.SpecialId);
parms.AddInParameter("@SpecialName", DbType.String, specialInfo.SpecialName);
parms.AddInParameter("@SpecialCategoryId", DbType.Int32, specialInfo.SpecialCategoryId);
parms.AddInParameter("@SpecialDir", DbType.String, specialInfo.SpecialDir);
parms.AddInParameter("@SpecialIdentifier", DbType.String, specialInfo.SpecialIdentifier);
parms.AddInParameter("@SpecialPic", DbType.String, specialInfo.SpecialPic);
parms.AddInParameter("@SpecialTips", DbType.String, specialInfo.SpecialTips);
parms.AddInParameter("@SpecialTemplatePath", DbType.String, specialInfo.SpecialTemplatePath);
parms.AddInParameter("@SearchTemplatePath", DbType.String, specialInfo.SearchTemplatePath);
parms.AddInParameter("@IsElite", DbType.Boolean, specialInfo.IsElite);
parms.AddInParameter("@OrderId", DbType.Int32, specialInfo.OrderId);
parms.AddInParameter("@OpenType", DbType.Int32, specialInfo.OpenType);
parms.AddInParameter("@Description", DbType.String, specialInfo.Description);
parms.AddInParameter("@IsCreateListPage", DbType.Boolean, specialInfo.IsCreateListPage);
parms.AddInParameter("@ListPageSavePathType", DbType.Int32, specialInfo.ListPageSavePathType);
parms.AddInParameter("@ListPagePostfix", DbType.String, specialInfo.ListPagePostfix);
parms.AddInParameter("@CustomContent", DbType.String, specialInfo.CustomContent);
}
public int GetTotalOfSpecial()
{
return this.m_TotalOfSpecial;
}
public void MoveSpecialInfoBySpecialId(string sourceSpecialId, int targetSpecialId)
{
string strSql = "UPDATE PE_SpecialInfos SET SpecialId=@TargetSpecialId WHERE SpecialId IN(" + sourceSpecialId + ")";
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@TargetSpecialId", DbType.Int32, targetSpecialId);
DBHelper.ExecuteNonQuerySql(strSql, cmdParams);
}
public void ReplaceTemplateDir(string oldDir, string newDir)
{
oldDir = oldDir.Replace("'", "''");
newDir = newDir.Replace("'", "''");
string str = "'" + oldDir + "%'";
DBHelper.ExecuteSql("UPDATE PE_SpecialCategory SET SpecialTemplatePath = replace(cast(SpecialTemplatePath as nvarchar(4000)),'" + oldDir + "','" + newDir + "') WHERE SpecialTemplatePath LIKE " + str);
DBHelper.ExecuteSql("UPDATE PE_Specials SET SpecialTemplatePath = replace(cast(SpecialTemplatePath as nvarchar(4000)),'" + oldDir + "','" + newDir + "') WHERE SpecialTemplatePath LIKE " + str);
}
public void ReplaceTemplateFileName(string replaceFormer, string replaceAfter)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@ReplaceFormer", DbType.String, replaceFormer);
cmdParams.AddInParameter("@ReplaceAfter", DbType.String, replaceAfter);
DBHelper.ExecuteSql("UPDATE PE_SpecialCategory SET SpecialTemplatePath = @ReplaceAfter WHERE SpecialTemplatePath = @ReplaceFormer", cmdParams);
DBHelper.ExecuteSql("UPDATE PE_Specials SET SpecialTemplatePath = @ReplaceAfter WHERE SpecialTemplatePath = @ReplaceFormer", cmdParams);
}
public bool SpecialBatchSet(SpecialInfo specialInfo, string specialIds, Dictionary<string, bool> checkItem)
{
StringBuilder builder = new StringBuilder();
Parameters cmdParams = new Parameters();
builder.Append("UPDATE PE_Specials SET ");
if (checkItem["OpenType"])
{
builder.Append("OpenType = @OpenType,");
cmdParams.AddInParameter("@OpenType", DbType.Int32, specialInfo.OpenType);
}
if (checkItem["IsElite"])
{
builder.Append("IsElite = @IsElite,");
cmdParams.AddInParameter("@IsElite", DbType.Boolean, specialInfo.IsElite);
}
if (checkItem["SpecialTemplatePath"])
{
builder.Append("SpecialTemplatePath = @SpecialTemplatePath,");
cmdParams.AddInParameter("@SpecialTemplatePath", DbType.String, specialInfo.SpecialTemplatePath);
}
builder.Remove(builder.Length - 1, 1);
builder.Append(" WHERE SpecialID IN ( ");
builder.Append(specialIds);
builder.Append(" )");
return DBHelper.ExecuteSql(builder.ToString(), cmdParams);
}
private static SpecialCategoryInfo SpecialCategoryInfoFromrdr(NullableDataReader rdr)
{
SpecialCategoryInfo info = new SpecialCategoryInfo();
info.SpecialCategoryId = rdr.GetInt32("SpecialCategoryID");
info.SpecialCategoryDir = rdr.GetString("SpecialCategoryDir");
info.SpecialCategoryName = rdr.GetString("SpecialCategoryName");
info.SpecialTemplatePath = rdr.GetString("SpecialTemplatePath");
info.SearchTemplatePath = rdr.GetString("SearchTemplatePath");
info.OrderId = rdr.GetInt32("OrderId");
info.OpenType = rdr.GetBoolean("OpenType");
info.Description = rdr.GetString("Description");
info.IsCreateHtml = rdr.GetBoolean("IsCreateHtml");
info.PagePostfix = rdr.GetString("PagePostfix");
return info;
}
private static SpecialInfo SpecialInfoFromrdr(NullableDataReader rdr)
{
SpecialInfo info = new SpecialInfo();
info.SpecialId = rdr.GetInt32("SpecialID");
info.SpecialName = rdr.GetString("SpecialName");
info.SpecialCategoryId = rdr.GetInt32("SpecialCategoryID");
info.SpecialDir = rdr.GetString("SpecialDir");
info.SpecialIdentifier = rdr.GetString("SpecialIdentifier");
info.SpecialPic = rdr.GetString("SpecialPic");
info.SpecialTips = rdr.GetString("SpecialTips");
info.SpecialTemplatePath = rdr.GetString("SpecialTemplatePath");
info.SearchTemplatePath = rdr.GetString("SearchTemplatePath");
info.IsElite = rdr.GetBoolean("IsElite");
info.OrderId = rdr.GetInt32("OrderId");
info.OpenType = rdr.GetInt32("OpenType");
info.Description = rdr.GetString("Description");
info.IsCreateListPage = rdr.GetBoolean("IsCreateListPage");
info.ListPagePostfix = rdr.GetString("ListPagePostfix");
info.ListPageSavePathType = (ListPagePathType) rdr.GetInt32("ListPageSavePathType");
info.CustomContent = rdr.GetString("Custom_Content");
return info;
}
public bool UpdateSpecial(SpecialInfo specialInfo)
{
Parameters parms = new Parameters();
GetSpecialParameters(specialInfo, parms);
string strSql = "UPDATE PE_Specials SET SpecialName=@SpecialName,SpecialCategoryID=@SpecialCategoryId,SpecialDir=@SpecialDir,SpecialIdentifier=@SpecialIdentifier,SpecialPic=@SpecialPic,SpecialTips=@SpecialTips,SpecialTemplatePath=@SpecialTemplatePath,SearchTemplatePath=@SearchTemplatePath,IsElite=@IsElite,OrderId=@OrderId,OpenType=@OpenType,Description=@Description,IsCreateListPage=@IsCreateListPage,ListPageSavePathType=@ListPageSavePathType,ListPagePostfix=@ListPagePostfix,Custom_Content=@CustomContent WHERE SpecialID=@SpecialId";
return DBHelper.ExecuteSql(strSql, parms);
}
public bool UpdateSpecialCategory(SpecialCategoryInfo specialCategoryInfo)
{
Parameters parms = new Parameters();
GetSpecialCategoryParameters(specialCategoryInfo, parms);
string strSql = "UPDATE PE_SpecialCategory SET SpecialCategoryName=@SpecialCategoryName,SpecialCategoryDir=@SpecialCategoryDir,SpecialTemplatePath=@SpecialTemplatePath,SearchTemplatePath=@SearchTemplatePath,OrderId=@OrderId,OpenType=@OpenType,Description=@Description,IsCreateHtml=@IsCreateHtml,PagePostfix=@PagePostfix WHERE SpecialCategoryID=@SpecialCategoryId";
return DBHelper.ExecuteSql(strSql, parms);
}
public void UpdateSpecialIdByGeneralId(int specialId, int sourceSpecialId, string generalId)
{
string strSql = "UPDATE PE_SpecialInfos SET SpecialId=@SpecialId WHERE SpecialID=@SourceSpecialId AND GeneralId IN(" + generalId + ")";
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@SpecialId", DbType.Int32, specialId);
cmdParams.AddInParameter("@SourceSpecialId", DbType.Int32, sourceSpecialId);
DBHelper.ExecuteNonQuerySql(strSql, cmdParams);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -