Example #1
0
        /// <summary>
        /// 匹配页面
        /// </summary>
        /// <param name="page"></param>
        /// <returns></returns>
        public ActionResult matchedmanage(int page = 1, int id = 1)
        {
            int totalrowcount           = 0;
            int htotalrowcount          = 0;
            AcceptHelpOrderModel aorder = new AcceptHelpOrderModel();

            aorder.PageIndex = page;
            aorder.PageSize  = PageSize;
            HelpeOrderModel horder = new HelpeOrderModel();

            horder.PageIndex = id;
            horder.PageSize  = PageSize;
            List <AcceptHelpOrderModel>      waitorderlist = abll.GetWaitAcceptOrderListForPage(aorder, out totalrowcount);
            List <HelpeOrderModel>           helporderlist = bll.GetWaitHelpeOrderListForPage(horder, out htotalrowcount);
            PagedList <AcceptHelpOrderModel> acceptList    = null;
            PagedList <HelpeOrderModel>      helpList      = null;

            if (waitorderlist != null)
            {
                acceptList = new PagedList <AcceptHelpOrderModel>(waitorderlist, page, PageSize, totalrowcount);
            }
            if (helporderlist != null)
            {
                helpList = new PagedList <HelpeOrderModel>(helporderlist, id, PageSize, htotalrowcount);
            }
            MatchedManageViewModel model = new MatchedManageViewModel();

            model.acceptorderlist = acceptList;
            model.helporderlist   = helpList;
            return(View(model));
        }
Example #2
0
        /// <summary>
        /// 提供帮助单据信息页面
        /// </summary>
        /// <param name="orderid"></param>
        /// <returns></returns>
        public ActionResult helporderDetail(int orderid)
        {
            MemberInfoModel logmember = Session[AppContent.SESSION_WEB_LOGIN] as MemberInfoModel;

            if (logmember == null)
            {
                return(RedirectToAction("Index", "Login", new { area = "NewTemplateArea" }));
            }
            HelpOrderViewModel model = new HelpOrderViewModel();
            HelpeOrderModel    order = hobll.GetHelpOrderInfo(orderid, logmember.ID);

            if (order == null)
            {
                return(RedirectToAction("Index", "WebHome", new { area = "NewTemplateArea" }));
            }
            //本人的信息
            model.helperpeople = logmember;
            //匹配列表单据信息和会员信息及推荐人联系方式
            List <AcceptExtendInfoModel> acceptmodel = hobll.GetAcceptextendmodels(orderid);

            model.acceptOrderInfo = acceptmodel;
            model.helporder       = order;
            ViewBag.PageTitle     = web.WebName;
            return(View(model));
        }
Example #3
0
        /// <summary>
        /// 提供帮助列表页面
        /// </summary>
        /// <param name="page"></param>
        /// <returns></returns>
        public ActionResult helpOrderlist(HelpeOrderModel seachmodel, int page = 1)
        {
            MemberInfoModel logmember = Session[AppContent.SESSION_WEB_LOGIN] as MemberInfoModel;

            if (logmember == null)
            {
                return(RedirectToAction("Index", "Login", new { area = "NewTemplateArea" }));
            }
            HelpOrderListViewModel model = new HelpOrderListViewModel();
            int totalcount = 0;

            seachmodel.MemberID  = logmember.ID;
            seachmodel.PageIndex = page;
            seachmodel.PageSize  = pagesize;
            List <HelpeOrderModel>      orderlist = hobll.GetAllHelpeOrderListForPage(seachmodel, out totalcount);
            PagedList <HelpeOrderModel> pagelist  = null;

            if (orderlist != null)
            {
                pagelist = new PagedList <HelpeOrderModel>(orderlist, page, pagesize, totalcount);
            }
            model.orderlist   = pagelist;
            ViewBag.PageTitle = web.WebName;
            return(View(model));
        }
Example #4
0
        /// <summary>
        /// 添加举报信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public int AddReportForAcceptDetail(OrderReportingModel model)
        {
            HelpeOrderModel help = HelpeOrderDAL.GetHelpOrderInfo(model.OrderID);

            model.OrderCode = help.OrderCode;
            model.RStatus   = 1;
            model.OrderType = 1;
            return(OrderReportingDAL.AddOrderReporting(model));
        }
Example #5
0
        /// <summary>
        /// 根据ID查询提供帮助订单信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static HelpeOrderModel GetHelpOrderInfo(int id)
        {
            string sqltxt = @"SELECT  ID ,
        HStatus ,
        OrderCode ,
        MemberID ,
        MemberPhone ,
        MemberName ,
        Amount ,
        ISNULL(PayedAmount, 0) PayedAmount,
        ( Amount - ISNULL(MatchedAmount, 0) ) AS DiffAmount ,
        Interest ,
        DATEDIFF(DAY, AddTime, GETDATE()) diffday ,
        ISNULL(IsFristOrder, 0) IsFristOrder,
        ISNULL(SchedulingAmount,0) SchedulingAmount,
        ISNULL(IsLeaderBack,0) IsLeaderBack,
        ISNULL(IsRecommendBack,0) IsRecommendBack
FROM    HelpeOrder
WHERE   ID = @id";

            SqlParameter[] paramter =
            {
                new SqlParameter("@id", id)
            };
            DataTable dt = helper.Query(sqltxt, paramter).Tables[0];

            if (dt.Rows.Count > 0)
            {
                HelpeOrderModel model = new HelpeOrderModel();
                model.ID               = dt.Rows[0]["ID"].ToString().ParseToInt(0);
                model.MemberID         = Convert.ToInt32(dt.Rows[0]["MemberID"].ToString());
                model.MemberName       = dt.Rows[0]["MemberName"].ToString();
                model.MemberPhone      = dt.Rows[0]["MemberPhone"].ToString();
                model.OrderCode        = dt.Rows[0]["OrderCode"].ToString();
                model.Amount           = Convert.ToDecimal(dt.Rows[0]["Amount"].ToString());
                model.DiffAmount       = Convert.ToDecimal(dt.Rows[0]["DiffAmount"].ToString());
                model.Interest         = Convert.ToDecimal(dt.Rows[0]["Interest"].ToString());
                model.DiffDay          = dt.Rows[0]["diffday"].ToString().ParseToInt(0);
                model.HStatus          = dt.Rows[0]["HStatus"].ToString().ParseToInt(0);
                model.IsFristOrder     = dt.Rows[0]["IsFristOrder"].ToString().ParseToInt(0);
                model.PayedAmount      = dt.Rows[0]["PayedAmount"].ToString().ParseToDecimal(0);
                model.SchedulingAmount = dt.Rows[0]["SchedulingAmount"].ToString().ParseToDecimal(0);
                model.IsLeaderBack     = dt.Rows[0]["IsLeaderBack"].ToString().ParseToInt(0);
                model.IsRecommendBack  = dt.Rows[0]["IsRecommendBack"].ToString().ParseToInt(0);
                return(model);
            }
            else
            {
                return(null);
            }
        }
