public void Execute(IdentificationInfo iInfo, EnteranceRecord eRecord, OwnerInfo oInfo)
        {
            if (eRecord == null && oInfo == null)
            {
                PlateInfoCallBack();
                return;
            }
            else
            {
                string userType    = "临时车辆";
                int    day         = 255;
                bool   openTheDoor = true;
                bool   charges     = true;
                IChargesRecordService       chargesRecordService = BLL.Container.Container.Resolve <IChargesRecordService>();
                IEnumerable <ChargesRecord> chargesRecords       = chargesRecordService.Query(iInfo.LicensePlateNumber, DateTime.Today);
                double money = chargesRecords.Sum(e => e.ChargeAmount);
                if (oInfo != null)
                {
                    charges = false;
                    if (oInfo.PlateType == 0) //月租车辆
                    {
                        userType = "月租车辆";
                        day      = SurplusDays(oInfo.StopTime);
                        if (day == 0)
                        {
                            //过期
                            userType += "(过期)";
                            charges   = true;
                        }
                        //开门
                    }
                    else if (oInfo.PlateType == 1)//固定车辆
                    {
                        userType = "固定车辆";
                    }
                    else if (oInfo.PlateType == 2) //定距卡车辆
                    {
                        userType = "定距卡车辆";
                    }

                    if (oInfo.UserType == 1) //黑名单
                    {
                        //不开门
                        userType += "(黑名单)";

                        openTheDoor = false;
                    }
                }

                if (openTheDoor)
                {
                }
                else
                {
                }
            }

            PlateInfoCallBack();
        }
        public void Update(EnteranceRecord t)
        {
            string sql = "UPDATE CBEnteranceRecrd SET PlateNumber=@PlateNumber,EntranceTime=@EntranceTime,VehicleType=@VehicleType WHERE ID = @ID";

            using (IDbConnection connection = DbConnectionFactory.Create())
            {
                connection.Execute(sql);
            }
        }
        public void Delete(EnteranceRecord t)
        {
            string sql = "DELETE FROM CBEnteranceRecrd WHERE ID =@ID;";

            using (IDbConnection connection = DbConnectionFactory.Create())
            {
                connection.Execute(sql);
            }
        }
        public int Add(EnteranceRecord t)
        {
            string sql = "INSERT INTO CBEnteranceRecrd(PlateNumber,EntranceTime,VehicleType) VALUES(@PlateNumber,@EntranceTime,@VehicleType); SELECT LAST_INSERT_ROWID(); ";

            using (IDbConnection connection = DbConnectionFactory.Create())
            {
                return(connection.Query <int>(sql).FirstOrDefault());
            }
        }
        public void Execute(IdentificationInfo iInfo, EnteranceRecord eRecord, OwnerInfo oInfo)
        {
            string userType    = "临时车辆";
            int    day         = 255;
            bool   openTheDoor = true;

            if (oInfo != null)
            {
                if (oInfo.PlateType == 0) //月租车辆
                {
                    userType = "月租车辆";
                    day      = SurplusDays(oInfo.StopTime);
                    if (day == 0)
                    {
                        //过期
                        userType += "(过期)";

                        openTheDoor = false;
                    }
                    //开门
                }
                else if (oInfo.PlateType == 1)//固定车辆
                {
                    userType = "固定车辆";
                }
                else if (oInfo.PlateType == 2) //定距卡车辆
                {
                    userType = "定距卡车辆";
                }

                if (oInfo.UserType == 1) //黑名单
                {
                    //不开门
                    userType += "(黑名单)";

                    openTheDoor = false;
                }
            }
            else
            {
                openTheDoor = false;
            }

            OpenTheDoor(iInfo.LicensePlateNumber, iInfo.IdentificationTime, openTheDoor);

            PlateInfoCallBack();
        }
Example #6
0
        public void Execute(IdentificationInfo iInfo)
        {
            bool ret = Compared(iInfo.LicensePlateNumber, iInfo.IdentificationTime);

            if (ret)
            {
                return;
            }

            //获取入场的信息
            IEnteranceRecordService enteranceRecordService = BLL.Container.Container.Resolve <IEnteranceRecordService>();
            EnteranceRecord         enteranceRecord        = enteranceRecordService.Query(iInfo.LicensePlateNumber);
            //获取车主信息
            IOwnerInfoService ownerInfoService = BLL.Container.Container.Resolve <IOwnerInfoService>();
            OwnerInfo         ownerInfo        = ownerInfoService.Query(iInfo.LicensePlateNumber);

            ExitDoor.Execute(iInfo, enteranceRecord, ownerInfo);
        }
Example #7
0
        public void Execute(IdentificationInfo iInfo)
        {
            bool ret = Compared(iInfo.LicensePlateNumber, iInfo.IdentificationTime);

            if (ret)
            {
                return;
            }

            IEnteranceRecordService enteranceRecordService = BLL.Container.Container.Resolve <IEnteranceRecordService>();
            EnteranceRecord         enteranceRecord        = null;
            OwnerInfo     ownerInfo    = null;
            ChargesRecord chargeRecord = null;

            try
            {
                if (iInfo.LicensePlateNumber != "ABCDEF")
                {
                    enteranceRecord = enteranceRecordService.Query(iInfo.LicensePlateNumber);
                    //获取车主信息
                    IOwnerInfoService ownerInfoService = BLL.Container.Container.Resolve <IOwnerInfoService>();
                    ownerInfo = ownerInfoService.Query(iInfo.LicensePlateNumber);
                    //获取车辆记录中修改的车辆类型 大车 中车 小车
                    IChargesRecordService chargeRecordService = BLL.Container.Container.Resolve <IChargesRecordService>();
                    chargeRecord = chargeRecordService.Query(iInfo.LicensePlateNumber);
                }
                EnterDoor.Execute(iInfo, ownerInfo);
            }
            finally
            {
                try
                {
                    if (enteranceRecord == null)
                    {
                        int vehicleType = 0;
                        if (iInfo.LicensePlateType == LicensePlateTypes.LT_YELLOW || iInfo.LicensePlateType == LicensePlateTypes.LT_YELLOW2)
                        {
                            vehicleType = 2;
                        }
                        if (chargeRecord != null)
                        {
                            if (vehicleType != chargeRecord.VehicleType)
                            {
                                vehicleType = chargeRecord.VehicleType;
                            }
                        }
                        enteranceRecord = new EnteranceRecord(iInfo.LicensePlateNumber, iInfo.IdentificationTime, vehicleType);
                        enteranceRecordService.Add(enteranceRecord);
                    }
                    else
                    {
                        enteranceRecord.EntranceTime = iInfo.IdentificationTime;
                        enteranceRecordService.Update(enteranceRecord);
                    }
                }
                catch (Exception ex)
                {
                    Log.Error(ex.Message, ex);
                }
            }
        }