예제 #1
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!Page.IsPostBack)
     {
         CheckAdminPower("ReadRebate", PowerCheckType.Single);
         int      distributorId = RequestHelper.GetQueryString <int>("distributorId");
         UserInfo distributor   = UserBLL.Read(distributorId);
         StartTime.Text = RequestHelper.GetQueryString <string>("StartTime");
         EndTime.Text   = RequestHelper.GetQueryString <string>("EndTime");
         UserName.Text  = HttpUtility.UrlDecode((distributor.Id > 0?distributor.UserName: RequestHelper.GetQueryString <string>("UserName")), System.Text.Encoding.UTF8);
         Mobile.Text    = RequestHelper.GetQueryString <string>("Mobile");
         var dataList = RebateBLL.SearchList(
             CurrentPage,
             PageSize,
             new RebateSearchInfo
         {
             Distributor_Id = distributorId,
             StartTime      = RequestHelper.GetQueryString <DateTime>("StartTime"),
             EndTtime       = ShopCommon.SearchEndDate(RequestHelper.GetQueryString <DateTime>("EndTime")),
             UserName       = HttpUtility.UrlEncode(RequestHelper.GetQueryString <string>("UserName"), System.Text.Encoding.UTF8),
             Mobile         = RequestHelper.GetQueryString <string>("Mobile")
         },
             ref Count);
         //Task.Run(()=> {
         //var userList = UserBLL.SearchList(new UserSearchInfo { });
         //dataList.ForEach(k => k.Buyer_UserName = HttpUtility.UrlDecode(((userList.FirstOrDefault(a=>a.Id==k.User_Id)??new UserInfo())).UserName, System.Text.Encoding.UTF8));
         //});
         dataList.ForEach(k => k.UserName       = HttpUtility.UrlDecode(k.UserName, System.Text.Encoding.UTF8));
         dataList.ForEach(k => k.Buyer_UserName = HttpUtility.UrlDecode(k.Buyer_UserName, System.Text.Encoding.UTF8));
         BindControl(dataList, RecordList, MyPager);
     }
 }
예제 #2
0
 public ActionResult GetCommissionPageList(int uid, int pageIndex = 1, int pageSize = 10)
 {
     try
     {
         if (uid != distributor.Id)
         {
             return(Json(new { ok = false, error = "无权操作" }));
         }
         if (distributor.Distributor_Status != (int)Distributor_Status.Normal)
         {
             return(Json(new { ok = false, error = "分销商待审核或已冻结" }));
         }
         if (pageIndex <= 1)
         {
             pageIndex = 1;
         }
         if (pageIndex <= 0)
         {
             pageSize = 10;
         }
         int count    = 0;
         var dataList = RebateBLL.SearchList(pageIndex, pageSize, new RebateSearchInfo {
             Distributor_Id = uid
         }, ref count);
         return(Json(new { ok = true, user = distributor, data = dataList, count = dataList.Count }));
     }
     catch (Exception ex)
     {
         return(Json(new { ok = false, error = ex.Message }));
     }
 }
예제 #3
0
        /// <summary>
        /// 审核按钮点击方法
        /// </summary>
        protected void CheckButton_Click(object sender, EventArgs e)
        {
            OrderInfo order = ButtoStart();

            #region  拼团单,未拼满或者拼团失败不能通过审核
            if (order.IsActivity == (int)OrderKind.GroupBuy)
            {
                var groupBuy = GroupBuyBLL.Read(order.FavorableActivityId);
                if (!(groupBuy.StartTime <= DateTime.Now && groupBuy.EndTime >= DateTime.Now && groupBuy.SignCount >= groupBuy.Quantity))
                {
                    ScriptHelper.Alert("拼团未成功,暂不能通过审核");
                }
            }
            #endregion
            int startOrderStatus = order.OrderStatus;

            //确认付款,收款时间
            order.PayDate = RequestHelper.DateNow;

            order.ShippingNumber = ShippingNumber.Text;
            order.ShippingDate   = Convert.ToDateTime(ShippingDate.Text);
            //更新商品库存数量
            ProductBLL.ChangeSendCountByOrder(order.Id, ChangeAction.Plus);

            //自提:现场审核提货,完成
            if (order.SelfPick == 1)
            {
                order.OrderStatus = (int)OrderStatus.ReceiveShipping;
                #region 提货码状态置为1(无效)
                PickUpCodeBLL.UsePickCodeByOrder(order.Id);
                #endregion
                #region 完成订单给分销商返佣
                //订单实际支付金额
                decimal paid_money = OrderBLL.ReadNoPayMoney(order);
                //购买人
                var user = UserBLL.Read(order.UserId);
                //购买者有推荐人 且 实际支付金额大于0才进行返佣
                if (user.Recommend_UserId > 0 && paid_money > 0)
                {
                    RebateBLL.RebateToDistributor(user, paid_money, order.Id);
                }
                #endregion
            }
            else
            {//配送:进入配货状态
                order.OrderStatus = (int)OrderStatus.Shipping;
            }
            ButtonEnd(order, Note.Text, OrderOperate.Check, startOrderStatus);
        }
