public JsonResult CheckCode(string Tel, byte CType, string code)
        {
            if (Tel.IsNullOrEmpty())
            {
                return(Json(new { code = 1, msg = "手机号不能为空" }));
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == BasicAgent.Id && n.Mobile == Tel && n.CType == CType && n.Code == code);

            if (SMSCode == null)
            {
                return(Json(new { code = 1, msg = "验证码错误" }));
            }
            if (SMSCode.State != 1)
            {
                return(Json(new { code = 1, msg = "验证码已被使用过" }));
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                return(Json(new { code = 1, msg = "验证码已失效" }));
            }

            return(Json(new { code = 2, msg = "ok" }));
        }
Exemplo n.º 2
0
        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="message">消息</param>
        /// <returns>状态</returns>
        public static bool SendMessage(Message message, int count = 1)
        {
            if (message == null)
            {
                throw new ArgumentNullException("参数message空异常");
            }
            bool    isSuccess = false;
            SMSCode code      = SMSCode.Exception;

            switch (message.Type)
            {
            //短信
            case MessageType.SMS:
                code = SmsHelper.SendMessage(message.Receiver, message.Content);
                break;

            case MessageType.EMAIL:
                code = MailHelper.SendMessage(message.Receiver, message.Subject, message.Content);
                break;
            }
            isSuccess = (code == SMSCode.Success);
            while (!isSuccess && count < 3)
            {
                //如果第一次没有发送成功再重新发送一遍
                count++;
                isSuccess = SendMessage(message, count);
            }
            RemoveMessage(message.MessageGuid, isSuccess ? "" :message.Type.GetDescription() + "重复发送三次失败,失败信息:" + code.GetDescription());
            return(isSuccess);
        }
        public void CheckSMSCode(string Code, string Mobile)
        {
            //if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Mobile && UBL.State == 1) != null)
            //{
            //    Response.Write("6");
            //    return;
            //}
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == BasicUsers.Id && n.Mobile == Mobile && n.CType == 1 && n.Code == Code && n.State == 1);

            if (SMSCode == null)
            {
                Response.Write("2");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (SMSCode.State != 1)
            {
                Response.Write("3");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                Response.Write("4");
                return;
            }
            Response.Write("OK");
        }
Exemplo n.º 4
0
        public async Task <ActionResult> SendCode([FromQuery] string phone)
        {
            var    random = new Random();
            string code   = random.Next(1001, 9999).ToString();


            //   string request = String.Format("https://api.ucaller.ru/v1.0/initCall?service_id=424899&key=87P72MxNzTKK2IaHC4J2dtCvckI8dr3C&phone={0}&code={1}", phone, code);
            //   HttpClientHandler clientHandler = new HttpClientHandler();
            //   clientHandler.ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return true; };
            //   HttpClient client = new HttpClient(clientHandler);
            //   var result =await client.GetAsync(request);

            //if (result.StatusCode == System.Net.HttpStatusCode.OK) {

            var codeSend = new SMSCode
            {
                dttm_add = DateTime.Now,
                code     = "1111",
                status   = false,
                phone    = phone
            };

            await _context.SMSCodes.AddAsync(codeSend);

            await _context.SaveChangesAsync();

            return(new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.OK, null, "Код отправлен")));

            //}
            //else
            //{
            //    return new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.BadRequest, null,
            //        "Невозможно совершить звонок"));
            //}
        }
        public JsonResult GetCode(string Tel, byte CType)
        {
            if (Tel.IsNullOrEmpty())
            {
                return(Json(new { code = 1, msg = "手机号不能为空" }));
            }
            if (CType != 5)
            {
                return(Json(new { code = 1, msg = " 非法操作" }));
            }
            //验证是否重复
            SysAdmin Old = Entity.SysAdmin.FirstOrDefault(n => n.UserName == Tel);

            if (Old != null)
            {
                return(Json(new { code = 1, msg = "“联系手机号”已在系统中存在,无法开通管理员!" }));
            }
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Tel && UBL.State == 1) != null)
            {
                return(Json(new { code = 1, msg = "暂不支持您的手机号入网!" }));
            }
            SysSet ss = new SysSet();

            ss.SMSEnd     = BasicSet.SMSEnd;
            ss.SMSActives = BasicSet.SMSActives;
            DateTime Today = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));

            //失效之前获取验证码
            IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == BasicAgent.Id && n.Mobile == Tel && n.CType == CType && n.State == 1).ToList();

            foreach (var p in List)
            {
                p.State = 0;
            }
            Entity.SaveChanges();
            //生成验证码
            string Code = Utils.RandomSMSCode(6);

            SMSCode SSC = new SMSCode();

            SSC.CType   = CType;
            SSC.UId     = BasicAgent.Id;
            SSC.Mobile  = Tel;
            SSC.Code    = Code;
            SSC.AddTime = DateTime.Now;
            SSC.State   = 1;
            Entity.SMSCode.AddObject(SSC);
            Entity.SaveChanges();
            var topAgent = BasicAgent.GetTopAgent(this.Entity);

            //发送验证码
            SSC.SendSMS(ss, topAgent, Entity);

            return(Json(new { code = 2, msg = "ok" }));
        }
        public void GetCode(string Mobile, int Agent = 0)
        {
            //if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Mobile && UBL.State == 1) != null)
            //{
            //    Response.Write("6");
            //    return;
            //}
            if (Mobile.IsNullOrEmpty())
            {
                return;
            }
            DateTime Today  = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            SysSet   SysSet = Entity.SysSet.FirstOrNew();
            //统计今天已经发送注册验证码次数
            int Times = Entity.SMSCode.Count(n => n.UId == BasicUsers.Id && n.Mobile == Mobile && n.CType == 1 && n.AddTime >= Today);

            if (Times >= SysSet.SMSTimes)
            {
                Response.Write("2");
                return;
            }
            if (Times > 0)
            { //第一次发送不获取,以节少系统资源
                SMSCode SMSCode = Entity.SMSCode.Where(n => n.UId == BasicUsers.Id && n.Mobile == Mobile && n.CType == 1 && n.AddTime >= Today).OrderByDescending(n => n.Id).FirstOrDefault();
                if (SMSCode.AddTime.AddMinutes(1) >= DateTime.Now)
                { //最后一次发送到现在不足1分钟
                    Response.Write("3");
                    return;
                }
            }
            //失效之前获取验证码
            IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == BasicUsers.Id && n.Mobile == Mobile && n.CType == 1 && n.State == 1).ToList();

            foreach (var p in List)
            {
                p.State = 0;
            }
            Entity.SaveChanges();
            //生成验证码
            string  Code = Utils.RandomSMSCode(4);
            SMSCode SSC  = new SMSCode();

            SSC.CType   = 1;
            SSC.UId     = BasicUsers.Id;
            SSC.Mobile  = Mobile;
            SSC.Code    = Code;
            SSC.AddTime = DateTime.Now;
            SSC.State   = 1;
            Entity.SMSCode.AddObject(SSC);
            Entity.SaveChanges();
            //发送验证码
            SSC.SendSMS(SysSet, Entity);

            Response.Write("OK");
        }
Exemplo n.º 7
0
 public static int AddSMSCode(SMSCode model)
 {
     using (var entity = new BusEntities())
     {
         var id = 0;
         try
         {
             entity.AddToSMSCode(model);
             entity.SaveChanges();
             id = model.ID;
         }
         catch { }
         return(id);
     }
 }
