예제 #1
0
 //the div will use the constructing parameters to populate the classes instead
 protected override void CreateTag(TagBuilder tagBuilder, VehicleStatus vehicleStatus)
 {
     tagBuilder.AddCssClass(_className);
     tagBuilder.AddCssClass(vehicleStatus == VehicleStatus.Success
                             ? _trueCssClass
                             : _falseCssClass);
 }
예제 #2
0
        public override async Task ReceiveAsync(WebSocket socket, WebSocketReceiveResult result, byte[] buffer)
        {
            //var socketId = WebSocketConnectionManager.GetId(socket);
            var jsonStr = Encoding.UTF8.GetString(buffer, 0, result.Count);

            Console.WriteLine(jsonStr);

            try {
                JObject       obj    = JObject.Parse(jsonStr);
                VehicleStatus status = obj.ToObject <VehicleStatus>();

                if (status != null)
                {
                    status.StatusTime = DateTime.Now;
                    jsonStr           = JsonConvert.SerializeObject(status);
                    Console.WriteLine("valid json");
                    using (var db = new DataContext())
                    {
                        var count = db.SaveStatus(status);
                        Console.WriteLine("{0} records saved to database", count);
                    }
                }
                else
                {
                    Console.WriteLine("NOT JSON");
                }

                await SendMessageToAllAsync(jsonStr);
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
                Console.WriteLine("Invalid Json");
            }
        }
예제 #3
0
        private static Task <MethodResponse> Unlock(MethodRequest methodRequest, object userContext)
        {
            if (status == VehicleStatus.droppedOff)
            {
                Random rand        = new Random();
                var    data        = Encoding.UTF8.GetString(methodRequest.Data);
                char[] charsToTrim = { ' ', '\\', '\"' };
                contractId = data.Trim(charsToTrim);

                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("Car Unlocked - On trip now!");
                Console.ResetColor();
                status = VehicleStatus.pickedUp;
                tripAvgFuelConsumptionRate = carAvgFuelConsumptionRate + rand.Next(-3, 3); // every trip can have a varying average rate
                // Acknowlege the direct method call with a 200 success message
                string result = "{\"result\":\"Executed direct method: " + methodRequest.Name + "\"}";
                return(Task.FromResult(new MethodResponse(Encoding.UTF8.GetBytes(result), 200)));
            }
            else
            {
                // Acknowlege the direct method call with a 400 error message
                string result = "{\"result\":\"Invalid status update. Existing Status must be dropped-off\"}";
                return(Task.FromResult(new MethodResponse(Encoding.UTF8.GetBytes(result), 400)));
            }
        }
예제 #4
0
        public async Task <VehicleStatus> Next()
        {
            await RandomDelay();

            _status = NextStatus();
            return(_status);
        }
예제 #5
0
    //require a VehicleStatus for rendering to an HtmlString
    public String ToHtmlString(VehicleStatus vehicleStatus)
    {
        var tag = new TagBuilder(_tag);

        this.CreateTag(tag, vehicleStatus);
        return(tag.ToString());
    }
예제 #6
0
 public VehiclesGarage(string i_Name, string i_PhoneNumber, Vehicles i_Vehicle)
 {
     m_Name        = i_Name;
     m_PhoneNumber = i_PhoneNumber;
     m_Status      = VehicleStatus.InAmendment;
     m_Vehicle     = i_Vehicle;
 }
        public async Task <IActionResult> PutVehicleStatus(int id, VehicleStatus vehicleStatus)
        {
            if (id != vehicleStatus.Id)
            {
                return(BadRequest());
            }

            CurrentUserId = User.FindFirst(ClaimTypes.NameIdentifier).Value;
            vehicleStatus.UserModified = CurrentUserId;
            vehicleStatus.DateModified = DateTime.Now;

            _context.Entry(vehicleStatus).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();

                return(Ok(new DefaultData
                {
                    success = true
                }));
            }
            catch (Exception ex)
            {
                return(BadRequest(new DefaultData
                {
                    success = false,
                    message = ex.Message
                }));
            }
        }
