Example #1
0
 private void ExecuteUnSelectCommand(FrePasserDto model)
 {
     if (_list.Contains(model))
     {
         _list.Remove(model);
     }
 }
Example #2
0
 private void ExecuteSelectCommand(FrePasserDto model)
 {
     //if (model.PasserType != EnumHelper.GetDescription(AgeType.Adult))
     //    UIManager.ShowMessage("暂不支持儿童、婴儿预定");
     //else
     _list.Add(model);
 }
 private void ExecuteEditCommand(FrePasserDto fpd)
 {
     LocalUIManager.ShowUsualPassengerInfo(result =>
     {
         if (result == null || !result.Value)
         {
             return;
         }
         //编辑完成刷新界面
         ExecuteQueryCommand();
     }, fpd);
 }
Example #4
0
        public void UpdateFrePasser(FrePasserDto passer)
        {
            var frePasser = this._frePasserRepository.FindAll(p => p.Id == passer.Id).FirstOrDefault();

            frePasser.PasserType      = passer.PasserType;
            frePasser.Name            = passer.Name;
            frePasser.CertificateType = passer.CertificateType;
            frePasser.CertificateNo   = passer.CertificateNo;
            frePasser.Mobile          = passer.Mobile;
            frePasser.AirCardNo       = passer.AirCardNo;
            frePasser.Remark          = passer.Remark;
            frePasser.Birth           = passer.Birth;
            frePasser.SexType         = passer.SexType;
            frePasser.BusinessmanCode = _code;
            unitOfWorkRepository.PersistUpdateOf(frePasser);
            unitOfWork.Commit();
        }
Example #5
0
        /// <summary>
        /// 显示常用乘客信息编辑窗体
        /// </summary>
        /// <param name="fpd"></param>
        /// <param name="call"></param>
        internal static void ShowUsualPassengerInfo(Action <bool?> call = null, FrePasserDto fpd = null)
        {
            DispatcherHelper.UIDispatcher.Invoke(new Action(() =>
            {
                var window         = new UsualPassengerInfoWindow();
                var vm             = new UsualPassengerInfoViewModel(fpd);
                window.Owner       = Application.Current.MainWindow;
                window.DataContext = vm;
                var result         = window.ShowDialog();

                if (call != null)
                {
                    call(result);
                }
                window.DataContext = null;
            }));
        }
Example #6
0
        public void SaveFrePasser(FrePasserDto passer)
        {
            var builder   = AggregationFactory.CreateBuiler <FrePasserBuilder>();
            var frePasser = builder.CreateFrePasser();

            frePasser.PasserType      = passer.PasserType;
            frePasser.Name            = passer.Name.Trim();
            frePasser.CertificateType = passer.CertificateType;
            frePasser.CertificateNo   = passer.CertificateNo;
            frePasser.Mobile          = passer.Mobile;
            frePasser.AirCardNo       = passer.AirCardNo;
            frePasser.Remark          = passer.Remark;
            frePasser.Birth           = passer.Birth;
            frePasser.SexType         = passer.SexType;
            frePasser.BusinessmanCode = _code;
            unitOfWorkRepository.PersistCreationOf(frePasser);
            unitOfWork.Commit();
        }
        private void ExecuteDelCommand(FrePasserDto passenger)
        {
            var dialogResult = UIManager.ShowMessageDialog("确定要删除常旅客信息?");

            if (dialogResult == null || !dialogResult.Value)
            {
                return;
            }

            IsBusy = true;
            Action action = () => CommunicateManager.Invoke <IFrePasserService>(service =>
            {
                service.DeleteFrePasser(passenger.Id);
                DispatcherHelper.UIDispatcher.Invoke(new Func <FrePasserDto, bool>(Passengers.Remove), passenger);
                Passengers.Remove(passenger);
                ExecuteQueryCommand();
            }, UIManager.ShowErr);

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setAction);
            });
        }
Example #8
0
        public void TestMethod1()
        {
            BootStrapper.Boot();
            var service = ObjectFactory.GetInstance <FrePasserService>();
            //service.SaveFrePasser(new FrePasserDto()
            //{
            //     AirCardNo="1000001",
            //     CertificateNo="511027198485858583",
            //     CertificateType="身份证",
            //     Mobile="138892222223",
            //     Name = "老段",
            //     PasserType="成人",
            //     Remark="121",
            //});

            //service.SaveFrePasser(new FrePasserDto()
            //{
            //    AirCardNo = "1000002",
            //    CertificateNo = "511027198485858583",
            //    CertificateType = "身份证",
            //    Mobile = "138892222223",
            //    Name = "老段1",
            //    PasserType = "成人",
            //    Remark = "2333",
            //});
            //service.UpdateFrePasser(new FrePasserDto()
            //{
            //    Id = 1,
            //    AirCardNo = "1000001",
            //    CertificateNo = "1111111111111111111",
            //    CertificateType = "身份证",
            //    Mobile = "1350000000",
            //    Name = "老段1",
            //    PasserType = "成人",
            //    Remark = "11111111111",
            //});
            var list = new List <FrePasserDto>();

            for (int i = 0; i < 2000; i++)
            {
                var m = new FrePasserDto()
                {
                    AirCardNo       = (1000003 + i).ToString(),
                    CertificateNo   = "1111111111111111111" + i,
                    CertificateType = "身份证",
                    Mobile          = "1350000000" + i,
                    Name            = "老段1",
                    PasserType      = "成人",
                    Remark          = "444---ada---" + i,
                };
                list.Add(m);
            }

            service.Import(list);

            //service.DeleteFrePasser(23);

            //var result=  service.Export();

            //var result = service.QueryFrePassers(null,1, 5);

            //var str = JsonConvert.SerializeObject(result);

            //Console.WriteLine(str);
        }
        public void Search()
        {
            var dtos = new List <FrePasserDto>();
            var ofd  = new OpenFileDialog();

            ofd.ShowDialog();
            if (string.IsNullOrEmpty(ofd.FileName))
            {
                return;
            }
            DataTable dt = null;

            try
            {
                dt = ExcelHelper.RenderToTableByNOPI(ofd.FileName);
            }
            catch (Exception ex)
            {
                UIManager.ShowErr(ex);
            }
            try
            {
                if (dt == null)
                {
                    return;
                }
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow item in dt.Rows)
                    {
                        var fpd = new FrePasserDto();
                        //Check null
                        if (string.IsNullOrEmpty(item["姓名"].ToString().Trim()))
                        {
                            continue;
                        }
                        fpd.Name   = item["姓名"].ToString().Trim();
                        fpd.Mobile = item["手机号"].ToString().Trim();
                        if (dt.Columns.Contains("航空公司卡号"))
                        {
                            fpd.AirCardNo = item["航空公司卡号"].ToString().Trim();
                        }
                        if (dt.Columns.Contains("备注"))
                        {
                            fpd.Remark = item["备注"].ToString().Trim();
                        }
                        if (dt.Columns.Contains("性别") && !string.IsNullOrEmpty(item["性别"].ToString().Trim()))
                        {
                            fpd.SexType = item["性别"].ToString().Trim();
                        }
                        if (!string.IsNullOrEmpty(item["证件类型"].ToString().Trim()))
                        {
                            fpd.CertificateType = item["证件类型"].ToString().Trim();
                        }
                        if (!string.IsNullOrEmpty(item["乘客类型"].ToString().Trim()))
                        {
                            fpd.PasserType = item["乘客类型"].ToString().Trim();
                        }
                        fpd.CertificateNo = item["证件号"].ToString().Trim();
                        fpd.CertificateNo = string.IsNullOrEmpty(item["证件号"].ToString().Trim()) && !string.IsNullOrEmpty(item["出生日期"].ToString().Trim()) ? Convert.ToDateTime(item["出生日期"]).ToString("yyyy-MM-dd").Trim() : fpd.CertificateNo;
                        if (!string.IsNullOrEmpty(item["出生日期"].ToString().Trim()))
                        {
                            fpd.Birth = Convert.ToDateTime(item["出生日期"].ToString().Trim());
                        }
                        else if (!string.IsNullOrEmpty(fpd.CertificateNo) && !string.IsNullOrEmpty(item["证件类型"].ToString().Trim()) && item["证件类型"].ToString().Trim() == EnumHelper.GetDescription(EnumIDType.BirthDate))
                        {
                            fpd.Birth = Convert.ToDateTime(item["证件号"].ToString().Trim());
                        }
                        else if (!string.IsNullOrEmpty(fpd.CertificateNo) && !string.IsNullOrEmpty(item["证件类型"].ToString().Trim()) && item["证件类型"].ToString().Trim() == EnumHelper.GetDescription(EnumIDType.NormalId))
                        {
                            //生日转换截取字符串
                            var birth = Common.ExtHelper.GetBirthdayDateFromString(fpd.CertificateNo);
                            if (birth != null)
                            {
                                fpd.Birth = birth;
                            }
                        }
                        //Add List
                        dtos.Add(fpd);
                    }
                }
            }
            catch (Exception ex)
            {
                UIManager.ShowErr(ex);
                return;
            }
            Action action = () =>
            {
                IsBusy = true;


                CommunicateManager.Invoke <IFrePasserService>(service =>
                {
                    if (dtos.Count == 0)
                    {
                        UIManager.ShowMessage("没有可导入数据");
                        return;
                    }
                    service.Import(dtos);
                    //导入成功
                    UIManager.ShowMessage("导入成功");
                    ExecuteQueryCommand();
                }, UIManager.ShowErr);
            };

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setBusyAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setBusyAction);
            });
        }
 private bool CanExecuteDelCommand(FrePasserDto passenger)
 {
     return(passenger != null);
 }
