⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 contentmanage.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
📖 第 1 页 / 共 5 页
字号:
namespace PowerEasy.SqlServerDal.Contents
{
    using Microsoft.Practices.EnterpriseLibrary.Data;
    using PowerEasy.Common;
    using PowerEasy.Enumerations;
    using PowerEasy.IDal.Contents;
    using PowerEasy.Model.CommonModel;
    using PowerEasy.Model.Contents;
    using PowerEasy.SqlServerDal;
    using PowerEasy.SqlServerDal.CommonModel;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Common;
    using System.Text;

    public class ContentManage : IContentManage
    {
        private int m_TotalOfCommonModelInfo;
        private int m_TotalOfCommonModelInfoBySpecialCategoryId;
        private int m_TotalOfCommonModelInfoBySpecialId;

        public bool Add(int modelId, DataTable contentData)
        {
            ModelInfo modelInfoById = new ModelDal().GetModelInfoById(modelId);
            if (modelInfoById.IsNull)
            {
                return false;
            }
            string tableName = modelInfoById.TableName;
            return (this.AddCommonModel(modelId, tableName, contentData) && AddContent(tableName, contentData));
        }

        public bool AddCommonModel(int modelId, string tableName, DataTable contentData)
        {
            int newGeneralId = GetNewGeneralId();
            return this.AddCommonModel(modelId, tableName, contentData, newGeneralId);
        }

        public bool AddCommonModel(int modelId, string tableName, DataTable contentData, int generalId)
        {
            string[] filedNames = new string[] { "generalId", "InputTime", "ModelId", "TableName", "ItemId" };
            string[] filedValues = new string[] { generalId.ToString(), DateTime.Now.ToString(), modelId.ToString(), tableName, generalId.ToString() };
            FieldType[] typeArray2 = new FieldType[5];
            typeArray2[1] = FieldType.DateTimeType;
            typeArray2[3] = FieldType.TextType;
            FieldType[] fieldType = typeArray2;
            GetCommonModelDataTable(filedNames, filedValues, fieldType, contentData);
            string filter = "FieldLevel=0 AND FieldName <> 'infoid' AND FieldName <> 'specialid'";
            string strSql = Query.GetInsertTableSql("PE_CommonModel", contentData, filter);
            Parameters cmdParams = Query.GetParameters(contentData, filter);
            if (DBHelper.ExecuteSql(strSql, cmdParams))
            {
                AddVirtualContent(generalId, contentData);
                return AddSpecialContent(generalId, contentData);
            }
            return false;
        }

