public ActionResult Confirm(long id = 0, List <long> batchs = null, string remark = "")
 {
     if (id > 0)
     {
         DistributionApplication.AuditingWithdraw(id, CurrentManager.UserName, remark);
     }
     else if (batchs != null)
     {
         var error = 0;
         foreach (var item in batchs)
         {
             try
             {
                 DistributionApplication.AuditingWithdraw(item, CurrentManager.UserName, remark);
             }
             catch (Exception ex)
             {
                 Log.Error("审核佣金提现失败:", ex);
                 error++;
             }
         }
         if (error == 0)
         {
         }
         else
         {
             return(Json(new { success = false, msg = "审核操作完成,但部分提现失败,请检查!" }));
         }
     }
     else
     {
         return(Json(new { success = false, msg = "无效参数" }));
     }
     return(Json(new { success = true }, true));
 }
Пример #2
0
 public JsonResult SaveBaseConfig(DistributionConfigBaseConfigModel model)
 {
     if (!ModelState.IsValid)
     {
         throw new MallException("有错误的参数");
     }
     if (model.DistributionIsEnable)
     {
         if ((model.DistributionMaxLevel < 1 || model.DistributionMaxLevel > 3))
         {
             throw new MallException("错误的分销等级设置");
         }
         if ((model.DistributionMaxBrokerageRate < 0.1m || model.DistributionMaxBrokerageRate > 100))
         {
             throw new MallException("最高分佣比例需在0.1%~100%之间,且只能保留一位小数!");
         }
     }
     SiteSettingApplication.SiteSettings.DistributionCanSelfBuy        = model.DistributionCanSelfBuy;
     SiteSettingApplication.SiteSettings.DistributionIsEnable          = model.DistributionIsEnable;
     SiteSettingApplication.SiteSettings.DistributionIsProductShowTips = model.DistributionIsProductShowTips;
     SiteSettingApplication.SiteSettings.DistributionMaxBrokerageRate  = model.DistributionMaxBrokerageRate;
     SiteSettingApplication.SiteSettings.DistributionMaxLevel          = model.DistributionMaxLevel;
     SiteSettingApplication.SiteSettings.DistributorApplyNeedQuota     = model.DistributorApplyNeedQuota;
     SiteSettingApplication.SiteSettings.DistributorNeedAudit          = model.DistributorNeedAudit;
     SiteSettingApplication.SaveChanges();
     DistributionApplication.ResetDefaultBrokerageRate(SiteSettingApplication.SiteSettings.DistributionMaxLevel);
     return(Json(new { success = true }));
 }
Пример #3
0
        public ActionResult CheckGenerate()
        {
            //是否完成生成任务
            var completed = !DistributionApplication.CheckGenerating();

            return(Json(new { success = completed }, true));
        }
        /// <summary>
        /// 导出佣金管理
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ActionResult ManagementExportToExcel(DistributorSubQuery query)
        {
            query.IncludeNoSettlementAmount = true;
            var result = DistributionApplication.GetDistributorsAll(query);

            return(ExcelView("ManagementExport", "平台佣金管理", result));
        }
Пример #5
0
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            base.OnActionExecuting(filterContext);

            bool isclose = !SiteSettingApplication.SiteSettings.DistributionIsEnable;

            if (isclose && RouteData.Values["action"].ToString().ToLower() != "nosetting")
            {
                Response.Clear();
                Response.BufferOutput = true;
                Response.Redirect(Url.Action("NoSetting"));
            }

            curshopid = CurrentSellerManager.ShopId;
            var dbkdata = DistributionApplication.GetDefaultBrokerageRate(curshopid);

            isConfigRight = true;
            if (dbkdata.BrokerageRate1 < 0.1m || dbkdata.BrokerageRate1 > 100)
            {
                isConfigRight = false;
            }
            if (SiteSettings.DistributionMaxLevel > 1 && (dbkdata.BrokerageRate2 < 0.1m || dbkdata.BrokerageRate2 > 100))
            {
                isConfigRight = false;
            }
            if (SiteSettings.DistributionMaxLevel > 2 && (dbkdata.BrokerageRate3 < 0.1m || dbkdata.BrokerageRate3 > 100))
            {
                isConfigRight = false;
            }
            if (SiteSettings.DistributionMaxBrokerageRate < (dbkdata.BrokerageRate1 + dbkdata.BrokerageRate2 + dbkdata.BrokerageRate3))
            {
                isConfigRight = false;
            }
        }
