Exemplo n.º 1
0
        public ResponseBaseViewModel <List <PassengerViewModel> > SearchContactInfo([FromBody] TraOrderRequestViewModel request)
        {
            int cid = this.GetCid();
            ICustomerDomainFactory factory = new CustomerDomainFactory();
            var domain = factory.CreatePassengerInfoDomainObj();
            List <PassengerViewModel> passengerViewModels = new List <PassengerViewModel>();
            List <PassengerInfoModel> passengerList       = domain.GetPassengerInfoList(cid, request.DepartId,
                                                                                        request.SearchArgs);

            foreach (var p in passengerList)
            {
                PassengerViewModel passengerViewModel = new PassengerViewModel();
                passengerViewModel.ContactId          = p.ContactId;
                passengerViewModel.PassengerName      = p.PassengerName;
                passengerViewModel.Mobile             = p.Mobile;
                passengerViewModel.Phone              = p.Phone;
                passengerViewModel.Email              = p.Email;
                passengerViewModel.Fax                = p.Fax;
                passengerViewModel.IdentificationList = (List <IdentificationViewModel>)
                                                        AutoMapperHelper.DoMapList <IdentificationModel, IdentificationViewModel>(p.IdentificationList);
                passengerViewModels.Add(passengerViewModel);
            }

            ResponseBaseViewModel <List <PassengerViewModel> > v = new ResponseBaseViewModel <List <PassengerViewModel> >()
            {
                Flag = new ResponseCodeViewModel()
                {
                    Code = 0, MojoryToken = this.GetToken()
                },
                Data = passengerViewModels
            };

            return(v);
        }
Exemplo n.º 2
0
        public ResponseBaseViewModel <CustomerInfoViewModel> GetCustomerInfo()
        {
            int cid = this.GetCid();
            ICustomerDomainFactory customerFactory = new CustomerDomainFactory();
            var customerDomain = customerFactory.CreateDomainObj();
            CustomerInfoModel customerInfoModel = customerDomain.GetCustomerInfo(cid);

            if (customerInfoModel.IsLock == "T")
            {
                throw new Exception("当前客户已经被冻结");
            }
            if (customerInfoModel.IsDel == "T")
            {
                throw new Exception("当前客户已经被删除");
            }

            CustomerInfoViewModel viewModel =
                Mapper.Map <CustomerInfoModel, CustomerInfoViewModel>(customerInfoModel);

            if (!string.IsNullOrEmpty(customerInfoModel.CorpId))
            {
                ICorporationDomainFactory corporationDomainFactory = new CorporationDomainFactory();
                var corpDomain = corporationDomainFactory.CreateDomainObj();
                CorporationModel corporationModel = corpDomain.GetCorporationByCorId(customerInfoModel.CorpId);
                if (corporationModel.IsAmplitudeCorp == "T")
                {
                    viewModel.IsCorpSystemCustomer = "T";
                }
                else
                {
                    viewModel.IsCorpSystemCustomer = "F";
                }
                viewModel.CorpName = corporationModel.CorpName;
            }
            else
            {
                viewModel.IsCorpSystemCustomer = "F";
            }

            ResponseBaseViewModel <CustomerInfoViewModel> v = new ResponseBaseViewModel <CustomerInfoViewModel>()
            {
                Flag = new ResponseCodeViewModel()
                {
                    Code = 0, MojoryToken = this.GetToken()
                },
                Data = viewModel
            };

            return(v);
        }
Exemplo n.º 3
0
        public ResponseBaseViewModel <string> AutoLogin(ClientInfoRequestViewModel request)
        {
            var cid = this.GetCid();

            if (cid == 0)
            {
                return(new ResponseBaseViewModel <string>
                {
                    Flag = new ResponseCodeViewModel()
                    {
                        Code = -1, Message = "success", MojoryToken = ""
                    }
                });
            }
            var clientId = request.ClientId;
            ICustomerDomainFactory factory = new CustomerDomainFactory();
            var domain = factory.CreateVerifyCustomerDomainObj();

            if (domain.AutoLogin(cid, request.ClientId))
            {
                return(new ResponseBaseViewModel <string>
                {
                    Flag = new ResponseCodeViewModel()
                    {
                        Code = 0, Message = "success", MojoryToken = ""
                    }
                });
            }
            else
            {
                return(new ResponseBaseViewModel <string>
                {
                    Flag = new ResponseCodeViewModel()
                    {
                        Code = -1, Message = "设备ID错误", MojoryToken = ""
                    }
                });
            }
        }
