using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using CY.Model;
using AbstractFactory;
using CY.IBaseDAL;
using CY.Infrastructure.DESEncrypt;
using CY.Infrastructure.Query;
using CY.Infrastructure.Common;
using CY.Model.Pay;
namespace CY.BLL
{
///
/// 会员的业务逻辑类
///
public class EC_MemberBasicBLL
{
IEC_MemberBasicDAL _IEC_MemberBasicDal = null;
IEC_MemberExtendDAL _IEC_MemberExtendDal = null;
IEC_SafeValidationDAL _IEC_SafeValidationDal = null;
IPay_PaymentAccountDAL _IPay_PaymentAccountDal = null;
IEC_FirmInfoDAL _IEC_FirmInfoDal = null;
IEC_ShopInfoDAL _IEC_ShopInfoDal = null;
IEC_AcceptWayBySellerDAL _IEC_AcceptWayBySellerDal = null;
///
/// 初始化构造
///
public EC_MemberBasicBLL()
{
//获取MemberBasic DAL实现
_IEC_MemberBasicDal = Factory.GetDALByInterfaceName(DALInterface.IEC_MemberBasicDAL) as IEC_MemberBasicDAL;
//获取EC_MemberExtend DAL实现
_IEC_MemberExtendDal = Factory.GetDALByInterfaceName(DALInterface.IEC_MemberExtendDAL) as IEC_MemberExtendDAL;
//获取EC_SafeValidation DAL实现
_IEC_SafeValidationDal = Factory.GetDALByInterfaceName(DALInterface.IEC_SafeValidationDAL) as IEC_SafeValidationDAL;
//获取Pay_PaymentAccount DAL实现
_IPay_PaymentAccountDal = Factory.GetDALByInterfaceName(DALInterface.IPay_PaymentAccountDAL) as IPay_PaymentAccountDAL;
//获取EC_FirmInfo DAL实现
_IEC_FirmInfoDal = Factory.GetDALByInterfaceName(DALInterface.IEC_FirmInfoDAL) as IEC_FirmInfoDAL;
//获取EC_ShopInfo DAL实现
_IEC_ShopInfoDal = Factory.GetDALByInterfaceName(DALInterface.IEC_ShopInfoDAL) as IEC_ShopInfoDAL;
_IEC_AcceptWayBySellerDal = Factory.GetDALByInterfaceName(DALInterface.IEC_AcceptWayBySellerDAL) as IEC_AcceptWayBySellerDAL;
}
///
/// 事务提交注册事件
///
///
///
///
///
///
///
///
///
///
///
///
///
///
public bool InsertModel(EC_MemberBasic m_EC_MemberBasic, EC_MemberExtend m_EC_MemberExtend, EC_SafeValidation m_EC_SafeValidation, Pay_PaymentAccount m_Pay_PaymentAccount, EC_FirmInfo m_EC_FirmInfo, EC_ShopInfo m_EC_ShopInfo, EC_AcceptWayBySeller m_EC_AcceptWayBySeller, Integrity_IntegrityCard m_Integrity_IntegrityCard_Buyer, Integrity_IntegrityCard m_Integrity_IntegrityCard_Seller, Sys_Permissions_UserRoleRelation m_Sys_Permissions_UserRoleRelation, OA_Commodity m_OA_Commodity_Paper, OA_Commodity m_OA_Commodity_Sheet, IList m_EC_SellerBusinessLimitsList)
{
// m_EC_MemberBasic.Password = DESEncrypt.Encrypt(m_EC_MemberBasic.Password);//加密
try
{
return _IEC_MemberBasicDal.InsertModel(m_EC_MemberBasic, m_EC_MemberExtend, m_EC_SafeValidation, m_Pay_PaymentAccount, m_EC_FirmInfo, m_EC_ShopInfo, m_EC_AcceptWayBySeller, m_Integrity_IntegrityCard_Buyer, m_Integrity_IntegrityCard_Seller, m_Sys_Permissions_UserRoleRelation, m_OA_Commodity_Paper, m_OA_Commodity_Sheet, m_EC_SellerBusinessLimitsList);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新会员信息
///
///
///
public bool UpdateModel(EC_MemberBasic m_EC_MemberBasic)
{
try
{
return _IEC_MemberBasicDal.UpdateModel(m_EC_MemberBasic);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 修改会员资料,会员缴费,并保存业务范围
///
///
///
///
///
///
///
public bool UpdateModel(EC_MemberBasic m_EC_MemberBasic, IList m_EC_SellerBusinessLimitsList, EC_PaymentRecord m_EC_PaymentRecord, EC_FirmInfo m_EC_FirmInfo)
{
try
{
return _IEC_MemberBasicDal.UpdateModel(m_EC_MemberBasic, m_EC_SellerBusinessLimitsList, m_EC_PaymentRecord, m_EC_FirmInfo);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新会员高级信息
///
///
///
public bool UpdateModelMemberExtend(EC_MemberExtend m_EC_MemberExtend)
{
try
{
return _IEC_MemberExtendDal.UpdateModel(m_EC_MemberExtend);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新会员账户信息
///
///
///
public bool UpdateModelPay_PaymentAccount(Pay_PaymentAccount m_Pay_PaymentAccount)
{
try
{
return _IPay_PaymentAccountDal.UpdateModel(m_Pay_PaymentAccount);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新会员收货信息
///
///
///
public bool UpdateModelMemberExtend(EC_AcceptWayBySeller m_EC_AcceptWayBySeller)
{
try
{
return _IEC_AcceptWayBySellerDal.UpdateModel(m_EC_AcceptWayBySeller);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 添加会员收货信息
///
///
///
public bool InsertModelEC_AcceptWayBySeller(EC_AcceptWayBySeller m_EC_AcceptWayBySeller)
{
try
{
return _IEC_AcceptWayBySellerDal.InserModel(m_EC_AcceptWayBySeller);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新厂商信息
///
///
///
public bool UpdateModelEC_FirmInfo(EC_FirmInfo m_EC_FirmInfo)
{
try
{
return _IEC_FirmInfoDal.UpdateModel(m_EC_FirmInfo);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 更新安全信息
///
///
///
public bool UpdateModelEC_SafeValidation(EC_SafeValidation EC_SafeValidation)
{
try
{
return _IEC_SafeValidationDal.UpdateModel(EC_SafeValidation);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 检测帐号是否存在
///
/// 登录帐号
///
public bool ExistMemberByLoginId(string LoginId)
{
bool res = false;
try
{
EC_MemberBasic result = _IEC_MemberBasicDal.SelectModleMemberByLoginId(LoginId) as EC_MemberBasic;//执行查询
if (result != null && result.MemberId != null)
{
return true;
}
}
catch (Exception ex)
{
throw ex;
}
return res;
}
///
/// 检测公司名是否存在
///
/// 公司名
///
public bool ExistMemberByCompanyName(string CompanyName)
{
bool res = false;
try
{
EC_MemberBasic result = _IEC_MemberBasicDal.SelectModleMemberByCompanyName(CompanyName) as EC_MemberBasic;//执行查询
if (result != null && result.MemberId != null)
{
return true;
}
}
catch (Exception ex)
{
throw ex;
}
return res;
}
///
/// 检测手机是否存在
///
/// 手机
///
public bool ExistMemberByPhone(string Phone)
{
bool res = false;
try
{
EC_SafeValidation result = _IEC_SafeValidationDal.SelectModleByPhone(Phone) as EC_SafeValidation;//执行查询
if (result != null && result.Keyid != null)
{
return true;
}
}
catch (Exception ex)
{
throw ex;
}
return res;
}
///
/// 检测邮箱是否存在
///
/// 邮箱
///
public bool ExistMemberByEmail(string Email)
{
bool res = false;
try
{
EC_SafeValidation result = _IEC_SafeValidationDal.SelectModleByEmail(Email) as EC_SafeValidation;//执行查询
if (result != null && result.Keyid != null)
{
return true;
}
}
catch (Exception ex)
{
throw ex;
}
return res;
}
///
/// 查询会员分页列表
///
///
///
public IEnumerable GetMemberList(Pagination pa, string Name, string CompanyName, DateTime? beginTime, DateTime? endTime, string MemberStatus, string MemberType, string Province, string City, string Country)
{
string Condition = " 1=1 and MemberType <> '管理员' and MemberType <> '员工' ";
if (beginTime.HasValue)
{
Condition += string.Format(" and CAST(RegisterDate AS DATE) >='{0}'", beginTime);
}
if (endTime.HasValue)
{
Condition += string.Format(" and CAST(RegisterDate AS DATE) <='{0}'", endTime);
}
if (!string.IsNullOrEmpty(Name))
{
Condition += " and LoginId like '%" + Name + "%'";
}
if (!string.IsNullOrEmpty(CompanyName))
{
Condition += string.Format(" and m.Name like '%{0}%'", CompanyName);
}
if (!string.IsNullOrEmpty(MemberStatus))
{
Condition += string.Format(" and UseState ='{0}'", MemberStatus);
}
if (!string.IsNullOrEmpty(MemberType))
{
Condition += string.Format(" and MemberType ='{0}'", MemberType);
}
if (!string.IsNullOrEmpty(Province))
Condition += " and Province = '" + Province + "' ";
if (!string.IsNullOrEmpty(City))
Condition += " and City = '" + City + "' ";
if (!string.IsNullOrEmpty(Country))
Condition += " and County = '" + Country + "' ";
Query query = new Query();
IList criterias = new List()
{
new Criterion("", Condition)
};
query.Criteria = criterias;
return _IEC_MemberBasicDal.SelectModelPage(query, pa);
}
///
/// 判断登录会员
///
/// 登录帐号
/// 登录密码
///
public EC_MemberBasic GetMemberByLogin(string LoginId, string Password)
{
EC_MemberBasic result = null;
try
{
result = _IEC_MemberBasicDal.SelectModleByLoginIdAndPwd(LoginId, DESEncrypt.Encrypt(Password)) as EC_MemberBasic;//执行查询
//result.ShortName ="";// _IEC_MemberExtendDal.GetModelByMemberId(result.MemberId).FirmName;
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得会员信息
///
/// 会员编号
///
public EC_MemberBasic GetMemberByMemberId(Guid MemberId)
{
EC_MemberBasic result = null;
try
{
result = _IEC_MemberBasicDal.GetMemberByMemberId(MemberId) as EC_MemberBasic;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得支付平台支付账户信息
///
/// 会员编号
///
public Pay_PaymentAccount GetPaymentAccountByMemberId(Guid MemberId)
{
Pay_PaymentAccount result = null;
try
{
result = _IPay_PaymentAccountDal.SelectModleByMemberId(MemberId) as Pay_PaymentAccount;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得安全认证表信息
///
/// 会员编号
///
public EC_SafeValidation GetSafeValidationByMemberId(Guid MemberId)
{
EC_SafeValidation result = null;
try
{
result = _IEC_SafeValidationDal.GetModelByMemberId(MemberId) as EC_SafeValidation;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得店铺信息
///
/// 会员编号
///
public EC_ShopInfo GetShopInfoByMemberId(Guid MemberId)
{
EC_ShopInfo result = null;
try
{
result = _IEC_ShopInfoDal.GetModelByMemberId(MemberId) as EC_ShopInfo;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得厂商信息
///
/// 会员编号
///
public EC_FirmInfo GetFirmInfoByMemberId(Guid MemberId)
{
EC_FirmInfo result = null;
try
{
result = _IEC_FirmInfoDal.GetModelByMemberId(MemberId) as EC_FirmInfo;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得厂商信息
///
/// 会员编号
///
public EC_AcceptWayBySeller GetEC_AcceptWayBySellerByMemberId(Guid MemberId)
{
EC_AcceptWayBySeller result = null;
try
{
result = _IEC_AcceptWayBySellerDal.SelectModelByTargetId(MemberId) as EC_AcceptWayBySeller;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 根据会员编号获得会员扩展信息
///
/// 会员编号
///
public EC_MemberExtend GetMemberExtendByMemberId(Guid MemberId)
{
EC_MemberExtend result = null;
try
{
result = _IEC_MemberExtendDal.GetModelByMemberId(MemberId) as EC_MemberExtend;//执行查询
}
catch (Exception ex)
{
throw ex;
}
return result;//返回结果
}
///
/// 模糊查询公司名称
///
/// 公司名
///
public IEnumerable SelectExtendListByName(string CompanyName)
{
return _IEC_MemberBasicDal.SelectExtendListByName(CompanyName);
}
///
/// 分页根据印刷类型获取其对于的厂商列表
///
///
///
///
///
public IList GetFirmListByPage(int printTypeId, int printMode, Guid memberId, int orderType, string firmName, string selectProvince, string selectCity, string selectCounty, int pageIndex, int pageSize, ref int pageCount)
{
return _IEC_MemberBasicDal.GetFirmListByPage(printTypeId, printMode, memberId, orderType, firmName, selectProvince, selectCity, selectCounty, pageIndex, pageSize, ref pageCount);
}
///
/// 商家展示分页查询
///
///
///
///
///
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Pagination pagination, string Province, string City, string County, string FirmDescribe, string MachineType)
{
try
{
return _IEC_FirmInfoDal.SelectModelPage(pagination, Province, City, County, FirmDescribe, MachineType);
}
catch (Exception ex)
{
return null;
}
}
///
/// 获取所有的印刷厂商
///
///
public IList GetAllFirm()
{
return _IEC_MemberBasicDal.GetAllFirm();
}
public IEnumerable SelectMemberByName(string CompanyName)
{
return _IEC_MemberBasicDal.SelectMemberByName(CompanyName);
}
///
/// 获取所有的会员
///
///
public IList GetAllMember()
{
return _IEC_MemberBasicDal.GetAllMember();
}
///
/// 我的推广列表
///
///
///
///
///
///
///
///
///
///
///
public IEnumerable MyPromotionMemberList(Infrastructure.Query.Pagination pagination, DateTime? RegStartTime, DateTime? RegEndTime, string Province, string City, string Country, string MemberType, string MemberName, Guid MemberId)
{
return _IEC_MemberBasicDal.MyPromotionMemberList(pagination, RegStartTime, RegEndTime, Province, City, Country, MemberType, MemberName, MemberId);
}
///
/// 我的推广提成
///
///
///
///
///
///
///
///
///
///
///
///
public IEnumerable MyPromotionmoneyList(Infrastructure.Query.Pagination pagination, DateTime? RegStartTime, DateTime? RegEndTime, string Province, string City, string Country, string MemberType, string MemberName, Guid MemberId, Guid FromMemberId)
{
return _IEC_MemberBasicDal.MyPromotionmoneyList(pagination, RegStartTime, RegEndTime, Province, City, Country, MemberType, MemberName, MemberId, FromMemberId);
}
///
/// 我的代理提成
///
///
///
///
///
///
///
///
///
///
///
///
public IEnumerable MyProxymoneyList(Infrastructure.Query.Pagination pagination, DateTime? RegStartTime, DateTime? RegEndTime, string Province, string City, string Country, string MemberType, string MemberName, Guid MemberId, Guid FromMemberId)
{
return _IEC_MemberBasicDal.MyProxymoneyList(pagination, RegStartTime, RegEndTime, Province, City, Country, MemberType, MemberName, MemberId, FromMemberId);
}
///
/// 根据时间查询当前人的账户统计信息
///
///
///
///
///
public PaymentAccountQueryModel GetPaymentAccountQueryResult(string startDate, string endDate, int currentPayId)
{
return _IPay_PaymentAccountDal.GetPaymentAccountQueryResult(startDate, endDate, currentPayId);
}
///
/// 获取管理员当前账户信息
///
///
public PaymentAccountModelByAdmin GetPaymentAccountModelByAdmin(int currentPayId, decimal commission)
{
return _IPay_PaymentAccountDal.GetPaymentAccountModelByAdmin(currentPayId, commission);
}
///
/// 查询管理员的统计信息
///
///
///
///
public PaymentAccountQueryModelByAdmin GetPaymentAccountQueryModelByAdmin(int currentPayId, string startDate, string endDate, string selectProvince, string selectCity, string selectCounty)
{
return _IPay_PaymentAccountDal.GetPaymentAccountQueryModelByAdmin(currentPayId, startDate, endDate, selectProvince, selectCity, selectCounty);
}
///
/// 检测域名是否重复
///
///
///
///
public int IsExitsDomain(string DomainName, Guid MemberId)
{
return _IEC_FirmInfoDal.IsExitsDomain(DomainName, MemberId);
}
///
/// 检测IP是否重复
///
///
///
public bool IsExitsRegisterIP(string RegisteredIP)
{
return _IEC_MemberBasicDal.IsExitsRegisterIP(RegisteredIP);
}
///
/// 检测公司名是否存在
///
/// 公司名
///
public EC_MemberBasic SelectModleMemberByCompanyName(string CompanyName)
{
return _IEC_MemberBasicDal.SelectModleMemberByCompanyName(CompanyName);
}
///
/// 根据卖家编号获得会员信息
///
/// 卖家编号
///
public EC_MemberBasic GetMemberBybid(int? bid)
{
return _IEC_MemberBasicDal.GetMemberBybid(bid);
}
///
/// 获取最大的卖家编号
///
///
public int GetMaxBid()
{
return _IEC_MemberBasicDal.GetMaxBid();
}
///
/// 根据会员的域名获取代表值,如果没找到返回-1
///
///
///
public int GetBid(string domainName)
{
return _IEC_FirmInfoDal.GetBid(domainName);
}
///
/// 修改用户是否显示报价到前台询价列表
///
///
///
///
public bool UpdateIsShowInquiry(Guid memberId, int isShowInquiry)
{
return _IEC_MemberBasicDal.UpdateIsShowInquiry(memberId, isShowInquiry);
}
}
}