예제 #1
0
        /// <summary>
        /// Deletes salesman based on SalesManID.
        /// </summary>
        /// <param name="deleteSalesManID">Represents SalesManID to delete.</param>
        /// <returns>Determines whether the existing salesman is updated.</returns>
        public override bool DeleteSalesManDAL(Guid deleteSalesManID)
        {
            bool salesmanDeleted = false;

            try
            {
                //Find SalesMan based on searchSalesManID
                SalesMan matchingSalesMan = salesmanList.Find(
                    (item) => { return(item.SalesManID == deleteSalesManID); }
                    );

                if (matchingSalesMan != null)
                {
                    //Delete SalesMan from the collection
                    salesmanList.Remove(matchingSalesMan);
                    salesmanDeleted = true;
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(salesmanDeleted);
        }
예제 #2
0
        public OperationResult Create(SalesManViewModel input)
        {
            var result = new OperationResult();

            try
            {
                BizModel context = new BizModel();
                BizRepository <SalesMan> repository = new BizRepository <SalesMan>(context);
                SalesMan sales = new SalesMan()
                {
                    Name = input.Name
                };
                repository.Create(sales);
                context.SaveChanges();
                result.IsSuccessful = true;
            }
            catch (Exception ex)
            {
                result.IsSuccessful = false;
                result.exception    = ex;
            }

            return(result);
        }
        public async Task <ActionResult> Edit([Bind(Include = "SalesManID,Updated,Updator,SalesManName,SalesManPhone,UserName")] SalesMan salesman)
        {
            //if (HttpContext.User.IsInRole("sales"))
            // {
            //     salesman.UserName = HttpContext.User.Identity.Name;
            // }
            using (FFSecurityDBEntities db2 = new FFSecurityDBEntities())
            {
                ViewBag.UserName = new SelectList(db2.AspNetUsers, "UserName", "UserName", salesman.UserName).ToList();
            }

            if (ModelState.IsValid)
            {
                db.Entry(salesman).State = EntityState.Modified;
                await db.SaveChangesAsync();

                if (HttpContext.User.IsInRole("sales"))
                {
                    return(RedirectToAction("Details", "SalesMan"));
                }
                return(RedirectToAction("Index"));
            }
            return(View(salesman));
        }
예제 #4
0
        public IActionResult AddSalesMan(string userName, string code, DepartmentType department)
        {
            if (!_permissionService.Authorize("UpdateSalesMan"))
            {
                return(Error("权限不足"));
            }

            var salesMan = _salesManService.GetSalesManByNameAndCode(userName, code);

            if (salesMan != null)
            {
                return(Error("已存在名称和编码相同的数据"));
            }

            var model = new SalesMan
            {
                UserName   = userName,
                Code       = code,
                Department = department
            };

            _salesManService.AddSalesMan(model);
            return(Success());
        }
예제 #5
0
 public JsonResult <EResponseBase <SalesMan> > UpdateSalesMan(SalesMan SalesMan)
 {
     return(Json(Service.Update(SalesMan)));
 }
예제 #6
0
 public JsonResult <EResponseBase <SalesMan> > InsertSalesMan(SalesMan SalesMan)
 {
     return(Json(Service.Add(SalesMan)));
 }
예제 #7
0
 public void AddSalesMan(SalesMan newsalesMan)
 {
     SalesMen[salesmenCount] = newsalesMan;
     salesmenCount++;
 }
 public bool find(SalesMan objSalesMan)
 {
     return(objSalesManDao.Find(objSalesMan));
 }
        public void create(SalesMan objSalesMan)
        {
            SalesMan objSalesManAux = new SalesMan();
            bool     verification   = true;

            string code = objSalesMan.IdSalesMan;

            if (code == null || code.Trim().Equals(""))
            {
                objSalesMan.State = 10;
                return;
            }
            else
            {
                code         = objSalesMan.IdSalesMan.Trim();
                verification = code.Length > 0 && code.Length <= 5;
                if (!verification)
                {
                    objSalesMan.State = 1;
                    return;
                }
            }

            string name = objSalesMan.Name;

            if (name == null || name.Trim().Equals(""))
            {
                objSalesMan.State = 20;
                return;
            }
            else
            {
                name         = objSalesMan.Name.Trim();
                verification = name.Length > 0 && name.Length <= 30;
                if (!verification)
                {
                    objSalesMan.State = 2;
                    return;
                }
            }

            string cpf = objSalesMan.Cpf;

            if (cpf == null || cpf.Trim().Equals(""))
            {
                objSalesMan.State = 30;
                return;
            }
            else
            {
                cpf          = objSalesMan.Cpf.Trim();
                verification = cpf.Length > 10 && cpf.Length <= 11;
                if (!verification)
                {
                    objSalesMan.State = 3;
                    return;
                }
            }

            string telephone = objSalesMan.Telephone;

            if (telephone == null || telephone.Trim().Equals(""))
            {
                objSalesMan.State = 40;
                return;
            }
            else
            {
                telephone    = objSalesMan.Telephone.Trim();
                verification = telephone.Length > 9 && telephone.Length <= 15;
                if (!verification)
                {
                    objSalesMan.State = 4;
                    return;
                }
            }

            string address = objSalesMan.Address;

            if (address == null || address.Trim().Equals(""))
            {
                objSalesMan.State = 50;
                return;
            }
            else
            {
                address      = objSalesMan.Address.Trim();
                verification = address.Length > 5 && address.Length <= 50;
                if (!verification)
                {
                    objSalesMan.State = 5;
                    return;
                }
            }

            objSalesManAux.IdSalesMan = objSalesMan.IdSalesMan;
            verification = !objSalesManDao.Find(objSalesManAux);
            if (!verification)
            {
                objSalesMan.State = 8;
                return;
            }

            objSalesManDao.Create(objSalesMan);
            objSalesMan.State = 99;
            return;
        }
        public void update(SalesMan objSalesMan)
        {
            bool     verification   = true;
            SalesMan objSalesManAux = new SalesMan();

            string name = objSalesMan.Name;

            if (name == null || name.Trim().Equals(""))
            {
                objSalesMan.State = 20;
                return;
            }
            else
            {
                name         = objSalesMan.Name.Trim();
                verification = name.Length > 0 && name.Length <= 50;
                if (!verification)
                {
                    objSalesMan.State = 2;
                    return;
                }
            }

            string cpf = objSalesMan.Cpf;

            if (cpf == null || cpf.Trim().Equals(""))
            {
                objSalesMan.State = 30;
                return;
            }
            else
            {
                cpf          = objSalesMan.Cpf.Trim();
                verification = cpf.Length > 10 && cpf.Length <= 11;
                if (!verification)
                {
                    objSalesMan.State = 3;
                    return;
                }
            }

            string telephone = objSalesMan.Telephone;

            if (telephone == null || telephone.Trim().Equals(""))
            {
                objSalesMan.State = 40;
                return;
            }
            else
            {
                telephone    = objSalesMan.Telephone.Trim();
                verification = telephone.Length > 8 && telephone.Length <= 15;
                if (!verification)
                {
                    objSalesMan.State = 4;
                    return;
                }
            }

            string address = objSalesMan.Address;

            if (address == null || address.Trim().Equals(""))
            {
                objSalesMan.State = 50;
                return;
            }
            else
            {
                address      = objSalesMan.Address.Trim();
                verification = address.Length > 0 && address.Length <= 50;
                if (!verification)
                {
                    objSalesMan.State = 5;
                    return;
                }
            }

            /*
             * objSalesManAux.IdSalesMan = objSalesMan.IdSalesMan;
             * verification = !objSalesManDao.Find(objSalesManAux);
             * if (!verification)
             * {
             *  objSalesMan.State = 8;
             *  return;
             * }
             */

            objSalesManDao.Update(objSalesMan);
            objSalesMan.State = 99;
            return;
        }
예제 #11
0
        /// <summary>
        /// 返回购物车里对应的产品佣金比例
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="goodsId"></param>
        /// <returns></returns>
        public CpsRateCar GetCps_rate(int userId, int goodsId, int appId, int salesManRecordId)
        {
            CpsRateCar     cpsRateCar     = new CpsRateCar();
            EntGoods       entGoods       = EntGoodsBLL.SingleModel.GetModel(goodsId);
            SalesManConfig salesManConfig = SalesManConfigBLL.SingleModel.GetModel($"appId={appId}");

            if (entGoods != null && entGoods.isDistribution != 0 && salesManConfig != null && !string.IsNullOrEmpty(salesManConfig.configStr))
            {
                #region 表示开启分销员购买权限,分销员购买自己分享的产品不受保护期限制,佣金算自己的
                SalesMan    salesMan    = SalesManBLL.SingleModel.GetModel($"UserId={userId} and state=2");
                ConfigModel configModel = JsonConvert.DeserializeObject <ConfigModel>(salesManConfig.configStr);
                if (configModel.payMentManager.allow_seller_buy == 1 && salesMan != null)
                {
                    salesManRecordId = Convert.ToInt32(base.Add(new SalesManRecord()
                    {
                        appId           = entGoods.aid,
                        salesManId      = salesMan.Id,
                        configStr       = salesManConfig.configStr,
                        salesmanGoodsId = goodsId,
                        state           = 1,
                        addTime         = DateTime.Now,
                        cps_rate        = (entGoods.isDefaultCps_Rate == 0 ? configModel.payMentManager.cps_rate : entGoods.cps_rate)
                    }));
                    if (salesManRecordId <= 0)
                    {
                        return(cpsRateCar);
                    }


                    cpsRateCar.salesManRecordUserId = -1;
                    cpsRateCar.recordId             = salesManRecordId;
                    cpsRateCar.cps_rate             = entGoods.cps_rate;
                    return(cpsRateCar);
                }

                #endregion



                // SalesManRecordUser salesManRecordUser = salesManRecordUserBLL.GetModel($" userId={userId} and goodsId={goodsId} and DATE_ADD(UpdateTime,INTERVAL protected_time Day)>now()");
                SalesManRecordUser salesManRecordUser = SalesManRecordUserBLL.SingleModel.GetModel($" userId={userId}  and DATE_ADD(UpdateTime,INTERVAL protected_time Day)>now()"); //MINUTE
                if (salesManRecordUser != null)                                                                                                                                      //用户-分销员存在绑定关系 计算佣金才返回对应每条购物车产品佣金比例
                {
                    SalesManRecord salesManRecord = base.GetModel($"Id={salesManRecordId} and state=1");
                    if (salesManRecord != null)//表示从分享推广页面进入购买的
                    {
                        salesManRecord.configModel = JsonConvert.DeserializeObject <ConfigModel>(salesManRecord.configStr);
                        salesMan = SalesManBLL.SingleModel.GetModel(salesManRecord.salesManId);
                        if (salesManRecord.configModel.payMentManager.allow_seller_buy == 1 && salesMan != null && salesMan.UserId == userId)
                        {
                            //表示开启分销员购买权限,分销员购买自己分享的产品不受保护期限制,佣金算自己的
                            cpsRateCar.salesManRecordUserId = -1;
                            cpsRateCar.recordId             = salesManRecord.Id;
                            cpsRateCar.cps_rate             = entGoods.cps_rate;


                            return(cpsRateCar);
                        }
                    }

                    //表示从普通页面进入购买的
                    salesManRecord = base.GetModel($"Id={salesManRecordUser.recordId} and state=1");



                    if (salesManRecord != null && entGoods != null)
                    {
                        if (entGoods.isDefaultCps_Rate == 0)
                        {
                            salesManRecord.configModel = JsonConvert.DeserializeObject <ConfigModel>(salesManConfig.configStr);
                            if (salesManRecord.configModel != null && salesManRecord.configModel.payMentManager != null)
                            {
                                cpsRateCar.cps_rate = salesManRecord.configModel.payMentManager.cps_rate;
                            }
                        }
                        else
                        {
                            cpsRateCar.cps_rate = entGoods.cps_rate;
                        }

                        cpsRateCar.salesManRecordUserId = salesManRecordUser.Id;
                        cpsRateCar.recordId             = salesManRecordUser.recordId;

                        return(cpsRateCar);
                    }
                }
                else
                {
                    //这里表示没有保护期或者保护期失效 再根据是不是直接通过分销分享链接买的如果是则算给该分销员
                    SalesManRecord salesManRecord = base.GetModel($"Id={salesManRecordId} and state=1");
                    if (salesManRecord != null)
                    {
                        //表示关闭了保护期设置 直接通过分享链接购买
                        salesManRecordUser = SalesManRecordUserBLL.SingleModel.GetModel($" userId={userId} and  protected_time=0 and salesmanId={salesManRecord.salesManId}");
                        if (salesManRecordUser != null)
                        {
                            cpsRateCar.salesManRecordUserId = salesManRecordUser.Id;
                            cpsRateCar.recordId             = salesManRecord.Id;
                            cpsRateCar.cps_rate             = entGoods.cps_rate;
                        }
                    }
                }
            }


            return(cpsRateCar);
        }
        // GET: /SalesMan/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SalesMan salesman = db.SalesMan.Find(id);
            var      cus      = (from s in db.ServiceAssign
                                 from c in db.Customer
                                 from p in db.Service

                                 where s.SalesManId == id && s.CustomerId == c.Id && s.NewspaperId == p.Id
                                 select new
            {
                customer = c,
                ServiceAssign = s,
                service = p,
            }).ToList();            // as IEnumerable<CounterVM>;



            ViewBag.Newspaper = new SelectList(db.Service.ToList(), "NewsPaperName", "NewspaperName");
            if (!(cus.Count == 0))
            {
                List <SalesmanVM> objConter = new List <SalesmanVM>();


                foreach (var item in cus)
                {
                    SalesmanVM counter = new SalesmanVM();
                    counter.salesman          = salesman;
                    counter.Customertype      = item.customer.CustomerType;
                    counter.CustomerId        = item.customer.CustomerId;
                    counter.CustomerName      = item.customer.FirstName;
                    counter.Address           = item.customer.Address;
                    counter.Phone             = item.customer.MPhone;
                    counter.Newspaper         = item.service.NewsPaperName;
                    counter.Quantity          = Convert.ToInt32(item.ServiceAssign.Quantity).ToString();
                    counter.Ended             = item.ServiceAssign.EndedDate;
                    counter.EndedDate         = ADTOBS.EngToNep(item.ServiceAssign.EndedDate).ToString();
                    counter.Paperdispatchdate = ADTOBS.EngToNep(item.ServiceAssign.PaperDispatchDate).ToString();

                    objConter.Add(counter);
                }
                ViewBag.errmsg = "customer";

                if (objConter.AsEnumerable() == null)
                {
                    return(HttpNotFound());
                }
                return(View(objConter.AsEnumerable()));
            }
            else
            {
                SalesmanVM        objsale   = new SalesmanVM();
                List <SalesmanVM> objConter = new List <SalesmanVM>();
                objsale.salesman = salesman;

                objConter.Add(objsale);
                ViewBag.errmsg = "no cus";
                return(View(objConter.AsEnumerable()));
            }
        }
예제 #13
0
        /// <summary>
        /// 专业版小程序端接口调用申请提现
        /// </summary>
        /// <param name="appId"></param>
        /// <param name="userId"></param>
        /// <param name="drawCashMoney"></param>
        /// <param name="partner_trade_no"></param>
        /// <returns></returns>
        public int AddDistributionDrawCashApply(int appId, int userId, int drawCashMoney, string partner_trade_no)
        {
            SalesMan salesMan = SalesManBLL.SingleModel.GetModel($"appId={appId} and userId={userId}");

            if (salesMan == null)
            {
                return(-1);//表示申请提现的分销员不存在
            }
            if (salesMan.useCash < drawCashMoney)
            {
                return(-2);//表示本次申请的提现金额小于账号可提现金额
            }
            //后续加入提现黑名单

            //int countNowDay = 0;//当天提现申请记录
            // string sql = $"SELECT COUNT(*)  FROM DrawCashApply WHERE  TO_DAYS(AddTime)=TO_DAYS(NOW()) and userId={salesMan.UserId}";
            //object obj = SqlMySql.ExecuteScalar(Utility.dbEnum.MINIAPP.ToString(), CommandType.Text, sql);
            //if (obj != null)
            //{
            //    countNowDay = Convert.ToInt32(obj);
            //}

            //if (countNowDay > 3)
            //    return -3;//当天提现次数超标



            DrawCashApply drawCashApply = new DrawCashApply();

            TransactionModel tranModel = new TransactionModel();

            drawCashApply.partner_trade_no = partner_trade_no;
            drawCashApply.userId           = userId;
            drawCashApply.AddTime          = DateTime.Now;
            drawCashApply.Aid        = appId;
            drawCashApply.applyType  = 0;
            drawCashApply.cashMoney  = drawCashMoney;
            drawCashApply.hostIP     = Utility.WebHelper.GetIP();
            drawCashApply.UpdateTime = DateTime.Now;

            //提现金额需要进行审核
            drawCashApply.state     = 0;
            drawCashApply.drawState = 0;



            string   salesManRecordIds = string.Join(",", SalesManRecordOrderBLL.SingleModel.GetSalesManRecordIds(salesMan.Id, appId));
            OrderSum orderSumPeople    = SalesManRecordOrderBLL.SingleModel.GetOrderSum(appId, salesManRecordIds, 0);
            OrderSum orderSumAuto      = SalesManRecordOrderBLL.SingleModel.GetOrderSum(appId, salesManRecordIds, 1);

            drawCashApply.orderCount         = orderSumPeople.payOrderCount + orderSumAuto.payOrderCount;
            drawCashApply.orderTotalCpsMoney = (Convert.ToDouble(orderSumPeople.payOrderTotalCpsMoney) + Convert.ToDouble(orderSumAuto.payOrderTotalCpsMoney)).ToString();
            drawCashApply.orderTotalMoney    = (Convert.ToDouble(orderSumPeople.payOrderTotalPrice) + Convert.ToDouble(orderSumAuto.payOrderTotalPrice)).ToString();
            int afterUseCash = salesMan.useCash - drawCashMoney;

            drawCashApply.useCash = (afterUseCash * 0.01).ToString("0.00");


            salesMan.useCash    = afterUseCash;
            salesMan.UpdateTime = DateTime.Now;

            tranModel.Add(base.BuildAddSql(drawCashApply));

            tranModel.Add(SalesManBLL.SingleModel.BuildUpdateSql(salesMan));

            if (tranModel.sqlArray.Length > 0 && SalesManBLL.SingleModel.ExecuteTransactionDataCorect(tranModel.sqlArray))
            {
                return(1);//表示加入申请提现记录成功并且更新了分销员的提现金额
            }
            else
            {
                return(0);//表示执行事务失败
            }
        }
예제 #14
0
 public abstract bool UpdateSalesManPasswordDAL(SalesMan updateSalesMan);
예제 #15
0
 public abstract bool UpdateSalesManDAL(SalesMan updateSalesMan);
예제 #16
0
 //Methods for CRUD operations
 public abstract bool AddSalesManDAL(SalesMan newSalesMan);