Пример #6
0
        /// <summary>
        /// 导出销售员
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ActionResult ExportToExcelDistributor(DistributorQuery query)
        {
            query.IsIncludeMember = false;
            if (query.StartTime.HasValue)
            {
                query.StartTime = query.StartTime.Value.Date;
            }
            if (query.EndTime.HasValue)
            {
                query.EndTime = query.EndTime.Value.AddDays(1).Date;
            }
            if (query.Sort.ToLower() == "ShowApplyTime".ToLower())
            {
                query.Sort = "ApplyTime";
            }

            var results = DistributionApplication.GetDistributorsAll(query);

            if (results != null && results.Count() > 0)
            {
                results[0].DistributionMaxLevel = SiteSettings.DistributionMaxLevel;//最大分销级数,这里实体第一个保存值是导出方便取值
            }

            return(ExcelView("ExportDistributor", "平台销售员列表", results));
        }
Пример #7
0
        /// <summary>
        /// 导出商品分销明细
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ActionResult ProductsExportToExcel(DistributionProductQuery query)
        {
            query.ShopId = CurrentSellerManager.ShopId;
            var results = DistributionApplication.GetProductsAll(query);

            return(ExcelView("ProductsExport", "商家商品分销明细", results));
        }
Пример #8
0
        /// <summary>
        /// 是否可以申请销售员
        /// </summary>
        /// <returns></returns>
        public JsonResult <Result <bool> > GetCanApplyMyShop()
        {
            CheckUserLogin();
            var             sitesettings       = SiteSettingApplication.SiteSettings;
            DistributorInfo currentDistributor = DistributionApplication.GetDistributor(CurrentUser.Id);

            if (sitesettings.DistributorApplyNeedQuota > 0)
            {
                var _u = MemberApplication.GetMember(CurrentUser.Id);
                if (_u.NetAmount < sitesettings.DistributorApplyNeedQuota)
                {
                    return(Json(ErrorResult <bool>("需要累计消费金额达到" + sitesettings.DistributorApplyNeedQuota + "元才可申请哦!")));
                }
            }
            if (currentDistributor != null)
            {
                if (currentDistributor.DistributionStatus == (int)DistributorStatus.NotAvailable)
                {
                    return(Json(ErrorResult <bool>("您己经被清退,不可以申请!")));
                }
                if (currentDistributor.DistributionStatus == (int)DistributorStatus.Audited)
                {
                    return(Json(ErrorResult <bool>("您己经是销售员,不可以重复申请!")));
                }
                if (currentDistributor.DistributionStatus == (int)DistributorStatus.UnAudit)
                {
                    return(Json(ErrorResult <bool>("您己经提交销售员申请,请耐心等待!")));
                }
            }
            return(JsonResult(true));
        }
Пример #9
0
        /// <summary>
        /// 审核销售员
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        private Result BatAuditDistributor(List <long> ids, string remark, DistributorStatus status)
        {
            Result result = new Result {
                success = false, msg = "错误的编号参数"
            };

            if (status != DistributorStatus.Audited && status != DistributorStatus.Refused)
            {
                result = new Result {
                    success = false, msg = "错误的状态参数"
                };
                return(result);
            }
            if (ids.Count() > 0)
            {
                switch (status)
                {
                case DistributorStatus.Refused:
                    DistributionApplication.RefuseDistributor(ids, remark);
                    break;

                case DistributorStatus.Audited:
                    DistributionApplication.AgreeDistributor(ids, remark);
                    break;
                }
                result = new Result {
                    success = true, msg = "审核销售员完成"
                };
            }

            return(result);
        }
