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

📄 transferlog.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
字号:
namespace PowerEasy.SqlServerDal.Shop
{
    using Microsoft.Practices.EnterpriseLibrary.Data;
    using PowerEasy.IDal.Shop;
    using PowerEasy.Model.Shop;
    using PowerEasy.SqlServerDal;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Common;

    public sealed class TransferLog : ITransferLog
    {
        private int m_TotalOfTransferLog;

        public bool Add(TransferLogInfo info)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@OrderId", DbType.Int32, info.OrderId);
            cmdParams.AddInParameter("@TransferTime", DbType.DateTime, info.TransferTime);
            cmdParams.AddInParameter("@Poundage", DbType.Decimal, info.Poundage);
            cmdParams.AddInParameter("@OwnerUserName", DbType.String, info.OwnerUserName);
            cmdParams.AddInParameter("@TargetUserName", DbType.String, info.TargetUserName);
            cmdParams.AddInParameter("@PayerUserName", DbType.String, info.PayerUserName);
            cmdParams.AddInParameter("@Inputer", DbType.String, info.Inputer);
            cmdParams.AddInParameter("@Remark", DbType.String, info.Remark);
            return DBHelper.ExecuteProc("PR_Shop_TransferLog_Add", cmdParams);
        }

        public IList<TransferLogInfo> GetList(int startRowIndexId, int maxNumberRows, string searchType, string field, string keyword)
        {
            Database database = DatabaseFactory.CreateDatabase();
            DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");
            database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32);
            database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32);
            database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String);
            database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String);
            database.AddInParameter(storedProcCommand, "@Sorts", DbType.String);
            database.AddInParameter(storedProcCommand, "@Filter", DbType.String);
            database.AddInParameter(storedProcCommand, "@TableName", DbType.String);
            database.SetParameterValue(storedProcCommand, "@StartRows", startRowIndexId);
            database.SetParameterValue(storedProcCommand, "@PageSize", maxNumberRows);
            database.SetParameterValue(storedProcCommand, "@SortColumn", "TransferLogId");
            database.SetParameterValue(storedProcCommand, "@StrColumn", "T.*,O.OrderNum,O.UserName");
            database.SetParameterValue(storedProcCommand, "@Sorts", "DESC");
            database.SetParameterValue(storedProcCommand, "@TableName", "PE_TransferLog T inner join PE_Orders O on T.OrderID=O.OrderID");
            switch (Convert.ToInt32(searchType))
            {
                case 0:
                    database.SetParameterValue(storedProcCommand, "@Filter", "");
                    goto Label_0259;

                case 1:
                    database.SetParameterValue(storedProcCommand, "@Filter", "datediff(dd,T.TransferTime,GetDate())<10");
                    goto Label_0259;

                case 2:
                    database.SetParameterValue(storedProcCommand, "@Filter", "datediff(m,T.TransferTime,GetDate())<1");
                    goto Label_0259;

                case 10:
                {
                    string str = field;
                    if (str == null)
                    {
                        break;
                    }
                    if (!(str == "UserName"))
                    {
                        if (str == "ContacterName")
                        {
                            database.SetParameterValue(storedProcCommand, "@Filter", "O.ContacterName like '%" + keyword + "%' ");
                            goto Label_0259;
                        }
                        if (str == "Inputer")
                        {
                            database.SetParameterValue(storedProcCommand, "@Filter", "T.Inputer like '%" + keyword + "%' ");
                            goto Label_0259;
                        }
                        if (str == "TransferTime")
                        {
                            database.SetParameterValue(storedProcCommand, "@Filter", "datediff( dd ,T.TransferTime,'" + keyword + "') < 1 ");
                            goto Label_0259;
                        }
                        if (str == "OrderID")
                        {
                            database.SetParameterValue(storedProcCommand, "@Filter", "T.OrderID=" + keyword);
                            goto Label_0259;
                        }
                        break;
                    }
                    database.SetParameterValue(storedProcCommand, "@Filter", "O.UserName like '%" + keyword + "%' ");
                    goto Label_0259;
                }
                default:
                    database.SetParameterValue(storedProcCommand, "@Filter", "");
                    goto Label_0259;
            }
            database.SetParameterValue(storedProcCommand, "@Filter", "");
        Label_0259:
            database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, 10);
            IList<TransferLogInfo> list = new List<TransferLogInfo>();
            using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
            {
                while (reader.Read())
                {
                    list.Add(TransferLogFromrdr(reader));
                }
            }
            this.m_TotalOfTransferLog = (int) database.GetParameterValue(storedProcCommand, "@Total");
            return list;
        }

        public int GetTotalOfTransferLog()
        {
            return this.m_TotalOfTransferLog;
        }

        public TransferLogInfo GetTransferLogById(int transferLogId)
        {
            using (NullableDataReader reader = DBHelper.ExecuteReaderSql("select T.*,O.OrderNum,O.UserName from PE_TransferLog T inner join PE_Orders O on T.OrderID=O.OrderID where TransferLogID = @TransferLogID", new Parameters("@TransferLogId", DbType.Int32, transferLogId)))
            {
                if (reader.Read())
                {
                    return TransferLogFromrdr(reader);
                }
                return new TransferLogInfo(true);
            }
        }

        private static TransferLogInfo TransferLogFromrdr(NullableDataReader rdr)
        {
            TransferLogInfo info = new TransferLogInfo();
            info.TransferLogId = rdr.GetInt32("TransferLogID");
            info.OrderId = rdr.GetInt32("OrderId");
            info.TransferTime = rdr.GetNullableDateTime("TransferTime");
            info.Poundage = rdr.GetDecimal("Poundage");
            info.OwnerUserName = rdr.GetString("OwnerUserName");
            info.TargetUserName = rdr.GetString("TargetUserName");
            info.PayerUserName = rdr.GetString("PayerUserName");
            info.Inputer = rdr.GetString("Inputer");
            info.Remark = rdr.GetString("Remark");
            info.UserName = rdr.GetString("UserName");
            info.OrderNum = rdr.GetString("OrderNum");
            return info;
        }
    }
}

⌨️ 快捷键说明

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