示例#1
0
        //平台红包存储
        private void DepositToRegister(MemberOpenIdInfo openInfo, Entities efContext)
        {
            //获取某个OpenId对应的红包记录
            var receives = efContext.BonusReceiveInfo.Where(p => p.OpenId == openInfo.OpenId && !p.IsTransformedDeposit);
            var list     = receives.ToList();
            List <CapitalDetailModel> capitals = new List <CapitalDetailModel>();

            //存在数据则证明有可用红包,可以存到预存款里
            if (list.Count > 0)
            {
                foreach (var model in list)
                {
                    model.IsTransformedDeposit = true;
                    model.Himall_Members       = efContext.UserMemberInfo.FirstOrDefault(p => p.Id == openInfo.UserId);


                    CapitalDetailModel capital = new CapitalDetailModel()
                    {
                        UserId     = openInfo.UserId,
                        SourceType = CapitalDetailInfo.CapitalDetailType.RedPacket,
                        Amount     = model.Price,
                        CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                    };
                    new MemberCapitalService().AddCapital(capital);
                }
                efContext.SaveChanges();
            }
            IMemberCapitalService capitalServicer = Himall.ServiceProvider.Instance <IMemberCapitalService> .Create;

            foreach (var c in capitals)
            {
                capitalServicer.AddCapital(c);
            }
        }
        public ActionResult ApplyWithDraw()
        {
            SiteSettingsInfo siteSettings = ServiceHelper.Create <ISiteSettingService>().GetSiteSettings();
            //if (string.IsNullOrWhiteSpace(siteSettings.WeixinAppId) || string.IsNullOrWhiteSpace(siteSettings.WeixinAppSecret))
            //{
            //    throw new HimallException("未配置公众号参数");
            //}
            ////string str = "";//AccessTokenContainer.TryGetToken(siteSettings.WeixinAppId, siteSettings.WeixinAppSecret, false);
            //SceneModel sceneModel = new SceneModel(QR_SCENE_Type.WithDraw)
            //{
            //    Object = base.CurrentSellerManager.Id.ToString()
            //};
            int num = 0;//(new SceneHelper()).SetModel(sceneModel, 600);

            //CreateQrCodeResult createQrCodeResult = QrCodeApi.Create(str, 300, num, 10000);
            ViewBag.ticket  = "";//createQrCodeResult.ticket;
            ViewBag.Sceneid = num;
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalInfo           capitalInfo          = memberCapitalService.GetCapitalInfoByManagerId(base.CurrentSellerManager.Id);

            if (capitalInfo == null)
            {
                ViewBag.ApplyWithMoney = 0;
            }
            else
            {
                dynamic viewBag = base.ViewBag;
                decimal?balance = capitalInfo.Balance;
                viewBag.ApplyWithMoney = balance.Value;
            }
            base.ViewBag.IsSetPwd = (string.IsNullOrWhiteSpace(base.CurrentSellerManager.Password) ? false : true);
            return(View());
        }
示例#3
0
        /// <summary>
        /// 将红包金额存到预存款里  (领取红包时执行)
        /// 只会出现一条红包记录
        /// </summary>
        private void DepositToMember(string openId, decimal price, string unionId = "")
        {
            //查看用户、OpenId关联表里是否存在数据,存在则证明已经绑定过OpenId
            MemberOpenIdInfo model = DbFactory.Default.Get <MemberOpenIdInfo>().Where(p => p.OpenId.ToLower() == openId.ToLower()).FirstOrDefault();

            if (model == null && !string.IsNullOrEmpty(unionId))
            {
                model = DbFactory.Default.Get <MemberOpenIdInfo>().Where(p => p.UnionId.ToLower() == unionId.ToLower()).FirstOrDefault();
            }
            if (model != null)
            {
                var receive = DbFactory.Default.Get <BonusReceiveInfo>().Where(p => (p.OpenId.ToLower() == openId.ToLower() || p.OpenId.ToLower() == model.UnionId.ToLower()) && p.IsTransformedDeposit == false).FirstOrDefault();
                if (receive == null || receive.Id <= 0)
                {
                    return;//没有未领取红包提前跳出
                }
                receive.IsTransformedDeposit = true;
                receive.UserId = model.UserId;
                DbFactory.Default.Update(receive);

                IMemberCapitalService capitalServicer = Mall.ServiceProvider.Instance <IMemberCapitalService> .Create;
                CapitalDetailModel    capita          = new CapitalDetailModel
                {
                    UserId     = model.UserId,
                    SourceType = Mall.Entities.CapitalDetailInfo.CapitalDetailType.RedPacket,
                    Amount     = price,
                    CreateTime = ((DateTime)receive.ReceiveTime).ToString("yyyy-MM-dd HH:mm:ss")
                };
                capitalServicer.AddCapital(capita);
            }
        }
示例#4
0
        public ActionResult PayReturn_Charge(string id)
        {
            string empty = string.Empty;

            try
            {
                id = DecodePaymentId(id);
                Plugin <IPaymentPlugin> plugin = PluginsManagement.GetPlugin <IPaymentPlugin>(id);
                if (plugin != null)
                {
                    PaymentInfo           paymentInfo          = plugin.Biz.ProcessReturn(base.Request);
                    IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
                    ChargeDetailInfo      chargeDetail         = memberCapitalService.GetChargeDetail(paymentInfo.OrderIds.FirstOrDefault());
                    if (chargeDetail != null && chargeDetail.ChargeStatus != ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess)
                    {
                        chargeDetail.ChargeWay    = plugin.PluginInfo.DisplayName;
                        chargeDetail.ChargeStatus = ChargeDetailInfo.ChargeDetailStatus.ChargeSuccess;
                        chargeDetail.ChargeTime   = new DateTime?((paymentInfo.TradeTime.HasValue ? paymentInfo.TradeTime.Value : DateTime.Now));
                        memberCapitalService.UpdateChargeDetail(chargeDetail);
                        plugin.Biz.ConfirmPayResult();
                        string str = CacheKeyCollection.PaymentState(chargeDetail.Id.ToString());
                        Cache.Insert(str, true, 15);
                    }
                }
            }
            catch (Exception exception)
            {
                Log.Error(string.Concat("预付款充值回调出错:", exception.Message));
            }
            return(View());
        }
示例#5
0
        public JsonResult ChargeList(int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            ChargeQuery           chargeQuery          = new ChargeQuery()
            {
                memberId = new long?(base.CurrentUser.Id),
                PageSize = rows,
                PageNo   = page
            };
            PageModel <ChargeDetailInfo>    chargeLists = memberCapitalService.GetChargeLists(chargeQuery);
            IEnumerable <ChargeDetailModel> list        =
                from e in chargeLists.Models.ToList()
                select new ChargeDetailModel()
            {
                Id               = e.Id.ToString(),
                ChargeAmount     = e.ChargeAmount,
                ChargeStatus     = e.ChargeStatus,
                ChargeStatusDesc = e.ChargeStatus.ToDescription(),
                ChargeTime       = e.ChargeTime.ToString(),
                CreateTime       = e.CreateTime.ToString(),
                ChargeWay        = e.ChargeWay,
                MemId            = e.MemId
            };
            DataGridModel <ChargeDetailModel> dataGridModel = new DataGridModel <ChargeDetailModel>()
            {
                rows  = list,
                total = chargeLists.Total
            };

            return(Json(dataGridModel));
        }
示例#6
0
        /// <summary>
        /// 将红包金额存到预存款里  (领取红包时执行)
        /// 只会出现一条红包记录
        /// </summary>
        private void DepositToMember(string openId, decimal price)
        {
            Entities efContext = new Entities();
            //查看用户、OpenId关联表里是否存在数据,存在则证明已经绑定过OpenId
            MemberOpenIdInfo model = efContext.MemberOpenIdInfo.Where(p => p.OpenId == openId).FirstOrDefault();

            if (model != null)
            {
                var receive = efContext.BonusReceiveInfo.Where(p => p.OpenId == openId && !p.IsTransformedDeposit).FirstOrDefault();
                receive.IsTransformedDeposit = true;
                receive.Himall_Members       = efContext.UserMemberInfo.FirstOrDefault(p => p.Id == model.UserId);
                efContext.SaveChanges();

                IMemberCapitalService capitalServicer = Himall.ServiceProvider.Instance <IMemberCapitalService> .Create;
                CapitalDetailModel    capita          = new CapitalDetailModel
                {
                    UserId     = model.UserId,
                    SourceType = CapitalDetailInfo.CapitalDetailType.RedPacket,
                    Amount     = price,
                    CreateTime = ((DateTime)receive.ReceiveTime).ToString("yyyy-MM-dd HH:mm:ss")
                };
                capitalServicer.AddCapital(capita);
            }
            efContext.Dispose();
        }
示例#7
0
        public JsonResult List(CapitalDetailInfo.CapitalDetailType capitalType, long userid, string startTime, string endTime, int page, int rows)
        {
            IMemberCapitalService service = this._iMemberCapitalService;
            CapitalDetailQuery    query   = new CapitalDetailQuery
            {
                memberId    = userid,
                capitalType = new CapitalDetailInfo.CapitalDetailType?(capitalType),
                PageSize    = rows,
                PageNo      = page
            };

            if (!string.IsNullOrWhiteSpace(startTime))
            {
                query.startTime = new DateTime?(DateTime.Parse(startTime));
            }
            if (!string.IsNullOrWhiteSpace(endTime))
            {
                query.endTime = new DateTime?(DateTime.Parse(endTime).AddDays(1.0).AddSeconds(-1.0));
            }
            ObsoletePageModel <CapitalDetailInfo> capitalDetails = service.GetCapitalDetails(query);
            List <CapitalDetailModel>             list           = (from e in capitalDetails.Models.ToList <CapitalDetailInfo>() select new CapitalDetailModel {
                Id = e.Id, Amount = e.Amount, CapitalID = e.CapitalID, CreateTime = e.CreateTime.Value.ToString(), SourceData = e.SourceData, SourceType = e.SourceType, Remark = e.SourceType.ToDescription() + ",单号:" + e.Id, PayWay = e.Remark
            }).ToList <CapitalDetailModel>();
            DataGridModel <CapitalDetailModel> data = new DataGridModel <CapitalDetailModel>
            {
                rows  = list,
                total = capitalDetails.Total
            };

            return(base.Json(data));
        }
示例#8
0
        public ActionResult Index()
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalInfo           capitalInfo          = memberCapitalService.GetCapitalInfo(base.CurrentUser.Id);

            return(View(capitalInfo));
        }
示例#9
0
 public MemberController(
     IOrderService iOrderService,
     IMemberService iMemberService,
     IMemberCapitalService iMemberCapitalService,
     ICouponService iCouponService,
     IShopBonusService iShopBonusService,
     IVShopService iVShopService,
     IProductService iProductService,
     IShippingAddressService iShippingAddressService,
     IMessageService iMessageService,
     IDistributionService iDistributionService,
     IMemberSignInService iMemberSignInService,
     IRefundService iRefundService,
     ICommentService iCommentService
     )
 {
     _iOrderService           = iOrderService;
     _iMemberService          = iMemberService;
     _iMemberCapitalService   = iMemberCapitalService;
     _iCouponService          = iCouponService;
     _iShopBonusService       = iShopBonusService;
     _iVShopService           = iVShopService;
     _iProductService         = iProductService;
     _iShippingAddressService = iShippingAddressService;
     _iMessageService         = iMessageService;
     _iMemberSignInService    = iMemberSignInService;
     _iDistributionService    = iDistributionService;
     _iRefundService          = iRefundService;
     _iCommentService         = iCommentService;
 }
示例#10
0
        public JsonResult List(CapitalDetailInfo.CapitalDetailType capitalType, int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalDetailQuery    capitalDetailQuery   = new CapitalDetailQuery()
            {
                memberId    = base.CurrentUser.Id,
                capitalType = new CapitalDetailInfo.CapitalDetailType?(capitalType),
                PageSize    = rows,
                PageNo      = page
            };
            PageModel <CapitalDetailInfo> capitalDetails = memberCapitalService.GetCapitalDetails(capitalDetailQuery);
            List <CapitalDetailModel>     list           = (
                from e in capitalDetails.Models.ToList()
                select new CapitalDetailModel()
            {
                Id = e.Id,
                Amount = e.Amount,
                CapitalID = e.CapitalID,
                CreateTime = e.CreateTime.Value.ToString(),
                SourceData = e.SourceData,
                SourceType = e.SourceType,
                Remark = string.Concat(e.SourceType.ToDescription(), ",单号:", e.Id),
                PayWay = e.Remark
            }).ToList();
            DataGridModel <CapitalDetailModel> dataGridModel = new DataGridModel <CapitalDetailModel>()
            {
                rows  = list,
                total = capitalDetails.Total
            };

            return(Json(dataGridModel));
        }
示例#11
0
        public JsonResult List(int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalDetailQuery    capitalDetailQuery   = new CapitalDetailQuery()
            {
                memberId = base.CurrentUser.Id,
                PageSize = rows,
                PageNo   = page
            };
            PageModel <CapitalDetailInfo>    capitalDetails = memberCapitalService.GetCapitalDetails(capitalDetailQuery);
            IEnumerable <CapitalDetailModel> list           =
                from e in capitalDetails.Models.ToList()
                select new CapitalDetailModel()
            {
                Id         = e.Id,
                Amount     = e.Amount,
                CapitalID  = e.CapitalID,
                CreateTime = e.CreateTime.Value.ToString(),
                SourceData = e.SourceData,
                SourceType = e.SourceType,
                Remark     = e.SourceType.ToDescription(),
                PayWay     = e.Remark
            };

            return(Json(list));
        }
示例#12
0
        private void DepositToRegister(MemberOpenIdInfo openInfo, Entities efContext)
        {
            IQueryable <BonusReceiveInfo> bonusReceiveInfo =
                from p in efContext.BonusReceiveInfo
                where (p.OpenId == openInfo.OpenId) && !p.IsTransformedDeposit
                select p;
            List <BonusReceiveInfo>   list = bonusReceiveInfo.ToList();
            List <CapitalDetailModel> capitalDetailModels = new List <CapitalDetailModel>();

            if (list.Count > 0)
            {
                foreach (BonusReceiveInfo bonusReceiveInfo1 in list)
                {
                    bonusReceiveInfo1.IsTransformedDeposit = true;
                    bonusReceiveInfo1.ChemCloud_Members    = efContext.UserMemberInfo.FirstOrDefault((UserMemberInfo p) => p.Id == openInfo.UserId);
                    CapitalDetailModel capitalDetailModel = new CapitalDetailModel()
                    {
                        UserId = openInfo.UserId,
                        //SourceType = CapitalDetailInfo.CapitalDetailType.RedPacket,
                        Amount     = bonusReceiveInfo1.Price,
                        CreateTime = bonusReceiveInfo1.ReceiveTime.Value.ToString("yyyy-MM-dd HH:mm:ss")
                    };
                    capitalDetailModels.Add(capitalDetailModel);
                }
                efContext.SaveChanges();
            }
            IMemberCapitalService create = Instance <IMemberCapitalService> .Create;

            foreach (CapitalDetailModel capitalDetailModel1 in capitalDetailModels)
            {
                create.AddCapital(capitalDetailModel1);
            }
        }
示例#13
0
        private void DepositToMember(string openId, decimal price)
        {
            Entities         entity           = new Entities();
            MemberOpenIdInfo memberOpenIdInfo = (
                from p in entity.MemberOpenIdInfo
                where p.OpenId == openId
                select p).FirstOrDefault();

            if (memberOpenIdInfo != null)
            {
                BonusReceiveInfo bonusReceiveInfo = (
                    from p in entity.BonusReceiveInfo
                    where (p.OpenId == openId) && !p.IsTransformedDeposit
                    select p).FirstOrDefault();
                bonusReceiveInfo.IsTransformedDeposit = true;
                bonusReceiveInfo.ChemCloud_Members    = entity.UserMemberInfo.FirstOrDefault((UserMemberInfo p) => p.Id == memberOpenIdInfo.UserId);
                entity.SaveChanges();
                IMemberCapitalService create             = Instance <IMemberCapitalService> .Create;
                CapitalDetailModel    capitalDetailModel = new CapitalDetailModel()
                {
                    UserId = memberOpenIdInfo.UserId,
                    //SourceType = CapitalDetailInfo.CapitalDetailType.RedPacket,
                    Amount     = price,
                    CreateTime = bonusReceiveInfo.ReceiveTime.Value.ToString("yyyy-MM-dd HH:mm:ss")
                };
                create.AddCapital(capitalDetailModel);
            }
            entity.Dispose();
        }
示例#14
0
        //平台红包存储
        private void DepositToRegister(MemberOpenIdInfo openInfo)
        {
            //获取某个OpenId对应的红包记录(在Mall3.3版本,考虑到小程序首页配置了现金红包跳转到红包页面的情况,将之前的openId改为UnionId,并兼容以前的数据)
            var receives = DbFactory.Default.Get <BonusReceiveInfo>().Where(p => (p.OpenId.ToLower() == openInfo.OpenId.ToLower() || p.OpenId.ToLower() == openInfo.UnionId.ToLower()) && p.IsTransformedDeposit == false);
            var list     = receives.ToList();
            List <CapitalDetailModel> capitals = new List <CapitalDetailModel>();

            //存在数据则证明有可用红包,可以存到预存款里
            if (list.Count > 0)
            {
                foreach (var model in list)
                {
                    model.IsTransformedDeposit = true;
                    model.UserId = openInfo.UserId;
                    DbFactory.Default.Update(model);

                    CapitalDetailModel capital = new CapitalDetailModel()
                    {
                        UserId     = openInfo.UserId,
                        SourceType = Mall.Entities.CapitalDetailInfo.CapitalDetailType.RedPacket,
                        Amount     = model.Price,
                        CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                    };
                    new MemberCapitalService().AddCapital(capital);
                }
            }
            IMemberCapitalService capitalServicer = Mall.ServiceProvider.Instance <IMemberCapitalService> .Create;

            foreach (var c in capitals)
            {
                capitalServicer.AddCapital(c);
            }
        }
示例#15
0
        public JsonResult ApplyWithDrawList(ApplyWithDrawInfo.ApplyWithDrawStatus capitalType, string withdrawno, string user, int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            IMemberService        memberService        = ServiceHelper.Create <IMemberService>();
            long?nullable = null;

            if (!string.IsNullOrWhiteSpace(user))
            {
                nullable = new long?((memberService.GetMemberByName(user) ?? new UserMemberInfo()
                {
                    Id = 0
                }).Id);
            }
            ApplyWithDrawQuery applyWithDrawQuery = new ApplyWithDrawQuery()
            {
                memberId       = nullable,
                PageSize       = rows,
                PageNo         = page,
                withDrawStatus = new ApplyWithDrawInfo.ApplyWithDrawStatus?(capitalType)
            };
            ApplyWithDrawQuery nullable1 = applyWithDrawQuery;

            if (!string.IsNullOrWhiteSpace(withdrawno))
            {
                nullable1.withDrawNo = new long?(long.Parse(withdrawno));
            }
            PageModel <ApplyWithDrawInfo>    applyWithDraw       = memberCapitalService.GetApplyWithDraw(nullable1);
            IEnumerable <ApplyWithDrawModel> applyWithDrawModels = applyWithDraw.Models.ToList().Select <ApplyWithDrawInfo, ApplyWithDrawModel>((ApplyWithDrawInfo e) =>
            {
                string description    = e.ApplyStatus.ToDescription();
                UserMemberInfo member = memberService.GetMember(e.MemId);
                return(new ApplyWithDrawModel()
                {
                    Id = e.Id,
                    ApplyAmount = e.ApplyAmount,
                    ApplyStatus = e.ApplyStatus,
                    ApplyStatusDesc = description,
                    ApplyTime = e.ApplyTime.ToString(),
                    NickName = e.NickName,
                    MemberName = member.UserName,
                    ConfirmTime = e.ConfirmTime.ToString(),
                    MemId = e.MemId,
                    OpUser = e.OpUser,
                    PayNo = e.PayNo,
                    PayTime = e.PayTime.ToString(),
                    Remark = e.Remark,
                    WithdrawType = e.WithdrawType,
                    Myaccount = e.Myaccount,
                    UserInfo = e.Myaccount + '(' + e.NickName + ')'
                });
            });
            DataGridModel <ApplyWithDrawModel> dataGridModel = new DataGridModel <ApplyWithDrawModel>()
            {
                rows  = applyWithDrawModels,
                total = applyWithDraw.Total
            };

            return(Json(dataGridModel));
        }
示例#16
0
 public CapitalController(IMemberCapitalService iMemberCapitalService,
                          IMemberService iMemberService,
                          IOperationLogService iOperationLogService)
 {
     _iMemberCapitalService = iMemberCapitalService;
     _iMemberService        = iMemberService;
     _iOperationLogService  = iOperationLogService;
 }
示例#17
0
        public void Execute(IJobExecutionContext context)
        {
            Entity.Entities entity   = new Entities();
            var             settings = new SiteSettingService().GetSiteSettings();
            var             expried  = settings.SalesReturnTimeout;
            var             now      = DateTime.Now;
            var             exday    = now.AddDays(-expried);
            var             t        = entity.BrokerageIncomeInfo.Where(a => a.Status == Model.BrokerageIncomeInfo.BrokerageStatus.NotSettled);
            var             order    = entity.OrderInfo.Where(b => b.OrderStatus == Model.OrderInfo.OrderOperateStatus.Finish && b.FinishDate.Value <= exday);
            var             models   = t.Join(order, a => a.OrderId, b => b.Id, (a, b) => new
            {
                a.Id,
                a.OrderId,
                a.OrderTime,
                a.OrderItemId,
                a.Brokerage,
                a.Himall_BrokerageRefund,
                a.ProductID,
                a.UserId,
                b.FinishDate,
                b.OrderStatus,
            }).ToList();

            foreach (var model in models)
            {
                using (TransactionScope transaction = new TransactionScope())
                {
                    IMemberCapitalService capitalServicer = Himall.ServiceProvider.Instance <IMemberCapitalService> .Create;
                    CapitalDetailModel    capita          = new CapitalDetailModel
                    {
                        UserId     = model.UserId,
                        SourceType = CapitalDetailInfo.CapitalDetailType.Brokerage,
                        CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                    };
                    capita.Amount = model.Brokerage;
                    var refund = model.Himall_BrokerageRefund.FirstOrDefault();
                    if (refund != null)
                    {
                        capita.Amount = model.Brokerage - refund.Brokerage;
                    }
                    var paid = entity.ProductBrokerageInfo.Where(a => a.ProductId == model.ProductID).FirstOrDefault();
                    var b    = entity.BrokerageIncomeInfo.Where(a => a.OrderItemId == model.OrderItemId && a.Status == BrokerageIncomeInfo.BrokerageStatus.NotSettled).FirstOrDefault();
                    if (b != null)
                    {
                        b.Status              = BrokerageIncomeInfo.BrokerageStatus.Settled;
                        b.SettlementTime      = DateTime.Now;
                        paid.BrokerageAmount += capita.Amount;
                        capita.Remark         = "分佣佣金,预约单Id:" + model.OrderId + ",诊疗项目ID:" + model.ProductID;
                        capita.SourceData     = model.OrderId.HasValue ? model.OrderId.Value.ToString() : "";
                        capitalServicer.AddCapital(capita);
                        //已结算累加
                        entity.SaveChanges();
                        transaction.Complete();
                    }
                }
            }
        }
示例#18
0
 public PaymentController(IOrderService iOrderService, IMemberService iMemberService
                          , IMemberCapitalService iMemberCapitalService, IFightGroupService iFightGroupService
                          )
 {
     _iOrderService         = iOrderService;
     _iMemberService        = iMemberService;
     _iMemberCapitalService = iMemberCapitalService;
     _iFightGroupService    = iFightGroupService;
 }
示例#19
0
 public PaymentController(IOrderService iOrderService, IMemberService iMemberService
                          , IMemberCapitalService iMemberCapitalService, IFightGroupService iFightGroupService,
                          IHttpContextAccessor httpContextAccessor
                          )
 {
     _iOrderService         = iOrderService;
     _iMemberService        = iMemberService;
     _iMemberCapitalService = iMemberCapitalService;
     _iFightGroupService    = iFightGroupService;
 }
示例#20
0
 public PayController(IOrderService iOrderService, ICashDepositsService iCashDepositsService, IMemberCapitalService iMemberCapitalService
                      , IRefundService iRefundService, IShopService iShopService, IFightGroupService iFightGroupService)
 {
     _iOrderService         = iOrderService;
     _iCashDepositsService  = iCashDepositsService;
     _iMemberCapitalService = iMemberCapitalService;
     _iRefundService        = iRefundService;
     _iShopService          = iShopService;
     _iFightGroupService    = iFightGroupService;
 }
示例#21
0
        /// <summary>
        /// 微信活动 将红包金额存到预存款里  (领取红包时执行)
        /// 只会出现一条红包记录
        /// </summary>
        private void WeiDepositToMember(long userId, decimal price)
        {
            IMemberCapitalService capitalServicer = Mall.ServiceProvider.Instance <IMemberCapitalService> .Create;
            CapitalDetailModel    capita          = new CapitalDetailModel
            {
                UserId     = userId,
                SourceType = Mall.Entities.CapitalDetailInfo.CapitalDetailType.RedPacket,
                Amount     = price,
                CreateTime = (DateTime.Now).ToString("yyyy-MM-dd HH:mm:ss")
            };

            capitalServicer.AddCapital(capita);
        }
        public ActionResult ApplyWithDraw()
        {
            SiteSettingsInfo siteSettings = ServiceHelper.Create <ISiteSettingService>().GetSiteSettings();

            if (string.IsNullOrWhiteSpace(siteSettings.WeixinAppId) || string.IsNullOrWhiteSpace(siteSettings.WeixinAppSecret))
            {
                throw new HimallException("Can not Set WeiXin AppId");
            }
            string     str        = AccessTokenContainer.TryGetToken(siteSettings.WeixinAppId, siteSettings.WeixinAppSecret, true);
            SceneModel sceneModel = new SceneModel(QR_SCENE_Type.WithDraw)
            {
                Object = base.CurrentUser.Id.ToString()
            };
            int num = (new SceneHelper()).SetModel(sceneModel, 600);
            CreateQrCodeResult createQrCodeResult = QrCodeApi.Create(str, 300, num, 10000);

            ViewBag.ticket  = createQrCodeResult.ticket;
            ViewBag.Sceneid = num;
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalInfo           capitalInfo          = memberCapitalService.GetCapitalInfo(base.CurrentUser.Id);

            if (capitalInfo == null)
            {
                ViewBag.ApplyWithMoney = 0;
            }
            else
            {
                dynamic viewBag = base.ViewBag;
                decimal?balance = capitalInfo.Balance;
                ViewBag.ApplyWithMoney = balance.Value;
            }
            string membersId = this.CurrentUser.UserName;
            IEnumerable <WithDrawInfo> WithDraws = ServiceHelper.Create <IWithDrawService>().GetWithDrawByMembersId(membersId);//因为UserName值唯一,所以没有登录账号ID去获取信息

            String[] Array = new String[WithDraws.Count()];
            int      i     = 0;

            foreach (var item in WithDraws)
            {
                Array[i] = item.WithdrawType + "【" + item.AccountNumber + "," + item.Name + "】";
                i++;
            }
            ViewBag.List = Array;
            ViewBag.Num  = Array.Length;


            base.ViewBag.IsSetPwd = (string.IsNullOrWhiteSpace(base.CurrentUser.PayPwd) ? false : true);
            return(View());
        }
示例#23
0
        public PayController(IOrderService iOrderService, ICashDepositsService iCashDepositsService, IMemberCapitalService iMemberCapitalService
                             , IRefundService iRefundService, IShopService iShopService, IFightGroupService iFightGroupService,
                             IHttpContextAccessor httpContextAccessor,
                             IWebHostEnvironment environment
                             )
        {
            _iOrderService         = iOrderService;
            _iCashDepositsService  = iCashDepositsService;
            _iMemberCapitalService = iMemberCapitalService;
            _iRefundService        = iRefundService;
            _iShopService          = iShopService;
            _iFightGroupService    = iFightGroupService;

            _httpContextAccessor = httpContextAccessor;
            _hostingEnvironment  = environment;
        }
示例#24
0
        public JsonResult List(int page, int rows)
        {
            IMemberCapitalService service = this._iMemberCapitalService;
            CapitalDetailQuery    query   = new CapitalDetailQuery
            {
                memberId = base.CurrentUser.Id,
                PageSize = rows,
                PageNo   = page
            };
            ObsoletePageModel <CapitalDetailInfo> capitalDetails = service.GetCapitalDetails(query);
            IEnumerable <CapitalDetailModel>      enumerable     = from e in capitalDetails.Models.ToList <CapitalDetailInfo>() select new CapitalDetailModel {
                Id = e.Id, Amount = e.Amount, CapitalID = e.CapitalID, CreateTime = e.CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss"), SourceData = e.SourceData, SourceType = e.SourceType, Remark = e.SourceType.ToDescription(), PayWay = e.Remark
            };

            return(base.Json(new { model = enumerable, total = capitalDetails.Total }));
        }
示例#25
0
 public UserCenterController(
     IMemberService iMemberService,
     IProductService iProductService,
     IMessageService iMessageService,
     ICommentService iCommentService,
     IMemberCapitalService iMemberCapitalService,
     IOrderService iOrderService,
     ICartService iCartService
     )
 {
     _iMemberService        = iMemberService;
     _iProductService       = iProductService;
     _iMessageService       = iMessageService;
     _iCommentService       = iCommentService;
     _iMemberCapitalService = iMemberCapitalService;
     _iOrderService         = iOrderService;
     _iCartService          = iCartService;
 }
示例#26
0
        public ActionResult CapitalCharge()
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalInfo           capitalInfo          = memberCapitalService.GetCapitalInfoByManagerId(base.CurrentSellerManager.Id);

            if (capitalInfo == null)
            {
                capitalInfo = new CapitalInfo()
                {
                    MemId        = 0,
                    Balance      = 0,
                    FreezeAmount = 0,
                    ChargeAmount = 0,
                    ManageId     = base.CurrentSellerManager.Id
                };
                memberCapitalService.AddCapitalInfo(capitalInfo);
            }
            return(View(capitalInfo));
        }
示例#27
0
        public JsonResult ApplyWithDrawList(int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            ApplyWithDrawQuery    applyWithDrawQuery   = new ApplyWithDrawQuery()
            {
                memberId = new long?(base.CurrentUser.Id),
                PageSize = rows,
                PageNo   = page,
                Sort     = "ApplyTime"
            };
            PageModel <ApplyWithDrawInfo>    applyWithDraw       = memberCapitalService.GetApplyWithDraw(applyWithDrawQuery);
            IEnumerable <ApplyWithDrawModel> applyWithDrawModels = applyWithDraw.Models.ToList().Select <ApplyWithDrawInfo, ApplyWithDrawModel>((ApplyWithDrawInfo e) =>
            {
                string empty = string.Empty;
                if (e.ApplyStatus == ApplyWithDrawInfo.ApplyWithDrawStatus.PayFail || e.ApplyStatus == ApplyWithDrawInfo.ApplyWithDrawStatus.WaitConfirm)
                {
                    empty = "提现中";
                }
                else if (e.ApplyStatus == ApplyWithDrawInfo.ApplyWithDrawStatus.Refuse)
                {
                    empty = "提现失败";
                }
                else if (e.ApplyStatus == ApplyWithDrawInfo.ApplyWithDrawStatus.WithDrawSuccess)
                {
                    empty = "提现成功";
                }
                return(new ApplyWithDrawModel()
                {
                    Id = e.Id,
                    ApplyAmount = e.ApplyAmount,
                    ApplyStatus = e.ApplyStatus,
                    ApplyStatusDesc = empty,
                    ApplyTime = e.ApplyTime.ToString()
                });
            });
            DataGridModel <ApplyWithDrawModel> dataGridModel = new DataGridModel <ApplyWithDrawModel>()
            {
                rows  = applyWithDrawModels,
                total = applyWithDraw.Total
            };

            return(Json(dataGridModel));
        }