Exemplo n.º 8
0
 public static bool SaveEditSMSCode(SMSCode model)
 {
     using (var entity = new BusEntities())
     {
         var obj = entity.SMSCode.FirstOrDefault(x => x.ID == model.ID);
         if (obj != null)
         {
             obj.Phone   = model.Phone;
             obj.Code    = model.Code;
             obj.EndTime = model.EndTime;
             obj.IsUse   = model.IsUse;
             return(entity.SaveChanges() > 0);
         }
         return(false);
     }
 }
        public async Task <Client> SignInAsync(SmsDTO smsInfo)
        {
            SMSCode sms = await db.SMSCodes.FirstOrDefaultAsync(s => s.Phone == smsInfo.Phone && s.Code == smsInfo.Code);

            Client client = await db.Clients.FirstOrDefaultAsync(c => c.Phone == smsInfo.Phone);

            if (sms == null || client == null)
            {
                return(null);
            }

            await db.SMSCodes.RemoveAsync(sms);

            client.ApiKey = encrypt.GenerateHash(sms.Phone, sms.Code.ToString());
            await db.Clients.UpdateAsync(client);

            return(client);
        }
        public async Task <Worker> SignInAsync(SmsDTO smsInfo)
        {
            SMSCode sms = await db.SMSCodes.FirstOrDefaultAsync(s => s.Phone == smsInfo.Phone && s.Code == smsInfo.Code);

            Worker worker = await db.Workers.FirstOrDefaultAsync(c => c.Phone == smsInfo.Phone);

            if (sms == null || worker == null)
            {
                return(null);
            }

            await db.SMSCodes.RemoveAsync(sms);

            worker.ApiKey = encryptService.GenerateHash(sms.Phone, sms.Code.ToString());
            await db.Workers.UpdateAsync(worker);

            return(worker);
        }
        public async Task <string> SignUpAsync(ClientRegisterDTO clientData)
        {
            int    code   = clientData.Code;
            Client client = Mapper.Map <ClientRegisterDTO, Client>(clientData);

            SMSCode sms = await db.SMSCodes.FirstOrDefaultAsync(s => s.Phone == client.Phone && s.Code == code);

            if (sms == null)
            {
                return(null);
            }

            await db.SMSCodes.RemoveAsync(sms);

            string apiKey = encrypt.GenerateHash(client.Phone, code.ToString());

            client.ApiKey = apiKey;
            await db.Clients.CreateAsync(client);

            return(apiKey);
        }