Example #6
0
        /// <summary>
        /// 更新提供帮助订单为已打款
        /// </summary>
        /// <param name="hid"></param>
        /// <returns></returns>
        public int UpdateToPlayMoneyV1(int hid, int aid)
        {
            int                    result      = 0;
            string                 value       = SysAdminConfigDAL.GetConfigsByID(6);  //得到打款后返还金额
            string                 inteist     = SysAdminConfigDAL.GetConfigsByID(7);  //得到打款后利率
            string                 inteistlist = SysAdminConfigDAL.GetConfigsByID(11); //得到领导奖利率
            HelpeOrderModel        order       = HelpeOrderDAL.GetHelpOrderInfo(hid);
            List <MatchOrderModel> matchorders = MatchOrderDAL.GetMatchOrderInfo(hid, aid);

            using (TransactionScope scope = new TransactionScope())
            {
                //更改状态为已打款(此处不在变更利率为打款后利率)
                //int rowcount = HelpeOrderDAL.UpdateStatusandinster(hid, 4, decimal.Parse(inteist));
                int rowcount = HelpeOrderDAL.UpdateStatus(hid, 4);
                if (rowcount < 1)
                {
                    return(0);
                }
                rowcount = MatchOrderDAL.UpdateStatusToPayed(hid, aid);
                if (rowcount < 1)
                {
                    return(0);
                }
                //更新匹配接受订单的状态为对方已打款
                rowcount = AcceptHelpOrderDAL.UpdateStatus(aid, 4);
                if (rowcount < 1)
                {
                    return(0);
                }
                try
                {
                    UserBehaviorLogModel log = new UserBehaviorLogModel();
                    log.AOrderCode     = matchorders[0].AcceptOrderCode;
                    log.BehaviorSource = 1;
                    log.BehaviorType   = 4;
                    log.HOrderCode     = matchorders[0].HelperOrderCode;
                    log.MemberID       = order.MemberID;
                    log.MemberName     = order.MemberName;
                    log.MemberPhone    = order.MemberPhone;
                    log.ProcAmount     = matchorders[0].MatchedMoney;
                    log.Remark         = "会员:" + order.MemberPhone + " 变更单据为打款";
                    rowcount           = UserBehaviorLogDAL.AddUserBehaviorLog(log);
                }
                catch { }
                scope.Complete();
                result = 1;
            }
            return(result);
        }
Example #7
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int AddHelpeOrder(HelpeOrderModel model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into HelpeOrder(");
            strSql.Append("MatchedAmount,AddTime,LastUpdateTime,SortIndex,OrderCode,MemberID,MemberPhone,MemberName,Amount,Interest,PayType,HStatus,ActiveCode,CurrentInterest,IsFristOrder");
            strSql.Append(") values (");
            strSql.Append("@MatchedAmount,GETDATE(),GETDATE(),@SortIndex,@OrderCode,@MemberID,@MemberPhone,@MemberName,@Amount,@Interest,@PayType,@HStatus,@ActiveCode,1,@IsFristOrder");
            strSql.Append(") ");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@MatchedAmount", SqlDbType.Decimal),
                new SqlParameter("@SortIndex",     SqlDbType.Int),
                new SqlParameter("@OrderCode",     SqlDbType.NVarChar),
                new SqlParameter("@MemberID",      SqlDbType.Int),
                new SqlParameter("@MemberPhone",   SqlDbType.NVarChar),
                new SqlParameter("@MemberName",    SqlDbType.NVarChar),
                new SqlParameter("@Amount",        SqlDbType.Decimal),
                new SqlParameter("@Interest",      SqlDbType.Decimal),
                new SqlParameter("@PayType",       SqlDbType.NVarChar),
                new SqlParameter("@HStatus",       SqlDbType.Int),
                new SqlParameter("@ActiveCode",    SqlDbType.NVarChar),
                new SqlParameter("@IsFristOrder",  SqlDbType.Int)
            };
            parameters[0].Value  = model.MatchedAmount;
            parameters[1].Value  = model.SortIndex;
            parameters[2].Value  = model.OrderCode;
            parameters[3].Value  = model.MemberID;
            parameters[4].Value  = model.MemberPhone;
            parameters[5].Value  = model.MemberName;
            parameters[6].Value  = model.Amount;
            parameters[7].Value  = model.Interest;
            parameters[8].Value  = model.PayType;
            parameters[9].Value  = model.HStatus;
            parameters[10].Value = model.ActiveCode;
            parameters[11].Value = model.IsFristOrder;
            object obj = helper.GetSingle(strSql.ToString(), parameters);

            if (obj == null)
            {
                return(0);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }
Example #8
0
        /// <summary>
        /// 根据ID和会员查询提供帮助订单信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static HelpeOrderModel GetHelpOrderInfo(int id, int memberid)
        {
            string sqltxt = @"SELECT  ID,OrderCode ,
        MemberID ,
        MemberPhone ,
        MemberName ,
        Amount ,
       HStatus,
        ( Amount - ISNULL(MatchedAmount, 0) ) AS DiffAmount ,
        Interest,
        DATEDIFF(DAY,AddTime,GETDATE()) diffday,
        PayType,
         CASE HStatus WHEN 0 THEN '未匹配' WHEN 1 THEN '部分匹配' WHEN 2 THEN '全部匹配' WHEN 3 THEN '已撤销'  WHEN 4 THEN '已打款'  WHEN 5 THEN '已确认' END AS HStatusName
FROM    HelpeOrder
WHERE   ID = @id
        AND MemberID = @memberid";

            SqlParameter[] paramter =
            {
                new SqlParameter("@id",       id),
                new SqlParameter("@memberid", memberid)
            };
            DataTable dt = helper.Query(sqltxt, paramter).Tables[0];

            if (dt.Rows.Count > 0)
            {
                HelpeOrderModel model = new HelpeOrderModel();
                model.ID          = dt.Rows[0]["ID"].ToString().ParseToInt(0);
                model.MemberID    = Convert.ToInt32(dt.Rows[0]["MemberID"].ToString());
                model.MemberName  = dt.Rows[0]["MemberName"].ToString();
                model.MemberPhone = dt.Rows[0]["MemberPhone"].ToString();
                model.OrderCode   = dt.Rows[0]["OrderCode"].ToString();
                model.Amount      = Convert.ToDecimal(dt.Rows[0]["Amount"].ToString());
                model.DiffAmount  = Convert.ToDecimal(dt.Rows[0]["DiffAmount"].ToString());
                model.Interest    = Convert.ToDecimal(dt.Rows[0]["Interest"].ToString());
                model.DiffDay     = dt.Rows[0]["diffday"].ToString().ParseToInt(0);
                model.HStatus     = dt.Rows[0]["HStatus"].ToString().ParseToInt(0);
                model.HStatusName = dt.Rows[0]["HStatusName"].ToString();
                model.PayType     = dt.Rows[0]["PayType"].ToString();
                return(model);
            }
            else
            {
                return(null);
            }
        }
Example #9
0
        public ActionResult supplyhelp(HelpeOrderModel order, int page = 1)
        {
            int totalrowcount = 0;

            order.PageIndex = page;
            order.PageSize  = PageSize;
            List <HelpeOrderModel>      orderlist = bll.GetAllHelpeOrderListForPage(order, out totalrowcount);
            PagedList <HelpeOrderModel> pageList  = null;

            if (orderlist != null)
            {
                pageList = new PagedList <HelpeOrderModel>(orderlist, page, PageSize, totalrowcount);
            }
            HelperOrderViewModel model = new HelperOrderViewModel();

            model.orderlist   = pageList;
            model.totalcount  = totalrowcount;
            model.pagesize    = PageSize;
            model.currentpage = page;
            ViewBag.PageTitle = "单据列表";
            this.ViewData["order.HStatus"] = GetStatusListItem(-10);
            return(View(model));
        }
        public ActionResult addhelporder(string helpactivecode, decimal helpamount, string paytype)
        {
            MemberInfoModel logmember = Session[AppContent.SESSION_WEB_LOGIN] as MemberInfoModel;
            HelpeOrderModel help      = new HelpeOrderModel();

            help.ActiveCode  = helpactivecode;
            help.Amount      = helpamount;
            help.HStatus     = 0;
            help.MemberID    = logmember.ID;
            help.MemberName  = logmember.TruethName;
            help.MemberPhone = logmember.MobileNum;
            help.OrderCode   = "H" + getcodenum();
            help.PayType     = paytype;
            string result = hobll.AddHelpeOrder(help);

            if (result == "1")
            {
                return(Json("1"));
            }
            else
            {
                return(Json(result.Substring(1)));
            }
        }
Example #11
0
        /// <summary>
        /// 根据Aid读取匹配的提供帮助列表
        /// </summary>
        /// <param name="aid"></param>
        /// <returns></returns>
        public static List <HelpeOrderModel> GetMatchHelpOrderByAid(int aid)
        {
            List <HelpeOrderModel> list = new List <HelpeOrderModel>();
            string sqlttx = @"SELECT  B.ID ,
        B.OrderCode ,
        ( B.Amount - B.MatchedAmount ) AS diffmoney ,
        B.IsFristOrder ,
        B.Amount ,
        B.Interest,
        b.MemberID,
        b.MemberName,
        b.MemberPhone
FROM    dbo.MatchOrder A
        INNER JOIN dbo.HelpeOrder B ON A.HelperOrderID = B.ID
WHERE   A.AcceptOrderID = @aid
        AND MatchStatus = 1";

            SqlParameter[] paramter = { new SqlParameter("@aid", aid) };
            DataTable      dt       = helper.Query(sqlttx, paramter).Tables[0];

            foreach (DataRow item in dt.Rows)
            {
                HelpeOrderModel model = new HelpeOrderModel();
                model.ID           = item["ID"].ToString().ParseToInt(0);
                model.OrderCode    = item["OrderCode"].ToString();
                model.DiffAmount   = item["diffmoney"].ToString().ParseToDecimal(0);
                model.IsFristOrder = item["IsFristOrder"].ToString().ParseToInt(0);
                model.Amount       = item["Amount"].ToString().ParseToDecimal(0);
                model.Interest     = item["Interest"].ToString().ParseToDecimal(0);
                model.MemberID     = item["MemberID"].ToString().ParseToInt(0);
                model.MemberName   = item["MemberName"].ToString();
                model.MemberPhone  = item["MemberPhone"].ToString();
                list.Add(model);
            }
            return(list);
        }
Example #12
0
 /// <summary>
 /// 单据匹配方法4
 /// </summary>
 /// <returns></returns>
 public int OperateMatchOrder(int hid, int aid)
 {
     int result = 0;
     decimal money = 0;
     HelpeOrderModel help = HelpeOrderDAL.GetHelpOrderInfo(hid);
     AcceptHelpOrderModel accept = AcceptHelpOrderDAL.GetAcceptOrderInfo(aid);
     string helpsmscontent = SysAdminConfigDAL.GetConfigsByID(19);
     string acceptsmscontent = SysAdminConfigDAL.GetConfigsByID(20);
     string issendsms = SysAdminConfigDAL.GetConfigsByID(21);
     if (help == null || accept == null)
     {
         return 0;
     }
     if (help.HStatus == 3 || help.HStatus == 5)
     {
         return 0;
     }
     if (accept.AStatus == 3 || accept.AStatus == 5)
     {
         return 0;
     }
     if (help.DiffAmount == 0 || accept.DiffAmount == 0)
     {
         return 0;
     }
     //系统计算匹配金额
     if (help.DiffAmount < accept.DiffAmount)
     {
         money = help.DiffAmount;
     }
     else if (help.DiffAmount > accept.DiffAmount)
     {
         money = accept.DiffAmount;
     }
     else
     {
         money = help.DiffAmount;
     }
     using (TransactionScope scope = new TransactionScope())
     {
         //插入匹配表
         MatchOrderModel matchmodel = new MatchOrderModel();
         matchmodel.AcceptMemberID = accept.MemberID;
         matchmodel.AcceptMemberName = accept.MemberName;
         matchmodel.AcceptMemberPhone = accept.MemberPhone;
         matchmodel.AcceptOrderCode = accept.OrderCode;
         matchmodel.AcceptOrderID = aid;
         matchmodel.HelperMemberID = help.MemberID;
         matchmodel.HelperMemberName = help.MemberName;
         matchmodel.HelperMemberPhone = help.MemberPhone;
         matchmodel.HelperOrderCode = help.OrderCode;
         matchmodel.HelperOrderID = hid;
         matchmodel.MatchedMoney = money;
         matchmodel.MatchTime = DateTime.Now;
         int rowcount = MatchOrderDAL.AddMatchOrder(matchmodel);
         if (rowcount < 1)
         {
             return 0;
         }
         //更新提供订单表状态
         rowcount = HelpeOrderDAL.UpdateHelpOrderMatch(hid, money);
         if (rowcount < 1)
         {
             return 0;
         }
         //更新接受订单表状态
         rowcount = AcceptHelpOrderDAL.UpdateAcceptOrderMatch(aid, money);
         if (rowcount < 1)
         {
             return 0;
         }
         #region 发送短信
         if (issendsms == "1")
         {
             string helpsms = string.Format(helpsmscontent, help.OrderCode);
             string acceptsms = string.Format(acceptsmscontent, accept.OrderCode);
             string resule = SendSMSClass.SendSMS(help.MemberPhone, helpsms);
             resule = SendSMSClass.SendSMS(accept.MemberPhone, acceptsms);
         }
         #endregion
         scope.Complete();
         result = 1;
     }
     return result;
 }
Example #13
0
        /// <summary>
        /// 取消提供帮助的订单
        /// </summary>
        /// <param name="hid"></param>
        /// <param name="ispipei">单据是否已经匹配</param>
        /// <returns></returns>
        public int UpdateToCancle(int hid, int ispipei = 0)
        {
            int result = 0;
            List <LeaderAmountModel> leaderlist = MemberCapitalDetailDAL.GetLeaderamountListByOrderID(hid);

            using (TransactionScope scope = new TransactionScope())
            {
                //更改订单状态
                int rowcount = HelpeOrderDAL.UpdateStatus(hid, 3);
                if (rowcount < 1)
                {
                    return(0);
                }
                //返还会员追加的资金
                HelpeOrderModel model = HelpeOrderDAL.GetHelpOrderInfo(hid);
                rowcount = MemberCapitalDetailDAL.UpdateMemberStaticFreezeMoneyAndinster(model.MemberID, (0 - model.Amount), 1, model.MemberName, model.MemberPhone);
                //rowcount = MemberCapitalDetailDAL.UpdateMemberStaticCapital(model.MemberID, (0 - model.Amount), model.MemberName, model.MemberPhone);
                if (rowcount < 1)
                {
                    return(0);
                }
                //插入会员资金变动日志
                AmountChangeLogModel logmodel = new AmountChangeLogModel();
                logmodel.MemberID     = model.MemberID;
                logmodel.MemberName   = model.MemberName;
                logmodel.MemberPhone  = model.MemberPhone;
                logmodel.OrderCode    = model.OrderCode;
                logmodel.OrderID      = hid;
                logmodel.ProduceMoney = (0 - model.Amount);
                logmodel.Remark       = "会员:" + model.MemberPhone + " 取消提供帮助,扣减静态冻结资金 " + model.Amount.ToString() + "元";
                logmodel.Type         = 1;
                rowcount = OperateLogDAL.AddAmountChangeLog(logmodel);
                if (rowcount < 1)
                {
                    return(0);
                }
                if (model.Interest > 0)
                {
                    //从账户扣减本次产生的利息
                    rowcount = MemberCapitalDetailDAL.UpdateStaticInterest(model.MemberID, (0 - model.Interest));
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                    //插入日志
                    AmountChangeLogModel logmodel1 = new AmountChangeLogModel();
                    logmodel1.MemberID     = model.MemberID;
                    logmodel1.MemberName   = model.MemberName;
                    logmodel1.MemberPhone  = model.MemberPhone;
                    logmodel1.OrderCode    = model.OrderCode;
                    logmodel1.OrderID      = hid;
                    logmodel1.ProduceMoney = (0 - model.Amount);
                    logmodel1.Remark       = "会员:" + model.MemberPhone + " 取消提供帮助,扣减利息 " + model.Interest.ToString() + "元";
                    logmodel.Type          = 4;
                    rowcount = OperateLogDAL.AddAmountChangeLog(logmodel1);
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                }
                //撤销对会员领导人的推荐奖和领导奖
                if (leaderlist != null)
                {
                    foreach (var item in leaderlist)
                    {
                        if (item.LType == 0)
                        {
                            rowcount = MemberCapitalDetailDAL.UpdateDynamicInterest(item.MemberID, (0 - item.Amount), item.MemberName, item.MemberPhone);
                        }
                        else if (item.LType == 1)
                        {
                            rowcount = MemberCapitalDetailDAL.UpdateMemberDynamicFreezeMoney(item.MemberID, (0 - item.Amount), item.MemberName, item.MemberPhone);
                        }
                    }
                }

                //更新会员统计信息
                rowcount = MemberExtendInfoDAL.CancleHelperOrder(model.MemberID, hid);
                if (rowcount < 1)
                {
                    return(0);
                }
                if (ispipei == 1)//该单已经匹配
                {
                    List <MatchOrderModel> matchs = MatchOrderDAL.GetMatchOrderInfo(hid, 0);
                    rowcount = MatchOrderDAL.UpdateStatus(hid, 0);//更改状态为取消
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                    foreach (var item in matchs)//更改接受帮助订单的状态
                    {
                        rowcount = AcceptHelpOrderDAL.CancleOrderForHelp(item.AcceptOrderID, item.MatchedMoney);
                        if (rowcount < 1)
                        {
                            return(0);
                        }
                    }
                }
                scope.Complete();
                result = 1;
            }
            return(result);
        }
Example #14
0
        public int UpdateToPlayMoney(int hid)
        {
            int                    result      = 0;
            string                 value       = SysAdminConfigDAL.GetConfigsByID(6);  //得到打款后返还金额
            string                 inteist     = SysAdminConfigDAL.GetConfigsByID(7);  //得到打款后利率
            string                 inteistlist = SysAdminConfigDAL.GetConfigsByID(11); //得到领导奖利率
            HelpeOrderModel        order       = HelpeOrderDAL.GetHelpOrderInfo(hid);
            List <MatchOrderModel> matchorders = MatchOrderDAL.GetMatchOrderInfo(hid, 0);

            using (TransactionScope scope = new TransactionScope())
            {
                //更改状态为已打款和更改利率为已打款后的利率
                int rowcount = HelpeOrderDAL.UpdateStatusandinster(hid, 4, decimal.Parse(inteist));
                if (rowcount < 1)
                {
                    return(0);
                }
                //返还排单币更改会员利率为打款后利率
                //if (!string.IsNullOrWhiteSpace(value))
                //{
                //    rowcount = MemberCapitalDetailDAL.UpdateMemberStaticFreezeMoney(order.MemberID, decimal.Parse(value), order.MemberName, order.MemberPhone);
                //    if (rowcount < 1)
                //    {
                //        return 0;
                //    }
                //AmountChangeLogModel logmodel = new AmountChangeLogModel();
                //logmodel.MemberID = order.MemberID;
                //logmodel.MemberName = order.MemberName;
                //logmodel.MemberPhone = order.MemberPhone;
                //logmodel.OrderCode = order.OrderCode;
                //logmodel.OrderID = hid;
                //logmodel.ProduceMoney = order.Amount;
                //logmodel.Remark = "会员:" + order.MemberPhone + " 打款完成,返还" + order.Amount.ToString() + "元";
                //logmodel.Type = 5;
                //rowcount = OperateLogDAL.AddAmountChangeLog(logmodel);
                //}
                //else
                //{
                //    rowcount = MemberCapitalDetailDAL.UpdateMemberInterest(order.MemberID, decimal.Parse(inteist));
                //    if (rowcount < 1)
                //    {
                //        return 0;
                //    }
                //}
                //更新匹配接受订单的状态为对方已打款
                if (matchorders.Count > 0)
                {
                    foreach (var item in matchorders)
                    {
                        rowcount = AcceptHelpOrderDAL.UpdateStatus(item.AcceptOrderID, 4);
                        if (rowcount < 1)
                        {
                            return(0);
                        }
                    }
                }
                scope.Complete();
                result = 1;
            }
            return(result);
        }
Example #15
0
        /// <summary>
        /// 添加提供帮助订单
        /// </summary>
        /// <returns></returns>
        public int InsertHelperOrder(HelpeOrderModel model)
        {
            int result = 0;

            using (TransactionScope scope = new TransactionScope())
            {
                //插入帮助订单表
                StringBuilder strSql = new StringBuilder();
                strSql.Append("insert into HelpeOrder(");
                strSql.Append("MatchedAmount,AddTime,LastUpdateTime,SortIndex,OrderCode,MemberID,MemberPhone,MemberName,Amount,Interest,PayType,HStatus");
                strSql.Append(") values (");
                strSql.Append("@MatchedAmount,@AddTime,GETDATE()@SortIndex,@OrderCode,@MemberID,@MemberPhone,@MemberName,@Amount,@Interest,@PayType,@HStatus");
                strSql.Append(") ");
                strSql.Append(";select @@IDENTITY");
                SqlParameter[] parameters =
                {
                    new SqlParameter("@MatchedAmount", SqlDbType.Decimal),
                    new SqlParameter("@AddTime",       SqlDbType.DateTime),
                    new SqlParameter("@SortIndex",     SqlDbType.Int),
                    new SqlParameter("@OrderCode",     SqlDbType.NVarChar),
                    new SqlParameter("@MemberID",      SqlDbType.Int),
                    new SqlParameter("@MemberPhone",   SqlDbType.NVarChar),
                    new SqlParameter("@MemberName",    SqlDbType.NVarChar),
                    new SqlParameter("@Amount",        SqlDbType.Decimal),
                    new SqlParameter("@Interest",      SqlDbType.Decimal),
                    new SqlParameter("@PayType",       SqlDbType.NVarChar),
                    new SqlParameter("@HStatus",       SqlDbType.Int)
                };
                parameters[0].Value  = model.MatchedAmount;
                parameters[1].Value  = model.AddTime;
                parameters[2].Value  = model.SortIndex;
                parameters[3].Value  = model.OrderCode;
                parameters[4].Value  = model.MemberID;
                parameters[5].Value  = model.MemberPhone;
                parameters[6].Value  = model.MemberName;
                parameters[7].Value  = model.Amount;
                parameters[8].Value  = model.Interest;
                parameters[9].Value  = model.PayType;
                parameters[10].Value = model.HStatus;
                int obj = int.Parse(helper.GetSingle(strSql.ToString(), parameters).ToString());
                //修改会员的资金表
                string sqltxt   = @"IF EXISTS ( SELECT  1
            FROM    dbo.MemberCapitalDetail
            WHERE   MemberID = @MemberID )
    BEGIN
        UPDATE  dbo.MemberCapitalDetail
        SET     StaticCapital = @Amount ,
                TotalStaticCapital = TotalStaticCapital + @StaticCapital
        WHERE   MemberID = @MemberID
    END
ELSE
    BEGIN
        INSERT  INTO dbo.MemberCapitalDetail
                ( MemberID ,
                  StaticCapital ,
                  TotalStaticCapital
                )
        VALUES  ( @MemberID ,
                  @Amount ,
                  @Amount
                )
    END";
                int    rowcount = helper.ExecuteSql(sqltxt, parameters);
                //插入日志记录表
                string         sql      = @"INSERT  INTO dbo.AmountChangeLog
        ( MemberID ,
          MemberPhone ,
          MemberName ,
          ProduceMoney ,
          Remark ,
          AddTime ,
          OrderID ,
          [Type] ,
          OrderCode
        )
VALUES  ( @MemberID ,
          @MemberPhone ,
          @MemberName ,
          @ProduceMoney ,
          @Remark ,
          GETDATE() ,
          @OrderID ,
          1 ,
          @OrderCode
        )";
                SqlParameter[] paramter =
                {
                    new SqlParameter("@MemberID",     SqlDbType.Int),
                    new SqlParameter("@MemberPhone",  SqlDbType.NVarChar),
                    new SqlParameter("@MemberName",   SqlDbType.NVarChar),
                    new SqlParameter("@ProduceMoney", SqlDbType.Decimal),
                    new SqlParameter("@Remark",       SqlDbType.NVarChar),
                    new SqlParameter("@OrderID",      SqlDbType.Int),
                    new SqlParameter("@OrderCode",    SqlDbType.NVarChar)
                };
                paramter[0].Value = model.MemberID;
                paramter[1].Value = model.MemberPhone;
                paramter[2].Value = model.MemberName;
                paramter[3].Value = model.Amount;
                paramter[4].Value = "会员" + model.MemberPhone + "提供帮助";
                paramter[5].Value = obj;
                paramter[6].Value = model.OrderCode;
                rowcount          = helper.ExecuteSql(sql, paramter);
                scope.Complete();
                result = 1;
            }
            return(result);
        }
Example #16
0
 /// <summary>
 /// 查询所有的待匹配的帮助订单
 /// </summary>
 /// <returns></returns>
 public List <HelpeOrderModel> GetWaitHelpeOrderListForPage(HelpeOrderModel model, out int totalrowcount)
 {
     return(dal.GetWaitHelpeOrderListForPage(model, out totalrowcount));
 }
Example #17
0
 public int InsertHelperOrder(HelpeOrderModel model)
 {
     return(dal.InsertHelperOrder(model));
 }
Example #18
0
        /// <summary>
        /// 查询所有的待匹配的帮助订单
        /// </summary>
        /// <returns></returns>
        public List <HelpeOrderModel> GetWaitHelpeOrderListForPage(HelpeOrderModel model, out int totalrowcount)
        {
            List <HelpeOrderModel> list = new List <HelpeOrderModel>();
            string columms = @"ID, MatchedAmount, AddTime, SortIndex, OrderCode, MemberID, MemberPhone, MemberName, Amount, Interest, PayType, HStatus,CASE HStatus WHEN 0 THEN '未匹配' WHEN 1 THEN '部分匹配' WHEN 2 THEN '全部匹配' WHEN 3 THEN '已撤销'  WHEN 4 THEN '已打款'  WHEN 5 THEN '已确认' END AS HStatusName,DATEDIFF(DAY,AddTime,GETDATE()) AS diffday";

            string where = " HStatus not in (3,5) and (Amount-MatchedAmount)>0";
            PageProModel page = new PageProModel();

            page.colums    = columms;
            page.orderby   = " (DATEDIFF(DAY,AddTime,GETDATE())) ";
            page.pageindex = model.PageIndex;
            page.pagesize  = model.PageSize;
            page.tablename = @"dbo.HelpeOrder";
            page.where     = where;
            DataTable dt = PublicHelperDAL.GetTable(page, out totalrowcount);

            foreach (DataRow item in dt.Rows)
            {
                HelpeOrderModel helpeordermodel = new HelpeOrderModel();
                if (item["ID"].ToString() != "")
                {
                    helpeordermodel.ID = int.Parse(item["ID"].ToString());
                }
                if (item["MatchedAmount"].ToString() != "")
                {
                    helpeordermodel.MatchedAmount = decimal.Parse(item["MatchedAmount"].ToString());
                }
                if (item["AddTime"].ToString() != "")
                {
                    helpeordermodel.AddTime = DateTime.Parse(item["AddTime"].ToString());
                }
                if (item["SortIndex"].ToString() != "")
                {
                    helpeordermodel.SortIndex = int.Parse(item["SortIndex"].ToString());
                }
                helpeordermodel.OrderCode = item["OrderCode"].ToString();
                if (item["MemberID"].ToString() != "")
                {
                    helpeordermodel.MemberID = int.Parse(item["MemberID"].ToString());
                }
                helpeordermodel.MemberPhone = item["MemberPhone"].ToString();
                helpeordermodel.MemberName  = item["MemberName"].ToString();
                if (item["Amount"].ToString() != "")
                {
                    helpeordermodel.Amount = decimal.Parse(item["Amount"].ToString());
                }
                if (item["Interest"].ToString() != "")
                {
                    helpeordermodel.Interest = decimal.Parse(item["Interest"].ToString());
                }
                helpeordermodel.PayType = item["PayType"].ToString();
                if (item["HStatus"].ToString() != "")
                {
                    helpeordermodel.HStatus = int.Parse(item["HStatus"].ToString());
                }
                helpeordermodel.HStatusName = item["HStatusName"].ToString();
                helpeordermodel.DiffDay     = int.Parse(item["diffday"].ToString());
                list.Add(helpeordermodel);
            }
            return(list);
        }
