示例#1
0
        public TraAddOrderResultModel AddTraOrder(TraAddOrderModel traAddOrder)
        {
            //金额校验
            decimal totalPassengerAmount = 0;

            foreach (var detail in traAddOrder.OrderDetailList)
            {
                totalPassengerAmount += detail.PassengerList.Sum(n => (n.FacePrice ?? 0)) +
                                        detail.PassengerList.Sum(n => (n.ServiceFee ?? 0));
            }
            if (traAddOrder.Order.TotalMoney != totalPassengerAmount)
            {
                throw new Exception("金额不正确");
            }



            int orderid = _addTraOrderBll.AddTraOrder(traAddOrder);

            traAddOrder.Order.OrderId = orderid;

            return(new TraAddOrderResultModel()
            {
                OrderId = orderid, AddOrderModel = traAddOrder
            });
        }
示例#2
0
        public bool CheckIsExistSameTravel(TraAddOrderModel traAddOrder)
        {
            List <DateTime> startTimeList = traAddOrder.OrderDetailList.Select(n => n.StartTime).ToList();
            List <DateTime> endTimeList   = traAddOrder.OrderDetailList.Select(n => n.EndTime).ToList();

            List <string> startNameList = traAddOrder.OrderDetailList.Select(n => n.StartName).ToList();
            List <string> endNameList   = traAddOrder.OrderDetailList.Select(n => n.EndName).ToList();

            List <string> nameList =
                traAddOrder.OrderDetailList.SelectMany(n => n.PassengerList).Select(n => n.Name).ToList();

            bool       flag = _checkSameTravelDal.CheckIsExistSameTravel(startTimeList, endTimeList, startNameList, endNameList, nameList);
            List <int> list = _checkSameTravelDal.OrderList;

            if (list != null && list.Count > 0)
            {
                Result = string.Concat(list.Select(n => "," + n)).Substring(1);
            }
            return(flag);
        }