Exemplo n.º 12
0
        public CheckUserLoginResult CheckUserLogin()
        {
            // login
            // /api/rest/checkuserlogin
            // method: get

            var history = new MongoHistoryAPI()
            {
                CreateTime = DateTime.Now,
                APIUrl     = "/api/user/checkuserlogin"
            };

            HttpRequestHeaders headers = Request.Headers;

            if (!headers.Contains("Authorization"))
            {
                throw new Exception("Nead authorization info");
            }

            string token;

            try
            {
                string base64Auth = headers.GetValues("Authorization").First().Replace("Basic", "").Trim();
                token = XString.FromBase64(base64Auth);
            }
            catch
            {
                throw new Exception("Wrong authorization info");
            }

            var arrtok = token.Split(':');

            if (arrtok.Length != 2)
            {
                throw new Exception("Wrong authorization format");
            }

            string user  = arrtok[0];
            string phone = arrtok[1];

            var result = new CheckUserLoginResult()
            {
                id   = "1",
                msg  = "success",
                user = user
            };

            try
            {
                var checkUser = db.AspNetUsers.Where(p => p.UserName == user).FirstOrDefault();

                if (checkUser == null)
                {
                    throw new Exception("Tài khoản không hợp lệ");
                }

                if (checkUser.AccountType == "STAFF")
                {
                    var haiStaff = db.HaiStaffs.Where(p => p.UserLogin == user).FirstOrDefault();

                    if (haiStaff != null)
                    {
                        if (haiStaff.IsLock == 1)
                        {
                            throw new Exception("Tài khoản đang tạm khóa");
                        }

                        result.id = "1";
                    }
                    else
                    {
                        throw new Exception("Tài khoản không hợp lệ");
                    }
                }
                else
                {
                    var check = db.CInfoCommons.Where(p => p.UserLogin == user).FirstOrDefault();
                    if (check != null)
                    {
                        result.id    = "2";
                        result.name  = check.CDeputy;
                        result.store = check.CName;
                        result.code  = check.CCode;
                        result.phone = check.Phone;

                        if (check.Phone != null)
                        {
                            // kiem tra phone
                            var phoneOrige = check.Phone;
                            if (check.Phone.Substring(0, 2) == "84")
                            {
                                phoneOrige = "0" + check.Phone.Substring(2, check.Phone.Length - 2);
                            }
                            if (phone == phoneOrige)
                            {
                                result.id = "3";
                                // cho dang nhap luon
                                bool isActive = false;

                                var staff = db.HaiStaffs.Where(p => p.UserLogin == user).FirstOrDefault();
                                if (staff != null)
                                {
                                    if (staff.IsLock != 1)
                                    {
                                        isActive = true;
                                    }
                                }
                                else
                                {
                                    var agency = db.CInfoCommons.Where(p => p.UserLogin == user).FirstOrDefault();
                                    if (agency != null)
                                    {
                                        if (check.CType == "CII")
                                        {
                                            var checkC2 = check.C2Info.FirstOrDefault();
                                            if (checkC2 != null)
                                            {
                                                if (checkC2.IsActive == 0)
                                                {
                                                    isActive = false;
                                                }
                                            }
                                        }
                                    }
                                }


                                if (!isActive)
                                {
                                    throw new Exception("Tài khoản bị khóa");
                                }

                                var info = updateAuth(user);

                                result.role  = info.Role;
                                result.token = info.token;
                                result.type  = info.type;
                            }
                            else
                            {
                                string Msg     = string.Empty;
                                var    account = db.SmsAccounts.Find(1);
                                Random random  = new Random();
                                var    otp     = random.Next(100000, 999999);

                                // update otp old
                                var allOtp = db.SMSCodes.Where(p => p.UserLogin == user && p.CStatus == 0).ToList();
                                foreach (var item in allOtp)
                                {
                                    item.CStatus         = 1;
                                    db.Entry(item).State = EntityState.Modified;
                                    db.SaveChanges();
                                }

                                SMSCode smsCode = new SMSCode()
                                {
                                    Id        = Guid.NewGuid().ToString(),
                                    Code      = Convert.ToString(otp),
                                    CreateAt  = DateTime.Now,
                                    CStatus   = 0,
                                    UserLogin = user
                                };

                                db.SMSCodes.Add(smsCode);
                                db.SaveChanges();

                                // send sms
                                SMScore _smsCore = new SMScore(account.BrandName, account.UserName, account.Pass);
                                _smsCore.IPserver   = account.AddressSend;
                                _smsCore.Port       = Convert.ToInt32(account.PortSend);
                                _smsCore.SendMethod = account.Method;

                                _smsCore.SendSMS("Cam on quy khach da dang ky, ma kich hoat cua quy khach la : " + otp, check.Phone, ref Msg);
                            }
                        }

                        else
                        {
                            throw new Exception("Quý khách chưa đăng kí số điện thoại với HAI để nhận mà kích hoặt");
                        }
                    }
                    else
                    {
                        throw new Exception("Tài khoản không hợp lệ");
                    }
                }
            }
            catch (Exception e)
            {
                result.id  = "0";
                result.msg = e.Message;
            }

            history.ReturnInfo = new JavaScriptSerializer().Serialize(result);
            mongoHelper.createHistoryAPI(history);

            return(result);
        }
        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("[CreditCardAdd]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            UserCard UserCard = new UserCard();

            UserCard = JsonToObject.ConvertJsonToModel(UserCard, json);

            UserTrack UserTrack = new UserTrack();

            UserTrack = JsonToObject.ConvertJsonToModel(UserTrack, json);
            if (UserTrack.X.IsNullOrEmpty() || UserTrack.Y.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            #region 基础验证
            //获取用户信息
            string Token     = UserCard.Token;
            Users  baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Token);
            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            string       cardbin      = UserCard.Card.Substring(0, 6);
            BasicCardBin BasicCardBin = this.Entity.BasicCardBin.Where(o => o.BIN == cardbin).FirstOrDefault();
            if (BasicCardBin != null)
            {
                if (BasicCardBin.CardType != 2)
                {
                    DataObj.Msg = "请使用信用卡绑定";
                    DataObj.OutError("1000");
                    return;
                }
            }
            else
            {
                DataObj.OutError("1103");
                return;
            }
            #endregion
            //=======================================
            UserTrack.ENo        = DataObj.ENo;
            UserTrack.OPType     = "信用卡验证码";
            UserTrack.GPSAddress = UserTrack.GPSAddress;
            UserTrack.GPSX       = UserTrack.X;
            UserTrack.GPSY       = UserTrack.Y;
            baseUsers.SeavGPSLog(UserTrack, Entity);
            //=======================================

            JobPayWay JobPayWay = Entity.JobPayWay.Where(n => n.State == 1 && n.GroupType == "Pay").OrderBy(n => n.Sort).FirstOrDefault();//目前只支持一条
            if (JobPayWay == null)
            {
                DataObj.Msg = "暂无可用通道";
                DataObj.OutError("1000");
                return;
            }
            if (UserCard.ValidYear.Length == 4)
            {
                UserCard.ValidYear = UserCard.ValidYear.Substring(2, 2);
            }
            #region 第三方接口
            string[] JobPayWayArr = JobPayWay.QueryArray.Split(',');
            bool     Result       = false;
            string   RetMsg       = "";
            if (JobPayWay.DllName == "HLBPay" && JobPayWayArr.Length == 2)
            {
                #region 合利宝
                string MerId   = JobPayWayArr[0];
                string MerKey  = JobPayWayArr[1];
                string postUrl = "http://pay.trx.helipay.com/trx/quickPayApi/interface.action";

                string orderId = Guid.NewGuid().ToString("N");
                Dictionary <string, string> map = new Dictionary <string, string>();
                map.Add("P1_bizType", "QuickPayBindCardValidateCode");
                map.Add("P2_customerNumber", MerId);
                map.Add("P3_userId", "HF_" + baseUsers.Id.ToString());
                map.Add("P4_orderId", orderId);
                map.Add("P5_timestamp", DateTime.Now.ToString("yyyyMMddHHmmss"));
                map.Add("P6_cardNo", UserCard.Card);
                map.Add("P7_phone", UserCard.Mobile);

                //签名串,把参数值拼接
                string data = Utils.CreateLinkString(map, false);
                //MD5签名KEY
                string sign = ("&" + data + "&" + MerKey).GetMD5();
                map.Add("sign", sign);
                string send_data = Utils.CreateLinkString(map);
                string RetString = Utils.PostRequest(postUrl, send_data, "utf-8");
                //================================================
                //这里记录日志
                JobLog JobLog = new JobLog();
                JobLog.PayWay  = JobPayWay.Id;
                JobLog.ReqNo   = orderId;
                JobLog.TNum    = "";
                JobLog.Trade   = "";
                JobLog.Amount  = 0;
                JobLog.Way     = "SendCode";
                JobLog.AddTime = DateTime.Now;
                JobLog.Data    = RetString;
                JobLog.State   = 1;
                Entity.JobLog.AddObject(JobLog);
                Entity.SaveChanges();
                //================================================
                JObject obj = new JObject();
                try
                {
                    obj = (JObject)JsonConvert.DeserializeObject(RetString);
                }
                catch (Exception)
                {
                    Utils.WriteLog("[CreditCardAddCode]:" + RetString, "HLBPayError");
                    DataObj.OutError("1000");
                    return;
                }
                string rt2_retCode = obj["rt2_retCode"].ToString();
                string rt3_retMsg  = obj["rt3_retMsg"].ToString();
                if (rt2_retCode == "0000")
                {
                    Result = true;
                }
                else
                {
                    Result = false;
                    RetMsg = rt3_retMsg;
                    Utils.WriteLog("[CreditCardAddCode]:" + RetString + "【" + send_data + "】", "HLBPayError");
                }
                #endregion
            }
            else if (JobPayWay.DllName == "GHTPay" && JobPayWayArr.Length == 3)
            {
                #region
                //检测是否已开通商户
                DateTime Today  = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                SysSet   SysSet = Entity.SysSet.FirstOrNew();
                //统计今天已经发送注册验证码次数
                int Times = Entity.SMSCode.Count(n => n.UId == baseUsers.Id && n.Mobile == UserCard.Mobile && n.CType == 31 && n.AddTime >= Today);
                if (Times >= SysSet.SMSTimes)
                {
                    DataObj.Msg = "获取验证码超过" + SysSet.SMSTimes + "次,请明天再试。";
                    DataObj.OutError("1000");
                    return;
                }
                if (Times > 0)
                {
                    //第一次发送不获取,以节少系统资源
                    SMSCode SMSCode = Entity.SMSCode.Where(n => n.UId == baseUsers.Id && n.Mobile == UserCard.Mobile && n.CType == 31 && n.AddTime >= Today).OrderByDescending(n => n.Id).FirstOrDefault();
                    if (SMSCode.AddTime.AddMinutes(1) >= DateTime.Now)
                    {
                        //最后一次发送到现在不足1分钟
                        DataObj.Msg = "您操作太快了。";
                        DataObj.OutError("1000");;
                        return;
                    }
                }
                //失效之前获取验证码
                IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == baseUsers.Id && n.Mobile == UserCard.Mobile && n.CType == 31 && n.State == 1).ToList();
                foreach (var p in List)
                {
                    p.State = 0;
                }
                Entity.SaveChanges();

                //生成验证码
                string  Code = Utils.RandomSMSCode(4);
                SMSCode SSC  = new SMSCode();
                SSC.CType   = 31;
                SSC.UId     = baseUsers.Id;
                SSC.Mobile  = UserCard.Mobile;
                SSC.Code    = Code;
                SSC.AddTime = DateTime.Now;
                SSC.State   = 1;
                Entity.SMSCode.AddObject(SSC);
                Entity.SaveChanges();

                string Info = "您正在授权尾号{2}开通授权交易,验证码为{0},为了保护您的账户安全,验证码请勿转发他人,有效时间{1}分钟。";
                Info  = string.Format(Info, Code, SysSet.SMSActives, UserCard.Card.Substring(UserCard.Card.Length - 4, 4));
                Info += "【好支付】";
                SMSLog SMSLog = new SMSLog();
                SMSLog.UId      = baseUsers.Id;
                SMSLog.Mobile   = UserCard.Mobile;
                SMSLog.SendText = Info;
                SMSLog.State    = 1;
                SMSLog.AddTime  = DateTime.Now;
                Entity.SMSLog.AddObject(SMSLog);
                Entity.SaveChanges();

                Result = true;

                #endregion
            }
            else if (JobPayWay.DllName == "HFJSPay" && JobPayWayArr.Length == 3)
            {
                #region 结算系统
                string Code       = JobPayWayArr[0];
                string CodeKey    = JobPayWayArr[1];
                string PayWayCode = JobPayWayArr[2];
                #region 进件
                JobUserPay JobUserPay = Entity.JobUserPay.FirstOrDefault(n => n.UId == baseUsers.Id && n.PayWay == JobPayWay.Id);
                if (JobUserPay == null)
                {
                    JobUserPay           = new JobUserPay();
                    JobUserPay.UId       = baseUsers.Id;
                    JobUserPay.PayWay    = JobPayWay.Id;
                    JobUserPay.AddTime   = DateTime.Now;
                    JobUserPay.MerState  = 2; //状态 0锁定 1正常 2待提交 3审核中 4审核失败
                    JobUserPay.CardState = 2; //状态 0锁定 1正常 2待提交 3审核中 4审核失败
                    JobUserPay.BusiState = 2; //状态 1正常 2待提交 3审核中 4审核失败
                    Entity.JobUserPay.AddObject(JobUserPay);
                    Entity.SaveChanges();
                }
                if (JobUserPay.MerState == 2 || JobUserPay.MerState == 4)
                {
                    fastuseraddModel model = new fastuseraddModel()
                    {
                        code          = Code,
                        mchid         = "HF" + baseUsers.Id.ToString(),
                        mchname       = baseUsers.NeekName,
                        truename      = baseUsers.TrueName,
                        cardno        = baseUsers.CardId,
                        accountcard   = UserCard.Card,
                        accountbin    = BasicCardBin.BankCode,
                        accountmobile = UserCard.Mobile
                    };
                    fastuserResult fastuserResult = HFJSTools.fastuseradd(model, CodeKey);
                    if (fastuserResult.respcode == "00")
                    {
                        if (fastuserResult.state == 1)
                        {
                            JobUserPay.MerState  = 1;
                            JobUserPay.CardState = 1;//这里已绑定结算卡
                            JobUserPay.MerId     = fastuserResult.merid;
                            JobUserPay.MerKey    = fastuserResult.merkey;
                        }
                        else if (fastuserResult.state == 2)
                        {
                            JobUserPay.MerId    = fastuserResult.merid;
                            JobUserPay.MerKey   = fastuserResult.merkey;
                            JobUserPay.MerState = 3;
                        }
                        else
                        {
                            JobUserPay.MerState = 4;
                        }
                    }
                    else
                    {
                        JobUserPay.MerState = 4;
                        JobUserPay.MerMsg   = fastuserResult.respcode + "[" + fastuserResult.respmsg + "]";
                    }
                    Entity.SaveChanges();
                }
                #endregion
                #region 开通道
                if (JobUserPay.MerState == 1 && (JobUserPay.BusiState == 2 || JobUserPay.BusiState == 4))
                {
                    JobSet             JobSet             = Entity.JobSet.FirstOrNew(); //获取配置
                    decimal            Cost               = JobSet.Cost;                //刷卡手续费
                    decimal            Cash               = JobSet.Cash;                //还款手续费
                    userspayopenbModel userspayopenbModel = new userspayopenbModel()
                    {
                        merid       = JobUserPay.MerId,
                        paywaycode  = PayWayCode,
                        code        = Code,
                        bankcost    = Cost,
                        surcharge   = Cash,
                        cash        = 0,
                        bankcostmin = 1.2M,
                        bankcostmax = 9999999
                    };
                    fastuserResult fastuserResult = HFJSTools.userspayopen(userspayopenbModel, CodeKey);
                    if (fastuserResult.respcode == "00")
                    {
                        if (fastuserResult.state == 1)
                        {
                            JobUserPay.BusiState = 1;
                        }
                        else
                        {
                            JobUserPay.BusiState = 4;
                        }
                    }
                    else
                    {
                        JobUserPay.BusiMsg = fastuserResult.respcode + "[" + fastuserResult.respmsg + "]";
                    }
                    Entity.SaveChanges();
                }
                #endregion
                #region 绑卡
                if (JobUserPay.MerState == 1 && JobUserPay.CardState == 1 && JobUserPay.BusiState == 1)
                {
                    fastcardbindModel fastcardbindModel = new fastcardbindModel()
                    {
                        action   = "Add",
                        merid    = JobUserPay.MerId,
                        bankcard = UserCard.Card,
                        cvv2     = UserCard.CVV,
                        mobile   = UserCard.Mobile,
                        month    = UserCard.ValidMonth,
                        year     = UserCard.ValidYear
                    };
                    ErrorCode errorCode = HFJSTools.fastcardbind(fastcardbindModel, JobUserPay.MerKey);
                    if (errorCode.respcode == "00")
                    {
                        #region 发验证码
                        if (JobUserPay.MerState == 1 && JobUserPay.BusiState == 1 && JobUserPay.CardState == 1)
                        {
                            fastcardcodeModel fastcardcodeModel = new fastcardcodeModel()
                            {
                                bankcard   = UserCard.Card,
                                merid      = JobUserPay.MerId,
                                paywaycode = PayWayCode
                            };
                            ErrorCode errorcode = HFJSTools.fastcardcode(fastcardcodeModel, JobUserPay.MerKey);
                            if (errorcode.respcode == "00")
                            {
                                Result = true;
                            }
                            else
                            {
                                Result = false;
                                RetMsg = errorcode.respmsg;
                            }
                        }
                        else
                        {
                            Result = false;
                            RetMsg = errorCode.respmsg;
                        }
                        #endregion
                    }
                    else
                    {
                        Result = false;
                        RetMsg = errorCode.respmsg;
                    }
                    Entity.SaveChanges();
                }
                else
                {
                    Result = false;
                    RetMsg = "商户入驻失败";
                }
                #endregion
                #endregion
            }

            #endregion
            if (Result)
            {
                DataObj.OutError("0000");
            }
            else
            {
                DataObj.Msg = RetMsg;
                DataObj.OutError("1010");
            }
        }
Exemplo n.º 14
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("[UsersGetPayPass]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;

            //身份证号,手机号(登录帐户),邮箱
            //CardId,UserName,Email

            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            if (Users.UserName.IsNullOrEmpty() || Users.CardId.IsNullOrEmpty() || Users.TrueName.IsNullOrEmpty() || Users.CardNum.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            ////手机号码黑名单验证
            //if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            //{
            //    //提示暂不支持您手机号入网
            //    DataObj.OutError("2026");
            //    return;
            //}
            //if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.CardId && UBL.State == 2) != null)
            //{
            //    //提示暂不支持您手机号入网
            //    DataObj.OutError("2027");
            //    return;
            //}
            Users BaseUsers = Entity.Users.Where(n => n.UserName == Users.UserName).FirstOrDefault();

            if (BaseUsers == null)//用户不存在
            {
                DataObj.OutError("2001");
                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 (Users.TrueName != BaseUsers.TrueName)
            {
                DataObj.OutError("2011");
                return;
            }
            if (Users.CardId != BaseUsers.CardId)
            {
                DataObj.OutError("2012");
                return;
            }

            //int BankNum = Entity.UserCard.Count(n => n.UId == BaseUsers.Id);
            //BaseUsers.BankNum = BankNum;

            IList <UserCard> UserCardList = Entity.UserCard.Where(n => n.UId == BaseUsers.Id && n.State == 1).ToList();

            if (UserCardList.Count() == 0)
            {
                DataObj.OutError("2099");
                return;
            }
            else
            {
                UserCard UserCard = UserCardList.FirstOrDefault(n => n.UId == BaseUsers.Id && n.Card == Users.CardNum);
                if (UserCard == null)
                {
                    DataObj.OutError("2013");
                    return;
                }
            }

            DateTime Today  = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            SysSet   SysSet = Entity.SysSet.FirstOrNew();

            if (SysSet.AuthType != 3 && SysSet.AuthType != 1)
            {
                DataObj.OutError("2061");//----------------
                return;
            }
            //统计今天已经发送注册验证码次数
            int Times = Entity.SMSCode.Count(n => n.UId == BaseUsers.Id && n.Mobile == BaseUsers.UserName && n.CType == 3 && n.AddTime >= Today);

            if (Times >= SysSet.SMSTimes)
            {
                DataObj.OutError("2031");
                return;
            }
            if (Times > 0)
            { //第一次发送不获取,以节少系统资源
                SMSCode SMSCode = Entity.SMSCode.Where(n => n.UId == BaseUsers.Id && n.Mobile == BaseUsers.UserName && n.CType == 3 && n.AddTime >= Today).OrderByDescending(n => n.Id).FirstOrDefault();
                if (SMSCode.AddTime.AddMinutes(1) >= DateTime.Now)
                { //最后一次发送到现在不足1分钟
                    DataObj.OutError("2032");
                    return;
                }
            }
            //失效之前获取验证码
            IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == BaseUsers.Id && n.Mobile == BaseUsers.UserName && n.CType == 3 && n.State == 1).ToList();

            foreach (var p in List)
            {
                p.State = 0;
            }
            Entity.SaveChanges();

            //生成验证码
            string Code = Utils.RandomSMSCode(6);

            SMSCode SSC = new SMSCode();

            SSC.CType   = 3;
            SSC.UId     = BaseUsers.Id;
            SSC.Mobile  = BaseUsers.UserName;
            SSC.Code    = Code;
            SSC.AddTime = DateTime.Now;
            SSC.State   = 1;
            Entity.SMSCode.AddObject(SSC);
            Entity.SaveChanges();

            SysAgent SA = Entity.SysAgent.FirstOrNew(n => n.Id == BaseUsers.Agent);

            SA = SA.GetTopAgent(Entity);
            //发送验证码
            SSC.SendSMS(SysSet, SA, Entity);

            //BaseUsers.Cols = "BankNum";
            //DataObj.Data = BaseUsers.OutJson();
            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
        }
Exemplo n.º 15
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("[UsersGetPass_2_0]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;

            //身份证号,手机号(登录帐户),邮箱
            //CardId,UserName,Email

            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            if (Users.UserName.IsNullOrEmpty() || Users.Code.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            Users BaseUsers = Entity.Users.Where(n => n.UserName == Users.UserName).FirstOrDefault();

            if (BaseUsers == null)//用户不存在
            {
                DataObj.OutError("2001");
                return;
            }
            if (BaseUsers.State != 1)
            {
                DataObj.OutError("2003");
                return;
            }
            //if (BaseUsers.CardStae != 2)//未实名认证
            //{
            //    DataObj.OutError("2006");
            //    return;
            //}
            if (BaseUsers.CardStae == 2)//已实名认证要验证
            {
                if (BaseUsers.TrueName != Users.TrueName)
                {
                    DataObj.OutError("2011");
                    return;
                }
                if (BaseUsers.CardId != Users.CardId)
                {
                    DataObj.OutError("2012");
                    return;
                }
            }
            //手机验证码
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == BaseUsers.Id && n.Mobile == BaseUsers.UserName && n.CType == 2 && n.Code == Users.Code);

            if (SMSCode == null)
            {
                DataObj.OutError("2033");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (SMSCode.State != 1)
            {
                DataObj.OutError("2034");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                DataObj.OutError("2034");
                return;
            }

            DateTime now   = DateTime.Now;
            Guid     Gid   = Guid.NewGuid();
            string   mdstr = Users.Id + "|" + Users.UserName + "|" + Gid.ToString() + "|" + now.ToString();
            string   taken = mdstr.GetMD5();

            BaseUsers.Token = "gggg" + taken;

            SMSCode.State = 2;

            Entity.SaveChanges();
            BaseUsers.Cols = "Token";
            DataObj.Data   = BaseUsers.OutJson();
            DataObj.Code   = "0000";
            DataObj.OutString();
        }
        public object Add(SysAgent SysAgent, List <string> PId, List <Attach> Contract, Attach IDCard_Front, Attach IDCard_Reverse, Attach IDCard_Hand, List <Attach> Certificate, List <int> DelIds, string code)
        {
            //验证号码格式
            //var rx = new System.Text.RegularExpressions.Regex(@"^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|4|5|6|7|8|9])\d{8}$");
            //if (!rx.IsMatch(SysAgent.LinkMobile))
            //{
            //    ViewBag.ErrorMsg = "请正确填写联系手机号格式";
            //    return View("Error");
            //}
            //电信手机号码正则
            string dianxin = @"^1[3578][01379]\d{8}$";
            Regex  dReg    = new Regex(dianxin);
            //联通手机号正则
            string liantong = @"^1[34578][01256]\d{8}$";
            Regex  tReg     = new Regex(liantong);
            //移动手机号正则
            string yidong = @"^(134[012345678]\d{7}|1[34578][012356789]\d{8})$";
            Regex  yReg   = new Regex(yidong);

            if (!dReg.IsMatch(SysAgent.LinkMobile) && !tReg.IsMatch(SysAgent.LinkMobile) && !yReg.IsMatch(SysAgent.LinkMobile))
            {
                ViewBag.ErrorMsg = "请正确填写联系手机号格式";
                return(View("Error"));
            }
            //验证是否重复
            SysAdmin Old = Entity.SysAdmin.FirstOrDefault(n => n.UserName == SysAgent.LinkMobile);

            if (Old != null)
            {
                ViewBag.ErrorMsg = "“联系手机号”已在系统中存在,无法开通管理员!";
                return(View("Error"));
            }
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == SysAgent.LinkMobile && UBL.State == 1) != null)
            {
                ViewBag.ErrorMsg = "暂不支持您的手机号入网!";
                return(View("Error"));
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == BasicAgent.Id && n.Mobile == SysAgent.LinkMobile && n.CType == 5 && n.Code == code);

            if (SMSCode == null)
            {
                ViewBag.ErrorMsg = "验证码错误!";
                return(View("Error"));
            }
            if (SMSCode.State != 1)
            {
                ViewBag.ErrorMsg = "验证码已被使用过!";
                return(View("Error"));
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                ViewBag.ErrorMsg = "验证码已失效!";
                return(View("Error"));
            }

            if (SysAgent.Tel.Contains("400-608-6765") || SysAgent.Tel.Contains("23769678") || SysAgent.Tel.Contains("22220076") || SysAgent.Tel.Contains("4006086765"))
            {
                ViewBag.ErrorMsg = "该客服号码禁止使用";
                return(View("Error"));
            }
            if (Contract == null || Contract.Count <= 0)
            {
                ViewBag.ErrorMsg = "请上传合同";
                return(View("Error"));
            }
            if (IDCard_Front == null || IDCard_Front.AFile.IsNullOrEmpty())
            {
                ViewBag.ErrorMsg = "请上传身份证正面";
                return(View("Error"));
            }
            if (IDCard_Reverse == null || IDCard_Reverse.AFile.IsNullOrEmpty())
            {
                ViewBag.ErrorMsg = "请上传身份证反面";
                return(View("Error"));
            }
            if (IDCard_Hand == null || IDCard_Hand.AFile.IsNullOrEmpty())
            {
                ViewBag.ErrorMsg = "请上传手持身份证";
                return(View("Error"));
            }
            if (Certificate == null || Certificate.Count <= 0)
            {
                ViewBag.ErrorMsg = "请上传营业执照或其它证件";
                return(View("Error"));
            }

            //整理代理商信息
            SysAgent.AddTime = DateTime.Now;
            SysAgent.PayGet  = SysAgent.PayGet.IsNullOrEmpty() ? 0 : SysAgent.PayGet / 100;
            SysAgent.CashGet = 0;// SysAgent.CashGet.IsNullOrEmpty() ? 0 : SysAgent.CashGet / 100;
            SysAgent.LoanGet = SysAgent.LoanGet.IsNullOrEmpty() ? 0 : SysAgent.LoanGet / 100;

            SysAgent.Credit = SysAgent.Credit.IsNullOrEmpty() ? 0 : SysAgent.Credit / 100;

            SysAgent.Cash0 = SysAgent.Cash0.IsNullOrEmpty() ? 0 : SysAgent.Cash0 / 1000;
            SysAgent.Cash1 = SysAgent.Cash1.IsNullOrEmpty() ? 0 : SysAgent.Cash1 / 1000;

            bool MySysAgentMoney = this.checkPower("MySysAgent", "MoneySave");

            if (!MySysAgentMoney)
            {
                //无权限的时候,以上级代理为准
                SysAgent.Cash0      = BasicAgent.Cash0;
                SysAgent.Cash1      = BasicAgent.Cash1;
                SysAgent.ECash0     = BasicAgent.ECash0;
                SysAgent.ECash1     = BasicAgent.ECash1;
                SysAgent.Cash0Times = BasicAgent.Cash0Times;
                SysAgent.Cash1Times = BasicAgent.Cash1Times;
            }

            if (SysAgent.Cash0 < BasicSet.AgentCash0 || SysAgent.ECash0 < BasicSet.AgentECash0 || SysAgent.Cash1 < BasicSet.AgentCash1 || SysAgent.ECash1 < BasicSet.AgentECash1)
            {
                ViewBag.ErrorMsg = "费率设置有误!";
                return(View("Error"));
            }

            SysAgent.AdminId      = 0;
            SysAgent.IsTeiPai     = 0;                           //二级起不能贴牌
            SysAgent.AgentID      = BasicAgent.Id;               //上级代理Id
            SysAgent.IsPromote    = 0;                           //默认关闭
            SysAgent.PromoteGet   = 0;                           //默认为于推广用户返佣为0
            SysAgent.Tier         = (byte)(BasicAgent.Tier + 1); //增加一层
            SysAgent.NoteDownload = "";
            SysAgent.LinkMobile   = SysAgent.LinkMobile.Trim();
            SysAgent.AgentState   = 0; //默认为0

            SysAgent.AgentLevelMax = BasicAgent.AgentLevelMax;

            //处理推广代理佣金
            if (SysAgent.DaiLiGetType == 1)
            {
                SysAgent.DaiLiGet = SysAgent.DaiLiGet / 100;
            }
            Entity.SysAgent.AddObject(SysAgent);
            //先保存拿agentId
            Entity.SaveChanges();
            //保存销售记录为了取得id
            var salesLog = new SalesLog()
            {
                AddTime    = DateTime.Now,
                AgentFee   = SysAgent.AgentFee,
                ExpireTime = SysAgent.ExpireTime,
                State      = 1,
                AgentId    = SysAgent.Id,
                Salesman   = SysAgent.Salesman,
            };

            Entity.SalesLog.AddObject(salesLog);
            //再保存拿到logid
            Entity.SaveChanges();
            this.ProcessAttach(SysAgent, salesLog, Contract, IDCard_Front, IDCard_Reverse, IDCard_Hand, Certificate, DelIds);
            //权限
            string Str = string.Empty;

            if (PId != null)
            {
                foreach (var p in PId)
                {
                    if (p != string.Empty)
                    {
                        Str += "," + p;
                    }
                }
                Str += ",";
            }

            //自动配置代理商的用户入网费率
            IList <PayConfig>    PCList  = Entity.PayConfig.Where(n => n.State == 1).ToList();
            IList <UserPayAgent> UPAList = Entity.UserPayAgent.Where(n => n.AId == BasicAgent.Id).ToList();

            foreach (var PC in PCList)
            {
                UserPayAgent UP           = UPAList.FirstOrDefault(n => n.PId == PC.Id);
                UserPayAgent UserPayAgent = new UserPayAgent();
                UserPayAgent.AId = SysAgent.Id;
                UserPayAgent.PId = PC.Id;
                if (UP == null)
                {
                    UserPayAgent.Cost = (double)PC.CostUser;
                }
                else
                {
                    UserPayAgent.Cost = (double)UP.Cost;
                }
                Entity.UserPayAgent.AddObject(UserPayAgent);
            }
            SMSCode.State = 2;
            Entity.SaveChanges();

            //新添加这个里面会执行savecheng
            OpenOrBindUser(SysAgent.Id, Str);

            ViewBag.Msg     = "操作成功!";
            ViewBag.IsColse = true;
            return(View("Succeed"));
        }