Example #19
0
        /// <summary>
        /// 查询所有的帮助订单
        /// </summary>
        /// <returns></returns>
        public static List <HelpeOrderModel> GetTopHelpeOrderListByMemberID(int memberid, int top = 10)
        {
            List <HelpeOrderModel> list   = new List <HelpeOrderModel>();
            StringBuilder          strSql = new StringBuilder();

            strSql.Append("select TOP (@topnum) ID, MatchedAmount, AddTime, SortIndex, OrderCode, MemberID, MemberPhone, MemberName, Amount, Interest, PayType, HStatus,CASE HStatus WHEN 0 THEN '未匹配' WHEN 1 THEN '部分匹配' WHEN 2 THEN '全部匹配' WHEN 3 THEN '已撤销'  WHEN 4 THEN '已打款'  WHEN 5 THEN '已确认' END AS HStatusName  ");
            strSql.Append("  from HelpeOrder ");
            strSql.Append(" WHERE MemberID=@memberid");
            strSql.Append(" ORDER BY ID DESC ");
            SqlParameter[] paramter = { new SqlParameter("@memberid", memberid), new SqlParameter("@topnum", top) };
            DataSet        ds       = helper.Query(strSql.ToString(), paramter);

            if (ds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow item in ds.Tables[0].Rows)
                {
                    HelpeOrderModel model = new HelpeOrderModel();
                    if (item["ID"].ToString() != "")
                    {
                        model.ID = int.Parse(item["ID"].ToString());
                    }
                    if (item["MatchedAmount"].ToString() != "")
                    {
                        model.MatchedAmount = decimal.Parse(item["MatchedAmount"].ToString());
                    }
                    if (item["AddTime"].ToString() != "")
                    {
                        model.AddTime = DateTime.Parse(item["AddTime"].ToString());
                    }
                    if (item["SortIndex"].ToString() != "")
                    {
                        model.SortIndex = int.Parse(item["SortIndex"].ToString());
                    }
                    model.OrderCode = item["OrderCode"].ToString();
                    if (item["MemberID"].ToString() != "")
                    {
                        model.MemberID = int.Parse(item["MemberID"].ToString());
                    }
                    model.MemberPhone = item["MemberPhone"].ToString();
                    model.MemberName  = item["MemberName"].ToString();
                    if (item["Amount"].ToString() != "")
                    {
                        model.Amount = decimal.Parse(item["Amount"].ToString());
                    }
                    if (item["Interest"].ToString() != "")
                    {
                        model.Interest = decimal.Parse(item["Interest"].ToString());
                    }
                    model.PayType = item["PayType"].ToString();
                    if (item["HStatus"].ToString() != "")
                    {
                        model.HStatus = int.Parse(item["HStatus"].ToString());
                    }
                    model.HStatusName = item["HStatusName"].ToString();
                    list.Add(model);
                }

                return(list);
            }
            else
            {
                return(null);
            }
        }
