コード例 #1
0
ファイル: SMSViewModel.cs プロジェクト: goldmon/BPiaoBao
        /// <summary>
        /// 初始化数据
        /// </summary>
        public override void Initialize()
        {
            if (!_result)
            {
                return;
            }
            _result     = false;
            IsBuyDetail = true;
            CommunicateManager.Invoke <IBusinessmanService>(p =>
            {
                var tuple = p.GetSystemInfo();
                if (tuple == null)
                {
                    return;
                }
                BuySmsPrice = tuple.Item3;
                RemainCount = tuple.Item1;
                SendCount   = tuple.Item2;
            }, UIManager.ShowErr);

            SendDetailViewModel = SendDetailViewModel.CreateInstance();
            BuyDetailViewModel  = BuyDetailViewModel.CreateInstance();
            GiveDetailViewModel = GiveDetailViewModel.CreateInstance();
            _result             = true;
        }
コード例 #2
0
        private void ExecuteInitlizeCommand()
        {
            IsLoading = true;
            Action action = () =>
            {
                CommunicateManager.Invoke <IInsuranceService>(service =>
                {
                    #region 保险相关设置
                    var re = service.GetCurentInsuranceCfgInfo();
                    if (!re.IsOpenCurrenCarrierInsurance || !re.IsOpenUnexpectedInsurance)
                    {
                        return;
                    }
                    UnexpectedPrice     = re.UnexpectedSinglePrice;
                    InsuranceLeaveCount = re.LeaveCount;

                    #endregion
                }, UIManager.ShowErr);

                CommunicateManager.Invoke <IAccountService>(service =>
                {
                    AccountInfo = service.GetAccountInfo();
                }, UIManager.ShowErr);
            };

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setBusyAction = () => { IsLoading = false; };
                DispatcherHelper.UIDispatcher.Invoke(setBusyAction);
            });
        }
コード例 #3
0
        protected virtual void ExecuteQueryCommand()
        {
            QueryFrePasser.CertificateType = IdType == IDType.All ? "" : EnumHelper.GetDescription(IdType);
            QueryFrePasser.PasserType      = AgeType == AgeType.All ? "" : EnumHelper.GetDescription(AgeType);
            IsBusy = true;
            Action action = () => CommunicateManager.Invoke <IFrePasserService>(service =>
            {
                var data = service.QueryFrePassers(QueryFrePasser, CurrentPageIndex, PageSize);
                if (data == null)
                {
                    return;
                }
                Passengers = data.List;
                TotalCount = data.TotalCount;
            }, ex =>
            {
                if (IsShowError)
                {
                    UIManager.ShowErr(ex);
                }
                else
                {
                    Logger.WriteLog(LogType.INFO, "获取常旅客信息失败", ex);
                }
            });

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setAction);
            });
        }
コード例 #4
0
        /// <summary>
        /// 购买保险
        /// </summary>
        /// <param name="buyCount"></param>
        /// <param name="singlePrice"></param>
        /// <param name="totalPrice"></param>
        /// <param name="leaveCount"></param>
        /// <param name="pwd"></param>
        /// <returns></returns>
        public JsonResult BuyInsurance(int buyCount, decimal singlePrice, decimal totalPrice, int leaveCount, string pwd)
        {
            var msg = new RspMessageModel();

            CommunicateManager.Invoke <IInsuranceService>(service =>
            {
                var m = service.GetCtrlInsurance();
                if (m.IsEnabled)
                {
                    service.BuyInsuranceByCashByCarrier(buyCount, pwd);
                    msg.Success = 1;
                    msg.Message = "支付成功";
                }
                else
                {
                    msg.Success = 0;
                    msg.Message = "保险功能未开启";
                }
            }, (p =>
            {
                msg.Success = 0;
                msg.Message = p.Message;
            }));
            return(Json(msg, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
        public ActionResult BlackSendData()
        {
            List <CarrierDataObject> CarrierList = null;
            var msg = new RspMessageModel();

            CommunicateManager.Invoke <IConsoBusinessmanService>(service =>
            {
                CarrierList = service.GetAllCarrier();
                msg.Success = 1;
                msg.Message = "成功";
            }, (p =>
            {
                msg.Success = 0;
                msg.Message = p.Message;
            }));
            Dictionary <string, string> dicList = new Dictionary <string, string>();

            foreach (CarrierDataObject item in CarrierList)
            {
                List <string> pids   = new List <string>();
                List <string> Office = new List <string>();
                item.Pids.ForEach(p =>
                {
                    pids.Add(p.IP + ":" + p.Port);
                    Office.Add(p.Office);
                });
                dicList.Add(item.Code + "-" + item.Name, string.Join("^", pids.ToArray()) + "#" + string.Join("|", Office.ToArray()));
            }
            return(View(dicList));
        }
コード例 #6
0
        /// <summary>
        /// 设置保险配置
        /// </summary>
        /// <param name="isOpen"></param>
        /// <param name="leaveCount"></param>
        /// <param name="singlePrice"></param>
        /// <returns></returns>
        public JsonResult SetInsuranceConfig(bool isOpen, int leaveCount, string singlePrice)
        {
            var msg = new RspMessageModel();

            try
            {
                CommunicateManager.Invoke <IInsuranceService>(service =>
                {
                    var req = new InsuranceConfigData();
                    decimal price;
                    if (!decimal.TryParse(singlePrice, out price))
                    {
                        throw new Exception("单价过大或者过小,或者不是有效的数值。");
                    }
                    req.IsOpen      = isOpen;
                    req.SinglePrice = price;
                    req.LeaveCount  = leaveCount;
                    service.SaveInsuranceConfig(req);
                    msg.Success = 1;
                    msg.Message = "保险设置成功";
                }, (p =>
                {
                    msg.Success = 0;
                    msg.Message = p.Message;
                }));
            }catch {}
            return(Json(msg, JsonRequestBehavior.AllowGet));
        }
コード例 #7
0
        //刷新指定订单
        private void RefreshOrders(ResponseAfterSaleOrder order)
        {
            IsBusy = true;

            Action action = () => CommunicateManager.Invoke <IOrderService>(service =>
            {
                var data = service.GetSaleOrderBySearch(1, 1, "", "", null, null, null, null, "", null, null, order.Id);
                if (data.List == null)
                {
                    return;
                }

                DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
                {
                    try
                    {
                        var index     = Orders.IndexOf(Orders.FirstOrDefault(p => p.Id == order.Id));
                        Orders[index] = data.List[0];
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                        //throw;
                    }
                }));
            }, UIManager.ShowErr);

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setBusyAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setBusyAction);
            });
        }
コード例 #8
0
        /// <summary>
        /// 购买保险操作
        /// </summary>
        /// <param name="password"></param>
        /// <param name="payMethod"></param>
        private void BuyInsuranceAction(string password, int payMethod)
        {
            //没有购买保险操作
            if (Count == 0)
            {
                var dialog = UIManager.ShowMessageDialog("您还没有购买保险,确定需要购买?");
                if (dialog != null && !(bool)dialog)
                {
                    IsPaid = true;
                }
                return;
            }
            if (repurchase == null)
            {
                return;
            }
            repurchase.buyCount  = Count;
            repurchase.pwd       = password;
            repurchase.payMethod = payMethod == 0 ? Common.Enums.EnumPayMethod.Account : Common.Enums.EnumPayMethod.Credit;
            IsBusy = true;
            Action action = () => CommunicateManager.Invoke <IInsuranceService>(service =>
            {
                service.PurchaseInsuranceFromCarrier(repurchase);
                UIManager.ShowMessage("支付成功!");
                IsPaid = true;
            }, UIManager.ShowErr);

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setBusyAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setBusyAction);
            });
        }
コード例 #9
0
        /// <summary>
        /// 执行查询命令
        /// </summary>
        protected override void ExecuteQueryCommand()
        {
            IsBusy = true;
            BillDetailList.Clear();

            Action action = () => CommunicateManager.Invoke <IAccountService>(service =>
            {
                var result = service.GetBillDetail(StartTime, EndTime, PayNo, (_amountMin ?? 0).ToString(CultureInfo.InvariantCulture),
                                                   (AmountMax ?? decimal.MaxValue).ToString(CultureInfo.InvariantCulture),
                                                   (CurrentPageIndex - 1) * PageSize, PageSize, OutTradeNo);
                DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
                {
                    TotalCount = result.TotalCount;
                }));

                if (result.List == null)
                {
                    return;
                }
                foreach (var item in result.List)
                {
                    DispatcherHelper.UIDispatcher.Invoke(new Action <BillDetailListDto>(BillDetailList.Add), item);
                }
            }, UIManager.ShowErr);

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setBusyAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setBusyAction);
            });
        }
コード例 #10
0
 private void ExecuteGetSpecialFromModelCommand(FlightInfoModel model)
 {
     if (model == null)
     {
         return;
     }
     DispatcherHelper.UIDispatcher.Invoke(new Action(() => CommunicateManager.Invoke <IPidService>(service =>
     {
         var pricelist = service.sendSSPat(LoginInfo.Code, model.CarrayCode, model.FlightNumber, model.DefaultSite.SeatCode,
                                           model.StartDateTime.ToString("yyyy-MM-dd"), model.FromCityCode, model.ToCityCode, model.StartDateTime.ToString("HH:mm"),
                                           model.ToDateTime.ToString("HH:mm"));
         if (!pricelist.Any())
         {
             foreach (var m in model.SiteList.Where(m => m.CusNo == model.DefaultSite.CusNo))
             {
                 m.IsGotSpecial      = true;
                 m.IsReceivedSpecial = false;
                 break;
             }
             model.DefaultSite.IsGotSpecial      = true;
             model.DefaultSite.IsReceivedSpecial = false;
         }
         else
         {
             var info = pricelist.FirstOrDefault();
             if (info == null)
             {
                 return;
             }
             decimal taxFee;
             decimal rqFee;
             decimal seatPrice;
             decimal.TryParse(info.TAX, out taxFee);
             decimal.TryParse(info.RQFare, out rqFee);
             decimal.TryParse(info.Fare, out seatPrice);
             foreach (var m in model.SiteList.Where(m => m.CusNo == model.DefaultSite.CusNo))
             {
                 m.TaxFee            = taxFee;
                 m.RQFee             = rqFee;
                 m.SeatPrice         = seatPrice;
                 m.TicketPrice       = taxFee + rqFee + seatPrice;
                 m.Commission        = Math.Floor(m.PolicyPoint / 100 * m.SeatPrice);
                 m.Discount          = m.SeatPrice > 0 && m.SpecialYPrice > 0 ? Convert.ToInt32((m.SeatPrice / m.SpecialYPrice) * 100) : m.Discount;
                 m.IsGotSpecial      = true;
                 m.IsReceivedSpecial = true;
                 break;
             }
             model.TaxFee = model.DefaultSite.TaxFee = taxFee;
             model.RQFee  = model.DefaultSite.RQFee = rqFee;
             model.DefaultSite.SeatPrice         = seatPrice;
             model.DefaultSite.TicketPrice       = taxFee + rqFee + seatPrice;
             model.DefaultSite.Commission        = Math.Floor(model.DefaultSite.PolicyPoint / 100 * model.DefaultSite.SeatPrice);
             model.DefaultSite.Discount          = model.DefaultSite.SeatPrice > 0 && model.DefaultSite.SpecialYPrice > 0 ? Convert.ToInt32((model.DefaultSite.SeatPrice / model.DefaultSite.SpecialYPrice) * 100) : model.DefaultSite.Discount;
             model.DefaultSite.IsGotSpecial      = true;
             model.DefaultSite.IsReceivedSpecial = true;
         }
         FlightInfoModels = FlightInfoModels;
     }, UIManager.ShowErr)));
 }
コード例 #11
0
 public JsonResult ResetPwd(string code)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.ResetBuyerAdminPwd(code);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #12
0
 public JsonResult SetLabel(SetLabel setLabel)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.SetLabel(setLabel);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #13
0
 public JsonResult SubmitCarrier(CarrierDataObject dataObject)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.SubmitCarrier(dataObject);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #14
0
 public JsonResult SetEnableStatus(int id, int status)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.SetEnableStatus(id, status);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #15
0
 public JsonResult ResetPassWord(int Id)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.ResetPassWord(Id);
     });
     return(Json(null, JsonRequestBehavior.AllowGet));
 }
コード例 #16
0
 public JsonResult BusinessmanSetEnable(string code, bool isEnable)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.BusinessmanSetEnable(code, isEnable);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #17
0
ファイル: HomeController.cs プロジェクト: goldmon/BPiaoBao
 public ActionResult Exit()
 {
     CommunicateManager.Invoke <IConsoLoginService>(p =>
     {
         p.Exist(Request.Cookies["auth"].Values["token"]);
     });
     return(RedirectToAction("Login", "Account"));//
 }
コード例 #18
0
ファイル: NoticeController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 删除公告
 /// </summary>
 /// <param name="Id"></param>
 /// <returns></returns>
 public JsonResult DeleteNotice(int Id)
 {
     CommunicateManager.Invoke <IConsoNoticeService>(p =>
     {
         p.DeleteNotice(Id);
     });
     return(Json(true));
 }
コード例 #19
0
        /// <summary>
        /// 退款明细
        /// </summary>
        /// <param name="saleorderid"></param>
        /// <returns></returns>
        public PartialViewResult RefundDetail(int saleorderid)
        {
            ViewBag.SaleOrderId = saleorderid;
            List <BPiaoBao.AppServices.StationContracts.StationMap.ResponseBounLine> list = null;

            CommunicateManager.Invoke <IStationOrderService>(p => list = p.RefundDetails(saleorderid));
            return(PartialView(list));
        }
コード例 #20
0
ファイル: SMSController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 修改模板
 /// </summary>
 /// <param name="smsTemplate"></param>
 /// <returns></returns>
 public JsonResult EditSmsTemplate(SmsTemplateDataObject smsTemplate)
 {
     CommunicateManager.Invoke <IConsoSMSService>(p =>
     {
         p.EditSmsTemplate(smsTemplate);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #21
0
ファイル: SMSController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 删除模板
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public JsonResult DeleteSmsTemplate(int id)
 {
     CommunicateManager.Invoke <IConsoSMSService>(p =>
     {
         p.DeleteSmsTemplate(id);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #22
0
ファイル: SMSController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 修改短信费用设置
 /// </summary>
 /// <param name="smsTemplate"></param>
 /// <returns></returns>
 public JsonResult EditSmsChargeSet(SMSChargeSetDataObj SmsChargeset)
 {
     CommunicateManager.Invoke <IConsoSMSService>(p =>
     {
         p.EditSmsChargeSet(SmsChargeset);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #23
0
ファイル: SMSController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 添加赠送记录
 /// </summary>
 /// <param name="givedetail"></param>
 /// <returns></returns>
 public JsonResult AddSmsGiveDetail(GiveDetailDataObj givedetail)
 {
     CommunicateManager.Invoke <IConsoSMSService>(p =>
     {
         p.AddSmsGive(givedetail);
     });
     return(Json(null, JsonRequestBehavior.AllowGet));
 }
コード例 #24
0
 public JsonResult BatchHangUp(Guid[] ids)
 {
     CommunicateManager.Invoke <IConsoLocalPolicyService>(p =>
     {
         p.BatchHangUp(ids);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #25
0
 private void ExecuteResetPswCommand(OperatorDto obj)
 {
     CommunicateManager.Invoke <IBusinessmanService>(p =>
     {
         p.ResetPassword(obj.Account);
         UIManager.ShowMessage("修改成功");
     }, UIManager.ShowErr);
 }
コード例 #26
0
ファイル: HomeController.cs プロジェクト: goldmon/BPiaoBao
 public JsonResult ChangePwd(string oldPwd, string newPwd)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.ModifyPassword(newPwd, oldPwd);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #27
0
ファイル: NoticeController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 禁用启用
 /// </summary>
 /// <param name="Id"></param>
 /// <returns></returns>
 public JsonResult NoticeEnableOrDisable(int Id)
 {
     CommunicateManager.Invoke <IConsoNoticeService>(p =>
     {
         p.NoticeEnableOrDisable(Id);
     });
     return(Json(true));
 }
コード例 #28
0
 public JsonResult AdjustPoint(string policyId, decimal newPoint)
 {
     CommunicateManager.Invoke <IConsoLocalPolicyService>(p =>
     {
         p.AdjustPoint(Guid.Parse(policyId), newPoint);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }
コード例 #29
0
ファイル: NoticeController.cs プロジェクト: goldmon/BPiaoBao
 /// <summary>
 /// 删除附件
 /// </summary>
 /// <param name="NoticeId"></param>
 /// <param name="Id"></param>
 /// <returns></returns>
 public JsonResult DeleteNoticeAttachMent(int NoticeId, int Id)
 {
     CommunicateManager.Invoke <IConsoNoticeService>(p =>
     {
         p.DeleteAttachMent(NoticeId, Id);
     });
     return(Json(true));
 }
コード例 #30
0
 public JsonResult Distribution(List <SampleBuyer> list)
 {
     CommunicateManager.Invoke <IConsoBusinessmanService>(p =>
     {
         p.DistributionBuyer(list);
     });
     return(Json(null, JsonRequestBehavior.DenyGet));
 }