Exemplo n.º 17
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("[SMSCode]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;
            SMSCode SMSCode = new SMSCode();

            SMSCode = JsonToObject.ConvertJsonToModel(SMSCode, json);
            if (SMSCode.Mobile.IsNullOrEmpty() || SMSCode.CType.IsNullOrEmpty() || SMSCode.Code.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            //手机号码黑名单验证
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == SMSCode.Mobile && UBL.State == 1) != null)
            {
                //提示暂不支持您手机号入网
                DataObj.OutError("2026");
                return;
            }
            //手机验证码
            //失效之前获取验证码
            SMSCode baseSMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.Mobile == SMSCode.Mobile && n.CType == SMSCode.CType && n.Code == SMSCode.Code);

            if (baseSMSCode == null)
            {
                DataObj.OutError("2033");
                return;
            }
            if (baseSMSCode.State != 1)
            {
                DataObj.OutError("2034");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (baseSMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                DataObj.OutError("2034");
                return;
            }

            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
        }
Exemplo n.º 18
0
        public void Save(Users Users)
        {
            if (Users.UserName.IsNullOrEmpty() || Users.PassWord.IsNullOrEmpty() || Users.Code.IsNullOrEmpty())
            {
                Response.Write("0");
                return;
            }
            //验证是否重复
            Users Old = Entity.Users.FirstOrDefault(n => n.UserName == Users.UserName);

            if (Old != null)
            {
                Response.Write("1");
                return;
            }
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            {
                Response.Write("6");
                return;
            }
            //手机验证码
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == 0 && n.Mobile == Users.UserName && n.CType == 1 && n.Code == Users.Code);

            if (SMSCode == null)
            {
                Response.Write("2");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (SMSCode.State != 1)
            {
                Response.Write("3");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                Response.Write("4");
                return;
            }
            Users.Agent = 1; //默认指定
            Users.AId   = 2; //默认指定
            if (!Users.MyPId.IsNullOrEmpty())
            {
                Users U = Entity.Users.FirstOrDefault(n => n.Id == Users.MyPId && n.State == 1);
                if (U == null)
                {
                    Users.MyPId = 0;
                    Utils.WriteLog("Users.MyPId=" + Users.MyPId + "Is Null!", "UsersRegAgent" + DateTime.Now.ToString("yyyy-MM-dd"));
                }
                else
                {
                    Users.Agent = U.Agent; //默认指定
                    Users.AId   = U.AId;   //默认指定
                }
            }
            else
            {
                Users.MyPId = 0;
            }
            if (!Users.PayConfigId.IsNullOrEmpty())
            {
                PayConfigChange PCC = Entity.PayConfigChange.FirstOrDefault(n => n.Id == Users.PayConfigId && n.State == 1 && n.ShareNumber > 0);
                if (PCC == null)
                {
                    Users.PayConfigId = 0;
                }
                Users.ShareType = 2;
            }
            else
            {
                Users.PayConfigId = 0;
            }
            if (Users.ShareType == 2)
            {
                if (Users.PayConfigId.IsNullOrEmpty() || Users.MyPId.IsNullOrEmpty())
                {
                    //Users.MyPId = 0;
                    Users.PayConfigId = 0;
                }
            }
            else
            {
                if (Users.MyPId.IsNullOrEmpty())
                {
                    Users.MyPId = 0;
                }
                Users.PayConfigId = 0;
            }
            if (Users.MyPId == 0)
            {
                Response.Write("5");
                return;
            }

            Users.PassWord   = Users.PassWord.GetMD5();
            Users.Mobile     = Users.UserName;
            Users.EmailState = 0;
            Users.CardStae   = 0;
            Users.State      = 0;
            Users.Amount     = 0;
            Users.Frozen     = 0;
            Users.AddTime    = DateTime.Now;
            Users.PayPwd     = "";
            //Users.Agent = 1;//默认指定
            //Users.AId = 2;//默认指定
            Users.MobileState = 2;
            Users.RegAddress  = "网页注册," + Utils.GetAddressAndIp();
            Users.X           = "0";
            Users.Y           = "0";
            Entity.Users.AddObject(Users);
            Entity.SaveChanges();
            //=======================================
            UserTrack UserTrack = new UserTrack();

            UserTrack.ENo        = string.Empty;
            UserTrack.OPType     = "网页注册";
            UserTrack.IfYY       = string.Empty;
            UserTrack.EqMobile   = string.Empty;
            UserTrack.SysVer     = Utils.GetCustomOS();      //操作系统版本
            UserTrack.SoftVer    = Utils.GetCustomBrowser(); //软件版本
            UserTrack.SignalType = string.Empty;
            UserTrack.GPSAddress = string.Empty;
            UserTrack.GPSX       = "0";
            UserTrack.GPSY       = "0";
            Users.SeavGPSLog(UserTrack, Entity);
            //=======================================
            SMSCode.State = 2;
            SMSCode.UId   = Users.Id;
            Entity.SaveChanges();
            //自动开通
            //IList<PayConfig> PCList = Entity.PayConfig.Where(n => n.State == 1).ToList();
            //foreach (var PC in PCList)
            //{
            //    UserPay UserPay = new UserPay();
            //    UserPay.UId = Users.Id;
            //    UserPay.PId = PC.Id;
            //    UserPay.Cost = (double)PC.CostUser;
            //    Entity.UserPay.AddObject(UserPay);
            //}

            SysAgent SysAgent = Entity.SysAgent.FirstOrDefault(n => n.Id == Users.Agent && n.State == 1);

            if (SysAgent == null)
            {
                Utils.WriteLog("Users.Id=" + Users.Id + "Read Agent Null Users.Agent=" + Users.Agent + "!", "UsersRegAgent" + DateTime.Now.ToString("yyyy-MM-dd"));
                SysAgent    = Entity.SysAgent.FirstOrDefault(n => n.Id == 1 && n.State == 1);
                Users.Agent = SysAgent.Id;
                Users.AId   = SysAgent.AdminId.GetValueOrDefault();
            }
            //使用代理配置
            IList <UserPayAgent> UPAList = Entity.UserPayAgent.Where(n => n.AId == SysAgent.Id).OrderBy(n => n.PId).ToList();

            foreach (var p in UPAList)
            {
                UserPay UserPay = new UserPay();
                UserPay.UId  = Users.Id;
                UserPay.PId  = p.PId;
                UserPay.Cost = p.Cost;
                Entity.UserPay.AddObject(UserPay);
            }

            //SysSet Sys = Entity.SysSet.FirstOrDefault();
            //Users.Cash0 = Sys.Cash0;
            //Users.ECash0 = Sys.ECash0;
            //Users.Cash1 = Sys.Cash1;
            //Users.ECash1 = Sys.ECash1;

            //使用代理配置
            Users.Cash0  = SysAgent.Cash0;
            Users.Cash1  = SysAgent.Cash1;
            Users.ECash0 = SysAgent.ECash0;
            Users.ECash1 = SysAgent.ECash1;

            Users.State = 1;
            Entity.SaveChanges();
            //自动开通End
            Response.Write("OK");
        }