Пример #10
0
        public JsonResult ChangeSuper(long id, long superId)
        {
            Result result = new Result {
                success = false, msg = "未知错误"
            };

            if (superId == 0 || id == 0)
            {
                throw new MallException("错误的参数");
            }
            if (id == superId)
            {
                throw new MallException("不可以调整自己为自己的上级");
            }
            var super = DistributionApplication.GetDistributor(superId);

            if (super.SuperiorId > 0)
            {
                throw new MallException("调整上级只可以为一级销售员");
            }
            DistributionApplication.UpdateDistributorSuperId(id, superId);
            result.success = true;
            result.msg     = "操作成功";
            return(Json(result));
        }
Пример #11
0
        /// <summary>
        /// 申请提现
        /// </summary>
        /// <param name="post"></param>
        /// <returns></returns>
        public JsonResult <Result <bool> > PostWithdraw(DistributionApplyWithdraw post)
        {
            CheckUserLogin();
            var sitesettings = SiteSettingApplication.SiteSettings;

            post.MemberId = CurrentUser.Id;
            if (post.Type == DistributionWithdrawType.WeChat) //获取用户微信账户
            {
                var mo = MemberApplication.GetMemberOpenIdInfoByuserId(CurrentUser.Id, Entities.MemberOpenIdInfo.AppIdTypeEnum.Payment, "Himall.Plugin.OAuth.WeiXin");
                if (mo == null)
                {
                    return(Json(ErrorResult <bool>("无法获取微信账号,请先在微信端绑定账号!")));
                }
                var openid = mo.OpenId;
                post.WithdrawAccount = openid;
                if (!(string.IsNullOrWhiteSpace(sitesettings.WeixinAppId) || string.IsNullOrWhiteSpace(sitesettings.WeixinAppSecret)))
                {
                    string token = AccessTokenContainer.TryGetToken(sitesettings.WeixinAppId, sitesettings.WeixinAppSecret);
                    var    user  = CommonApi.GetUserInfo(token, openid);
                    post.WithdrawName = user?.nickname ?? string.Empty;
                }
            }
            DistributionApplication.ApplyWithdraw(post);
            return(JsonResult(true));
        }
Пример #12
0
        /// <summary>
        /// 默认佣金设置
        /// </summary>
        /// <returns></returns>
        public ActionResult DefaultBrokerage()
        {
            var data  = DistributionApplication.GetDefaultBrokerageRate(curshopid);
            var model = new DistributionDefaultBrokerageModel()
            {
                BrokerageRate1 = data.BrokerageRate1,
                BrokerageRate2 = data.BrokerageRate2,
                BrokerageRate3 = data.BrokerageRate3,
                DistributionMaxBrokerageRate = SiteSettings.DistributionMaxBrokerageRate,
                DistributionMaxLevel         = SiteSettings.DistributionMaxLevel
            };

            model.IsConfigRight = true;
            if (model.BrokerageRate1 + model.BrokerageRate2 + model.BrokerageRate3 > model.DistributionMaxBrokerageRate)
            {
                model.IsConfigRight = false;
            }
            if (model.BrokerageRate1 <= 0)
            {
                model.IsConfigRight = false;
            }
            if (model.DistributionMaxLevel > 1 && model.BrokerageRate2 <= 0)
            {
                model.IsConfigRight = false;
            }
            if (model.DistributionMaxLevel > 2 && model.BrokerageRate3 <= 0)
            {
                model.IsConfigRight = false;
            }
            return(View(model));
        }
Пример #13
0
        public JsonResult GetAllProductIds()
        {
            List <long> proids = new List <long>();

            proids = DistributionApplication.GetAllDistributionProductIds(curshopid);
            return(Json(proids));
        }
Пример #14
0
        /// <summary>
        /// 获取是否开启了分销和当前是否为分销
        /// </summary>
        /// <returns></returns>
        public JsonResult GetIsShowDistributionHead()
        {
            var isShowDistributionHead = (SiteSettingApplication.SiteSettings.DistributionIsEnable && CurrentSpreadId > 0);
            var result = DistributionApplication.GetDistributor(CurrentSpreadId.Value);

            isShowDistributionHead = isShowDistributionHead && result.IsShowShopLogo;
            return(Json(new { success = true, isShowDistributionHead }, true));
        }
