コード例 #1
0
        public static string GetDescription(ParkWorkMode workMode)
        {
            switch (workMode)
            {
            case ParkWorkMode.OffLine:
                return(Resource1.ParkWorkmode_Offline);

            case ParkWorkMode.Fool:
                return(Resource1.ParkWorkmode_Online);

            default:
                return(string.Empty);
            }
        }
コード例 #2
0
        public static string GetDescription(ParkWorkMode mode)
        {
            switch (mode)
            {
            case ParkWorkMode.Fool:
                return("在线模式");

            case ParkWorkMode.OffLine:
                return("写卡模式");

            default:
                return(string.Empty);
            }
        }
コード例 #3
0
ファイル: CardEventReport.cs プロジェクト: darcyg/510-Null
        public static CardEventReport CreateExitEvent(CardInfo card, int parkID, int entranceID, string entranceName, ParkWorkMode workMode, Byte carType, TariffSetting ts, DateTime eventDateTime)
        {
            CardEventReport report = new CardEventReport();

            report.ID                          = Guid.NewGuid();
            report.ParkID                      = parkID;
            report.EventDateTime               = eventDateTime;
            report.EntranceID                  = entranceID;
            report.SourceName                  = entranceName;
            report.IsExitEvent                 = true;
            report.CardID                      = card.CardID;
            report.OwnerName                   = card.OwnerName;
            report.CardCarPlate                = card.CarPlate;
            report.CarPlate                    = card.RegCarPlate;
            report.CardCertificate             = card.CardCertificate;
            report.CardType                    = card.CardType;
            report.CarType                     = carType;
            report.EventStatus                 = CardEventStatus.Pending;
            report.LastDateTime                = card.LastDateTime;
            report.LastCarPlate                = card.LastCarPlate;
            report.CardPaymentInfo             = CardPaymentInfoFactory.CreateCardPaymentRecord(card, ts, carType, eventDateTime);
            report.Balance                     = card.Balance;
            report.ValidDate                   = card.ValidDate;
            report.OnlineHandleWhenOfflineMode = card.OnlineHandleWhenOfflineMode;
            report.ParkingStatus               = ParkingStatus.Out;
            report.UpdateFlag                  = true;
            report.WorkMode                    = workMode;
            return(report);
        }
コード例 #4
0
ファイル: CardEventReport.cs プロジェクト: darcyg/510-Null
        public static CardEventReport CreateEnterEvent(CardInfo card, int parkID, int entranceID, string entranceName, ParkWorkMode workMode, DateTime eventDatetime)
        {
            CardEventReport report = new CardEventReport();

            report.ID                          = Guid.NewGuid();
            report.ParkID                      = parkID;
            report.EntranceID                  = entranceID;
            report.IsExitEvent                 = false;
            report.SourceName                  = entranceName;
            report.CardType                    = card.CardType;
            report.CarType                     = card.CarType;
            report.CardID                      = card.CardID;
            report.OwnerName                   = card.OwnerName;
            report.CardCarPlate                = card.CarPlate;
            report.CarPlate                    = card.RegCarPlate;
            report.CardCertificate             = card.CardCertificate;
            report.EventDateTime               = eventDatetime;
            report.EventStatus                 = 0;
            report.LastDateTime                = card.LastDateTime;
            report.ValidDate                   = card.ValidDate;
            report.Balance                     = card.Balance;
            report.OnlineHandleWhenOfflineMode = card.OnlineHandleWhenOfflineMode;
            report.ParkingStatus               = ParkingStatus.In;
            report.UpdateFlag                  = true;
            report.WorkMode                    = workMode;
            return(report);
        }
コード例 #5
0
        public static CardEventReport CreateExitEvent(CardInfo card, int parkID, int entranceID, string entranceName, ParkWorkMode workMode, Byte carType, TariffSetting ts, DateTime eventDateTime)
        {
            CardEventReport report = new CardEventReport();

            report.ID              = Guid.NewGuid();
            report.ParkID          = parkID;
            report.EventDateTime   = eventDateTime;
            report.EntranceID      = entranceID;
            report.SourceName      = entranceName;
            report.IsExitEvent     = true;
            report.CardID          = card.CardID;
            report.OwnerName       = card.OwnerName;
            report.Department      = card.Department;
            report.CardCarPlate    = card.CarPlate;
            report.CarPlate        = card.RegCarPlate;
            report.CardCertificate = card.CardCertificate;
            report.ListType        = card.ListType;
            report.CardType        = card.CardType;
            report.CarType         = carType;
            report.EventStatus     = CardEventStatus.Pending;
            report.LastDateTime    = card.LastDateTime;
            report.LastCarPlate    = card.LastCarPlate;
            report.LastEntrance    = card.LastEntrance;
            //report.CardPaymentInfo = CardPaymentInfoFactory.CreateCardPaymentRecord(card, ts, carType, eventDateTime);
            report.CardPaymentInfo             = CardPaymentInfoFactory.CreateCardPaymentRecord(report.ParkID, card, ts, carType, eventDateTime);
            report.Balance                     = card.Balance;
            report.ValidDate                   = card.ValidDate;
            report.OnlineHandleWhenOfflineMode = (card.OnlineHandleWhenOfflineMode || card.IsCarPlateList);//车牌名单时固定按在线处理
            report.ParkingStatus               = ParkingStatus.Out;
            report.UpdateFlag                  = true;
            report.WorkMode                    = workMode;
            report.FreeDateTime                = card.FreeDateTime;
            if (card.EnableHotelApp && !card.HotelCheckOut && card.IsInFreeTime(eventDateTime))
            {
                //如果启用了酒店应用,并且未退房,并且未过免费时间的,需要保留以下状态
                report.EnableHotelApp = card.EnableHotelApp;
                report.HotelCheckOut  = card.HotelCheckOut;
            }
            report.CardOptions = card.Options;
            return(report);
        }
コード例 #6
0
        public static CardEventReport CreateEnterEvent(CardInfo card, int parkID, int entranceID, string entranceName, ParkWorkMode workMode, DateTime eventDatetime)
        {
            CardEventReport report = new CardEventReport();

            report.ID                          = Guid.NewGuid();
            report.ParkID                      = parkID;
            report.EntranceID                  = entranceID;
            report.IsExitEvent                 = false;
            report.SourceName                  = entranceName;
            report.ListType                    = card.ListType;
            report.CardType                    = card.CardType;
            report.CarType                     = card.CarType;
            report.CardID                      = card.CardID;
            report.OwnerName                   = card.OwnerName;
            report.Department                  = card.Department;
            report.CardCarPlate                = card.CarPlate;
            report.CarPlate                    = card.RegCarPlate;
            report.CardCertificate             = card.CardCertificate;
            report.EventDateTime               = eventDatetime;
            report.EventStatus                 = 0;
            report.LastDateTime                = card.LastDateTime;
            report.ValidDate                   = card.ValidDate;
            report.Balance                     = card.Balance;
            report.OnlineHandleWhenOfflineMode = (card.OnlineHandleWhenOfflineMode || card.IsCarPlateList);//车牌名单时固定按在线处理
            report.ParkingStatus               = ParkingStatus.In;
            report.UpdateFlag                  = true;
            report.WorkMode                    = workMode;
            report.FreeDateTime                = card.FreeDateTime;
            report.EnableHotelApp              = card.EnableHotelApp;
            report.HotelCheckOut               = card.HotelCheckOut;
            report.CardOptions                 = card.Options;
            return(report);
        }
コード例 #7
0
ファイル: CANEntrance.cs プロジェクト: josephca88/510-Null
        private void SetEntranceMode(ParkWorkMode mode)
        {
            Packet packet = _PacketCreater.CreateSetWorkmodePacket(Address, (byte)(mode == ParkWorkMode.OffLine ? 0 : 3));

            _CommComponent.SendPacket(packet);
        }