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

📄 message.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
字号:
namespace PowerEasy.Accessories
{
    using PowerEasy.Common;
    using PowerEasy.Enumerations;
    using PowerEasy.IDal.Accessories;
    using PowerEasy.Model.Accessories;
    using System;
    using System.Collections.Generic;
    using System.Text;

    public sealed class Message
    {
        private static readonly IMessage dal = DataAccess.CreateMessage();

        private Message()
        {
        }

        public static bool Add(MessageInfo messageInfo)
        {
            EncodeMessageInfo(messageInfo);
            return dal.Add(messageInfo);
        }

        public static bool Clear(MessageManageType manageType, string userName)
        {
            return Clear(manageType, userName, null);
        }

        public static bool Clear(MessageManageType manageType, string userName, string messageIdList)
        {
            if ((messageIdList != null) && !DataValidator.IsValidId(messageIdList))
            {
                return false;
            }
            if (string.IsNullOrEmpty(userName))
            {
                return false;
            }
            return dal.Clear(manageType, DataSecurity.FilterBadChar(userName), messageIdList);
        }

        public static int Count()
        {
            return dal.Count();
        }

        public static int Count(MessageSearchField searchField, string keyword)
        {
            return dal.Count();
        }

        public static int Count(MessageSearchField searchField, string keyword, string userName, MessageManageType manageType)
        {
            return dal.Count();
        }

        private static MessageInfo DecodeMessageInfo(MessageInfo messageInfo)
        {
            messageInfo.Title = DataSecurity.HtmlDecode(messageInfo.Title);
            messageInfo.Incept = DataSecurity.HtmlDecode(messageInfo.Incept);
            messageInfo.Sender = DataSecurity.HtmlDecode(messageInfo.Sender);
            messageInfo.Content = DataSecurity.HtmlDecode(messageInfo.Content);
            return messageInfo;
        }

        public static bool Delete(MessageDelType deleteType, string deleteValue)
        {
            switch (deleteType)
            {
                case MessageDelType.Id:
                    if (DataValidator.IsValidId(deleteValue))
                    {
                        break;
                    }
                    return false;

                case MessageDelType.Sender:
                {
                    string[] strArray = deleteValue.Split(new char[] { ',' });
                    StringBuilder sb = new StringBuilder();
                    for (int i = 0; i < strArray.Length; i++)
                    {
                        StringHelper.AppendString(sb, "'" + DataSecurity.FilterBadChar(strArray[i]) + "'");
                    }
                    deleteValue = sb.ToString();
                    break;
                }
                case MessageDelType.Date:
                    deleteValue = DataConverter.CLng(deleteValue).ToString();
                    break;
            }
            return dal.Delete(deleteType, deleteValue);
        }

        private static MessageInfo EncodeMessageInfo(MessageInfo messageInfo)
        {
            messageInfo.Title = DataSecurity.HtmlEncode(messageInfo.Title);
            messageInfo.Incept = DataSecurity.HtmlEncode(messageInfo.Incept);
            messageInfo.Sender = DataSecurity.HtmlEncode(messageInfo.Sender);
            messageInfo.Content = DataSecurity.HtmlEncode(messageInfo.Content);
            return messageInfo;
        }

        public static MessageInfo GetMessageById(int messageId)
        {
            return dal.GetMessageById(messageId);
        }

        public static MessageInfo GetMessageById(int messageId, bool isDecode)
        {
            MessageInfo messageById = dal.GetMessageById(messageId);
            if (messageById == null)
            {
                return null;
            }
            if (isDecode)
            {
                DecodeMessageInfo(messageById);
            }
            return messageById;
        }

        public static IList<MessageInfo> GetMessageList(MessageSearchField searchField, string keyword, int maxNumberRows, int startRowIndexId)
        {
            return dal.GetMessageList(startRowIndexId, maxNumberRows, searchField, DataSecurity.FilterBadChar(keyword));
        }

        public static IList<MessageInfo> GetMessageList(int startRowIndexId, int maxNumberRows, string userName, int read)
        {
            return dal.GetMessageList(startRowIndexId, maxNumberRows, userName, read);
        }

        public static IList<MessageInfo> GetMessageList(int startRowIndexId, int maxNumberRows, string userName, MessageManageType manageType, MessageSearchField searchField, string keyword)
        {
            if (string.IsNullOrEmpty(userName))
            {
                return new List<MessageInfo>();
            }
            return dal.GetMessageList(startRowIndexId, maxNumberRows, DataSecurity.FilterBadChar(userName), manageType, searchField, DataSecurity.FilterBadChar(keyword));
        }

        public static MessageInfo GetMessageOfEdit(int messageId, string userName)
        {
            return dal.GetMessageOfEdit(messageId, userName);
        }

        public static MessageInfo GetMessageOfEdit(int messageId, string userName, bool isDecode)
        {
            if (isDecode)
            {
                return DecodeMessageInfo(GetMessageOfEdit(messageId, userName));
            }
            return GetMessageOfEdit(messageId, userName);
        }

        public static MessageInfo GetMessageOfForward(int messageId, string userName)
        {
            return dal.GetMessageOfForward(messageId, userName);
        }

        public static MessageInfo GetMessageOfForward(int messageId, string userName, bool isDecode)
        {
            if (isDecode)
            {
                return DecodeMessageInfo(GetMessageOfForward(messageId, userName));
            }
            return GetMessageOfForward(messageId, userName);
        }

        public static MessageInfo GetMessageOfReply(int messageId, string userName)
        {
            return dal.GetMessageOfReply(messageId, userName);
        }

        public static MessageInfo GetMessageOfReply(int messageId, string userName, bool isDecode)
        {
            if (isDecode)
            {
                return DecodeMessageInfo(GetMessageOfReply(messageId, userName));
            }
            return GetMessageOfReply(messageId, userName);
        }

        public static int GetUnreadMessageFirstId(string userName)
        {
            return dal.GetUnreadMessageFirstId(userName);
        }

        public static IList<string> GetUserNameList(string groupId)
        {
            return dal.GetUserNameList(groupId);
        }

        public static int UnreadMessageCount(string userName)
        {
            return dal.UnreadMessageCount(userName);
        }

        public static bool Update(MessageInfo messageInfo)
        {
            EncodeMessageInfo(messageInfo);
            return dal.Update(messageInfo);
        }

        public static bool UpdateState(int messageId)
        {
            return dal.UpdateState(messageId);
        }
    }
}

⌨️ 快捷键说明

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