Пример #15
0
        /// <summary>
        ///账号密码登录
        /// </summary>
        /// <returns></returns>
        public object GetLoginByUserName(string openId = "", string userName = "", string password = "", string nickName = "")
        {
            if (!string.IsNullOrEmpty(openId) && !string.IsNullOrEmpty(userName) && !string.IsNullOrEmpty(password))
            {
                UserMemberInfo member = null;

                try
                {
                    member = ServiceProvider.Instance <IMemberService> .Create.Login(userName, password);
                }
                catch (Exception ex)
                {
                    GetErrorJson(ex.Message);
                }
                if (member == null)
                {
                    GetErrorJson("用户名或密码错误");
                }
                else
                {
                    if (member != null)
                    {
                        bool IsUpdate = true;
                        //如果不是一键登录的 则绑定openId
                        if (!string.IsNullOrEmpty(openId))
                        {
                            //UserMemberInfo memberopen = ServiceProvider.Instance<IMemberService>.Create.GetMemberByOpenId(SmallProgServiceProvider, openId);
                            //if (memberopen == null)
                            //{
                            //    IsUpdate = true;
                            //    //新增openId记录

                            //}
                            //else
                            //{
                            //    if (memberopen.Id != member.Id)
                            //    {
                            MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdInfo()
                            {
                                UserId          = member.Id,
                                OpenId          = openId,
                                ServiceProvider = SmallProgServiceProvider,
                                AppIdType       = Himall.Model.MemberOpenIdInfo.AppIdTypeEnum.Normal,
                                UnionId         = string.Empty
                            };
                            LoginHelper.ChangeOpenIdBindMember(memberOpenIdInfo);
                            //    }
                            //}
                        }

                        string memberId = UserCookieEncryptHelper.Encrypt(member.Id, CookieKeysCollection.USERROLE_USER);
                        var    prom     = DistributionApplication.GetPromoterByUserId(member.Id);
                        return(GetMember(member, openId));
                    }
                }
            }
            return(Json(new { Success = "No" }));
        }
Пример #16
0
        public JsonResult AddProducts(string ids)
        {
            Result result = new Result {
                success = false, msg = "未知错误"
            };
            bool        isDataOk   = true;
            List <long> productids = new List <long>();

            if (!isConfigRight)
            {
                isDataOk = false;
                result   = new Result {
                    success = false, msg = "错误的默认佣金比,请设置默认佣金比"
                };
            }
            if (isDataOk)
            {
                if (!Regex.IsMatch(ids, @"^(\d|,)+?"))
                {
                    isDataOk = false;
                    result   = new Result {
                        success = false, msg = "错误的商品编号列表"
                    };
                }
            }
            //组装id数据
            if (isDataOk)
            {
                string[] _arrid = ids.Split(',');
                foreach (string item in _arrid)
                {
                    long _proid = 0;
                    if (long.TryParse(item, out _proid))
                    {
                        if (_proid > 0)
                        {
                            productids.Add(_proid);
                        }
                    }
                }
                if (productids.Count < 1)
                {
                    isDataOk = false;
                    result   = new Result {
                        success = false, msg = "错误的商品编号列表"
                    };
                }
                else
                {
                    DistributionApplication.AddSpreadProducts(productids, curshopid);
                    result = new Result {
                        success = true, msg = "添加分销商品成功"
                    };
                }
            }
            return(Json(result));
        }
Пример #17
0
        public ActionResult Management(long?gradeId)
        {
            DistributorManagementModel result = new DistributorManagementModel();

            result.Grades = DistributionApplication.GetDistributorGrades();
            result.DistributionMaxLevel = SiteSettings.DistributionMaxLevel;
            result.SiteSetting          = SiteSettingApplication.SiteSettings;
            result.GradeId = gradeId;
            return(View(result));
        }
Пример #18
0
        /// <summary>
        /// 会员详情页
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult MemberDetail(long id)
        {
            var member = MemberApplication.GetMembers(id);
            var model  = new MemberViewModels.MemberDetail();

            member.Map(model);
            model.IsPromoter = DistributionApplication.IsPromoter(id);

            return(View(model));
        }
Пример #19
0
        /// <summary>
        /// 导出分销订单业绩
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ActionResult OrdersExportToExcel(BrokerageOrderQuery query)
        {
            if (query.SettlementEnd.HasValue)
            {
                query.SettlementEnd = query.SettlementEnd.Value.AddDays(1);
            }
            var orderResults = DistributionApplication.GetBrokerageOrdersAll(query, true, true);

            return(ExcelView("OrdersExport", "平台分销订单明细", orderResults));
        }
Пример #20
0
        public JsonResult GetProductList(string skey, int rows, int page, long categoryId = 0)
        {
            //查询条件
            DistributionProductQuery query = new DistributionProductQuery();

            query.ProductName = skey;
            query.PageSize    = rows;
            query.PageNo      = page;
            query.Status      = DistributionProductStatus.Normal;
            query.ShopId      = curshopid;
            if (categoryId != 0)
            {
                query.CategoryId = categoryId;
            }
            query.isShopCategory = true;

            var data     = DistributionApplication.GetProducts(query);
            var datalist = new List <DistributionProductListModel>();

            if (data.Models != null)
            {
                var products   = ProductManagerApplication.GetProductsByIds(data.Models.Select(p => p.ProductId).ToList());
                var categories = CategoryApplication.GetCategories();
                foreach (var item in data.Models)
                {
                    var product   = products.FirstOrDefault(p => p.Id == item.ProductId);
                    var categorie = categories.FirstOrDefault(p => p.Id == product.Id);
                    datalist.Add(new DistributionProductListModel
                    {
                        BrokerageId        = item.Id,
                        ProductId          = item.ProductId,
                        ProductName        = product.ProductName,
                        CategoryId         = product.CategoryId,
                        CategoryName       = GetProductShopCategorieName(product.Id),
                        ShopId             = item.ShopId,
                        BrokerageRate1     = item.BrokerageRate1,
                        BrokerageRate2     = item.BrokerageRate2,
                        BrokerageRate3     = item.BrokerageRate3,
                        MaxBrokerage       = item.MaxBrokerage,
                        MaxSalePrice       = item.MaxSalePrice,
                        MinSalePrice       = item.MinSalePrice,
                        NoSettlementAmount = item.NoSettlementAmount,
                        ProductStatus      = item.ProductStatus,
                        SaleAmount         = item.SaleAmount,
                        SaleCount          = item.SaleCount,
                        SettlementAmount   = item.SettlementAmount,
                        ShopName           = item.ShopName
                    });
                }
            }
            var result = new { rows = datalist, total = data.Total };

            return(Json(result));
        }
Пример #21
0
        /// <summary>
        /// 导出分销订单业绩
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public ActionResult OrdersExportToExcel(BrokerageOrderQuery query)
        {
            query.ShopId = CurrentSellerManager.ShopId;
            if (query.SettlementEnd.HasValue)
            {
                query.SettlementEnd = query.SettlementEnd.Value.AddDays(1);
            }
            var orderResults = DistributionApplication.GetBrokerageOrdersAll(query);

            return(ExcelView("OrdersExport", "商家分销订单业绩", orderResults));
        }
Пример #22
0
        public ActionResult Orders(BrokerageOrderQuery query)
        {
            query.ShopId = CurrentShop.Id;
            if (query.SettlementEnd.HasValue)
            {
                query.SettlementEnd = query.SettlementEnd.Value.AddDays(1);
            }
            var data = DistributionApplication.GetBrokerageOrders(query);

            return(Json(data, true));
        }