Example #20
0
        /// <summary>
        /// 更新状态为已完成
        /// </summary>
        /// <returns></returns>
        public int UpdateSingleOrderToComplete(int aid, int hid)
        {
            int result = 0;
            //List<MatchOrderModel> matchorders = MatchOrderDAL.GetMatchOrderInfo(0, aid);
            HelpeOrderModel        helporder = HelpeOrderDAL.GetHelpOrderInfo(hid);        //查询提供帮助的单据
            AcceptHelpOrderModel   accorder  = AcceptHelpOrderDAL.GetAcceptOrderInfo(aid); //查询接受单据的信息
            List <MatchOrderModel> matchinfo = MatchOrderDAL.GetMatchOrderInfo(hid, aid);  //单据的匹配信息
            string value       = SysAdminConfigDAL.GetConfigsByID(4);                      //得到注册返还金额
            string scvalue     = SysAdminConfigDAL.GetConfigsByID(6);                      //得到注册返还金额
            string inteistlist = SysAdminConfigDAL.GetConfigsByID(11);                     //得到领导奖利率
            int    day         = SysAdminConfigDAL.GetConfigsByID(22).ParseToInt(20);      //得到领导奖推荐奖冻结天数
            string inteist     = SysAdminConfigDAL.GetConfigsByID(7);                      //得到打款后利率

            using (TransactionScope scope = new TransactionScope())
            {
                //更改当前的接受单据状态和完成金额
                int rowcount = AcceptHelpOrderDAL.UpdateStatusAndMoneyToComplete(aid, matchinfo[0].MatchedMoney);
                if (rowcount < 1)
                {
                    return(0);
                }
                //更改匹配信息
                rowcount = MatchOrderDAL.UpdateStatusToComplete(hid, aid);
                if (rowcount < 1)
                {
                    return(0);
                }
                //更改匹配的提供帮助订单的状态
                rowcount = HelpeOrderDAL.UpdateStatusForCompleteV1(helporder.ID, matchinfo[0].MatchedMoney);
                if (rowcount < 1)
                {
                    return(0);
                }
                decimal diffamount = (helporder.Amount - helporder.PayedAmount - matchinfo[0].MatchedMoney);
                if (diffamount == 0)
                {
                    //返还匹配会员的静态冻结资金和利息
                    rowcount = MemberCapitalDetailDAL.UpdateStaticInterestAndStaticFreezeMoney(helporder.MemberID, helporder.Amount, helporder.Interest);
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                    //更改单据利率为高利率
                    rowcount = HelpeOrderDAL.UpdateCurrentInterest(hid, inteist.ParseToInt(2));
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                    //更改该单据的利息为0
                    rowcount = HelpeOrderDAL.UpdateHelperOrderClearInterest(helporder.ID);
                    if (rowcount < 1)
                    {
                        return(0);
                    }
                    //返还推荐奖
                    if (helporder.IsFristOrder == 1 && helporder.IsRecommendBack == 0)
                    {
                        decimal inster = SysAdminConfigDAL.GetConfigsByID(16).ParseToInt(10);//得到首次推荐的利率
                        decimal money  = helporder.Amount * inster / 100;
                        ReMemberRelationModel model = ReMemberRelationDAL.GetReMemberRelation(helporder.MemberID);
                        if (day == 0)//若为0,则当时返还
                        {
                            //返还推荐奖
                            rowcount = MemberCapitalDetailDAL.UpdateDynamicInterestForComplete(model.MemberID, money);
                            if (rowcount < 1)
                            {
                                return(0);
                            }
                            AmountChangeLogModel logmodel = new AmountChangeLogModel();
                            logmodel.MemberID     = model.MemberID;
                            logmodel.MemberName   = model.MemberTruthName;
                            logmodel.MemberPhone  = model.MemberPhone;
                            logmodel.OrderCode    = helporder.OrderCode;
                            logmodel.OrderID      = helporder.ID;
                            logmodel.ProduceMoney = money;
                            logmodel.Remark       = "会员:" + model.MemberPhone + " 得到来自单据:" + helporder.OrderCode + "的推荐奖";
                            logmodel.Type         = 3;
                            rowcount = OperateLogDAL.AddAmountChangeLog(logmodel);
                            if (rowcount < 1)
                            {
                                return(result);
                            }
                        }
                        else
                        {
                            //返还推荐奖到待返还列表
                            WaitFreeLeaderAmountModel waitfreemodel = new WaitFreeLeaderAmountModel();
                            waitfreemodel.MemberID       = model.MemberID;
                            waitfreemodel.MemberName     = model.MemberTruthName;
                            waitfreemodel.MemberPhone    = model.MemberPhone;
                            waitfreemodel.Amount         = money;
                            waitfreemodel.AStatus        = 1;
                            waitfreemodel.TheoryFreeTime = DateTime.Now.AddDays(day);
                            waitfreemodel.Type           = 2;
                            waitfreemodel.OrderCode      = helporder.OrderCode;
                            waitfreemodel.OrderID        = helporder.ID;
                            rowcount = MemberCapitalDetailDAL.AddWaitFreeMoney(waitfreemodel);
                            if (rowcount < 1)
                            {
                                return(0);
                            }
                        }
                        //返还激活码的钱
                        rowcount = MemberCapitalDetailDAL.UpdateStaticFreezeMoneyForReiger(helporder.MemberID, value.ParseToDecimal(0));
                        //更改单据为已经派发推荐奖
                        rowcount = HelpeOrderDAL.UpdateHelperOrderIsRecommendBack(helporder.ID);
                    }
                    if (helporder.IsLeaderBack == 0)
                    {
                        if (day == 0)
                        {
                            //返还领导奖
                            rowcount = MemberCapitalDetailDAL.PaymentLeaderPrizeForComplete(helporder.MemberID, inteistlist, helporder.OrderCode, helporder.ID);
                        }
                        else
                        {
                            //返还领导奖到待返还列表
                            rowcount = MemberCapitalDetailDAL.PaymentLeaderPrizeForComplete(helporder.MemberID, inteistlist, helporder.OrderCode, helporder.ID, day);
                        }
                        //更新单据状态
                        rowcount = HelpeOrderDAL.UpdateHelperOrderIsLeaderBack(helporder.ID);
                    }
                    //返还该单据排单币的金额
                    if (helporder.SchedulingAmount == 0)
                    {
                        rowcount = MemberCapitalDetailDAL.UpdateMemberStaticCapital(helporder.MemberID, scvalue.ParseToDecimal(0), helporder.MemberName, helporder.MemberPhone);
                        if (rowcount < 1)
                        {
                            return(0);
                        }
                        rowcount = HelpeOrderDAL.UpdateHelperOrderIsRecommendBack(helporder.ID, scvalue.ParseToDecimal(0));//更新单据的排单币金额
                        if (rowcount < 1)
                        {
                            return(0);
                        }
                        AmountChangeLogModel logmodel = new AmountChangeLogModel();
                        logmodel.MemberID     = helporder.MemberID;
                        logmodel.MemberName   = helporder.MemberName;
                        logmodel.MemberPhone  = helporder.MemberPhone;
                        logmodel.OrderCode    = helporder.OrderCode;
                        logmodel.OrderID      = helporder.ID;
                        logmodel.ProduceMoney = scvalue.ParseToDecimal(0);
                        logmodel.Remark       = "会员:" + helporder.MemberPhone + " 打款完成,返还排单币" + scvalue + "元";
                        logmodel.Type         = 5;
                        rowcount = OperateLogDAL.AddAmountChangeLog(logmodel);
                        if (rowcount < 1)
                        {
                            return(0);
                        }
                    }
                }
                try
                {
                    UserBehaviorLogModel log = new UserBehaviorLogModel();
                    log.AOrderCode     = accorder.OrderCode;
                    log.BehaviorSource = 1;
                    log.BehaviorType   = 5;
                    log.HOrderCode     = helporder.OrderCode;
                    log.MemberID       = accorder.MemberID;
                    log.MemberName     = accorder.MemberName;
                    log.MemberPhone    = accorder.MemberPhone;
                    log.ProcAmount     = matchinfo[0].MatchedMoney;
                    log.Remark         = "会员:" + accorder.MemberPhone + "为单据" + accorder.OrderCode + "确认收款";
                    rowcount           = UserBehaviorLogDAL.AddUserBehaviorLog(log);
                }
                catch { }
                scope.Complete();
                result = 1;
            }
            return(result);
        }