        private static bool AddContent(string tableName, DataTable contentData)
        {
            string filter = "FieldName='generalId'";
            int num = DataConverter.CLng(Query.GetDataRows(contentData, filter)[0]["FieldValue"]);
            DataRow row = contentData.NewRow();
            row["FieldName"] = "ID";
            row["FieldValue"] = num;
            row["FieldType"] = FieldType.None;
            row["FieldLevel"] = 1;
            contentData.Rows.Add(row);
            filter = "FieldLevel=1";
            string strSql = Query.GetInsertTableSql(tableName, contentData, filter);
            Parameters cmdParams = Query.GetParameters(contentData, filter);
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public static bool AddSpecialContent(int generalId, DataTable contentData)
        {
            bool flag2 = true;
            string filter = "FieldName='specialid'";
            DataRow[] dataRows = Query.GetDataRows(contentData, filter);
            string str2 = "";
            if (dataRows.Length > 0)
            {
                str2 = dataRows[0]["FieldValue"].ToString();
            }
            if (!string.IsNullOrEmpty(str2))
            {
                foreach (string str3 in str2.Split(new char[] { ',' }))
                {
                    if (!AddToSpecialInfo(DataConverter.CLng(str3), generalId))
                    {
                        flag2 = false;
                    }
                }
            }
            return flag2;
        }

        private static bool AddToSpecialInfo(int specialId, int generalId)
        {
            int num = DBHelper.GetMaxId("PE_SpecialInfos", "SpecialInfoID") + 1;
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@SpecialInfoId", DbType.Int32, num);
            cmdParams.AddInParameter("@SpecialId", DbType.Int32, specialId);
            cmdParams.AddInParameter("@GeneralId", DbType.Int32, generalId);
            string strSql = "INSERT INTO PE_SpecialInfos(SpecialInfoID,SpecialID,GeneralId)VALUES(@SpecialInfoId,@SpecialId,@GeneralId)";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public static void AddVirtualContent(int generalId, DataTable contentData)
        {
            string filter = "FieldName=''";
            int num = 1;
            filter = "FieldName='infoid'";
            DataRow[] dataRows = Query.GetDataRows(contentData, filter);
            string str2 = "";
            if (dataRows.Length > 0)
            {
                str2 = dataRows[0]["FieldValue"].ToString();
            }
            if (!string.IsNullOrEmpty(str2))
            {
                StringBuilder builder = new StringBuilder();
                builder.Append("INSERT INTO PE_CommonModel SELECT @NewGeneralID AS GeneralId,@NodeId AS NodeId,ModelId,");
                builder.Append("@ItemId AS ItemId,TableName,Title,Inputer,Hits,DayHits,WeekHits,");
                builder.Append("MonthHits,@LinkType AS LinkType,UpdateTime,CreateTime,TemplateFile,Status,");
                builder.Append("EliteLevel,Priority,CommentAudited,CommentUnAudited,SigninType,InputTime,PassedTime,Editor,LastHitTime,DefaultPicUrl,UploadFiles FROM PE_CommonModel AS PE_CM WHERE PE_CM.GeneralId=@GeneralID");
                string[] strArray = str2.Split(new char[] { ',' });
                Database database = DatabaseFactory.CreateDatabase();
                DbCommand sqlStringCommand = database.GetSqlStringCommand(builder.ToString());
                database.AddInParameter(sqlStringCommand, "@NewGeneralID", DbType.Int32);
                database.AddInParameter(sqlStringCommand, "@GeneralID", DbType.Int32);
                database.AddInParameter(sqlStringCommand, "@LinkType", DbType.Int32);
                database.AddInParameter(sqlStringCommand, "@NodeId", DbType.Int32);
                database.AddInParameter(sqlStringCommand, "@ItemId", DbType.Int32);
                database.SetParameterValue(sqlStringCommand, "@GeneralID", generalId);
                database.SetParameterValue(sqlStringCommand, "@LinkType", num);
                database.SetParameterValue(sqlStringCommand, "@ItemId", generalId);
                foreach (string str3 in strArray)
                {
                    database.SetParameterValue(sqlStringCommand, "@NewGeneralID", GetNewGeneralId());
                    database.SetParameterValue(sqlStringCommand, "@NodeId", DataConverter.CLng(str3));
                    database.ExecuteNonQuery(sqlStringCommand);
                }
            }
        }

        public bool BatchMove(string generalIds, int nodeId)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@NodeID", DbType.Int32, nodeId);
            return DBHelper.ExecuteSql("UPDATE PE_CommonModel SET NodeID=@NodeID WHERE GeneralID IN(" + generalIds + ")", cmdParams);
        }

        public bool BatchUpdate(CommonModelInfo commonModelInfo, string itemId, Dictionary<string, bool> checkItem, int batchType)
        {
            StringBuilder builder = new StringBuilder();
            Parameters cmdParams = new Parameters();
            builder.Append("UPDATE PE_CommonModel SET ");
            if (checkItem["EliteLevel"])
            {
                builder.Append("EliteLevel = @EliteLevel,");
                cmdParams.AddInParameter("@EliteLevel", DbType.Int32, commonModelInfo.EliteLevel);
            }
            if (checkItem["Priority"])
            {
                builder.Append("Priority = @Priority,");
                cmdParams.AddInParameter("@Priority", DbType.Int32, commonModelInfo.Priority);
            }
            if (checkItem["Hits"])
            {
                builder.Append("Hits = @Hits,");
                cmdParams.AddInParameter("@Hits", DbType.Int32, commonModelInfo.Hits);
            }
            if (checkItem["DayHits"])
            {
                builder.Append("DayHits = @DayHits,");
                cmdParams.AddInParameter("@DayHits", DbType.Int32, commonModelInfo.DayHits);
            }
            if (checkItem["WeekHits"])
            {
                builder.Append("WeekHits = @WeekHits,");
                cmdParams.AddInParameter("@WeekHits", DbType.Int32, commonModelInfo.WeekHits);
            }
            if (checkItem["MonthHits"])
            {
                builder.Append("MonthHits = @MonthHits,");
                cmdParams.AddInParameter("MonthHits", DbType.Int32, commonModelInfo.MonthHits);
            }
            if (checkItem["UpdateTime"])
            {
                builder.Append("UpdateTime = @UpdateTime,");
                cmdParams.AddInParameter("@UpdateTime", DbType.DateTime, commonModelInfo.UpdateTime);
            }
            if (checkItem["TemplateFile"])
            {
                builder.Append("TemplateFile = @TemplateFile,");
                cmdParams.AddInParameter("@TemplateFile", DbType.String, commonModelInfo.TemplateFile);
            }
            if (builder.Length <= 0x1a)
            {
                return true;
            }
            builder.Remove(builder.Length - 1, 1);
            builder.Append(" WHERE ");
            if (batchType == 0)
            {
                builder.Append(" GeneralID IN ( ");
            }
            else
            {
                builder.Append(" NodeID IN ( ");
            }
            builder.Append(itemId);
            builder.Append(" )");
            return DBHelper.ExecuteSql(builder.ToString(), cmdParams);
        }

        private static CommonModelInfo CommonModelInfoFromDataReader(NullableDataReader rdr)
        {
            CommonModelInfo info = new CommonModelInfo();
            info.GeneralId = rdr.GetInt32("GeneralId");
            info.NodeId = rdr.GetInt32("NodeId");
            info.ModelId = rdr.GetInt32("ModelId");
            info.ItemId = rdr.GetInt32("ItemId");
            info.TableName = rdr.GetString("TableName");
            info.Title = rdr.GetString("Title");
            info.Inputer = rdr.GetString("Inputer");
            info.Hits = rdr.GetInt32("Hits");
            info.DayHits = rdr.GetInt32("DayHits");
            info.WeekHits = rdr.GetInt32("WeekHits");
            info.MonthHits = rdr.GetInt32("MonthHits");
            info.LinkType = rdr.GetInt32("LinkType");
            info.UpdateTime = rdr.GetDateTime("UpdateTime");
            info.CreateTime = rdr.GetNullableDateTime("CreateTime");
            info.TemplateFile = rdr.GetString("TemplateFile");
            info.Status = rdr.GetInt32("Status");
            info.EliteLevel = rdr.GetInt32("EliteLevel");
            info.Priority = rdr.GetInt32("Priority");
            info.CommentAudited = rdr.GetInt32("CommentAudited");
            info.CommentUNAudited = rdr.GetInt32("CommentUnAudited");
            info.InputTime = rdr.GetDateTime("InputTime");
            info.DefaultPicurl = rdr.GetString("DefaultPicurl");
            info.UploadFiles = rdr.GetString("UploadFiles");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -