public string InsertTicket(TTicket ticket, string userId)
        {
            try
            {
                //------------------------------------------------------------//
                // check a valid of Ticket
                //------------------------------------------------------------//
                TicketSaleDateBusiness saleDatebusines = new TicketSaleDateBusiness();
                Ticket newTicket = ThriftUtil.ConvertToEntityObject(ticket) as Ticket;

                string errorMessage = CheckTicketInfo(newTicket);
                errorMessage += saleDatebusines.ValidateDateTime(newTicket.departure_time);

                if (string.IsNullOrEmpty(errorMessage) == false)
                {
                    return(errorMessage);
                }

                TicketBusiness business  = new TicketBusiness();
                string         resultMsg = business.Insert(newTicket);

                ////notify to the others client station
                //ticket.TicketId = ticketId;
                //BroadcastToClient(ClientAction.SellTicket,ticket);

                return(resultMsg);
            }
            catch (Exception exc)
            {
                ServerLogger.logError("[InsertTicket]", exc);
                return(exc.Message);
            }
        }
Exemplo n.º 2
0
        protected string InsertObject <T, E>(List <T> TObjectList)
            where T : TBase
            where E : EntityObject
        {
            string errorMessage = string.Empty;

            try
            {
                using (ThanhVanTranSysEntities context = new ThanhVanTranSysEntities())
                {
                    var objectSet = context.CreateObjectSet <E>();
                    foreach (var tobj in TObjectList)
                    {
                        objectSet.AddObject((E)ThriftUtil.ConvertToEntityObject(tobj));
                    }

                    context.SaveChanges();
                }
            }
            catch (Exception exc)
            {
                AppLogger.logError("InsertObject", exc);
                return(exc.Message);
            }
            return(errorMessage);
        }
        public string UpdateOrderInfo(TOrder torder, List <TOrderItem> orderItems, string userId)
        {
            try
            {
                //Check Order
                string errorMessage = CheckOrder(torder, true);

                //check OrderItem
                errorMessage += orderItems.Count == 0 ? "Không có thông tin hàng hóa" : "";

                if (string.IsNullOrEmpty(errorMessage) == false)
                {
                    return(errorMessage);
                }

                if (torder.Type == Constants.VALUE_ORDER_TYPE_REGULAR)
                {
                    using (RegularOrderBusiness business = new RegularOrderBusiness())
                    {
                        business.Update(ThriftUtil.ConvertToEntityObject(torder) as RegularOrder);
                    }
                }
                else
                {
                    using (IrregularOrderBusiness business = new IrregularOrderBusiness())
                    {
                        business.Update(ThriftUtil.ConvertToEntityObject(torder) as IrregularOrder);
                    }
                }

                using (OrderItemBusiness business = new OrderItemBusiness())
                {
                    business.DeleteByOrderId(torder.OrderId);

                    business.Insert(ThriftUtil.ConvertToOrderItemList(orderItems).Cast <OrderItem>());
                }

                //notify to the others client station
                //BroadcastToClient(ClientAction.UpdateOrder,order,orderItems);

                return("");
            }
            catch (Exception exc)
            {
                ServerLogger.logError("[UpdateOrderInfo]", exc);
                return(exc.Message);
            }
        }
Exemplo n.º 4
0
        protected string SyncObject <T, E>(List <T> TObjectList)
            where T : TBase
            where E : EntityObject
        {
            string errorMessage = string.Empty;

            try
            {
                using (ThanhVanTranSysEntities context = new ThanhVanTranSysEntities())
                {
                    var objectSet = context.CreateObjectSet <E>();

                    foreach (var tobj in TObjectList)
                    {
                        E      changeObj = (E)ThriftUtil.ConvertToEntityObject(tobj);
                        string id        = typeof(E).GetProperty("id").GetValue(changeObj, null).ToString();
                        bool   isDeleted = bool.Parse(typeof(T).GetProperty("IsDeleted").GetValue(tobj, null).ToString());

                        E existedEntity = objectSet.ToList().FirstOrDefault(e => typeof(E).GetProperty("id").GetValue(e, null).ToString().Equals(id));
                        if (existedEntity != null)
                        {
                            objectSet.DeleteObject(existedEntity);
                        }

                        if (isDeleted == false)
                        {
                            objectSet.AddObject(changeObj);
                        }

                        context.SaveChanges();
                    }
                }
            }
            catch (Exception exc)
            {
                AppLogger.logError("SyncObject", exc);
                return(exc.Message);
            }
            return(errorMessage);
        }
        public string UpdateTicket(TTicket tticket, string userId)
        {
            try
            {
                using (ThanhVanTranSysEntities context = new ThanhVanTranSysEntities())
                {
                    DateTime departTime    = DateTime.Parse(tticket.DepartTime);
                    var      existedTicket = context.Tickets.FirstOrDefault(t => t.bus_id == tticket.BusId &&
                                                                            t.departure_time == departTime &&
                                                                            t.seat_number == tticket.SeatNo &&
                                                                            t.seat_class == tticket.SeatType &&
                                                                            t.tour_id == tticket.TourId);

                    if (existedTicket == null || (existedTicket != null && existedTicket.status == Constants.TicketStatus.Cancel.ToString()))
                    {
                        return(Constants.SERVER_ERROR_CODE_SINGLE_DATA_NOT_SYNC + " Vé đã bị xóa!");
                    }
                }

                if (CheckUserPermission(userId, tticket.UserId) == false)
                {
                    return(Constants.Messages.MSG_TICKET_INSUFFICIENT_PERMISSION);
                }

                TicketBusiness business  = new TicketBusiness();
                Ticket         ticket    = ThriftUtil.ConvertToEntityObject(tticket) as Ticket;
                string         resultMsg = business.Update(ticket);

                //notify to the others client station
                //BroadcastToClient(ClientAction.UpdateTicket,ticket);

                return(resultMsg);
            }
            catch (Exception exc)
            {
                ServerLogger.logError("[UpdateTicket]", exc);
                return(exc.Message);
            }
        }
        public string UpdateSingleOrderInfo(TOrder torder, string userId)
        {
            try
            {
                //Check Order
                string errorMessage = CheckOrder(torder, true);

                if (string.IsNullOrEmpty(errorMessage) == false)
                {
                    return(errorMessage);
                }

                if (torder.Type == Constants.VALUE_ORDER_TYPE_REGULAR)
                {
                    using (RegularOrderBusiness business = new RegularOrderBusiness())
                    {
                        business.Update(ThriftUtil.ConvertToEntityObject(torder) as RegularOrder);
                    }
                }
                else
                {
                    using (IrregularOrderBusiness business = new IrregularOrderBusiness())
                    {
                        business.Update(ThriftUtil.ConvertToEntityObject(torder) as IrregularOrder);
                    }
                }

                //notify to the others client station
                //BroadcastToClient(ClientAction.UpdateOrder,order,orderItems);

                return("");
            }
            catch (Exception exc)
            {
                ServerLogger.logError("[UpdateSingleOrderInfo]", exc);
                return(exc.Message);
            }
        }