Ejemplo n.º 1
0
        public ActionResult Index()
        {
            var actFanXian = ef.hx_ActivityTable.Where(c => c.ActName == "12月投资立得返现奖励").OrderByDescending(c => c.ActEndtime).FirstOrDefault();

            ViewBag.FanXianSTime = actFanXian.ActStarttime;
            ViewBag.FanXianETime = actFanXian.ActEndtime;

            bool   isPingguo    = DateTime.Now.Millisecond % 2 == 1;
            string close_tanchu = checkStart() ? (isPingguo ? "style='top: 17%;background:url(/images/tan1260_3_close.png) no-repeat;'" : "style='top: 17%;background:url(/images/tan1260_4_close.png) no-repeat;'") : "";
            string tanchu       = checkStart() ? (isPingguo ? "/Images/tan1260_3.png" : "/Images/tan1260_4.png") : "/Images/tan1260_1.png";

            ViewBag.Tanchu       = tanchu;
            ViewBag.Close_tanchu = close_tanchu;
            string firstTimePerDay = Utils.GetCookie("FirstTimePerDay");

            ViewBag.FirstTimePerDay = string.IsNullOrWhiteSpace(firstTimePerDay) ? "block" : "none";
            if (string.IsNullOrWhiteSpace(firstTimePerDay))
            {
                var cookie = new HttpCookie("FirstTimePerDay", "That's ok");//加密身份信息,保存至Cookie
                cookie.Expires = DateTime.Now.Date.AddDays(1);
                Response.Cookies.Add(cookie);
            }
            int             uid  = Utils.checkloginsessiontop();
            hx_member_table HUsr = new hx_member_table();

            if (uid > 0)
            {
                HUsr = ef.hx_member_table.Where(p => p.registerid == uid).FirstOrDefault();
            }

            ViewBag.uid = uid;
            if (HUsr != null)
            {
                //  ViewBag.amt = HUsr.available_balance== null ? 0.00M : HUsr.available_balance;
                ViewBag.amt = HUsr.available_balance;
            }
            else
            {
                ViewBag.amt = 0.00;
            }
            hx_borrowing_target hbt = ef.hx_borrowing_target.Where(p => p.project_type_id == 6 && p.tender_state >= 2 && p.tender_state <= 5).OrderByDescending(p => p.targetid).Take(1).FirstOrDefault();
            List <V_borrowing_target_addlist> porlist = ef.V_borrowing_target_addlist.Where(p => p.tender_state >= 2 && p.tender_state <= 5 && p.project_type_id != 6
                                                                                            //&& p.recommend==1
                                                                                            ).OrderBy(p => p.tender_state).ThenByDescending(p => p.indexorder).ThenByDescending(p => p.targetid).Take(6).ToList();

            ViewBag.hbt = hbt;

            GetCacheNesList nes = new GetCacheNesList();

            ViewBag.newslist  = nes.GetNews(17, 3, 1, 1); //媒体新闻三张列表图片
            ViewBag.news1list = nes.GetNews(21, 4, 0, 1); //公告
            ViewBag.newslist2 = nes.GetNews(23, 4, 0, 1); //行业新闻
            ViewBag.gonggao   = nes.GetNews(21, 4, 0, 1); // 公告
            return(View(porlist));
        }