示例#3
0
        public int AddTraOrder(TraAddOrderModel newOrder)
        {
            newOrder.Order.TrainPlace = "代售点";
            newOrder.Order.OrderRoot  = 0;
            newOrder.Order.CreateTime = DateTime.Now;
            if (newOrder.Order.PayAmount == 0)
            {
                newOrder.Order.PayAmount = newOrder.Order.TotalMoney;
            }
            newOrder.Order.OpeartorId = newOrder.Order.CreateOid;

            newOrder.Order.OrderSource = newOrder.OrderSource;

            if (newOrder.AddOrderType == 1)//手动
            {
                newOrder.Order.OrderType = 0;
            }
            else
            {
                newOrder.Order.OrderType = 1;
            }

            if (newOrder.Customer != null && !string.IsNullOrEmpty(newOrder.Customer.Category) &&
                newOrder.Customer.Category.ToUpper() == "D")
            {
                newOrder.Order.BalanceType = 1;
                newOrder.Order.TravelType  = 0;
            }
            else
            {
                newOrder.Order.BalanceType = 0;
                newOrder.Order.TravelType  = 1;
            }

            //如果存在项目名称
            if (newOrder.ProjectName != null && newOrder.ProjectName.ProjectId > 0)
            {
                newOrder.Order.ProjectId = newOrder.ProjectName.ProjectId;
            }

            if (newOrder.CostCenter != null && newOrder.CostCenter.Cid > 0)
            {
                newOrder.Order.CostCenter = newOrder.CostCenter.Depart;
            }
            if (string.IsNullOrEmpty(newOrder.Order.CostCenter))
            {
                newOrder.Order.CostCenter = "";
            }

            if (newOrder.AddOrderType == 0)
            {
                newOrder.Order.OrderFrom = TraOrderFromEnum.Interface.ToString();
            }
            else
            {
                newOrder.Order.OrderFrom = TraOrderFromEnum.Hand.ToString();
            }

            if (newOrder.Order.OrderSource == "O")
            {
                newOrder.Order.IsOnline = "F";
            }
            else
            {
                newOrder.Order.IsOnline = "T";
            }

            TraOrderEntity orderEntity = Mapper.Map <TraOrderModel, TraOrderEntity>(newOrder.Order);

            orderEntity.CorpPolicy   = string.Empty;
            orderEntity.ChoiceReason = string.Empty;

            foreach (var traOrderDetailModel in newOrder.OrderDetailList)
            {
                if (!string.IsNullOrEmpty(traOrderDetailModel.CorpPolicy))
                {
                    orderEntity.CorpPolicy += "|" + traOrderDetailModel.CorpPolicy;
                }
                if (!string.IsNullOrEmpty(traOrderDetailModel.ChoiceReason))
                {
                    orderEntity.ChoiceReason += "|" + traOrderDetailModel.ChoiceReason;
                }
            }


            orderEntity = _traOrderDal.Insert(orderEntity);


            if (newOrder.OrderStatus == null)
            {
                newOrder.OrderStatus = new TraOrderStatusModel();
            }
            newOrder.OrderStatus.OrderId = orderEntity.OrderId;
            if (newOrder.Order.CreateOid != "sys" && (newOrder.OrderStatus.ProccessStatus & 64) != 64)
            {
                newOrder.OrderStatus.ProccessStatus = newOrder.OrderStatus.ProccessStatus + 64;
            }
            TraOrderStatusEntity orderStatusEntity = Mapper.Map <TraOrderStatusModel, TraOrderStatusEntity>(newOrder.OrderStatus);

            orderStatusEntity = _traOrderStatusDal.Insert(orderStatusEntity);

            foreach (var detail in newOrder.OrderDetailList)
            {
                detail.OrderId   = orderEntity.OrderId;
                detail.TicketNum = detail.PassengerList.Count;



                detail.TotalPrice = detail.PassengerList.Sum(n => (n.FacePrice ?? 0)) +
                                    detail.PassengerList.Sum(n => (n.ServiceFee ?? 0));//乘客面价+乘客服务费

                detail.ServiceFee = (detail.PassengerList?[0].ServiceFee ?? 0);

                var childPerson = detail.PassengerList.Find(n => n.AgeType == AgeTypeEnum.E); //儿童
                var person      = detail.PassengerList.Find(n => n.AgeType == AgeTypeEnum.C); //成人

                detail.FacePrice         = (person?.FacePrice ?? 0);
                detail.TrainChdSalePrice = (childPerson?.FacePrice ?? 0);
                detail.PlaceGrade        = detail.PassengerList?[0].PlaceGrade;

                detail.PlaceType       = GetPlaceType(detail.PlaceGrade);
                detail.TrainNoRemark   = string.IsNullOrEmpty(detail.TrainNoRemark) ? "" : detail.TrainNoRemark;
                detail.TrainNoStatus   = string.IsNullOrEmpty(detail.TrainNoStatus) ? "" : detail.TrainNoStatus;
                detail.OnTrainTimeTemp = detail.StartTime;
                detail.OnTrainTime     = detail.StartTime;

                TraAddressEntity startAddressEntity =
                    _traAddressDal.Query <TraAddressEntity>(n => n.Addr_Name == detail.StartName).FirstOrDefault();
                if (startAddressEntity == null)
                {
                    startAddressEntity           = new TraAddressEntity();
                    startAddressEntity.Addr_Name = detail.StartName;
                    startAddressEntity.Addr_Type = 0;
                    startAddressEntity.Addr_S    = detail.StartCode;
                    startAddressEntity           = _traAddressDal.Insert <TraAddressEntity>(startAddressEntity);
                }
                detail.StartNameId = startAddressEntity.Aid;


                TraAddressEntity endAddressEntity =
                    _traAddressDal.Query <TraAddressEntity>(n => n.Addr_Name == detail.EndName)
                    .FirstOrDefault();
                if (endAddressEntity == null)
                {
                    endAddressEntity           = new TraAddressEntity();
                    endAddressEntity.Addr_Name = detail.EndName;
                    endAddressEntity.Addr_Type = 0;
                    endAddressEntity.Addr_S    = detail.EndCode;
                    endAddressEntity           = _traAddressDal.Insert <TraAddressEntity>(endAddressEntity);
                }

                detail.EndNameId = endAddressEntity.Aid;


                TraOrderDetailEntity traOrderDetailEntity = Mapper.Map <TraOrderDetailModel, TraOrderDetailEntity>(detail);
                traOrderDetailEntity = _traOrderDetailDal.Insert(traOrderDetailEntity);
                foreach (var p in detail.PassengerList)
                {
                    p.OdId = traOrderDetailEntity.OdId;
                    TraPassengerEntity traPassengerEntity = Mapper.Map <TraPassengerModel, TraPassengerEntity>(p);
                    traPassengerEntity.Name = traPassengerEntity.Name.Replace("/", " ");
                    _traPassengerDal.Insert(traPassengerEntity);
                }
            }
            string logContent = newOrder.Log?.LogContent;

            if (string.IsNullOrEmpty(logContent))
            {
                logContent =
                    $"{(newOrder.Order.IsOnline == "T" ? "线上" : "线下")}添加火车订单";
            }
            _traOrderLogDal.Insert <TraOrderLogEntity>(new TraOrderLogEntity()
            {
                OrderId    = orderEntity.OrderId,
                CreateOid  = orderEntity.CreateOid,
                CreateTime = DateTime.Now,
                LogType    = "OI",
                LogContent = logContent
            });

            return(orderEntity.OrderId);
        }