Example #21
0
        /// <summary>
        /// 添加一条提供帮助单据
        /// </summary>
        public string AddHelpeOrder(HelpeOrderModel model)
        {
            string  result               = "0";
            string  minhelpamont         = SystemConfigs.GetminHelpAmont();                         //得到最小的提供帮助限制
            string  maxhelpamont         = SystemConfigs.GetmaxHelpAmont();                         //得到最大的提供帮助限制
            string  interest             = SysAdminConfigDAL.GetConfigsByID(5);                     //得到排单后的利率
            string  inteistlist          = SysAdminConfigDAL.GetConfigsByID(11);                    //得到领导奖利率
            decimal reinteist            = SysAdminConfigDAL.GetConfigsByID(16).ParseToDecimal(10); //得到首次推荐的利率
            decimal maxcount             = SysAdminConfigDAL.GetConfigsByID(17).ParseToInt(1);      //得到每日最大排单数
            MemberExtendInfoModel meinfo = MemberExtendInfoDAL.GetMemberExtendInfo(model.MemberID);
            int helpcount = HelpeOrderDAL.GetTodayHelpCount(model.MemberID);

            if (model.Amount < minhelpamont.ParseToDecimal(0))
            {
                return("0超出了平台规定的最小规定值");
            }
            if (model.Amount > maxhelpamont.ParseToDecimal(0))
            {
                return("0超出了平台规定的最大规定值");
            }

            if (helpcount >= maxcount)
            {
                return("0今天已经提供过帮助");
            }
            bool isfirst = false;//默认不是第一次

            if (meinfo == null)
            {
                isfirst = true;
            }
            else
            {
                isfirst = meinfo.MemberHelpCount == 0;
            }
            if (string.IsNullOrWhiteSpace(model.ActiveCode))
            {
                return("0没有填写排单币");
            }
            ActiveCodeModel activemodel = ActiveCodeDAL.GetActiveCodeExtendModel(model.ActiveCode);

            if (activemodel == null)//没有该激活码信息为失败
            {
                return("0排单币无效");
            }
            if (activemodel.AStatus == 10)//改激活码已使用为失败
            {
                return("0排单币已经被使用");
            }
            if (model.Amount % 100 > 0)
            {
                return("0提供金额应为100的整数倍");
            }
            ReMemberRelationModel remember = ReMemberRelationDAL.GetReMemberRelation(model.MemberID);

            using (TransactionScope scope = new TransactionScope())
            {
                //更改激活码的使用状态
                int rowcount = ActiveCodeDAL.UpdateStatus(activemodel.ID, 10);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                rowcount = ActiveCodeDAL.UpdateMemberActiveToUse(model.MemberID, model.OrderCode, model.ActiveCode);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //插入激活码的使用日志
                ActiveCodeLogModel aclogmodel = new ActiveCodeLogModel();
                aclogmodel.ActiveCode  = model.ActiveCode;
                aclogmodel.AID         = model.ActiveCodeID;
                aclogmodel.MemberID    = model.MemberID;
                aclogmodel.MemberName  = model.MemberName;
                aclogmodel.MemberPhone = model.MemberPhone;
                aclogmodel.Remark      = "会员:" + model.MemberName + " 使用排单币:" + model.ActiveCode + " 进行排单";
                rowcount = OperateLogDAL.AddActiveCodeLog(aclogmodel);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //更改会员的资金信息和利率
                decimal dinterest = 1;
                if (!string.IsNullOrWhiteSpace(interest))
                {
                    if (!decimal.TryParse(interest, out dinterest))
                    {
                        return("0操作失败");
                    }
                }
                //rowcount = MemberCapitalDetailDAL.UpdateMemberStaticCapital(model.MemberID, model.Amount, dinterest,model.MemberName,model.MemberPhone);
                rowcount = MemberCapitalDetailDAL.UpdateMemberStaticFreezeMoneyAndinster(model.MemberID, model.Amount, dinterest, model.MemberName, model.MemberPhone);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //插入表记录
                model.IsFristOrder = isfirst ? 1 : 0;
                int orderid = dal.AddHelpeOrder(model);
                if (orderid < 1)
                {
                    return("0操作失败");
                }
                //更新会员的统计信息
                rowcount = MemberExtendInfoDAL.Update(model.MemberID, model.Amount);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //插入会员的资金变动纪录
                AmountChangeLogModel logmodel = new AmountChangeLogModel();
                logmodel.MemberID     = model.MemberID;
                logmodel.MemberName   = model.MemberName;
                logmodel.MemberPhone  = model.MemberPhone;
                logmodel.OrderCode    = model.OrderCode;
                logmodel.OrderID      = orderid;
                logmodel.ProduceMoney = model.Amount;
                logmodel.Remark       = "会员:" + model.MemberPhone + " 申请提供帮助 " + model.Amount.ToString() + "元";
                logmodel.Type         = 1;
                rowcount = OperateLogDAL.AddAmountChangeLog(logmodel);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //为推荐人添加领导奖
                rowcount = MemberCapitalDetailDAL.PaymentLeaderPrize(model.MemberID, model.Amount, inteistlist, model.OrderCode, orderid);
                if (rowcount < 1)
                {
                    return("0操作失败");
                }
                //若此会员第一次排单,则给推荐人奖励
                if (isfirst)
                {
                    rowcount = MemberCapitalDetailDAL.UpdateMemberDynamicFreezeMoney(remember.MemberID, (model.Amount * reinteist / 100), remember.MemberTruthName, remember.MemberPhone);
                    if (rowcount < 1)
                    {
                        return("0操作失败");
                    }
                    LeaderAmountModel leadermodel = new LeaderAmountModel();//插入领导奖记录
                    leadermodel.OrderID     = orderid;
                    leadermodel.OrderCode   = model.OrderCode;
                    leadermodel.MemberPhone = remember.MemberPhone;
                    leadermodel.MemberName  = remember.MemberTruthName;
                    leadermodel.MemberID    = remember.MemberID;
                    leadermodel.LType       = 1;
                    leadermodel.Amount      = (model.Amount * reinteist / 100);
                    rowcount = MemberCapitalDetailDAL.AddLeaderAmount(leadermodel);
                    if (rowcount < 1)
                    {
                        return("0操作失败");
                    }
                    AmountChangeLogModel logmodel1 = new AmountChangeLogModel();
                    logmodel1.MemberID     = remember.MemberID;
                    logmodel1.MemberName   = remember.MemberTruthName;
                    logmodel1.MemberPhone  = remember.MemberPhone;
                    logmodel1.OrderCode    = model.OrderCode;
                    logmodel1.OrderID      = orderid;
                    logmodel1.ProduceMoney = (model.Amount * reinteist / 100);
                    logmodel1.Remark       = "会员:" + remember.MemberPhone + " 得到来自 " + model.MemberPhone + "的首单推荐奖(已冻结)" + (model.Amount * reinteist / 100).ToString() + "元";
                    logmodel1.Type         = 3;
                    rowcount = OperateLogDAL.AddAmountChangeLog(logmodel1);
                    if (rowcount < 1)
                    {
                        return("0操作失败");
                    }
                }
                try
                {
                    UserBehaviorLogModel log = new UserBehaviorLogModel();
                    log.AOrderCode     = "";
                    log.BehaviorSource = 1;
                    log.BehaviorType   = 2;
                    log.HOrderCode     = model.OrderCode;
                    log.MemberID       = model.MemberID;
                    log.MemberName     = model.MemberName;
                    log.MemberPhone    = model.MemberPhone;
                    log.ProcAmount     = model.Amount;
                    log.Remark         = "会员:" + model.MemberPhone + "提供帮助单号为:" + model.OrderCode;
                    rowcount           = UserBehaviorLogDAL.AddUserBehaviorLog(log);
                }
                catch { }
                scope.Complete();
                result = "1";
            }
            return(result);
        }