Exemplo n.º 19
0
        public void GetCode(string UserName, string tuCode, int Agent = 0)
        {
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == UserName && UBL.State == 1) != null)
            {
                Response.Write("6");
                return;
            }
            if (tuCode.IsNullOrEmpty())
            {
                Response.Write("4");
                return;
            }
            if (tuCode.ToUpper() != Session.GetCheckCode())
            {
                Response.Write("4");
                return;
            }
            Session.ClearCheckCode();
            if (UserName.IsNullOrEmpty())
            {
                return;
            }
            //验证是否重复
            Users Old = Entity.Users.FirstOrDefault(n => n.UserName == UserName);

            if (Old != null)
            {
                Response.Write("1");
                return;
            }
            DateTime Today  = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            SysSet   SysSet = Entity.SysSet.FirstOrNew();
            //统计今天已经发送注册验证码次数
            int Times = Entity.SMSCode.Count(n => n.UId == 0 && n.Mobile == UserName && n.CType == 1 && n.AddTime >= Today);

            if (Times >= SysSet.SMSTimes)
            {
                Response.Write("2");
                return;
            }
            if (Times > 0)
            { //第一次发送不获取,以节少系统资源
                SMSCode SMSCode = Entity.SMSCode.Where(n => n.UId == 0 && n.Mobile == UserName && n.CType == 1 && n.AddTime >= Today).OrderByDescending(n => n.Id).FirstOrDefault();
                if (SMSCode.AddTime.AddMinutes(1) >= DateTime.Now)
                { //最后一次发送到现在不足1分钟
                    Response.Write("3");
                    return;
                }
            }
            //失效之前获取验证码
            IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == 0 && n.Mobile == UserName && n.CType == 1 && n.State == 1).ToList();

            foreach (var p in List)
            {
                p.State = 0;
            }
            Entity.SaveChanges();
            //生成验证码
            string  Code = Utils.RandomSMSCode(4);
            SMSCode SSC  = new SMSCode();

            SSC.CType   = 1;
            SSC.UId     = 0;
            SSC.Mobile  = UserName;
            SSC.Code    = Code;
            SSC.AddTime = DateTime.Now;
            SSC.State   = 1;
            Entity.SMSCode.AddObject(SSC);
            Entity.SaveChanges();

            SysAgent SA = Entity.SysAgent.FirstOrNew(n => n.Id == Agent);

            SA = SA.GetTopAgent(Entity);
            //发送验证码
            SSC.SendSMS(SysSet, SA, Entity);

            Response.Write("OK");
        }