示例#4
0
        public AddTraOrderResponseViewModel AddTraOrder(AddTraOrderRequestViewModel request)
        {
            //判断是否是生产环境,如果不是则强制request.AddOrderType=1,不走接口
            string oidTemp = request.Order.CreateOid;
            TraAddOrderResultModel addOrderResultModel = new TraAddOrderResultModel();
            TraAddOrderModel       addOrderModel       = Mapper.Map <AddTraOrderRequestViewModel, TraAddOrderModel>(request);

            addOrderModel.Order.Cid         = request.Cid;
            addOrderModel.Order.OrderSource = request.OrderSource;



            //0.获取客户信息服务
            addOrderModel.Customer = _getCustomerServiceBll.GetCustomerByCid(request.Cid);
            if (!string.IsNullOrEmpty(addOrderModel.Customer.CorpID))
            {
                CorporationModel corporationModel = _getCorpServiceBll.GetCorp(addOrderModel.Customer.CorpID);
                if (!addOrderModel.Order.IsPrint.HasValue)
                {
                    addOrderModel.Order.IsPrint = corporationModel.IsPrint ?? 0;
                }
                if (!string.IsNullOrEmpty(corporationModel.ResponsibleOid) && request.OrderSource != "O")
                {
                    addOrderModel.Order.CreateOid = corporationModel.ResponsibleOid;
                    if (addOrderModel.OrderStatus == null)
                    {
                        addOrderModel.OrderStatus = new TraOrderStatusModel();
                    }
                    if ((addOrderModel.OrderStatus.ProccessStatus & 64) != 64)
                    {
                        addOrderModel.OrderStatus.ProccessStatus = addOrderModel.OrderStatus.ProccessStatus + 64;
                    }
                }
            }

            //1.添加火车订单
            using (var transaction = this.Context.Database.BeginTransaction())
            {
                try
                {
                    /***
                     * 1)手动路线:
                     * 添加完订单,直接发起送审
                     * 2)自动路线:
                     * 添加完订单,不发起送审,发起申请占位请求,在确认占位后再发起送审
                     * **/
                    addOrderResultModel = _addTraOrderServiceBll.AddTraOrder(addOrderModel);

                    #region 送审

                    if (addOrderResultModel.OrderId > 0 && request.AddOrderType == 1)//手动路线发起送审
                    {
                        SubmitCorpAduitOrderModel submitCorpAduitOrder = new SubmitCorpAduitOrderModel()
                        {
                            OrderInfoList = new List <SubmitCorpAduitOrderDetailModel>()
                            {
                                new SubmitCorpAduitOrderDetailModel()
                                {
                                    OrderId   = addOrderResultModel.OrderId,
                                    OrderType = OrderSourceTypeEnum.Tra
                                }
                            },
                            PolicyId        = addOrderModel.Order.CorpPolicyId,
                            AduitConfigId   = addOrderModel.Order.CorpAduitId,
                            Source          = request.OrderSource,
                            SubmitCid       = request.Cid,
                            SubmitOid       = oidTemp,
                            IsViolatePolicy =
                                (addOrderModel.OrderDetailList.Find(n => !string.IsNullOrEmpty(n.CorpPolicy)) != null
                                    ? true
                                    : false),
                            OrderType = OrderSourceTypeEnum.Tra
                        };
                        _submitCorpAduitOrderServiceBll.Submit(submitCorpAduitOrder);
                    }

                    #endregion

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

            if (request.AddOrderType == 0)//自动路线发起占位申请
            {
                //2.发起火车占位
                _requestHoldSeatServiceBll.RequestHoldSeat(addOrderResultModel.AddOrderModel);
            }


            return(new AddTraOrderResponseViewModel()
            {
                OrderId = addOrderResultModel.OrderId,
                AddOrderType = request.AddOrderType
            });
        }
示例#5
0
        public TraOrderSubmitResponseModel RequestHoldSeat(TraAddOrderModel addModel)
        {
            TraOrderSubmitResponseModel responseModel = null;
            string isServer = AppSettingsHelper.GetAppSettings(AppSettingsEnum.IsServer);

            if (isServer == "T")
            {
                //请求接口
                #region 封装接口请求参数
                TraOrderSubmitModel model = new TraOrderSubmitModel()
                {
                    orderid            = addModel.Order.OrderId.ToString(),
                    checi              = addModel.OrderDetailList[0].TrainNo,
                    from_station_code  = addModel.OrderDetailList[0].StartCode,
                    from_station_name  = addModel.OrderDetailList[0].StartName,
                    to_station_code    = addModel.OrderDetailList[0].EndCode,
                    to_station_name    = addModel.OrderDetailList[0].EndName,
                    train_date         = addModel.OrderDetailList[0].StartTime.ToString("yyyy-MM-dd"),
                    passengers         = new List <TraOrderSubmitPassengerModel>(),
                    LoginUserName      = "",
                    LoginUserPassword  = "",
                    is_accept_standing = addModel.IsAcceptStanding,
                    is_choose_seats    = addModel.IsChooseSeats,
                    choose_seats       = addModel.ChooseSeats
                };


                model.passengers = new List <TraOrderSubmitPassengerModel>();
                foreach (var p in addModel.OrderDetailList[0].PassengerList)
                {
                    TraOrderSubmitPassengerModel pp = new TraOrderSubmitPassengerModel();
                    pp.passengersename      = p.Name.Replace("/", " ");
                    pp.passportseno         = p.CardNo;
                    pp.passporttypeseidname = p.CardNoType.ToDescription();
                    if (p.CardNoType == CardTypeEnum.Certificate)
                    {
                        pp.passporttypeseid = "1";
                    }
                    else if (p.CardNoType == CardTypeEnum.HongKongAndMacaoPass)
                    {
                        pp.passporttypeseid = "C";
                    }
                    else if (p.CardNoType == CardTypeEnum.Passport)
                    {
                        pp.passporttypeseid = "B";
                    }
                    else if (p.CardNoType == CardTypeEnum.TaiwanEntryPermit || p.CardNoType == CardTypeEnum.MTP)
                    {
                        pp.passporttypeseid     = "G";
                        pp.passporttypeseidname = "台湾通行证";
                    }
                    //pp.passporttypeseid = ((int) p.CardNoType).ToString();
                    pp.piaotype     = "1";
                    pp.ticket_no    = "";
                    pp.piaotypename = "成人票";
                    if (addModel.OrderDetailList[0].PlaceGrade != "无座")
                    {
                        pp.zwcode = TrainTypeEnum.GetTypeCodeByName(addModel.OrderDetailList[0].PlaceGrade);
                        pp.zwname = addModel.OrderDetailList[0].PlaceGrade;
                    }
                    else
                    {
                        //如果当前是无座则根据当前车次选择最低座位
                        List <string> cTypeList = new List <string>()
                        {
                            "G", "C", "D"
                        };
                        if (!string.IsNullOrEmpty(model.checi) && model.checi.Length > 0 &&
                            cTypeList.Contains(model.checi.Substring(0, 1).ToUpper()))
                        {
                            pp.zwcode = TrainTypeEnum.GetTypeCodeByName("二等座");
                            pp.zwname = "二等座";
                        }
                        else
                        {
                            pp.zwcode = TrainTypeEnum.GetTypeCodeByName("硬座");
                            pp.zwname = "硬座";
                        }
                    }
                    pp.cxin  = "";
                    pp.price = addModel.OrderDetailList[0].FacePrice.ToString("0.00");
                    model.passengers.Add(pp);
                }
                #endregion
                responseModel = _requestHoldSeatBll.RequestHoldSeatInterface(model);
            }
            else
            {
                responseModel = new TraOrderSubmitResponseModel()
                {
                    success = true, orderid = "Test" + DateTime.Now.ToString("yyyyMMddHHmmssfff")
                };
            }
            #region 请求成功后操作
            if (responseModel.success)//请求占位成功
            {
                int count =
                    _traInterFaceOrderDal.Query <TraInterFaceOrderEntity>(a => a.Transactionid == responseModel.orderid,
                                                                          true).Count();
                if (count == 0)//如果没有当前接口的订单号,则插入该条信息
                {
                    TraInterFaceOrderEntity traInterFaceOrderEntity = new TraInterFaceOrderEntity
                    {
                        CreateTime    = DateTime.Now,
                        OrderId       = addModel.Order.OrderId.ToString(),
                        Status        = (int)OrderTypeEnum.ApplyHoldSeat,
                        Transactionid = responseModel.orderid
                    };
                    traInterFaceOrderEntity =
                        _traInterFaceOrderDal.Insert <TraInterFaceOrderEntity>(traInterFaceOrderEntity);

                    _traOrderOperateDal.Insert <TraOrderOperateEntity>(new TraOrderOperateEntity()
                    {
                        AfterOperateStatus = (int)OrderTypeEnum.MakingTicket,
                        InterfaceId        = traInterFaceOrderEntity.InterfaceId,
                        Operate            = (int)OrderTypeEnum.ApplyHoldSeat,
                        OperateTime        = traInterFaceOrderEntity.CreateTime
                    });
                }
            }
            #endregion

            return(responseModel);
        }
示例#6
0
        /// <summary>
        /// 添加抢票信息
        /// </summary>
        /// <param name="addTraGrabTicketModel"></param>
        /// <returns></returns>
        public int AddTraGrabTicket(AddTraGrabTicketModel addTraGrabTicketModel)
        {
            #region 预生成一张抢票订单
            TraAddOrderModel traAddOrderModel = new TraAddOrderModel();
            traAddOrderModel.OrderSource             = addTraGrabTicketModel.OrderSource;
            traAddOrderModel.Order                   = new TraOrderModel();
            traAddOrderModel.Order.Cid               = addTraGrabTicketModel.Cid ?? 0;
            traAddOrderModel.Order.OrderType         = 1;
            traAddOrderModel.Order.PayType           = PayTypeEnum.Cas;
            traAddOrderModel.Order.SendType          = addTraGrabTicketModel.SendType;
            traAddOrderModel.Order.CName             = addTraGrabTicketModel.CName;
            traAddOrderModel.Order.CMobile           = addTraGrabTicketModel.CMobile;
            traAddOrderModel.Order.CEmail            = addTraGrabTicketModel.CEmail;
            traAddOrderModel.Order.CPhone            = addTraGrabTicketModel.CPhone;
            traAddOrderModel.Order.CFax              = addTraGrabTicketModel.CFax;
            traAddOrderModel.Order.SendAddress       = addTraGrabTicketModel.SendAddress;
            traAddOrderModel.Order.OrderFrom         = TraOrderFromEnum.Interface.ToString();
            traAddOrderModel.Order.CreateOid         = addTraGrabTicketModel.CreateOid;
            traAddOrderModel.Order.IsGrabTicketOrder = true;
            traAddOrderModel.Order.IsOnline          = "F";
            if (!string.IsNullOrEmpty(traAddOrderModel.Customer?.CorpID))
            {
                traAddOrderModel.Order.BalanceType = 1;
                traAddOrderModel.Order.TravelType  = 0;
            }

            traAddOrderModel.Order.SendTime     = addTraGrabTicketModel.SendTime;
            traAddOrderModel.Order.LastSendTime = addTraGrabTicketModel.LastSendTime;

            if (addTraGrabTicketModel.ProjectId.HasValue)
            {
                traAddOrderModel.Order.ProjectId = addTraGrabTicketModel.ProjectId.Value;
            }

            if (!string.IsNullOrEmpty(addTraGrabTicketModel.Depart))
            {
                traAddOrderModel.Order.CostCenter = addTraGrabTicketModel.Depart;
            }
            else
            {
                traAddOrderModel.Order.CostCenter = "";
            }

            traAddOrderModel.OrderStatus = new TraOrderStatusModel();

            traAddOrderModel.OrderDetailList = new List <TraOrderDetailModel>();
            TraOrderDetailModel traOrderDetailModel = new TraOrderDetailModel()
            {
                StartName     = addTraGrabTicketModel.StartCodeName,
                StartNameCode = addTraGrabTicketModel.StartCode,
                EndName       = addTraGrabTicketModel.EndCodeName,
                EndNameCode   = addTraGrabTicketModel.EndCode,
                StartTime     = addTraGrabTicketModel.StartTime,
                OnTrainTime   = addTraGrabTicketModel.StartTime,
                EndTime       = addTraGrabTicketModel.StartTime,
                TrainNo       = "抢票",
                TicketNum     = addTraGrabTicketModel.PassengerList.Count,
                ServiceFee    = addTraGrabTicketModel.ServiceFee,
                FacePrice     = 0,
                TotalPrice    = 0,
                StartCode     = addTraGrabTicketModel.StartCode,
                EndCode       = addTraGrabTicketModel.EndCode,
                PlaceType     = "抢票",
                PlaceGrade    = "抢票",
                PassengerList = new List <TraPassengerModel>()
            };

            List <ContactInfoModel> contactList = new List <ContactInfoModel>();
            foreach (TraGrabTicketPassengerModel traGrabTicketPassengerModel in addTraGrabTicketModel.PassengerList)
            {
                TraPassengerModel passengerModel = new TraPassengerModel()
                {
                    Name       = traGrabTicketPassengerModel.PassengerName,
                    CardNo     = traGrabTicketPassengerModel.CardNo,
                    CardNoType = traGrabTicketPassengerModel.CardType,
                    Mobile     = traGrabTicketPassengerModel.Mobile,
                    AgeType    = traGrabTicketPassengerModel.TicketType,
                    ServiceFee = addTraGrabTicketModel.ServiceFee,
                    ContactId  = traGrabTicketPassengerModel.ContactId,
                    FacePrice  = 0
                };
                traOrderDetailModel.PassengerList.Add(passengerModel);

                contactList.Add(new ContactInfoModel()
                {
                    ContactId      = passengerModel.ContactId,
                    CardNo         = passengerModel.CardNo,
                    CardNoType     = (int)passengerModel.CardNoType,
                    CName          = passengerModel.Name,
                    Mobile         = passengerModel.Mobile,
                    Cid            = traAddOrderModel.Order.Cid,
                    LastUpdateTime = DateTime.Now,
                    IsDel          = "F",
                    IsPassenger    = "F",
                    UpdateOid      = traAddOrderModel.Order.CreateOid,
                    DelTime        = DateTime.Now
                });
            }


            traAddOrderModel.OrderDetailList.Add(traOrderDetailModel);


            traAddOrderModel.Customer = addTraGrabTicketModel.Customer;

            addTraGrabTicketModel.OrderId = _addTraOrderBll.AddTraOrder(traAddOrderModel);

            //通知联系人对象,新增联系人
            AddContactEvent?.Invoke(this, new CommonEventArgs <List <ContactInfoModel> >(contactList));

            #endregion


            #region 添加抢票信息记录
            addTraGrabTicketModel.CreateTime    = DateTime.Now;
            addTraGrabTicketModel.GrabStatus    = TrainGrabStatusEnum.W;
            addTraGrabTicketModel.OrderId       = addTraGrabTicketModel.OrderId;
            addTraGrabTicketModel.GrabBeginTime = DateTime.Now;//任务开始时间默认当前时间,满足空铁接口要求
            TraGrabTicketEntity traGrabTicketEntity =
                Mapper.Map <AddTraGrabTicketModel, TraGrabTicketEntity>(addTraGrabTicketModel);

            List <TraGrabTicketPassengerEntity> traGrabTicketPassengerEntities =
                Mapper.Map <List <TraGrabTicketPassengerModel>, List <TraGrabTicketPassengerEntity> >(
                    addTraGrabTicketModel.PassengerList);

            traGrabTicketEntity = _traGrabTicketDal.Insert(traGrabTicketEntity);

            foreach (var traGrabTicketPassengerEntity in traGrabTicketPassengerEntities)
            {
                traGrabTicketPassengerEntity.GrabId = traGrabTicketEntity.GrabId;
                _traGrabTicketPassengerDal.Insert(traGrabTicketPassengerEntity);
            }
            #endregion


            return(traGrabTicketEntity.GrabId);
        }