Example #22
0
        /// <summary>
        /// 查询所有的帮助订单
        /// </summary>
        /// <returns></returns>
        public List <HelpeOrderModel> GetAllHelpeOrderListForPage(HelpeOrderModel model, out int totalrowcount)
        {
            List <HelpeOrderModel> list = new List <HelpeOrderModel>();
            string columms = @"ID, MatchedAmount, AddTime, SortIndex, ActiveCode,OrderCode, MemberID, MemberPhone, MemberName, Amount, Interest, PayType, HStatus,CASE HStatus WHEN 0 THEN '未匹配' WHEN 1 THEN '部分匹配' WHEN 2 THEN '全部匹配' WHEN 3 THEN '已撤销'  WHEN 4 THEN '已打款'  WHEN 5 THEN '已确认' END AS HStatusName";

            string where = "";
            if (model != null)
            {
                if (!string.IsNullOrWhiteSpace(model.OrderCode))
                {
                    where += "OrderCode='" + model.OrderCode + "'";
                }
                if (model.MemberID > 0 && string.IsNullOrWhiteSpace(where))
                {
                    where += " MemberID=" + model.MemberID.ToString();
                }
                else if (!string.IsNullOrWhiteSpace(where) && model.MemberID > 0)
                {
                    where += @" AND MemberID=" + model.MemberID.ToString();
                }
                if (!string.IsNullOrWhiteSpace(model.MemberPhone) && string.IsNullOrWhiteSpace(where))
                {
                    where += @" MemberPhone Like '%" + model.MemberPhone + "%'";
                }
                else if (!string.IsNullOrWhiteSpace(model.MemberPhone) && !string.IsNullOrWhiteSpace(where))
                {
                    where += @" AND MemberPhone Like '%" + model.MemberPhone + "%'";
                }
                if (!string.IsNullOrWhiteSpace(model.MemberName) && string.IsNullOrWhiteSpace(where))
                {
                    where += @" MemberName ='" + model.MemberName + "'";
                }
                else if (!string.IsNullOrWhiteSpace(model.MemberName) && !string.IsNullOrWhiteSpace(where))
                {
                    where += @" AND MemberName ='" + model.MemberName + "'";
                }
                if (model.HStatus > -10 && string.IsNullOrWhiteSpace(where))
                {
                    where += @" HStatus =" + model.HStatus;
                }
                else if (model.HStatus > -10 && !string.IsNullOrWhiteSpace(where))
                {
                    where += @" AND HStatus =" + model.HStatus;
                }
            }
            PageProModel page = new PageProModel();

            page.colums    = columms;
            page.orderby   = "SortIndex";
            page.pageindex = model.PageIndex;
            page.pagesize  = model.PageSize;
            page.tablename = @"dbo.HelpeOrder";
            page.where     = where;
            DataTable dt = PublicHelperDAL.GetTable(page, out totalrowcount);

            foreach (DataRow item in dt.Rows)
            {
                HelpeOrderModel helpeordermodel = new HelpeOrderModel();
                if (item["ID"].ToString() != "")
                {
                    helpeordermodel.ID = int.Parse(item["ID"].ToString());
                }
                if (item["MatchedAmount"].ToString() != "")
                {
                    helpeordermodel.MatchedAmount = decimal.Parse(item["MatchedAmount"].ToString());
                }
                if (item["AddTime"].ToString() != "")
                {
                    helpeordermodel.AddTime = DateTime.Parse(item["AddTime"].ToString());
                }
                if (item["SortIndex"].ToString() != "")
                {
                    helpeordermodel.SortIndex = int.Parse(item["SortIndex"].ToString());
                }
                helpeordermodel.OrderCode = item["OrderCode"].ToString();
                if (item["MemberID"].ToString() != "")
                {
                    helpeordermodel.MemberID = int.Parse(item["MemberID"].ToString());
                }
                helpeordermodel.MemberPhone = item["MemberPhone"].ToString();
                helpeordermodel.MemberName  = item["MemberName"].ToString();
                if (item["Amount"].ToString() != "")
                {
                    helpeordermodel.Amount = decimal.Parse(item["Amount"].ToString());
                }
                if (item["Interest"].ToString() != "")
                {
                    helpeordermodel.Interest = decimal.Parse(item["Interest"].ToString());
                }
                helpeordermodel.PayType = item["PayType"].ToString();
                if (item["HStatus"].ToString() != "")
                {
                    helpeordermodel.HStatus = int.Parse(item["HStatus"].ToString());
                }
                helpeordermodel.HStatusName = item["HStatusName"].ToString();
                helpeordermodel.ActiveCode  = item["ActiveCode"].ToString();
                list.Add(helpeordermodel);
            }
            return(list);
        }