Beispiel #1
0
        private bool NovemberActivityDosPayCheck(NovemberActivityDosPayReq req)
        {
            var activity = db.TpxinActivitySet.FirstOrDefault(p => p.Id == req.ActivityId);

            if (activity == null)
            {
                Alert("找不到活动信息,请重试");
                return(false);
            }
            if (AppConfig.IsUseSms && DateTime.Now < activity.PayStarttime)
            {
                Alert("未到缴费时间");
                return(false);
            }
            if (AppConfig.IsUseSms && DateTime.Now > activity.PayEndtime)
            {
                Alert("缴费时间已过期");
                return(false);
            }
            string[] ids = req.BusinessIdStr.Split('_');
            if (req.PayType == 2)
            {
                if (ids.Length != 1)
                {
                    Alert("只能支付一个");
                    return(false);
                }
                var cnt = db.TpxinOctoberActivitySet.Count(x => x.Nodeid == req.Nodeid && x.Transferids != null && x.ActivityId == req.ActivityId);
                if (cnt > 0)
                {
                    Alert("已经存在缴过费的记录,只能支付一个");
                    return(false);
                }
            }
            foreach (string sid in ids)
            {
                int tid    = Convert.ToInt32(sid);
                var entity = db.TpxinOctoberActivitySet.FirstOrDefault(x => x.Id == tid);
                if (entity != null)
                {
                    if (req.PayType == 1)
                    {
                        if (!string.IsNullOrEmpty(entity.Ptransferids))
                        {
                            Alert("不能选中已缴费的记录,请重新打开当前页面");
                            return(false);
                        }
                    }
                    if (req.PayType == 2)
                    {
                        if (!string.IsNullOrEmpty(entity.Transferids))
                        {
                            Alert("不能选中已缴费的记录,请重新打开当前页面");
                            return(false);
                        }
                    }
                }
            }
            return(true);
        }
        public Respbase <NovemberActivityDosPayDto> NovemberActivityDosPay(NovemberActivityDosPayReq req)
        {
            var facade = new ActivityFacade();
            var result = facade.NovemberActivityDosPay(req);

            return(new Respbase <NovemberActivityDosPayDto> {
                Data = result, Message = facade.PromptInfo.Message, Result = facade.PromptInfo.Result
            });
        }
Beispiel #3
0
        /// <summary>
        /// 调用ue支付
        /// </summary>
        public NovemberActivityDosPayDto NovemberActivityDosPay(NovemberActivityDosPayReq req)
        {
            log.Info($"11月活动-迪拜见证之旅支付服务费,nodeid={req.Nodeid},服务费={req.Price}");

            if (!NovemberActivityDosPayCheck(req))
            {
                return(null);
            }
            TnetReginfo regInfo        = PxinCache.GetRegInfo(req.Nodeid);
            var         businessParams = 11 + "|" + req.BusinessIdStr + "|" + req.PayType + "|" + req.HisIdStr + "|" + req.ActivityId;
            var         uePayResult    = UEPay.UePayHelper.DosWithUePay(db, regInfo, 1, CurrencyType.DOS_矿沙, req.Price, 20008, businessParams, "11月活动-迪拜见证之旅支付服务费", "11月活动-迪拜见证之旅支付服务费").Result;

            if (!uePayResult.IsSuccess)
            {
                Alert(uePayResult.Message);
                return(null);
            }
            return(new NovemberActivityDosPayDto
            {
                ChargeStr = uePayResult.ChargeStr,
                Sign = Common.Mvc.Md5.SignString(uePayResult.ChargeStr + AppConfig.AppSecurityString).ToUpper(),
                OrderNo = uePayResult.OrderNo
            });
        }