Exemplo n.º 4
0
        public AddGrabTicketResponseViewModel AddGrabTicket(AddGrabTicketRequestViewModel request)
        {
            AddTraGrabTicketModel addTraGrabTicketModel =
                Mapper.Map <AddGrabTicketRequestViewModel, AddTraGrabTicketModel>(request);

            if (addTraGrabTicketModel.SeatType.Contains("无座"))
            {
                throw new Exception("座位类型中不能包含无座");
            }
            addTraGrabTicketModel.CreateOid = request.Oid;
            //0.获取客户信息
            addTraGrabTicketModel.Customer = _getCustomerServiceBll.GetCustomerByCid(request.Cid);

            //1.添加抢票信息
            int grabId = 0;

            using (var transaction = this.Context.Database.BeginTransaction())
            {
                try
                {
                    ICustomerDomainFactory customerDomainFactory = new CustomerDomainFactory();
                    ICustomerDomain        customerDomain        = customerDomainFactory.CreatePassengerInfoDomainObj();

                    _addTraGrabTicketServiceBll.AddContactEvent += customerDomain.AddContactEventListener;
                    grabId = _addTraGrabTicketServiceBll.AddTraGrabTicket(addTraGrabTicketModel);
                    _addTraGrabTicketServiceBll.AddContactEvent -= customerDomain.AddContactEventListener;

                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw;
                }
            }

            //2.访问抢票接口

            GrabTicketResponseModel responseModel = _requestGrabTicketServiceBll.RequestGrabTicketInterface(addTraGrabTicketModel);
            bool isSuccess = false;
            //3.根据结果更新抢票状态
            UpdateTraGrabTicketStatusModel updateTraGrabTicketStatusModel = new UpdateTraGrabTicketStatusModel()
            {
                GrabId = grabId
            };

            if (responseModel.success)
            {
                updateTraGrabTicketStatusModel.GrabStatus = TrainGrabStatusEnum.P;
                isSuccess = true;
            }
            else
            {
                updateTraGrabTicketStatusModel.GrabStatus         = TrainGrabStatusEnum.D;
                updateTraGrabTicketStatusModel.SubmitFailedReason = responseModel.msg;
            }


            _updateTraGrabTicketStatusServiceBll.UpdateTraGrabTicketStatusByAfterSubmit(
                updateTraGrabTicketStatusModel);


            return(new AddGrabTicketResponseViewModel()
            {
                IsSuccess = isSuccess, Message = responseModel.msg
            });
        }
Exemplo n.º 5
0
        public ResponseBaseViewModel <LoginResponseViewModel> MojoryLogin([FromBody] LoginRequestViewModel request)
        {
            string token = this.GetToken();
            ICustomerDomainFactory factory = new CustomerDomainFactory();
            var domain = factory.CreateVerifyCustomerDomainObj();

            CustomerLoginModel loginModel = new CustomerLoginModel
            {
                Password        = request.Password,
                UserId          = request.UserId,
                CorpId          = request.CorpId,
                Token           = token,
                ClientId        = request.ClientId,
                ClientType      = this.GetOrderSource(),
                IsCheckClientId = request.IsCheckClientId
            };
            //为了appstore审核通过

            /*
             * if (request.CorpId.ToLower().Trim() == "mzl")
             * {
             *  loginModel.IsCheckClientId = false;
             * }
             */
            string clientId = request.ClientId;
            ITokenDomainFactory tokenFactory = new TokenDomainFactory();
            var tokenDomain = tokenFactory.CreateDomainObj();

            domain.TokenEvent += tokenDomain.UpdateUserToken;
            CustomerInfoModel customer = domain.DoLogin(loginModel);

            domain.TokenEvent -= tokenDomain.UpdateUserToken;

            ResponseBaseViewModel <LoginResponseViewModel> v = new ResponseBaseViewModel <LoginResponseViewModel> ();

            if (customer == null)
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = -1, Message = "用户名或密码失败"
                }
            }
            ;
            else if (clientId != loginModel.ClientId && !string.IsNullOrWhiteSpace(clientId))
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = -2, Message = "设备ID与原ID不同"
                };
            }
            else
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = 0, Message = "success", MojoryToken = token
                };
                v.Data = new LoginResponseViewModel();
            }

            return(v);
        }