예제 #8
0
 protected override void CreateTag(TagBuilder tagBuilder, VehicleStatus vehicleStatus)
 {
     tagBuilder.AddCssClass("glyphicon");
     tagBuilder.AddCssClass(vehicleStatus == VehicleStatus.Success
                             ? "glyphicon-remove-circle"
                             : "glyphicon-add-circle");
 }
예제 #9
0
 protected override void CreateTag(TagBuilder tagBuilder, VehicleStatus vehicleStatus)
 {
     tagBuilder.AddCssClass("panel");
     tagBuilder.AddCssClass(vehicleStatus == VehicleStatus.Success
                             ? "panel-success"
                             : "panel-danger");
 }
예제 #10
0
        public int SaveStatus(VehicleStatus newStatus)
        {
            this.AllStatus.Add(newStatus);
            var count = this.SaveChanges();

            return(count);
        }
        public async Task <IActionResult> GetLatestPingStatus(string vehicleId)
        {
            if (string.IsNullOrEmpty(vehicleId))
            {
                return(BadRequest("Invalid vehicle id."));
            }

            VehicleStatus response = null;

            try
            {
                response = await _dataRepository.GetLastStatus(vehicleId);

                if (response == null)
                {
                    return(NoContent());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest($"Unexpected error: {ex.Message}"));
            }


            return(Ok(response));
        }
예제 #12
0
        public IActionResult AlterStatus(long id, VehicleStatus currentStatus, int status)
        {
            if (currentStatus == VehicleStatus.InService)
            {
                ViewBag.Error = new List <string> {
                    "Não é possível alterar o status de um veículo que está realizando um atendimento."
                };
                var vehicles = _vehicleRest.FindPaginated(new VehicleFilter());
                return(View("Status", vehicles));
            }

            var result = _vehicleRest.Find(new VehicleFilter {
                Id = id
            });

            if (!result.Success)
            {
                ViewBag.Error = result.Messages;
                var vehicles = _vehicleRest.FindPaginated(new VehicleFilter());
                return(View("Status", vehicles));
            }

            result.Model.VehicleStatus = (VehicleStatus)status;
            var resultUpdate = _vehicleRest.Update(result.Model);

            if (!resultUpdate.Success)
            {
                var vehicles = _vehicleRest.FindPaginated(new VehicleFilter());
                return(View("Status", vehicles));
            }
            return(RedirectToAction(nameof(Status)));
        }