Пример #23
0
        public JsonResult <Result <dynamic> > GetShopHeader(long distributorId)
        {
            DistributorInfo currentDistributor = DistributionApplication.GetDistributor(distributorId);
            dynamic         result             = new System.Dynamic.ExpandoObject();

            result.MemberId   = currentDistributor.MemberId;
            result.ShopLogo   = currentDistributor.ShopLogo;
            result.ShopName   = currentDistributor.ShopName;
            result.ShopLogo   = Himall.Core.HimallIO.GetRomoteImagePath(result.ShopLogo);
            result.IsShowLogo = currentDistributor.IsShowShopLogo;
            return(JsonResult <dynamic>(result));
        }
Пример #24
0
        /// <summary>
        /// 我的佣金
        /// </summary>
        /// <returns></returns>
        public ActionResult MyBrokerage()
        {
            var memberId = CurrentUser.Id;

            ViewBag.Title = SiteSettings.DistributorRenameMyBrokerage;
            var model = DistributionApplication.GetDistributorDTO(memberId);

            model.NoSettlementAmount = DistributionApplication.GetNoSettlementAmount(memberId);
            ViewBag.Distributor      = model;


            return(View());
        }
Пример #25
0
        public JsonResult GetShopOrder(int page = 1)
        {
            DistributionBrokerageQuery query = new DistributionBrokerageQuery
            {
                PageNo        = page,
                PageSize      = 5,
                DistributorId = CurrentDistributor.MemberId
            };
            var data   = DistributionApplication.GetDistributorBrokerageOrderList(query);
            var result = new { rows = data.Models, total = data.Total };

            return(Json(result));
        }
Пример #26
0
        /// <summary>
        /// 保存设置
        /// </summary>
        /// <returns></returns>
        public JsonResult <Result <bool> > PostSaveShopConfig(PostSaveShopConfigModel model)
        {
            CheckUserLogin();
            DistributorInfo currentDistributor = DistributionApplication.GetDistributor(CurrentUser.Id);

            if (string.IsNullOrWhiteSpace(currentDistributor.ShopLogo) && string.IsNullOrWhiteSpace(model.logoUrl))
            {
                return(Json(ErrorResult <bool>("请上传小店logo!")));
            }
            if (string.IsNullOrWhiteSpace(model.shopName))
            {
                return(Json(ErrorResult <bool>("请填写小店名称!")));
            }
            if (model.shopName.Length > 10)
            {
                return(Json(ErrorResult <bool>("小店名称不能超过10个字符!")));
            }
            string shoplogo = currentDistributor.ShopLogo;

            if (!string.IsNullOrWhiteSpace(model.logoUrl))
            {
                //shoplogo = DownloadWxImage(model.logoWXmediaId);
                shoplogo = model.logoUrl;
            }
            if (string.IsNullOrWhiteSpace(shoplogo))
            {
                return(Json(ErrorResult <bool>("请上传小店logo!")));
            }
            var    oldname  = Path.GetFileName(shoplogo);
            string ImageDir = string.Empty;

            if (!string.IsNullOrWhiteSpace(shoplogo))
            {
                //转移图片
                string relativeDir = DISTRIBUTOR_LOGO_PATH;
                Random ra          = new Random();
                string fileName    = DateTime.Now.ToString("yyyyMMddHHmmssffffff") + ra.Next(4) + ".jpg";
                if (shoplogo.Replace("\\", "/").Contains("/temp/"))//只有在临时目录中的图片才需要复制
                {
                    var de = shoplogo.Substring(shoplogo.LastIndexOf("/temp/"));
                    Core.HimallIO.CopyFile(de, relativeDir + fileName, true);
                    shoplogo = relativeDir + fileName;
                }  //目标地址
                else if (shoplogo.Contains("/Storage"))
                {
                    shoplogo = shoplogo.Substring(shoplogo.LastIndexOf("/Storage"));
                }
            }
            DistributionApplication.UpdateDistributorConfig(currentDistributor.MemberId, shoplogo, model.shopName, model.isShowLogo);
            return(JsonResult(true));
        }
Пример #27
0
        /// <summary>
        /// 获取小店订单
        /// </summary>
        /// <param name="pageNo"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public JsonResult <Result <dynamic> > GetShopOrder(int pageNo, int pageSize = 5)
        {
            CheckUserLogin();
            DistributionBrokerageQuery query = new DistributionBrokerageQuery
            {
                PageNo        = pageNo,
                PageSize      = pageSize,
                DistributorId = CurrentUser.Id
            };
            var data   = DistributionApplication.GetDistributorBrokerageOrderList(query);
            var result = new { rows = data.Models, total = data.Total };

            return(JsonResult <dynamic>(result));
        }
Пример #28
0
        /// <summary>
        /// 获取分销员信息
        /// </summary>
        /// <param name="openId"></param>
        /// <returns></returns>
        public JsonResult <Result <dynamic> > GetDistributor()
        {
            CheckUserLogin();
            DistributorInfo currentDistributor = DistributionApplication.GetDistributor(CurrentUser.Id);

            return(JsonResult <dynamic>(new
            {
                DistributionIsEnable = SiteSettingApplication.SiteSettings.DistributionIsEnable,
                IsDistributor = currentDistributor != null,
                DistributionStatus = currentDistributor == null ? 0 : currentDistributor.DistributionStatus,
                IsOnlyMember = currentDistributor == null ? true : currentDistributor.IsOnlyMember,
                Remark = currentDistributor == null ? "" : currentDistributor.Remark
            }));
        }
Пример #29
0
        public ActionResult GetRecords(DistributorRecordQuery query)
        {
            query.MemberId = CurrentUser.Id;
            var models = DistributionApplication.GetRecords(query);
            var list   = models.Models.Select(item => new
            {
                Type   = item.Type.ToDescription(),
                Time   = item.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
                Amount = item.Amount.ToString("n2"),
                item.Remark,
            });

            return(Json(new { success = true, list }, true));
        }
Пример #30
0
        /// <summary>
        /// 提交申请销售员
        /// </summary>
        /// <returns></returns>
        public JsonResult SaveShopConfig(string logoWXmediaId, string shopname, bool isShowLogo)
        {
            if (string.IsNullOrWhiteSpace(CurrentDistributor.ShopLogo) && string.IsNullOrWhiteSpace(logoWXmediaId))
            {
                throw new MallException("请上传小店logo");
            }
            if (string.IsNullOrWhiteSpace(shopname))
            {
                throw new MallException("请填写小店名称");
            }
            if (shopname.Length > 10)
            {
                throw new MallException("小店名称不能超过10个字符");
            }
            string shoplogo = CurrentDistributor.ShopLogo;

            if (!string.IsNullOrWhiteSpace(logoWXmediaId))
            {
                shoplogo = DownloadWxImage(logoWXmediaId);
            }
            if (string.IsNullOrWhiteSpace(shoplogo))
            {
                throw new MallException("请上传小店logo");
            }
            var    oldname  = Path.GetFileName(shoplogo);
            string ImageDir = string.Empty;

            if (!string.IsNullOrWhiteSpace(shoplogo))
            {
                //转移图片
                string relativeDir = DISTRIBUTOR_LOGO_PATH;
                Random ra          = new Random();
                string fileName    = DateTime.Now.ToString("yyyyMMddHHmmssffffff") + ra.Next(4) + ".jpg";
                if (shoplogo.Replace("\\", "/").Contains("/temp/"))//只有在临时目录中的图片才需要复制
                {
                    var de = shoplogo.Substring(shoplogo.LastIndexOf("/temp/"));
                    Core.MallIO.CopyFile(de, relativeDir + fileName, true);
                    shoplogo = relativeDir + fileName;
                }  //目标地址
                else if (shoplogo.Contains("/Storage"))
                {
                    shoplogo = shoplogo.Substring(shoplogo.LastIndexOf("/Storage"));
                }
            }
            DistributionApplication.UpdateDistributorConfig(CurrentDistributor.MemberId, shoplogo, shopname, isShowLogo);
            return(Json(new Result {
                success = true, msg = "小店设置修改成功!", code = 21
            }));
        }