예제 #4
0
        /// <summary>
        /// 完成确认按钮点击方法
        /// </summary>
        protected void ReceivedButton_Click(object sender, EventArgs e)
        {
            OrderInfo order = ButtoStart();

            #region 确认收货赠送优惠券
            int count      = 0;
            var couponlist = CouponBLL.SearchList(1, 1, new CouponSearchInfo {
                Type = (int)CouponKind.ReceiveShippingGet, CanUse = 1
            }, ref count);
            if (couponlist.Count > 0)
            {
                UserCouponInfo userCoupon  = UserCouponBLL.ReadLast(couponlist[0].Id);
                int            startNumber = 0;
                if (userCoupon.Id > 0)
                {
                    string tempNumber = userCoupon.Number.Substring(3, 5);
                    while (tempNumber.Substring(0, 1) == "0")
                    {
                        tempNumber = tempNumber.Substring(1);
                    }
                    startNumber = Convert.ToInt32(tempNumber);
                }
                startNumber++;
                UserCouponBLL.Add(new UserCouponInfo
                {
                    UserId   = order.UserId,
                    UserName = order.UserName,
                    CouponId = couponlist[0].Id,
                    GetType  = (int)CouponType.ReceiveShippingGet,
                    Number   = ShopCommon.CreateCouponNo(couponlist[0].Id, startNumber),
                    Password = ShopCommon.CreateCouponPassword(startNumber),
                    IsUse    = (int)BoolType.False,
                    OrderId  = 0
                });
            }
            #endregion
            #region 赠送积分
            //赠送积分--根据商品信息填写的赠送积分额度
            //int sendPoint = OrderBLL.ReadOrderSendPoint(order.Id);
            //根据订单付款金额全额返还积分
            int sendPoint = (int)Math.Floor(OrderBLL.ReadNoPayMoney(order));
            if (sendPoint > 0 && order.IsActivity == (int)BoolType.False)
            {
                var accountRecord = new UserAccountRecordInfo
                {
                    RecordType = (int)AccountRecordType.Point,
                    Money      = 0,
                    Point      = sendPoint,
                    Date       = DateTime.Now,
                    IP         = ClientHelper.IP,
                    Note       = ShopLanguage.ReadLanguage("OrderReceived").Replace("$OrderNumber", order.OrderNumber),
                    UserId     = order.UserId,
                    UserName   = order.UserName
                };
                UserAccountRecordBLL.Add(accountRecord);
            }
            #endregion
            #region 确认收货给分销商返佣
            //订单实际支付金额
            decimal paid_money = OrderBLL.ReadNoPayMoney(order);
            //购买人
            var user = UserBLL.Read(order.UserId);
            //购买者有推荐人 且 实际支付金额大于0才进行返佣
            if (user.Recommend_UserId > 0 && paid_money > 0)
            {
                RebateBLL.RebateToDistributor(user, paid_money, order.Id);
            }
            #endregion
            int startOrderStatus = order.OrderStatus;
            order.OrderStatus = (int)OrderStatus.ReceiveShipping;
            ButtonEnd(order, Note.Text, OrderOperate.Received, startOrderStatus);
        }