Exemplo n.º 20
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("[UsersReplaceMobile]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);

            UserTrack UserTrack = new UserTrack();

            UserTrack = JsonToObject.ConvertJsonToModel(UserTrack, json);

            if (Users.PayPwd.IsNullOrEmpty())//使用PayPwd字段
            {
                DataObj.OutError("1000");
                return;
            }
            if (Users.X.IsNullOrEmpty() || Users.Y.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }

            //手机号码黑名单验证
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            {
                //提示暂不支持您手机号入网
                DataObj.OutError("2026");
                return;
            }
            if (Users.PayPwd.Length < 6)//6位及以上
            {
                DataObj.OutError("1000");
                return;
            }

            #region 校验
            //获取用户信息
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Users.Token);
            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.SAId != 0)
            {
                DataObj.OutError("2054");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }

            SysSet SysSet = Entity.SysSet.FirstOrNew();

            //这里是执行指纹解锁
            bool IfCheckOk = true;
            if (Users.PayPwd.Substring(0, 3) == "HF_")
            {
                string PassWord = Users.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 != Users.PayPwd.GetPayMD5())
            {
                //原支付密码错误
                IfCheckOk = false;
            }
            if (!IfCheckOk)
            {
                //付密码错误
                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;
            Entity.SaveChanges();

            Users oldUsers = Entity.Users.FirstOrDefault(n => n.UserName == Users.Mobile);
            if (oldUsers != null)//用户已存在
            {
                DataObj.OutError("2005");
                return;
            }

            //手机验证码
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == baseUsers.Id && n.CType == 4 && n.Code == Users.Code);
            if (SMSCode == null)
            {
                DataObj.OutError("2033");
                return;
            }

            if (SMSCode.State != 1)
            {
                DataObj.OutError("2034");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                DataObj.OutError("2034");
                return;
            }
            #endregion

            //修改用户信息
            baseUsers.UserName = Users.UserName;
            baseUsers.Mobile   = Users.UserName;
            SMSCode.State      = 2;

            //添加跟踪信息
            //=======================================
            UserTrack.ENo        = DataObj.ENo;
            UserTrack.OPType     = "更换手机号";
            UserTrack.GPSAddress = Users.RegAddress;
            UserTrack.GPSX       = Users.X;
            UserTrack.GPSY       = Users.Y;
            baseUsers.SeavGPSLog(UserTrack, Entity);
            //=======================================

            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        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("[UsersReg]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }

            //JObject pp = (JObject)p;
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            if (Users.UserName.IsNullOrEmpty())
            {
                //
                DataObj.OutError("1000");
                return;
            }
            //手机号码黑名单验证
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            {
                //提示暂不支持您手机号入网
                DataObj.OutError("2026");
                return;
            }
            //验证是否重复
            Users Old = Entity.Users.FirstOrDefault(n => n.UserName == Users.UserName);

            if (Old != null)
            {
                DataObj.OutError("2005");
                return;
            }

            DateTime Today  = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            SysSet   SysSet = Entity.SysSet.FirstOrNew();
            //统计今天已经发送注册验证码次数
            int Times = Entity.SMSCode.Count(n => n.UId == 0 && n.Mobile == Users.UserName && n.CType == 1 && n.AddTime >= Today);

            if (Times >= SysSet.SMSTimes)
            {
                DataObj.OutError("2031");
                return;
            }
            if (Times > 0)   //第一次发送不获取,以节少系统资源
            {
                SMSCode SMSCode = Entity.SMSCode.Where(n => n.UId == 0 && n.Mobile == Users.UserName && n.CType == 1 && n.AddTime >= Today).OrderByDescending(n => n.Id).FirstOrDefault();
                if (SMSCode.AddTime.AddMinutes(1) >= DateTime.Now)   //最后一次发送到现在不足1分钟
                {
                    DataObj.OutError("2032");
                    return;
                }
            }
            //失效之前获取验证码
            IList <SMSCode> List = Entity.SMSCode.Where(n => n.UId == 0 && n.Mobile == Users.UserName && n.CType == 1 && n.State == 1).ToList();

            foreach (var p in List)
            {
                p.State = 0;
            }
            Entity.SaveChanges();

            //生成验证码
            string Code = Utils.RandomSMSCode(4);

            SMSCode SSC = new SMSCode();

            SSC.CType   = 1;
            SSC.UId     = 0;
            SSC.Mobile  = Users.UserName;
            SSC.Code    = Code;
            SSC.AddTime = DateTime.Now;
            SSC.State   = 1;
            Entity.SMSCode.AddObject(SSC);
            Entity.SaveChanges();

            SysAgent SA = Entity.SysAgent.FirstOrNew(n => n.Id == Users.Agent);

            SA = SA.GetTopAgent(Entity);
            //发送验证码
            SSC.SendSMS(SysSet, SA, Entity);

            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
            //Tools.OutString(ErrInfo.Return("0000"));
        }
        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("[UsersGetPayPass_2_0]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }

            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            if (Users.UserName.IsNullOrEmpty() || Users.Code.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            ////手机号码黑名单验证
            //if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            //{
            //    //提示暂不支持您手机号入网
            //    DataObj.OutError("2026");
            //    return;
            //}
            Users BaseUsers = Entity.Users.Where(n => n.UserName == Users.UserName).FirstOrDefault();

            if (BaseUsers == null)//用户不存在
            {
                DataObj.OutError("2001");
                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;
            }

            //手机验证码
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == BaseUsers.Id && n.Mobile == BaseUsers.UserName && n.CType == 3 && n.Code == Users.Code);

            if (SMSCode == null)
            {
                DataObj.OutError("2033");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (SMSCode.State != 1)
            {
                DataObj.OutError("2034");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                DataObj.OutError("2034");
                return;
            }

            DateTime now   = DateTime.Now;
            Guid     Gid   = Guid.NewGuid();
            string   mdstr = Users.Id + "|" + Users.UserName + "|" + Gid.ToString() + "|" + now.ToString();
            string   taken = mdstr.GetMD5();

            BaseUsers.Token = "pppp" + taken;

            SMSCode.State = 2;

            Entity.SaveChanges();
            BaseUsers.Cols = "Token";
            DataObj.Data   = BaseUsers.OutJson();
            DataObj.Code   = "0000";
            DataObj.OutString();
        }
Exemplo n.º 23
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("[UsersReg_2_0]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);

            UserTrack UserTrack = new UserTrack();

            UserTrack = JsonToObject.ConvertJsonToModel(UserTrack, json);

            if (Users.UserName.IsNullOrEmpty() || Users.PassWord.IsNullOrEmpty() || Users.Mobile.IsNullOrEmpty() || Users.X.IsNullOrEmpty() || Users.Y.IsNullOrEmpty())
            {
                //
                DataObj.OutError("1000");
                return;
            }
            //手机号码黑名单验证
            if (Entity.UserBlackList.FirstOrDefault(UBL => UBL.CardNumber == Users.UserName && UBL.State == 1) != null)
            {
                //提示暂不支持您手机号入网
                DataObj.OutError("2026");
                return;
            }
            //验证是否重复
            Users Old = Entity.Users.FirstOrDefault(n => n.UserName == Users.UserName);

            if (Old != null)
            {
                DataObj.OutError("2005");
                return;
            }

            //Card Card = Entity.Card.FirstOrDefault(n => n.Code == Users.CardNum && n.PasWd == Users.CardPWD);
            //if (Card == null) {
            //    DataObj.OutError("5001");
            //    return;
            //}
            //if (Card.State != 1) {
            //    DataObj.OutError("5002");
            //    return;
            //}
            //if (Card.AId.IsNullOrEmpty())
            //{
            //    DataObj.OutError("5002");
            //    return;
            //}
            //if (Card.AdminId.IsNullOrEmpty())
            //{
            //    DataObj.OutError("5002");
            //    return;
            //}

            //手机验证码
            //失效之前获取验证码
            SMSCode SMSCode = Entity.SMSCode.OrderByDescending(n => n.Id).FirstOrDefault(n => n.UId == 0 && n.Mobile == Users.UserName && n.CType == 1 && n.Code == Users.Code);

            if (SMSCode == null)
            {
                DataObj.OutError("2033");
                return;
            }
            SysSet SysSet = Entity.SysSet.FirstOrNew();

            if (SMSCode.State != 1)
            {
                DataObj.OutError("2034");
                return;
            }
            if (SMSCode.AddTime.AddMinutes(SysSet.SMSActives) < DateTime.Now)
            {
                DataObj.OutError("2034");
                return;
            }

            SysAgent SysAgent = null;

            //处理代理商
            if (!Users.Agent.IsNullOrEmpty())
            {
                SysAgent = Entity.SysAgent.FirstOrDefault(n => n.Id == Users.Agent);
            }
            if (SysAgent == null)
            {
                SysAgent = Entity.SysAgent.FirstOrDefault(n => n.Id == 1);
            }
            if (SysAgent == null)
            {
                SysAgent = Entity.SysAgent.Where(n => n.State == 1 && n.Tier == 1).OrderBy(n => n.Id).FirstOrDefault();
            }
            if (SysAgent != null)
            {
                Users.Agent = SysAgent.Id;
                Users.AId   = SysAgent.AdminId.GetValueOrDefault();
            }

            Users.PassWord    = Users.PassWord.GetMD5();
            Users.MobileState = 0;
            Users.EmailState  = 0;
            Users.CardStae    = 0;
            Users.State       = 0;
            Users.Amount      = 0;
            Users.Frozen      = 0;
            Users.AddTime     = DateTime.Now;

            Users.PayPwd = "";

            Users.MobileState = 2;

            Entity.Users.AddObject(Users);
            Entity.SaveChanges();

            //=======================================
            UserTrack.ENo        = DataObj.ENo;
            UserTrack.OPType     = "应用注册";
            UserTrack.GPSAddress = Users.RegAddress;
            UserTrack.GPSX       = Users.X;
            UserTrack.GPSY       = Users.Y;
            Users.SeavGPSLog(UserTrack, Entity);
            //=======================================

            SMSCode.State = 2;
            SMSCode.UId   = Users.Id;
            Entity.SaveChanges();
            //if (!Users.Id.IsNullOrEmpty()) {
            //    Card.State = 2;
            //    Entity.SaveChanges();
            //}

            //自动开通
            //IList<PayConfig> PCList = Entity.PayConfig.Where(n => n.State == 1).ToList();
            //foreach (var PC in PCList)
            //{
            //    UserPay UserPay = new UserPay();
            //    UserPay.UId = Users.Id;
            //    UserPay.PId = PC.Id;
            //    UserPay.Cost = (double)PC.CostUser;
            //    Entity.UserPay.AddObject(UserPay);
            //}
            //使用代理配置

            IList <UserPayAgent> UPAList = Entity.UserPayAgent.Where(n => n.AId == SysAgent.Id).OrderBy(n => n.PId).ToList();

            foreach (var p in UPAList)
            {
                UserPay UserPay = new UserPay();
                UserPay.UId  = Users.Id;
                UserPay.PId  = p.PId;
                UserPay.Cost = p.Cost;
                Entity.UserPay.AddObject(UserPay);
            }

            //SysSet Sys = Entity.SysSet.FirstOrDefault();
            //Users.Cash0 = Sys.Cash0;
            //Users.Cash1 = Sys.Cash1;
            //Users.ECash0 = Sys.ECash0;
            //Users.ECash1 = Sys.ECash1;
            //使用代理配置
            Users.Cash0  = SysAgent.Cash0;
            Users.Cash1  = SysAgent.Cash1;
            Users.ECash0 = SysAgent.ECash0;
            Users.ECash1 = SysAgent.ECash1;

            Users.State = 1;
            Entity.SaveChanges();
            //自动开通End
            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
            //Tools.OutString(ErrInfo.Return("0000"));
        }