Example #11
0
        private void ExecuteSaveCommand()
        {
            if (!Check())
            {
                return;
            }
            IsBusy = true;

            Action action = () => CommunicateManager.Invoke <IFrePasserService>(service =>
            {
                if (Passenger == null)
                {
                    var model = new FrePasserDto
                    {
                        Name            = Name,
                        AirCardNo       = AirCardNo,
                        Mobile          = Mobile,
                        Remark          = Remark,
                        PasserType      = EnumHelper.GetDescription(AgeType),
                        CertificateType = EnumHelper.GetDescription(IdType),
                        SexType         = SelectedSexType.HasValue ? EnumHelper.GetDescription(SelectedSexType.Value) : "",
                        Birth           = Birthday
                    };
                    switch (AgeType)
                    {
                    case AgeType.All:
                        break;

                    case AgeType.Adult:
                        model.CertificateNo = CertificateNo;
                        break;

                    case AgeType.Child:
                        if (IdType == IDType.BirthDate && Birthday != null)
                        {
                            model.CertificateNo = Birthday.Value.ToString("yyyy-MM-dd");
                        }
                        else
                        {
                            model.CertificateNo = CertificateNo;
                        }
                        break;

                    case AgeType.Baby:
                        model.CertificateNo = Birthday != null ? Birthday.Value.ToString("yyyy-MM-dd") : CertificateNo;
                        break;
                    }
                    var flag = service.Exists(model.Name, model.CertificateNo);
                    if (flag)
                    {
                        UIManager.ShowMessage("当前常旅客信息已经存在");
                    }
                    else
                    {
                        service.SaveFrePasser(model);
                        IsDone = true;
                    }
                }
                else
                {
                    Passenger.Name = Name;
                    switch (AgeType)
                    {
                    case AgeType.All:
                        break;

                    case AgeType.Adult:
                        Passenger.CertificateNo = CertificateNo;
                        break;

                    case AgeType.Child:
                        if (IdType == IDType.BirthDate && Birthday != null)
                        {
                            Passenger.CertificateNo = Birthday.Value.ToString("yyyy-MM-dd");
                        }
                        else
                        {
                            Passenger.CertificateNo = CertificateNo;
                        }
                        break;

                    case AgeType.Baby:
                        Passenger.CertificateNo = Birthday != null ? Birthday.Value.ToString("yyyy-MM-dd") : CertificateNo;
                        break;
                    }
                    Passenger.AirCardNo       = AirCardNo;
                    Passenger.Mobile          = Mobile;
                    Passenger.Remark          = Remark;
                    Passenger.PasserType      = EnumHelper.GetDescription(AgeType);
                    Passenger.CertificateType = EnumHelper.GetDescription(IdType);
                    Passenger.SexType         = SelectedSexType.HasValue ? EnumHelper.GetDescription(SelectedSexType.Value) : "";
                    Passenger.Birth           = Birthday;
                    service.UpdateFrePasser(Passenger);
                    IsDone = true;
                }
            }, UIManager.ShowErr);

            Task.Factory.StartNew(action).ContinueWith(task =>
            {
                Action setAction = () => { IsBusy = false; };
                DispatcherHelper.UIDispatcher.Invoke(setAction);
            });
        }
Example #12
0
        public UsualPassengerInfoViewModel(FrePasserDto fpd = null)
        {
            Initialize();
            if (fpd == null)
            {
                return;
            }
            Passenger = fpd;
            #region 属性字段赋值
            Name          = fpd.Name;
            CertificateNo = fpd.CertificateNo;
            AirCardNo     = fpd.AirCardNo;
            Mobile        = fpd.Mobile;
            Remark        = fpd.Remark;
            switch (fpd.SexType)
            {
            case "男":
                SelectedSexType = EnumSexType.Male;
                break;

            case "女":
                SelectedSexType = EnumSexType.Female;
                break;

            case "未知":
                SelectedSexType = EnumSexType.UnKnown;
                break;
            }
            switch (fpd.PasserType)
            {
            case "成人":
                AgeType = AgeType.Adult;
                break;

            case "儿童":
                AgeType = AgeType.Child;
                break;

            case "婴儿":
                AgeType = AgeType.Baby;
                break;
            }
            Birthday = fpd.Birth;
            switch (fpd.CertificateType)
            {
            case "身份证":
                IdType = IDType.NormalId;
                if (fpd.CertificateNo.Length == 18)
                {
                    DateTime?birth = Common.ExtHelper.GetBirthdayDateFromString(CertificateNo);
                    if (birth != null)
                    {
                        Birthday = birth;
                    }
                }
                break;

            case "护照":
                IdType = IDType.Passport;
                break;

            case "军官证":
                IdType = IDType.MilitaryID;
                break;

            case "出生日期":
                IdType   = IDType.BirthDate;
                Birthday = Convert.ToDateTime(CertificateNo);
                break;

            case "其它有效证件":
                IdType = IDType.Other;
                break;
            }
            #endregion
        }