📄 coupon.cs
字号:
namespace PowerEasy.SqlServerDal.Shop
{
using Microsoft.Practices.EnterpriseLibrary.Data;
using PowerEasy.Enumerations;
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 class Coupon : ICoupon
{
private int m_TotalOfCoupon;
public bool Add(CouponInfo couponInfo)
{
couponInfo.CouponId = GetNextId();
Parameters cmdParams = GetParameters(couponInfo);
return DBHelper.ExecuteSql("insert into PE_Coupon (CouponID,CouponName,CouponNumPattern,Money,State,UserGroup,BeginDate,EndDate,LimitNum,ProductLimitType,ProductLimitContent,CouponCreateType,CouponCreateContent,OrderTotalMoney,UseEndDate) values (@CouponID,@CouponName,@CouponNumPattern,@Money,@State,@UserGroup,@BeginDate,@EndDate,@LimitNum,@ProductLimitType,@ProductLimitContent,@CouponCreateType,@CouponCreateContent,@OrderTotalMoney,@UseEndDate)", cmdParams);
}
public bool Delete(string couponId)
{
return DBHelper.ExecuteSql("delete from PE_Coupon Where CouponID in (" + couponId + ")");
}
public CouponInfo GetCouponInfoById(int couponId)
{
using (NullableDataReader reader = DBHelper.ExecuteReaderSql("select * from PE_Coupon where CouponID=@CouponID", new Parameters("@CouponID", DbType.Int32, couponId)))
{
if (reader.Read())
{
return GetCouponInfoFromrdataReader(reader);
}
return new CouponInfo(true);
}
}
private static CouponInfo GetCouponInfoFromrdataReader(NullableDataReader dataReader)
{
CouponInfo info = new CouponInfo();
info.BeginDate = dataReader.GetDateTime("BeginDate");
info.CouponCreateContent = dataReader.GetString("CouponCreateContent");
info.CouponCreateType = (CouponCreateType) dataReader.GetInt32("CouponCreateType");
info.CouponId = dataReader.GetInt32("CouponId");
info.CouponName = dataReader.GetString("CouponName");
info.EndDate = dataReader.GetDateTime("EndDate");
info.LimitNum = dataReader.GetInt32("LimitNum");
info.Money = dataReader.GetDecimal("Money");
info.OrderTotalMoney = dataReader.GetDecimal("OrderTotalMoney");
info.CouponNumPattern = dataReader.GetString("CouponNumPattern");
info.ProductLimitContent = dataReader.GetString("ProductLimitContent");
info.ProductLimitType = (ProductLimitType) dataReader.GetInt32("ProductLimitType");
info.State = dataReader.GetInt32("State");
info.UserGroup = dataReader.GetString("UserGroup");
info.UseEndDate = dataReader.GetDateTime("UseEndDate");
return info;
}
public IList<CouponDetailInfo> GetDetailList(int startRowIndexId, int maxNumberRows, int userId)
{
Database database = DatabaseFactory.CreateDatabase();
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, "I.ID");
database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "*");
database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, "Desc");
database.AddInParameter(storedProcCommand, "@Filter", DbType.String, "I.UserID =" + userId);
database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_CouponItem I inner join PE_Coupon C on I.CouponID = C.CouponID");
database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
IList<CouponDetailInfo> list = new List<CouponDetailInfo>();
using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
{
while (reader.Read())
{
CouponDetailInfo item = new CouponDetailInfo();
item.CouponInfo = GetCouponInfoFromrdataReader(reader);
item.CouponItemInfo = CouponItem.GetItemInfoFromrdataReader(reader);
list.Add(item);
}
}
this.m_TotalOfCoupon = (int) database.GetParameterValue(storedProcCommand, "@Total");
return list;
}
public IList<CouponInfo> GetList()
{
IList<CouponInfo> list = new List<CouponInfo>();
using (NullableDataReader reader = DBHelper.ExecuteReaderSql("select * from PE_Coupon where (BeginDate <= GETDATE()) AND (EndDate >= GETDATE()) AND (State = 1)"))
{
while (reader.Read())
{
list.Add(GetCouponInfoFromrdataReader(reader));
}
}
return list;
}
public IList<CouponInfo> GetList(int startRowIndexId, int maxNumberRows)
{
Database database = DatabaseFactory.CreateDatabase();
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, "CouponID");
database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "*");
database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, "Desc");
database.AddInParameter(storedProcCommand, "@Filter", DbType.String, "");
database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_Coupon");
database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
IList<CouponInfo> list = new List<CouponInfo>();
using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
{
while (reader.Read())
{
list.Add(GetCouponInfoFromrdataReader(reader));
}
}
this.m_TotalOfCoupon = (int) database.GetParameterValue(storedProcCommand, "@Total");
return list;
}
private static int GetNextId()
{
return (DBHelper.GetMaxId("PE_Coupon", "CouponID") + 1);
}
private static Parameters GetParameters(CouponInfo couponInfo)
{
Parameters parameters = new Parameters();
parameters.AddInParameter("@CouponId", DbType.String, couponInfo.CouponId);
parameters.AddInParameter("@BeginDate", DbType.DateTime, couponInfo.BeginDate);
parameters.AddInParameter("@CouponCreateContent", DbType.String, couponInfo.CouponCreateContent);
parameters.AddInParameter("@CouponCreateType", DbType.Int32, Convert.ToInt32(couponInfo.CouponCreateType));
parameters.AddInParameter("@CouponName", DbType.String, couponInfo.CouponName);
parameters.AddInParameter("@EndDate", DbType.DateTime, couponInfo.EndDate);
parameters.AddInParameter("@LimitNum", DbType.Int32, couponInfo.LimitNum);
parameters.AddInParameter("@Money", DbType.Decimal, couponInfo.Money);
parameters.AddInParameter("@OrderTotalMoney", DbType.Decimal, couponInfo.OrderTotalMoney);
parameters.AddInParameter("@CouponNumPattern", DbType.String, couponInfo.CouponNumPattern);
parameters.AddInParameter("@ProductLimitContent", DbType.String, couponInfo.ProductLimitContent);
parameters.AddInParameter("@ProductLimitType", DbType.Int32, Convert.ToInt32(couponInfo.ProductLimitType));
parameters.AddInParameter("@State", DbType.Int32, couponInfo.State);
parameters.AddInParameter("@UserGroup", DbType.String, couponInfo.UserGroup);
parameters.AddInParameter("@UseEndDate", DbType.DateTime, couponInfo.UseEndDate);
return parameters;
}
public int GetTotalOfCoupon()
{
return this.m_TotalOfCoupon;
}
public bool SetState(int couponId, int state)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@CouponID", DbType.Int32, couponId);
cmdParams.AddInParameter("@State", DbType.Int32, state);
return DBHelper.ExecuteSql("update PE_Coupon Set State = @State where CouponID = @CouponID", cmdParams);
}
public bool Update(CouponInfo couponInfo)
{
Parameters cmdParams = GetParameters(couponInfo);
return DBHelper.ExecuteSql("update PE_Coupon Set CouponName=@CouponName,CouponNumPattern=@CouponNumPattern,Money=@Money,State=@State,UserGroup=@UserGroup,BeginDate=@BeginDate,EndDate=@EndDate,LimitNum=@LimitNum,ProductLimitType=@ProductLimitType,ProductLimitContent=@ProductLimitContent,CouponCreateType=@CouponCreateType,CouponCreateContent=@CouponCreateContent,OrderTotalMoney=@OrderTotalMoney,UseEndDate = @UseEndDate where CouponID = @CouponID", cmdParams);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -