public ActionResult Index(BanKaOrder BanKaOrder, EFPagingInfo <BanKaOrder> p)
        {
            if (!BanKaOrder.BKTId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.BKTId == BanKaOrder.BKTId);
            }
            if (!BanKaOrder.UId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.UId == BanKaOrder.UId);
            }
            if (!BanKaOrder.OId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OId == BanKaOrder.OId);
            }
            if (!BanKaOrder.Agent.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Agent == BanKaOrder.Agent);
            }
            if (!BanKaOrder.AgentGet.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentGet == BanKaOrder.AgentGet);
            }
            if (!BanKaOrder.AgentState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentState == BanKaOrder.AgentState);
            }
            if (!BanKaOrder.AId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AId == BanKaOrder.AId);
            }
            if (!BanKaOrder.FId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.FId == BanKaOrder.FId);
            }
            if (!BanKaOrder.OrderState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OrderState == BanKaOrder.OrderState);
            }
            if (!BanKaOrder.PayState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.PayState == BanKaOrder.PayState);
            }
            if (!BanKaOrder.Remark.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Remark.Contains(BanKaOrder.Remark));
            }
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <BanKaOrder> BanKaOrderList = Entity.Selects <BanKaOrder>(p);

            ViewBag.BanKaOrderList = BanKaOrderList;
            ViewBag.BanKaOrder     = BanKaOrder;
            ViewBag.BanKaTypeList  = Entity.BanKaType.Where(n => n.State == 1).OrderBy(n => n.Sort).ToList();
            return(View());
        }
示例#2
0
        public object Info(BanKaList BanKaList)
        {
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == BanKaList.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                ViewBag.ErrorMsg = "用户登录信息有误";
                return(View("Error"));
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                ViewBag.ErrorMsg = "您的帐户被限制登录";
                return(View("Error"));
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                ViewBag.ErrorMsg = "您未实名认证,无法访问";
                return(View("Error"));
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                ViewBag.ErrorMsg = "您未设置支付密码,无法访问";
                return(View("Error"));
            }
            BanKaList = Entity.BanKaList.FirstOrNew(n => n.Id == BanKaList.Id);
            BanKaOrder BanKaOrder = Entity.BanKaOrder.FirstOrDefault(n => n.OrderState == 2 && n.PayState == 1 && n.UId == baseUsers.Id && n.BKTId == BanKaList.BKTId);

            if (BanKaOrder == null)
            {
                ViewBag.ErrorMsg = "您未购买本服务,请购买后再使用!";
                return(View("Error"));
            }
            BanKaList.Click++;
            Entity.SaveChanges();
            string url = BanKaList.Url;

            if (url.IsNullOrEmpty())
            {
                ViewBag.ErrorMsg = "链接有误,请稍后访问!";
                return(View("Error"));
            }
            Response.Redirect(url);
            return(false);
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[OrderBanKa]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            BanKaOrder BanKaOrder = new BanKaOrder();

            BanKaOrder = JsonToObject.ConvertJsonToModel(BanKaOrder, json);
            if (BanKaOrder.BKTId.IsNullOrEmpty() || BanKaOrder.PayPWD.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            if (BanKaOrder.PayPWD.Length < 6)//6位及以上
            {
                DataObj.OutError("1000");
                return;
            }
            //获取用户信息
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == BanKaOrder.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }
            if (baseUsers.PayLock == 1)//密码错误太多次锁定
            {
                DataObj.OutError("2050");
                return;
            }

            //这里是执行指纹解锁
            bool IfCheckOk = true;

            if (BanKaOrder.PayPWD.Substring(0, 3) == "HF_")
            {
                string PassWord = BanKaOrder.PayPWD;
                PassWord = PassWord.Replace("HF_", "");
                string Token = baseUsers.Token;
                Token = Token + "GoodPay";
                string Md5Token = Token.GetMD5().ToUpper();
                string Pass     = Md5Token.Substring(0, 4) + Md5Token.Substring(Md5Token.Length - 4, 4);
                if (Pass != PassWord)
                {
                    IfCheckOk = false;
                }
            }
            else if (baseUsers.PayPwd != BanKaOrder.PayPWD.GetPayMD5())
            {
                //原支付密码错误
                IfCheckOk = false;
            }
            if (!IfCheckOk)
            {
                //付密码错误
                SysSet SysSet = Entity.SysSet.FirstOrNew();
                //系统统一修改标识SAME002
                baseUsers.PayErr++;
                if (baseUsers.PayErr >= SysSet.PayLock)
                {
                    baseUsers.PayLock = 1;
                }
                Entity.SaveChanges();
                Users Out = new Users();
                Out.PayErr   = SysSet.PayLock - baseUsers.PayErr;
                Out.Cols     = "PayErr";
                DataObj.Data = Out.OutJson();
                DataObj.Code = "2010";
                DataObj.OutString();
                return;
            }

            baseUsers.PayErr = 0;


            //检测是否已经购买过
            BanKaOrder BKO = Entity.BanKaOrder.FirstOrDefault(n => n.UId == baseUsers.Id && n.BKTId == BanKaOrder.BKTId && n.OrderState == 2 && n.PayState == 1);

            if (BKO != null)
            {
                DataObj.OutError("6051");
                return;
            }

            //获取产品
            BanKaType BanKaType = Entity.BanKaType.FirstOrDefault(n => n.Id == BanKaOrder.BKTId && n.State == 1);

            if (BanKaType == null)
            {
                DataObj.OutError("1000");
                return;
            }
            if (BanKaType.Amoney > baseUsers.Amount)
            {//余额不足
                DataObj.OutError("6026");
                return;
            }

            BanKaOrder.UId    = baseUsers.Id;
            BanKaOrder.Amoney = BanKaType.Amoney;

            BanKaOrder.OrderState = 1;
            BanKaOrder.PayState   = 0;
            BanKaOrder.AddTime    = DateTime.Now;

            BanKaOrder.Agent      = baseUsers.Agent;
            BanKaOrder.AId        = baseUsers.AId;
            BanKaOrder.AgentState = 0;
            //这里是利润计算==========
            BanKaOrder.AgentGet = 0;
            BanKaOrder.AIdGet   = 0;

            Entity.BanKaOrder.AddObject(BanKaOrder);

            Entity.SaveChanges();

            Entity.Refresh(RefreshMode.StoreWins, BanKaOrder);

            //开始支付流程
            //==================================================================
            //帐户变动记录
            int     USERSID  = baseUsers.Id;
            string  TNUM     = BanKaOrder.OId;
            decimal PAYMONEY = BanKaOrder.Amoney;
            string  SP_Ret   = Entity.SP_UsersMoney(USERSID, TNUM, PAYMONEY, 2, BanKaType.Title);

            if (SP_Ret != "3")
            {
                Utils.WriteLog(string.Format("U{0},O{1},T{2}:{3}【{4}】", USERSID, TNUM, 2, PAYMONEY, SP_Ret), "SP_UsersMoney");
                BanKaOrder.OrderState = 0;
                Entity.SaveChanges();
                DataObj.OutError("8888");
                return;
            }
            //==================================================================
            //交易标识
            BanKaOrder.OrderState = 2;
            BanKaOrder.PayState   = 1;
            Entity.SaveChanges();

            DataObj.Data = BanKaOrder.OutJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
示例#4
0
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[BanKaList]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            BanKaList BanKaList = new BanKaList();

            BanKaList = JsonToObject.ConvertJsonToModel(BanKaList, json);

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == BanKaList.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }

            BanKaType BanKaType = Entity.BanKaType.FirstOrDefault(n => n.Id == BanKaList.BKTId && n.State == 1);

            if (BanKaType == null)
            {
                DataObj.OutError("1001");
                return;
            }
            BanKaOrder BanKaOrder = Entity.BanKaOrder.FirstOrDefault(n => n.OrderState == 2 && n.PayState == 1 && n.UId == baseUsers.Id && n.BKTId == BanKaType.Id);

            if (BanKaOrder == null)
            {
                DataObj.OutError("6052");
                return;
            }
            IList <BanKaList> BanKaListList = Entity.BanKaList.Where(n => n.State == 1 && n.BKTId == BanKaType.Id).OrderBy(n => n.Sort).ToList();

            foreach (var p in BanKaListList)
            {
                p.Pic = Utils.ImageUrl("BanKaList", p.Pic, SysImgPath);
            }
            DataObj.Data = BanKaListList.EntityToJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }