コード例 #1
0
        public IActionResult ConfirmPage(CarOrderModel model)
        {
            var cost = GetOrderCost(model.CarId, model.StartDateTime, model.Days);

            var userId = dbContext.Users
                         .Where(u => u.Email == User.Claims.ElementAt(0).Value)
                         .First().Id;

            cost -= -cost *DaysDiscount.GetDiscount(model.Days).Percent / 100 - cost * OrdersDiscount.GetDiscount(model.Days).Percentage / 100;

            var order = dbContext.Orders.Add(new Order()
            {
                Address       = model.Address,
                DateTime      = DateTime.Now,
                Cost          = cost,
                StartDateTime = model.StartDateTime,
                Days          = model.Days,
                CarId         = model.CarId,
                UserId        = userId,
            });

            dbContext.SaveChanges();
            model.OrderId = dbContext.Orders.Last().Id; // TODO: исправить
            ViewBag.Cost  = cost;
            ViewBag.Car   = GetCar(model.CarId);
            return(View(model));
        }
コード例 #2
0
 public static CarOrderModel ConvertToViewModel(this CarOrderModel item)
 {
     if (item.source.HasValue)
     {
         item.source = SourceGroupAlgorithm.GetNewSource((int)item.source.Value);
     }
     return(item);
 }
コード例 #3
0
        public void SetOrderData(CarOrderModel model)
        {
            DISP_Car car = _cars.Where(p => p.CarModel.CarNumber == model.CarNumber).FirstOrDefault();

            if (car != null)
            {
                car.Order = model;
            }
        }
コード例 #4
0
 public IActionResult Order(CarOrderModel model)
 {
     if (!ModelState.IsValid)
     {
         ViewBag.Car = GetCar(model.CarId);
         return(View("Card", model));
     }
     return(RedirectToAction("ConfirmPage", "Car", model));
 }
コード例 #5
0
        public CarOrderModel GetOrderByBuid(int buid, int topAgentId)
        {
            CarOrderModel carOrder = new CarOrderModel();

            try
            {
                MySqlParameter[] parameters =
                {
                    new MySqlParameter("@buid",      MySqlDbType.Int64),
                    new MySqlParameter("@top_agent", MySqlDbType.Int64)
                };
                parameters[0].Value = buid;
                parameters[1].Value = topAgentId;
                StringBuilder sql = new StringBuilder(@"SELECT bc.id,bc.order_num,bc.buid,bc.source,bc.insured_name,bc.contacts_name,bc.receipt_head,bc.receipt_title,bc.pay_type,bc.distribution_type,
bc.create_time,bc.user_id,bc.openid,bc.total_price,bc.carriage_price,bc.insurance_price,bc.id_type,bc.id_num,bc.distribution_address,bc.order_status,
bc.id_img_firs,bc.id_img_secd,bc.top_agent,bc.mobile,bc.addressid,bc.cur_agent,bc.pay_status,bc.distribution_name,bc.distribution_phone,bc.distribution_time,
bc.bizRate,bc.LicenseNo,date_format(bc.GetOrderTime,'%Y-%m-%d %H:%i') AS GetOrderTime,bc.InvoiceType,bc.imageUrls,bc.forcerate,bc.order_email,bc.order_mobile,bc.single_time,bu.LicenseOwner as UserName,bu.MoldName
                                                        ,bs.CheSun,bs.SanZhe,bs.DaoQiang,bs.SiJi,bs.ChengKe,bs.BoLi,bs.HuaHen,bs.BuJiMianCheSun
                                                        ,bs.BuJiMianSanZhe,bs.BuJiMianDaoQiang,bs.BuJiMianRenYuan,bs.BuJiMianFuJian,bs.TeYue,bs.SheShui,bs.CheDeng,bs.ZiRan,bs.JiaoQiang,
                                                        bq.CheSun AS CheSunBaoFei,
                                                        bq.SanZhe AS SanZheBaoFei,
                                                        bq.DaoQiang AS DaoQiangBaoFei,
                                                        bq.SiJi AS SiJiBaoFei,
                                                        bq.ChengKe AS ChengKeBaoFei,
                                                        bq.BoLi AS BoLiBaoFei,
                                                        bq.HuaHen AS HuaHenBaoFei,
                                                        bq.BuJiMianCheSun AS BuJiMianCheSunBaoFei,
                                                        bq.BuJiMianSanZhe AS BuJiMianSanZheBaoFei,
                                                        bq.BuJiMianDaoQiang AS BuJiMianDaoQiangBaoFei,
                                                        bq.BuJiMianRenYuan AS BuJiMianRenYuanBaoFei,
                                                        bq.BuJiMianFuJian AS BuJiMianFuJianFei,
                                                        bq.TeYue AS TeYueBaoFei,
                                                        bq.SheShui AS SheShuiBaoFei,
                                                        bq.CheDeng AS CheDengBaoFei,
                                                        bq.ZiRan AS ZiRanBaoFei
                                                         FROM bx_car_order bc
                                                         LEFT JOIN bx_order_userinfo bu ON bc.id=bu.OrderId
                                                         LEFT JOIN bx_order_savequote bs ON bc.id=bs.OrderId 
                                                         LEFT JOIN bx_order_quoteresult bq ON bc.id=bq.OrderId 
                                                        where bc.buid=@buid AND bc.top_agent=@top_agent AND bc.order_status>0 limit 1");
                carOrder = DataContextFactory.GetDataContext().Database.SqlQuery <CarOrderModel>(sql.ToString(),
                                                                                                 parameters.ToArray()).FirstOrDefault();
                return(carOrder);
            }
            catch (Exception ex)
            {
                logError.Info("发生异常:" + ex.Source + "\n" + ex.StackTrace + "\n" + ex.Message + "\n" + ex.InnerException);
            }
            return(carOrder);
        }
コード例 #6
0
        public static List <CarOrderModel> ConvertToViewModel(this List <CarOrderModel> list)
        {
            var           newlist = new List <CarOrderModel>();
            CarOrderModel model;

            foreach (var item in list)
            {
                model = new CarOrderModel();
                model = item;
                if (item.source.HasValue)
                {
                    model.source = SourceGroupAlgorithm.GetNewSource((int)item.source.Value);
                }
                newlist.Add(model);
            }
            return(newlist);
        }
コード例 #7
0
        public void UpdateWork(WorkChangeModel model, CarOrderModel edited)
        {
            OrderStorageModel order = _currentOrders.Where(p => p.Model.OrderNumer == edited.OrderNumer).FirstOrDefault();

            if (order == null)
            {
                return;
            }
            WorksInfoDataModel work = order.Model.Works.Where(p => p.id == model.ID).FirstOrDefault();

            if (work == null)
            {
                return;
            }
            work.Cost     = model.NewCost;
            order.Comment = model.Coment;
            OrdersHandler.Instance.UpdateOrderWork(model);
        }
コード例 #8
0
 private void FillCarOrder(string row)
 {
     try
     {
         CarOrderModel model = JsonConvert.DeserializeObject <CarOrderModel>(row);
         if (model != null)
         {
             if (Application.Current != null)
             {
                 Application.Current.Dispatcher.BeginInvoke(new Action(() =>
                 {
                     CarStorage.Instance.SetOrderData(model);
                     if (OrderDataLoaded != null)
                     {
                         OrderDataLoaded(this, new EventArgs());
                     }
                 }));
             }
         }
     }
     catch { }
 }
コード例 #9
0
 internal void AddNewOrder(CarOrderModel model)
 {
     //TODO Add NewOrder
 }