示例#28
0
        public JsonResult GetMemberCapitals(string user, int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            IMemberService        memberService        = ServiceHelper.Create <IMemberService>();
            long?nullable = null;

            if (!string.IsNullOrWhiteSpace(user))
            {
                nullable = new long?((memberService.GetMemberByName(user) ?? new UserMemberInfo()
                {
                    Id = 0
                }).Id);
            }
            CapitalQuery capitalQuery = new CapitalQuery()
            {
                PageNo   = page,
                PageSize = rows,
                Sort     = "Balance",
                memberId = nullable
            };
            PageModel <CapitalInfo>    capitals      = memberCapitalService.GetCapitals(capitalQuery);
            IEnumerable <CapitalModel> capitalModels = capitals.Models.ToList().Select <CapitalInfo, CapitalModel>((CapitalInfo e) =>
            {
                UserMemberInfo member = memberService.GetMember(e.MemId);
                return(new CapitalModel()
                {
                    Balance = e.Balance.Value,
                    ChargeAmount = (e.ChargeAmount.HasValue ? e.ChargeAmount.Value : new decimal(0, 0, 0, false, 2)),
                    FreezeAmount = (e.FreezeAmount.HasValue ? e.FreezeAmount.Value : new decimal(0, 0, 0, false, 2)),
                    Id = e.Id,
                    UserId = e.MemId,
                    UserCode = member.UserName,
                    UserName = (string.IsNullOrWhiteSpace(member.RealName) ? member.UserName : member.RealName)
                });
            });
            DataGridModel <CapitalModel> dataGridModel = new DataGridModel <CapitalModel>()
            {
                rows  = capitalModels,
                total = capitals.Total
            };

            return(Json(dataGridModel));
        }
示例#29
0
        public JsonResult List(CapitalDetailInfo.CapitalDetailType capitalType, long userid, string startTime, string endTime, int page, int rows)
        {
            IMemberCapitalService memberCapitalService = ServiceHelper.Create <IMemberCapitalService>();
            CapitalDetailQuery    capitalDetailQuery   = new CapitalDetailQuery()
            {
                memberId    = userid,
                capitalType = new CapitalDetailInfo.CapitalDetailType?(capitalType),
                PageSize    = rows,
                PageNo      = page
            };
            CapitalDetailQuery nullable = capitalDetailQuery;

            if (!string.IsNullOrWhiteSpace(startTime))
            {
                nullable.startTime = new DateTime?(DateTime.Parse(startTime));
            }
            if (!string.IsNullOrWhiteSpace(endTime))
            {
                DateTime dateTime = DateTime.Parse(endTime).AddDays(1);
                nullable.endTime = new DateTime?(dateTime.AddSeconds(-1));
            }
            PageModel <CapitalDetailInfo> capitalDetails = memberCapitalService.GetCapitalDetails(nullable);
            List <CapitalDetailModel>     list           = (
                from e in capitalDetails.Models.ToList()
                select new CapitalDetailModel()
            {
                Id = e.Id,
                Amount = e.Amount,
                CapitalID = e.CapitalID,
                CreateTime = e.CreateTime.Value.ToString(),
                SourceData = e.SourceData,
                SourceType = e.SourceType,
                Remark = string.Concat(e.SourceType.ToDescription(), ",单号:", e.Id),
                PayWay = e.Remark
            }).ToList();
            DataGridModel <CapitalDetailModel> dataGridModel = new DataGridModel <CapitalDetailModel>()
            {
                rows  = list,
                total = capitalDetails.Total
            };

            return(Json(dataGridModel));
        }
示例#30
0
 public BranchOrderController()
 {
     _iOrderService = new OrderService();
     _iCartService = new CartService();
     _iMemberService = new MemberService();
     _iProductService = new ProductService();
     _iPaymentConfigService = new PaymentConfigService();
     _iCashDepositsService = new CashDepositsService();
     _iShopService = ServiceProvider.Instance<IShopService>.Create;
     _iLimitTimeBuyService = new LimitTimeBuyService();
     _iCouponService = new CouponService();
     _iShopBonusService = new ShopBonusService();
     _iCollocationService = new CollocationService();
     _iMemberCapitalService = new MemberCapitalService();
     _iShippingAddressService = new ShippingAddressService();
     _iMemberIntegralService = new MemberIntegralService();
     _iRegionService = new RegionService();
     _iVShopService = new VShopService();
     _iRefundService = new RefundService();
     _iFightGroupService = new FightGroupService();
 }