Ejemplo n.º 2
0
        // GET: Topic/T20170106
        public ActionResult Index()
        {
            int    userid  = Utils.checkloginsessiontop();
            string userUrl = string.Empty;

            if (userid > 0)
            {
                hx_member_table hUser = null;
                if (userid == 0)
                {
                    userUrl = "/usercenter/yaoqing";
                }
                else
                {
                    hUser = ef.hx_member_table.Where(p => p.registerid == userid).FirstOrDefault();
                }
                ViewBag.UserUrl = userUrl != string.Empty ? userUrl : Utils.GetRe_url("Invitation/" + hUser.invitedcode + ".html");
            }
            else
            {
                ViewBag.UserUrl = "/usercenter/yaoqing";
            }



            string codesql = "select TOP 5 (SELECT  mobile from hx_member_table where registerid = Invpeopleid) mobile,count(invcode) invcode from hx_td_Userinvitation where invtime >= '2017/1/6 00:00:00' AND invtime <= '2017/3/31 23:59:59' GROUP BY Invpeopleid ORDER BY  invcode desc";//查询累计邀请人数排名

            DataTable dtcode = DbHelperSQL.GET_DataTable_List(codesql);

            if (dtcode.Rows.Count > 0)
            {
                ViewBag.RenShu = dtcode;
            }
            else
            {
                ViewBag.RenShu = null;
            }

            string codesql2 = "SELECT TOP 5 (SELECT  t.mobile from hx_member_table t where t.registerid=a.registerid) mobile , SUM(Amt)amt FROM hx_UserAct a where RewTypeID = 1 AND Createtime >= '2017/1/6 00:00:00' AND Createtime <= '2017/3/31 23:59:59' AND  registerid IN(SELECT distinct Invpeopleid from hx_td_Userinvitation where invtime >= '2017/1/6 00:00:00' AND invtime <= '2017/3/31 23:59:59') GROUP BY registerid ORDER BY amt desc";//查询累计邀请返现排名

            DataTable dtcode2 = DbHelperSQL.GET_DataTable_List(codesql2);

            if (dtcode2.Rows.Count > 0)
            {
                ViewBag.JinE = dtcode2;
            }
            else
            {
                ViewBag.JinE = null;
            }



            return(View());
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 新用户注册活动
        /// </summary>
        /// <param name="registerid">用户id</param>
        /// <param name="ActUser">面向用户 0不限  1首次投资用户 2非首投用户 3每标首投用户 4每标最大投资用户 5所有投资用户</param>
        protected internal void SendBonusAfterRegister(int registerid, string targetPlatform, int ActUser = 0)
        {
            /// <param name="ActTypeId">活动类型id  1新人活动/2短期活动/3常规活动/4邀请活动/5系统赠送 </param>

            bool            t        = true;
            B_member_table  oy       = new B_member_table();
            hx_member_table investor = new hx_member_table();

            investor = ef.hx_member_table.Where(c => c.registerid == registerid).FirstOrDefault();                                                  //oy.GetModel(Registerid);//被推荐人  也就是投资人
            string    codesql = "SELECT invcode,Invpeopleid,invpersonid,invtime from  hx_td_Userinvitation where  invpersonid=" + registerid + " "; //查询本人是否已经被邀请注册过
            DataTable dtcode  = DbHelperSQL.GET_DataTable_List(codesql);
            int       uuid    = dtcode.Rows.Count > 0 ? int.Parse(dtcode.Rows[0]["Invpeopleid"].ToString()) : 0;                                    //邀请用户id

            //用户等级为渠道 不参与活动
            if (investor != null && investor.useridentity == 4)
            {
                t = false;
            }
            //老渠道机制判断 (推荐人等级为4渠道用户,投资次数大于等于1次 时可参与活动
            if (uuid != 0)
            {
                M_member_table py = new M_member_table();
                py = oy.GetModel(uuid);//推荐人
                if (py != null && py.useridentity == 4)
                {
                    t = false;
                }
            }
            //新渠道机制判断
            using (ChannelAct channelAct = new ChannelAct())
            {
                //按照渠道类型和投资次数判断是否参与此次活动
                if (!channelAct.IsParticipateActivity(investor.channel_invitedcode, 0))
                {
                    t = false;
                }
            }

            if (t == true)
            {
                //新人注册奖励
                List <hx_UserAct> hut = RegisterActBonus(registerid, targetPlatform, ActUser);

                BonusRecordOperate(registerid, hut, "新人注册");
            }
        }
Ejemplo n.º 4
0
        public bool InserXiCaiUser(hx_member_table user, string userid = "0", string display = "pc")
        {
            XiCaiUser xiCaiUser = new XiCaiUser()
            {
                Mobile         = user.mobile,
                XiCaiUserID    = int.Parse(userid),
                RegisterUserID = user.registerid,
                Display        = display
            };

            if (!ef.XiCaiUsers.Any(c => c.Mobile == user.mobile))
            {
                ef.XiCaiUsers.Add(xiCaiUser);
                if (ef.SaveChanges() < 1)
                {
                    LogInfo.WriteLog("注册成功,插入希财数据失败");
                    return(false); //("操作失败,请重新操作");
                }
            }
            return(true);
        }
Ejemplo n.º 5
0
        public static bool AppLoginSite(string userID, string p, string key, loginIn login)
        {
            if (string.IsNullOrWhiteSpace(userID) || string.IsNullOrWhiteSpace(p) || string.IsNullOrWhiteSpace(key))
            {
                return(false);
            }

            //chuangtouEntities ef = new chuangtouEntities();
            int uid = int.Parse(userID);

            if (uid == 0)
            {
                FormsAuthentication.SignOut();
                return(false);
            }
            hx_member_table user = ef.hx_member_table.Where(c => c.registerid == uid).FirstOrDefault();

            if (user == null)
            {
                return(false);
            }
            int appID     = p == "android" ? 654321 : (p == "ios" ? 123456 : 0);
            var appAuthor = ef.ApplicationAuthorizations.Where(c => c.AppId == appID).FirstOrDefault();

            if (appAuthor == null)
            {
                return(false);
            }
            string localKey = Utils.MD5(userID + appAuthor.AppSafeCode);

            if (key.ToLower() != localKey.ToLower())
            {
                return(false);
            }

            string           res      = login(user.mobile, user.password, "", 1, true).ToString();
            registerBackData loginRes = JsonConvert.DeserializeObject <registerBackData>(res);

            return(loginRes.rs == "y");
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 检查手机号是否已经注册
        /// </summary>
        /// <param name="mobile"></param>
        /// <returns></returns>
        public string checkmobile(string mobile, int uid = 0)
        {
            string str = "";

            hx_member_table ProPer = (from a in ef.hx_member_table where a.mobile == mobile || a.username == mobile select a).FirstOrDefault();

            if (ProPer != null)
            {
                if (ProPer.registerid == uid && uid > 0)
                {
                    str = "y";
                }
                else
                {
                    str = "手机号已经被注册";
                }
            }
            else
            {
                str = "y";
            }

            return(str);
        }
Ejemplo n.º 7
0
        // GET: Topic/T20161018
        public ActionResult Index()
        {
            int userid = Utils.checkloginsessiontop();

            if (userid > 0)
            {
                string          userUrl = string.Empty;
                hx_member_table hUser   = null;
                if (userid == 0)
                {
                    userUrl = "/login.html";
                }
                else
                {
                    hUser = ef.hx_member_table.Where(p => p.registerid == userid).FirstOrDefault();
                }
                var uid   = userid;
                var src   = userUrl != string.Empty ? userUrl : Utils.GetRe_url("Invitation/" + hUser.invitedcode + ".html");
                var url   = Server.UrlEncode(src);
                var desc  = Server.UrlEncode(string.Format("邀请好友来投资,双方都有奖励奖励无上限!送3重豪礼不限量 iPhone7 plus等你拿!复制您的“邀请链接”,通过QQ,微信,微博等方式发给好友,好友通过“邀请链接”注册!{0}", src));
                var title = Server.UrlEncode("邀请好友来投资,双方都有奖励奖励无上限!送3重豪礼不限量 iPhone7 plus等你拿!!");
                var img   = Server.UrlEncode(Utils.GetRe_url("images/logo.jpg"));
                var site  = Server.UrlEncode("创利投");
                var qzone = userUrl != string.Empty ? userUrl : string.Format("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url={0}&desc={1}&title={2}&pics={3}&site={4}", url, desc, desc, img, site);
                var weibo = userUrl != string.Empty ? userUrl : string.Format("http://v.t.sina.com.cn/share/share.php?appkey=&&source=&content={0}&url={1}&title={2}&pic={3}&site={4}", desc, url, desc, img, site);
                var QQ    = userUrl != string.Empty ? userUrl : string.Format("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?to=pengyou&url={0}&desc={1}&title={2}&pics={3}&site={4} title = '分享到朋友社区'", url, desc, desc, img, site);
                QQ = userUrl != string.Empty ? userUrl : string.Format("http://connect.qq.com/widget/shareqq/index.html?url={0}&title={1}&summary={2}&site={3}&pics={4}", url, desc, desc, site, img);
                var doubai   = userUrl != string.Empty ? userUrl : string.Format("http://www.douban.com/recommend/?url={0}&desc={1}&title={2}&pics={3}&site={4}", url, desc, desc, img, site);
                var QQweibo  = userUrl != string.Empty ? userUrl : string.Format("http://v.t.qq.com/share/share.php?title={0}&url={1}&appkey={2}&site={3}&pic={4}", desc, url, "125522", site, img);
                var newWxUrl = string.Empty;
                if (Utils.GetAppSetting("DeBug") == "1")
                {
                    newWxUrl = userUrl != string.Empty ? userUrl : Utils.GetAppSetting("MDeBugURL") + "register/index?invitedcode=" + hUser.invitedcode;
                }
                else
                {
                    newWxUrl = userUrl != string.Empty ? userUrl : Utils.GetAppSetting("MReleaseURL") + "register/index?invitedcode=" + hUser.invitedcode;
                }
                ViewBag.NewWxUrl = newWxUrl;
                ViewBag.QQweibo  = QQweibo;
                ViewBag.doubai   = doubai;
                ViewBag.QQ       = QQ;

                ViewBag.qzone   = qzone;
                ViewBag.weibo   = weibo;
                ViewBag.UserUrl = userUrl;
                ViewBag.codes   = userUrl != string.Empty ? string.Empty : Utils.GetRe_url("Invitation/" + hUser.invitedcode + ".html");
                ViewBag.HUsr    = hUser;
            }
            else
            {
                string userUrl = string.Empty;
                var    src     = userUrl != string.Empty ? userUrl : Utils.GetRe_url("20161110.html");
                var    url     = Server.UrlEncode(src);
                var    desc    = Server.UrlEncode(string.Format("邀请好友来投资,双方都有奖励奖励无上限!送3重豪礼不限量 iPhone7 plus等你拿!复制您的“邀请链接”,通过QQ,微信,微博等方式发给好友,好友通过“邀请链接”注册!{0}", src));
                var    title   = Server.UrlEncode("邀请好友来投资,双方都有奖励奖励无上限!送3重豪礼不限量 iPhone7 plus等你拿!!");
                var    img     = Server.UrlEncode(Utils.GetRe_url("images/logo.jpg"));
                var    site    = Server.UrlEncode("创利投");
                var    qzone   = userUrl != string.Empty ? userUrl : string.Format("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url={0}&desc={1}&title={2}&pics={3}&site={4}", url, desc, desc, img, site);
                var    weibo   = userUrl != string.Empty ? userUrl : string.Format("http://v.t.sina.com.cn/share/share.php?appkey=&&source=&content={0}&url={1}&title={2}&pic={3}&site={4}", desc, url, desc, img, site);
                var    QQ      = userUrl != string.Empty ? userUrl : string.Format("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?to=pengyou&url={0}&desc={1}&title={2}&pics={3}&site={4} title = '分享到朋友社区'", url, desc, desc, img, site);
                QQ = userUrl != string.Empty ? userUrl : string.Format("http://connect.qq.com/widget/shareqq/index.html?url={0}&title={1}&summary={2}&site={3}&pics={4}", url, desc, desc, site, img);
                var doubai   = userUrl != string.Empty ? userUrl : string.Format("http://www.douban.com/recommend/?url={0}&desc={1}&title={2}&pics={3}&site={4}", url, desc, desc, img, site);
                var QQweibo  = userUrl != string.Empty ? userUrl : string.Format("http://v.t.qq.com/share/share.php?title={0}&url={1}&appkey={2}&site={3}&pic={4}", desc, url, "125522", site, img);
                var newWxUrl = string.Empty;
                if (Utils.GetAppSetting("DeBug") == "1")
                {
                    newWxUrl = userUrl != string.Empty ? userUrl : Utils.GetAppSetting("MDeBugURL") + "register/index";
                }
                else
                {
                    newWxUrl = userUrl != string.Empty ? userUrl : Utils.GetAppSetting("MReleaseURL") + "register/index";
                }
                ViewBag.NewWxUrl = newWxUrl;
                ViewBag.QQweibo  = QQweibo;
                ViewBag.doubai   = doubai;
                ViewBag.QQ       = QQ;

                ViewBag.qzone   = qzone;
                ViewBag.weibo   = weibo;
                ViewBag.UserUrl = userUrl;
                ViewBag.codes   = userUrl != string.Empty ? string.Empty : Utils.GetRe_url("");
            }
            return(View());
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 上次贷款图片
        /// </summary>
        /// <returns></returns>
        public ActionResult UploadAvatar()
        {
            string json   = "{\"ret\":0,\"msg\":\"上传图片失败!\"}";
            int    userid = Utils.checkloginsession();

            if (userid > 0)
            {
                HttpFileCollection hfc          = System.Web.HttpContext.Current.Request.Files;
                string             avatarPath   = @"/Avatar/";
                string             imgPath      = "";
                string             PhysicalPath = "";

                if (hfc.Count > 0)
                {
                    string suf = "";
                    if (!isImage(hfc[0].FileName, out suf))
                    {
                        json = "{\"ret\":0,\"msg\":\"图片只支持---gif|jpg|jpeg|png!\"}";
                        return(Content(json, "text/json"));
                    }
                    string fileName = string.Format("{0}.{1}", sjname(), suf);
                    var    ss       = hfc[0].ContentType;
                    PhysicalPath = Server.MapPath(avatarPath);
                    if (!System.IO.Directory.Exists(PhysicalPath))
                    {
                        System.IO.Directory.CreateDirectory(PhysicalPath);
                    }
                    PhysicalPath = PhysicalPath + fileName;
                    hfc[0].SaveAs(PhysicalPath);
                    imgPath = avatarPath + fileName;
                }
                if (Utils.CheckPictureSafe(PhysicalPath))
                {
                    if (!string.IsNullOrEmpty(imgPath))
                    {
                        //imgPath = imgPath.Replace("/", "//");
                        json = "{\"ret\":1,\"path\":\"" + imgPath.Replace("/", "//") + "\"}";
                        //清理之前的头像文件
                        hx_member_table user = ef.hx_member_table.Where(p => p.registerid == userid).FirstOrDefault();//.Update(p => new hx_member_table { contactaddress = addr });
                        if (user != null && user.avatar != null && user.avatar != "0")
                        {
                            string oldFile = Server.MapPath("/") + user.avatar;
                            if (System.IO.File.Exists(oldFile))
                            {
                                System.IO.File.Delete(oldFile);
                            }
                        }
                        user.avatar = imgPath;
                        ef.SaveChanges();
                        //string sql = "update hx_member_table  set  avatar = '" + imgPath + "' where registerid =" + userid.ToString();//.Replace("//", "/")
                        //DBUtility.DbHelperSQL.RunSql(sql);
                    }
                }
                else
                {   //图片安全提醒,您试除上传非法文件
                    json = "{\"ret\":0,\"path\":\"图片中含有非法文件\"}";
                }
            }
            else
            {
                json = "{\"ret\":0,\"msg\":\"你未登录,请登录后再上传头像!\"}";
            }
            return(Content(json, "text/json"));
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 常规活动 现金奖励 发放(奖励流水 资金流水 系统消息)
        /// </summary>
        /// <param name="registerid">用户id</param>
        /// <param name="investAmt">投资金额</param>
        /// <param name="hat">活动对象</param>
        /// <param name="bid_records_id">投标记录id</param>
        /// <returns>bool 是否发放成功</returns>
        private bool GeneralActCash(int Registerid, decimal InvestAmt, hx_ActivityTable hat, int bid_records_id, int lifeLoan = 0)
        {
            bool t = false;

            //hx_ActivityTable hat = GetActTableInfo(ActTypeId, ActUser, 1);
            if (hat != null)
            {
                B_member_table oy = new B_member_table();
                //M_member_table investor = new M_member_table();
                hx_member_table investor = new hx_member_table();
                investor = ef.hx_member_table.Where(c => c.registerid == Registerid).FirstOrDefault(); //oy.GetModel(Registerid);//被推荐人  也就是投资人

                DateTime dte     = DateTime.Now;
                string   codesql = "SELECT invcode,Invpeopleid,invpersonid,invtime from  hx_td_Userinvitation where  invpersonid=" + Registerid + " ";//查询本人是否已经被邀请注册过

                DataTable dtcode = DbHelperSQL.GET_DataTable_List(codesql);
                //if (dtcode.Rows.Count > 0 || (investor != null && !string.IsNullOrWhiteSpace(investor.channel_invitedcode)))
                //{
                int uuid = dtcode.Rows.Count > 0 ? int.Parse(dtcode.Rows[0]["Invpeopleid"].ToString()) : 0; //邀请用户id

                //用户等级为渠道 不参与活动
                if (investor != null && investor.useridentity == 4)
                {
                    return(t);
                }
                int investCount = B_usercenter.GetInvestCountByUserid(Registerid);
                //老渠道机制判断 (推荐人等级为4渠道用户,投资次数大于等于1次 时可参与活动
                if (uuid != 0)
                {
                    M_member_table py = new M_member_table();
                    py = oy.GetModel(uuid);//推荐人
                    if ((py != null && py.useridentity == 4) && investCount == 1)
                    {
                        return(t);
                    }
                }
                //新渠道机制判断
                using (ChannelAct channelAct = new ChannelAct())
                {
                    //按照渠道类型和投资次数判断是否参与此次活动
                    if (!channelAct.IsParticipateActivity(investor.channel_invitedcode, investCount))
                    {
                        return(t);
                    }
                }

                //if (((py != null && py.useridentity == 4) || !string.IsNullOrWhiteSpace(investor.channel_invitedcode)) && B_usercenter.GetInvestCountByUserid(Registerid) == 1)
                //{
                //    return t;
                //}
                //if (py.useridentity != 4)//渠道用户不执行 2016-11-8日添加
                //{

                string               ActRule = hat.ActRule;
                List <MAmtList>      mlist   = new List <MAmtList>();
                JavaScriptSerializer js      = new JavaScriptSerializer();
                MActCash             mc      = new MActCash();
                mc = js.Deserialize <MActCash>(ActRule);
                //mlist = js.Deserialize<List<MAmtList>>(ActRule);
                //获取该活动对应的已经发放奖励的人次
                int TopNum = B_usercenter.GetTopNum(hat.ActID);
                //获取该活动对应的已经发放奖励的总金额
                decimal totalAmt = B_usercenter.GetTopAmtCount(hat.ActID);
                if (hat.ActUser == 7)//特殊回款复投奖励类型,根据规则修订奖励基数--投资金额
                {
                    InvestAmt = GetSepcialActAmt(Registerid, bid_records_id, InvestAmt, hat);
                }
                //根据投资金额计算对应现金奖励金额
                decimal actamt = GetActAmt(mc, InvestAmt, TopNum, lifeLoan);
                //检查分发奖励是否超过人数顶限或者总金额上限,上限为0表示不限制,如果超过直接跳过
                if ((mc.TopAmt > totalAmt || mc.TopAmt == 0) && (mc.TopNum > TopNum || mc.TopNum == 0))
                {
                    //t = true;
                    if (actamt > 0)//大于 0里写入对应的奖励数据
                    {
                        hx_UserAct hua = new hx_UserAct();
                        hua.ActTypeId    = hat.ActTypeId;
                        hua.registerid   = Registerid;
                        hua.RewTypeID    = hat.RewTypeID;
                        hua.ActID        = hat.ActID;
                        hua.Amt          = actamt;
                        hua.Uselower     = 0.00M;
                        hua.Usehight     = 0.00M;
                        hua.AmtEndtime   = DateTime.Parse(hat.ActEndtime.ToString()).AddMonths(1);
                        hua.AmtUses      = 1;              //没指定情况下默认为单独使用
                        hua.UseState     = 5;              //现金未转账
                        hua.UseTime      = DateTime.Now;
                        hua.AmtProid     = bid_records_id; //未使用默认为0,对于现金奖励该字段存放获得该奖励的投资记录id
                        hua.ISSmsOne     = 0;
                        hua.IsSmsThree   = 0;
                        hua.isSmsFifteen = 0;
                        hua.IsSmsSeven   = 0;
                        hua.isSmsSixteen = 0;
                        hua.OrderID      = decimal.Parse(Utils.Createcode());
                        hua.Createtime   = DateTime.Now;
                        hua.Title        = mc.ActName;
                        hua.UseLifeLoan  = "";
                        ef.hx_UserAct.Add(hua);
                        int i = ef.SaveChanges();
                        if (i > 0)
                        {
                            //录入成功,后进行转账操作 1.获取用户对象
                            M_member_table p = new M_member_table();
                            B_member_table o = new B_member_table();
                            p = o.GetModel(Registerid);
                            if (p != null)
                            {
                                //2.调用商户向用户转账接口
                                Transfer   tf   = new Transfer();
                                ReTransfer retf = tf.ToUserTransfer(p.UsrCustId, actamt, hua.OrderID.ToString(), hua.ActID.ToString(), "/Thirdparty/ToUserTransfer");
                                if (retf != null && retf.RespCode == "000")
                                {
                                    //3.事务处理操作账户及插入流水
                                    #region 验签缓存处理
                                    string cachename = retf.OrdId + "ToUserTransfer" + retf.InCustId;
                                    if (Utils.GeTThirdCache(cachename) == 0)
                                    {
                                        Utils.SetThirdCache(cachename);
                                        B_usercenter BUC = new B_usercenter();
                                        int          ic  = BUC.UpateActToUserTransfer(retf, bid_records_id); //用户余额更新
                                        if (ic > 0)
                                        {
                                            string    sql = "SELECT registerid,username,mobile  from hx_member_table where UsrCustId='" + retf.InCustId + "'";
                                            DataTable dt  = DbHelperSQL.GET_DataTable_List(sql);
                                            if (dt.Rows.Count > 0)
                                            {
                                                #region 资金流水
                                                B_usercenter ors = new B_usercenter();
                                                decimal      di  = ors.GetUsridAvailable_balance(int.Parse(dt.Rows[0]["registerid"].ToString()));
                                                // di = di + decimal.Parse(hua.Amt.ToString());
                                                StringBuilder strSql = new StringBuilder();
                                                strSql.Append("insert into hx_Capital_account_water(");
                                                strSql.Append("membertable_registerid,income,expenditure,time_of_occurrence,account_balance,types_Finance,createtime,keyid,remarks)");
                                                strSql.Append(" values (");
                                                strSql.Append("" + int.Parse(dt.Rows[0]["registerid"].ToString()) + "," + decimal.Parse(hua.Amt.ToString()) + ",0,'" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "'," + di + "," + (int)Enum.Parse(typeof(EnumTypesFinance), EnumTypesFinance.现金奖励.ToString()) + ",'" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "',0,'" + "现金奖励" + "')");
                                                DbHelperSQL.RunSql(strSql.ToString());
                                                strSql.Clear();
                                                #endregion

                                                #region MyRegion  记录奖励流水表
                                                string awardDescription = string.Format("{0},已汇入个人账户{1}{2}", hat.ActName, retf.TransAmt, GetBunusDescription(hat.RewTypeID));
                                                AddBonusAccoutWater(int.Parse(hua.UserAct.ToString()), Registerid, decimal.Parse(retf.TransAmt), awardDescription);
                                                #endregion

                                                #region MyRegion  发送系统消息
                                                string MContext = string.Format("尊敬的用户:您好!恭喜您成功参与{0},获得{1}{2}如有问题可咨询创利投的客服!", hat.ActName, retf.TransAmt, GetBunusDescription(hat.RewTypeID));
                                                AddSytemMessage(Registerid, hat.ActName, MContext);


                                                #endregion
                                                string msg = string.Format("尊敬的客户您好,您已成功投资创利投金服,获得返利{0}元,请登录官网查看。客服热线:010-53732056。", actamt.ToString("0.00"));
                                                SendSMS.Send_SMS(dt.Rows[0]["mobile"].ToString(), msg);
                                            }
                                        }
                                        t = true;
                                    }
                                    #endregion
                                }
                            }
                        }
                    }
                    //}
                }
                //}
            }
            return(t);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 更新用户第三方余额
        /// </summary>
        /// <param name="usrid"></param>
        /// <returns></returns>
        public ReQueryBalanceBg Querybalance(int usrid)
        {
            M_QueryBalanceBg mbg       = new M_QueryBalanceBg();
            ReQueryBalanceBg retloan   = new ReQueryBalanceBg();
            hx_member_table  mt        = ef.hx_member_table.Where(p => p.registerid == usrid).FirstOrDefault();
            string           UsrCustId = "";

            if (mt != null)
            {
                UsrCustId = mt.UsrCustId;
            }


            if (UsrCustId != null && UsrCustId != "")
            {
                if (UsrCustId.Length > 0)
                {
                    mbg.Version   = "10";
                    mbg.CmdId     = "QueryBalanceBg";
                    mbg.MerCustId = Utils.GetMerCustID();
                    mbg.UsrCustId = UsrCustId;

                    StringBuilder chkVal = new StringBuilder();
                    chkVal.Append(mbg.Version);
                    chkVal.Append(mbg.CmdId);
                    chkVal.Append(mbg.MerCustId);
                    chkVal.Append(mbg.UsrCustId);
                    string chkv = chkVal.ToString();
                    string log  = "更新用户第三方余额";
                    log += "<br>加签chkv字符:" + chkv;

                    //私钥文件的位置(这里是放在了站点的根目录下)
                    string merKeyFile = AppDomain.CurrentDomain.BaseDirectory + Utils.GetMerPr();
                    //需要指定提交字符串的长度
                    int           len        = Encoding.UTF8.GetBytes(chkv).Length;
                    StringBuilder sbChkValue = new StringBuilder(256);
                    //加签
                    int str = DllInterop.SignMsg(Utils.GetMerId(), merKeyFile, chkv, len, sbChkValue);

                    LogInfo.WriteLog("加签字符:" + str.ToString());

                    mbg.ChkValue = sbChkValue.ToString();

                    log += "<br>提交信息:" + FastJSON.toJOSN(mbg);
                    log += "<br>ChkValue:" + mbg.ChkValue;


                    using (var client = new WebClient())
                    {
                        var values = new NameValueCollection();
                        values.Add("Version", mbg.Version);
                        values.Add("CmdId", mbg.CmdId);
                        values.Add("MerCustId", mbg.MerCustId);
                        values.Add("UsrCustId", mbg.UsrCustId);
                        values.Add("ChkValue", mbg.ChkValue);


                        string url = Utils.GetChinapnrUrl();
                        //同步发送form表单请求
                        byte[] result = client.UploadValues(url, "POST", values);
                        var    retStr = Encoding.UTF8.GetString(result);
                        // Response.Write(retStr);

                        LogInfo.WriteLog(retStr);

                        ReQueryBalanceBg reg = new ReQueryBalanceBg();
                        retloan = (ReQueryBalanceBg)FastJSON.ToObject(retStr, reg);


                        StringBuilder builder = new StringBuilder();
                        builder.Append(retloan.CmdId);
                        builder.Append(retloan.RespCode);
                        //builder.Append(retloan.RespDesc);
                        builder.Append(retloan.MerCustId);
                        builder.Append(retloan.UsrCustId);
                        builder.Append(retloan.AvlBal);
                        builder.Append(retloan.AcctBal);
                        builder.Append(retloan.FrzBal);
                        //  builder.Append(retloan.ChkValue);

                        var msg = builder.ToString();

                        log += "<br>返回参数:" + msg;
                        //验签
                        string pgPubkFile = AppDomain.CurrentDomain.BaseDirectory + Utils.GetPgPubk();
                        int    ret        = DllInterop.VeriSignMsg(pgPubkFile, msg, msg.Length, retloan.ChkValue);

                        log += "<br>验签ret:" + ret.ToString();
                        if (ret == 0)
                        {
                            if (retloan.RespCode == "000")
                            {
                                B_usercenter bu = new B_usercenter();
                                bu.DataSync(retloan, UsrCustId, 1);


                                //  Response.Write("账户余额:  " + retloan.AcctBal + "<br>");

                                //  Response.Write("可用余额:  " + retloan.AvlBal + "<br>");

                                //   Response.Write("冻结余额:  " + retloan.FrzBal + "<br>");


                                //  AvlBal.Value = retloan.AvlBal;

                                //  FrzBal.Value = retloan.FrzBal;


                                //  string sql = "update  hx_member_table  set  available_balance=" + decimal.Parse(retloan.AvlBal) + " ,frozen_sum=" + decimal.Parse(retloan.FrzBal) + " where  UsrCustId='" + UsrCustId + "'";

                                // DbHelperSQL.RunSql(sql);
                            }
                            else
                            {
                                // Response.Write(HttpUtility.UrlDecode(retloan.RespDesc));
                            }
                        }
                    }
                    LogInfo.WriteLog(log);
                }
            }

            return(retloan);
        }