예제 #13
0
        public IEnumerable <IVehicle> GetVehicles(VehicleStatus status)
        {
            switch (status)
            {
            case VehicleStatus.All:
                return(TestData.Vehicles);

            case VehicleStatus.Booked:
                return(from c in TestData.Vehicles
                       join b in TestData.Bookings on c.Id equals b.VehicleId
                       where b.Returned.Equals(DateTime.MinValue)
                       select c);

            case VehicleStatus.Available:
                return(from c in TestData.Vehicles
                       where GetVehicles(VehicleStatus.Booked)
                       .Count(b => b.Id.Equals(c.Id)).Equals(0)
                       select c);

            default:
                break;
            }

            return(new List <IVehicle>());
        }
        // POST: /VehicleStatus/Delete/5

        public ActionResult Delete(int id)
        {
            VehicleStatus vehiclestatus = db.VehicleStatuss.Find(id);

            db.VehicleStatuss.Remove(vehiclestatus);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #15
0
 public VehicleStatus Post(VehicleStatus vehicleStatus)
 {
     if (vehicleStatus == null || !ModelState.IsValid)
     {
         throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request");
     }
     return(vehicleStatusService.SaveUpdateVehicleStatus(vehicleStatus.CreateFrom()).CreateFrom());
 }
예제 #16
0
        //public bool Light { get; set; }
        //public bool Doors { get; set; }
        //public bool Klima { get; set; }
        //public bool Engine { get; set; }


        public Vehicle()
        {
            Status = VehicleStatus.Engine | VehicleStatus.Lights | VehicleStatus.Klima;

            if (Status.HasFlag(VehicleStatus.Lights))
            {
            }
        }
예제 #17
0
 public HashTableFormat(Vehicle i_Vehicle, bool i_IsElectric, string i_ClientName, string i_ClientPhone, VehicleType i_VehicleType)
 {
     m_Vehicle     = i_Vehicle;
     m_IsElectric  = i_IsElectric;
     m_Status      = VehicleStatus.repairing;
     m_Person      = new Person(i_ClientName, i_ClientPhone);
     m_VehicleType = i_VehicleType;
 }
예제 #18
0
 public Boolean Delete(VehicleStatus vehicleStatus)
 {
     if (Request == null || !ModelState.IsValid)
     {
         throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request");
     }
     vehicleStatusService.DeleteVehicleStatus(vehicleStatus.VehicleStatusId);
     return(true);
 }
 public ViewModelGarageVehicleEntry(
     uint vehicleGameObjectId,
     IProtoVehicle protoVehicle,
     VehicleStatus status)
 {
     this.VehicleGameObjectId = vehicleGameObjectId;
     this.ProtoVehicle        = protoVehicle;
     this.Status = status;
 }
예제 #20
0
 /// <summary>
 /// Update Vehicle Status Properties while updating the instance
 /// </summary>
 private void UpdateVehicleStatusProperties(VehicleStatus vehicleStatus, VehicleStatus dbVersion)
 {
     dbVersion.RecLastUpdatedBy         = vehicleStatusRepository.LoggedInUserIdentity;
     dbVersion.RecLastUpdatedDt         = DateTime.Now;
     dbVersion.RowVersion               = dbVersion.RowVersion + 1;
     dbVersion.VehicleStatusCode        = vehicleStatus.VehicleStatusCode;
     dbVersion.VehicleStatusName        = vehicleStatus.VehicleStatusName;
     dbVersion.VehicleStatusDescription = vehicleStatus.VehicleStatusDescription;
 }
예제 #21
0
 public ViewModelGarageVehicleEntry(
     uint vehicleGameObjectId,
     IProtoVehicle protoVehicle,
     VehicleStatus status)
 {
     VehicleGameObjectId = vehicleGameObjectId;
     ProtoVehicle        = protoVehicle;
     Status = status;
     UpdateName();
 }
 public ActionResult Edit([Bind(Include = "Id,StatusName")] VehicleStatus vehiclestatus)
 {
     if (ModelState.IsValid)
     {
         db.Entry(vehiclestatus).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(vehiclestatus));
 }
예제 #23
0
 /// <summary>
 ///  Create From web model
 /// </summary>
 public static Cares.Models.DomainModels.VehicleStatus CreateFrom(this VehicleStatus source)
 {
     return(new Cares.Models.DomainModels.VehicleStatus
     {
         VehicleStatusId = source.VehicleStatusId,
         VehicleStatusName = source.VehicleStatusName,
         VehicleStatusCode = source.VehicleStatusCode,
         VehicleStatusDescription = source.VehicleStatusDescription
     });
 }
        public ActionResult Create([Bind(Include = "Id,StatusName")] VehicleStatus vehiclestatus)
        {
            if (ModelState.IsValid)
            {
                db.VehicleStatuss.Add(vehiclestatus);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(vehiclestatus));
        }
예제 #25
0
 public Vehicle(Guid id, string teamName, string model, DateTime manufacturingDate, VehicleType type, VehicleStatus status, double distance, string finishTime)
 {
     Id                = id;
     TeamName          = teamName;
     Model             = model;
     ManufacturingDate = manufacturingDate;
     Type              = type;
     Status            = status;
     Distance          = distance;
     FinishTime        = finishTime;
 }
예제 #26
0
        public void HandleMsg(string strMsg)
        {
            string CommandID = XmlUtil.XmlAnalysis("CommandID", strMsg);

            if (CommandID != "ShakeHand")
            {
                LogHelper.WriteNetMsgLog("Recieve BServer message:" + strMsg);
            }
            switch (CommandID)
            {
            case "ShakeHand":
                ShakeHand ShakeHand = (ShakeHand)XmlUtil.Deserialize(typeof(ShakeHand), strMsg);
                if (ShakeHand.TLX == "BSS")
                {
                    HandleSharkHandleMsg(ShakeHand);
                }
                break;

            case "CommonInterface":
                CommonInterface Common = (CommonInterface)XmlUtil.Deserialize(typeof(CommonInterface), strMsg);
                OnMessageChange(Common);
                break;

            case "DispatchTaskSelectData":
                DispatchTaskSelectData SelectData = (DispatchTaskSelectData)XmlUtil.Deserialize(typeof(DispatchTaskSelectData), strMsg);
                //SelectData.DWBH = ConfigurationManager.AppSettings["UnitCode"].Trim();
                OnMessageChange(SelectData);
                break;

            case "GetVehiclePositionResp":
                GetVehiclePositionResp VehiclePositionResp = (GetVehiclePositionResp)XmlUtil.Deserialize(typeof(GetVehiclePositionResp), strMsg);
                OnMessageChange(VehiclePositionResp);
                break;

            case "MonitorData":
                MonitorData MonitorData = (MonitorData)XmlUtil.Deserialize(typeof(MonitorData), strMsg);
                OnMessageChange(MonitorData);
                break;

            case "VehicleStatus":
                VehicleStatus VehicleStatus = (VehicleStatus)XmlUtil.Deserialize(typeof(VehicleStatus), strMsg);
                //VehicleStatus.DWBH = ConfigurationManager.AppSettings["UnitCode"].Trim();
                OnMessageChange(VehicleStatus);
                break;

            case "DispatchTaskRequestReinforcementResp":
                DispatchTaskRequestReinforcementResp DispatchTaskResp = (DispatchTaskRequestReinforcementResp)XmlUtil.Deserialize(typeof(DispatchTaskRequestReinforcementResp), strMsg);
                OnMessageChange(DispatchTaskResp);
                break;

            default:
                break;
            }
        }
예제 #27
0
 public IEnumerable <IVehicle> GetVehicles(VehicleStatus status)
 {
     try
     {
         return(DataLayer.GetVehicles(status));
     }
     catch
     {
         throw;
     };
 }
예제 #28
0
        public ViewModelGarageVehicleEntry(
            uint vehicleGameObjectId,
            IProtoVehicle protoVehicle,
            VehicleStatus status)
        {
            this.VehicleGameObjectId = vehicleGameObjectId;
            this.ProtoVehicle        = protoVehicle;
            this.Status = status;

            VehicleNamesSystem.ClientVehicleNameChanged += this.VehicleNameChangedHandler;
        }
예제 #29
0
      internal void Handle(GetVehicleStatus input) {
         var status = new VehicleStatus {
            // TODO: get all the below things from the DB
            // 
            Location = Coordinate.Undefined,
            Odometer = (Distance)1000,
            VehicleMode = VehicleMode.Charging
         };

         Reply(status);
      }
예제 #30
0
파일: UI.cs 프로젝트: shameshame/.Net
 public void OutputByStatusFilter(VehicleStatus i_State)
 {
     foreach (string key in m_Logic.HashTable.Keys)
     {
         if (m_Logic.HashTable[key].CarStatus == i_State)
         {
             string output = string.Format(@"Licence Plate : {0}     Status: {1}
             ", m_Logic.HashTable[key].Vehicle.LicencePlate, m_Logic.HashTable[key].CarStatus);
             Console.WriteLine(output);
         }
     }
 }
예제 #31
0
 public int?GetLastVehicalOpenTrip(string vId)
 {
     using (VehicleStatusRepository vsRepo = new VehicleStatusRepository())
     {
         VehicleStatus vsModel = vsRepo.GetByQR(vId);
         if (vsModel != null)
         {
             return(_objectSet.FirstOrDefault(x => x.VehicleId == vsModel.VehicleId && x.IsDone == false)?.Id);
         }
     }
     return(null);
 }