using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using System.Data.SqlClient;
using System.Data;
using CY.Model;
using System.Transactions;
namespace CY.SQLDAL
{
public class EC_ProxyMemberDAL : IEC_ProxyMemberDAL
{
private Database _dataBase = null;
public EC_ProxyMemberDAL()
{
_dataBase = new Database();
}
public EC_ProxyMemberDAL(Database database)
{
_dataBase = database;
}
///
/// 新增
///
///
///
public bool InserModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.EC_ProxyMember trueModel = model as Model.EC_ProxyMember;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Memberid",trueModel.Memberid),
new SqlParameter("@ProxyState",trueModel.ProxyState),
new SqlParameter("@ProxyProvince",trueModel.ProxyProvince),
new SqlParameter("@ProxyCity",trueModel.ProxyCity),
new SqlParameter("@ProxyCountry",trueModel.ProxyCountry),
new SqlParameter("@ProxyLevel",trueModel.ProxyLevel),
new SqlParameter("@ProxyType",trueModel.ProxyType),
new SqlParameter("@ProxyStartTime",trueModel.ProxyStartTime),
new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime),
new SqlParameter("@Operator",trueModel.Operator),
new SqlParameter("@Remark",trueModel.Remark)
};
try
{
_dataBase.Query("sp_EC_ProxyMember_Insert", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 修改
///
///
///
public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.EC_ProxyMember trueModel = model as Model.EC_ProxyMember;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid",trueModel.Keyid),
new SqlParameter("@Memberid",trueModel.Memberid),
new SqlParameter("@ProxyState",trueModel.ProxyState),
new SqlParameter("@ProxyProvince",trueModel.ProxyProvince),
new SqlParameter("@ProxyCity",trueModel.ProxyCity),
new SqlParameter("@ProxyCountry",trueModel.ProxyCountry),
new SqlParameter("@ProxyLevel",trueModel.ProxyLevel),
new SqlParameter("@ProxyType",trueModel.ProxyType),
new SqlParameter("@ProxyStartTime",trueModel.ProxyStartTime),
new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime),
new SqlParameter("@Operator",trueModel.Operator),
new SqlParameter("@Remark",trueModel.Remark)
};
try
{
_dataBase.Query("sp_EC_ProxyMember_Update", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 删除
///
///
///
public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.EC_ProxyMember trueModel = model as Model.EC_ProxyMember;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid",trueModel.Keyid)
};
try
{
_dataBase.Query("sp_EC_ProxyMember_DeleteRow", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 分页查询
///
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Query query, Infrastructure.Query.Pagination pagination)
{
throw new NotImplementedException();
}
///
/// 单个查询
///
///
///
public IEnumerable SelectAllModel(Infrastructure.Query.Query query)
{
throw new NotImplementedException();
}
///
/// 根据会员编号获得信息
///
///
///
public EC_ProxyMember GetModelByMemberId(Guid MemberId)
{
try
{
if (MemberId == Guid.Empty)
return null;//错误数据返会空
IList result = _dataBase.SelectModel("*", "EC_ProxyMember", string.Format(" MemberId='{0}' ", MemberId)) as IList;//执行查询
return (null == result || result.Count == 0) ? null : result[0];//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 根据会员编号判断是否存在代理记录
///
///
///
public bool IsAlreadyProxy(Guid MemberId)
{
try
{
if (MemberId == Guid.Empty)
return false;//错误数据返会空
IList m_EC_ProxyMemberList = _dataBase.SelectModel("*", "EC_ProxyMember", string.Format(" MemberId='{0}' ", MemberId)) as IList;//执行查询
return (null == m_EC_ProxyMemberList || m_EC_ProxyMemberList.Count == 0) ? false : true;//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取市级代理
///
///
///
public EC_MemberBasic GetCityProxyMember(Guid MemberId)
{
try
{
if (MemberId == Guid.Empty)
return null;//错误数据返会空
IList result = _dataBase.SelectModel(" a.* ", " dbo.EC_MemberBasic AS a LEFT JOIN dbo.EC_ProxyMember AS b ON a.MemberId = b.Memberid LEFT JOIN dbo.EC_MemberBasic AS c on c.Province = b.ProxyProvince AND c.City = b.ProxyCity ", string.Format(" c.MemberId='{0}' AND b.ProxyType='地市总代理' ", MemberId)) as IList;//执行查询
return (null == result || result.Count == 0) ? null : result[0];//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取区县代理
///
///
///
public EC_MemberBasic GetCountryProxyMember(Guid MemberId)
{
try
{
if (MemberId == Guid.Empty)
return null;//错误数据返会空
IList result = _dataBase.SelectModel(" a.* ", " dbo.EC_MemberBasic AS a LEFT JOIN dbo.EC_ProxyMember AS b ON a.MemberId = b.Memberid LEFT JOIN dbo.EC_MemberBasic AS c on c.Province = b.ProxyProvince AND c.City = b.ProxyCity AND c.County = b.ProxyCountry ", string.Format(" c.MemberId ='5f17ad29-6075-41a0-af0a-c7420d00dd9f ' AND b.ProxyType='区县代理' ", MemberId)) as IList;//执行查询
return (null == result || result.Count == 0) ? null : result[0];//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 根据省获取代理列表
///
///
///
public DataTable SelectList(int? ProvinceId)
{
return _dataBase.SelectModel(" a.Name as NameA,a.ProvinceId,b.Name as NameB,c.Name as NameC,d.Memberid,e.* ", " dbo.Sys_CitySite AS a LEFT JOIN dbo.Sys_CitySite AS b ON a.CityId = b.Keyid LEFT JOIN dbo.Sys_CitySite AS c ON a.ProvinceId = c.Keyid LEFT JOIN dbo.EC_ProxyMember AS d ON (a.Name = d.ProxyCountry AND b.Name = d.ProxyCity AND c.Name = d.ProxyProvince AND d.ProxyType='区县代理') OR (a.Name = d.ProxyCity AND c.Name = d.ProxyProvince AND d.ProxyType='地市总代理') LEFT JOIN dbo.EC_MemberExtend AS e ON e.Keyid = d.Memberid ", " a.ProvinceId = '" + ProvinceId + "' ORDER BY a.Keyid");
}
}
}