using MyCode.Project.Domain.Message.Act.Report2301; using MyCode.Project.Domain.Message.Act.SalesSheetPay; using MyCode.Project.Domain.Message.Common; using MyCode.Project.Domain.Message.Request.Act; using MyCode.Project.Domain.Message.Request.Member; using MyCode.Project.Domain.Message.Response.MemberRecharge; using MyCode.Project.Domain.Message.Response.User; using MyCode.Project.Infrastructure.Common; using MyCode.Project.Infrastructure.Constant; using MyCode.Project.Services; using System; using System.Collections.Generic; using System.Linq; using System.Web.Http; namespace MyCode.Project.WebApi.Areas.Wechat.Controllers { /// /// 会员API信息相关 /// public class MemberInfoForLxmController : BaseWechatController { private IReturnVisitLogService _returnVisitLogService; private IMemberHomePageService _memberHomePageService; private IMemberTagNewService _memberTagService; private IMemberService _memberService; private IPreSalesSheetService _preSalesSheetService; private IMemberRechargeService _memberRechargeService; public MemberInfoForLxmController(IReturnVisitLogService returnVisitLogService, IMemberHomePageService memberHomePageService , IMemberTagNewService memberTagNewService , IMemberService memberService , IPreSalesSheetService preSalesSheetService , IMemberRechargeService memberRechargeService) { _returnVisitLogService = returnVisitLogService; _memberHomePageService = memberHomePageService; _memberTagService = memberTagNewService; _memberService = memberService; _memberRechargeService = memberRechargeService; _preSalesSheetService = preSalesSheetService; } #region GetXiaoFeiFenXi(消费分析) /// /// 消费分析 /// /// 查询条件 /// [HttpPost] [AllowAnonymous] public XiaoFeiFenXi GetXiaoFeiFenXi(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { return _memberHomePageService.GetXiaoFeiFenXi(Guid.Parse(request.Json)); } else return null; } #endregion #region GetMemberAccountBookLog(获取会员余额变动明细) /// /// 获取会员余额变动明细 /// /// 查询条件 /// [HttpPost] [AllowAnonymous] public PageResult GetMemberAccountBookLog(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { PagedSearch search = new PagedSearch(); search = JsonHelper.ToObject>(request.Json); return _memberHomePageService.GetMemberAccountBookLog(search); } else return null; } #endregion #region GetMemberShowTagList(获取会员详情显示的标签数组(包含公共标签和自定义标签)) /// /// 获取会员详情显示的标签数组(包含公共标签和自定义标签) /// /// 查询条件 /// [HttpPost] [AllowAnonymous] public List GetMemberShowTagList(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { MemberAccountBookLogRequst search = JsonHelper.ToObject(request.Json); Guid memberId = search.MemberId.Value; Guid shopId = search.ShopId.Value; List list = new List(); var result = _memberTagService.GetMemberALLTags(memberId, 1); list = result[0].MemberTags.Select(t => t.Name).ToList(); var list2 = _memberTagService.GetPrivateTagList(memberId, shopId); if (list2.Count > 0) { if (list == null) list = new List(); list.AddRange(list2); } return list; } else return null; } #endregion #region AddMemberConsultant(新增会员营销顾问关系) /// /// 新增会员营销顾问关系 /// /// 查询条件 /// [HttpPost] [AllowAnonymous] public void AddMemberConsultant(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { AddMemberConsultantAct search = JsonHelper.ToObject(request.Json); Guid memberId = search.MemberId.Value; Guid shopId = search.ShopId.Value; LoginInfo loginInfo = new LoginInfo(); loginInfo.CustomerId = search.CustomerId; loginInfo.Name = search.Name; loginInfo.ClerkId = search.ClerkId; _memberService.AddMemberConsultant(memberId, shopId, loginInfo); } } #endregion #region GetOldMemberAccountBookLog(获取会员余额初始化流水的明细) /// /// 获取会员余额初始化流水的明细 /// /// /// [HttpPost] [AllowAnonymous] public List GetOldMemberAccountBookLog(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { Guid bookId = Guid.Parse(request.Json); return _memberHomePageService.GetOldMemberAccountBookLog(bookId); } else return null; } #endregion #region ReturnPreSheet(预售单整单退款) /// /// 预售单整单退款 /// /// /// [HttpPost] [AllowAnonymous] public Guid? ReturnPreSheet(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { var act = JsonHelper.ToObject(request.Json); LoginInfo loginInfo = new LoginInfo(); var id = _preSalesSheetService.ReturnPreSheet(act, loginInfo, 0); return id; } else { return null; } } #endregion #region ReturnRecharge(充值退款) /// /// 充值退款 /// /// /// [HttpPost] [AllowAnonymous] public void ReturnRecharge(BfyApiKeyAct request) { if (request.LxmZHMDReportKey.ToLower() == Const.LxmSysTemReportKey.ToLower()) { Guid bookId = Guid.Parse(request.Json); LoginInfo loginInfo = new LoginInfo(); _memberRechargeService.ReturnRecharge(bookId, loginInfo,0); } } #endregion } }