예제 #1
0
        /// <summary>
        /// 속성들을 Xml Attribute로 생성합니다.
        /// </summary>
        /// <param name="writer">Attribute를 쓸 Writer</param>
        public override void GenerateXmlAttributes(System.Xml.XmlWriter writer)
        {
            base.GenerateXmlAttributes(writer);

            if (DataStreamUrl.IsNotWhiteSpace())
            {
                writer.WriteAttributeString("dataStreamUrl", DataStreamUrl.UrlEncode());
            }
            if (RefreshInterval.HasValue)
            {
                writer.WriteAttributeString("refreshInterval", RefreshInterval.ToString());
            }
            if (DataStamp.IsNotWhiteSpace())
            {
                writer.WriteAttributeString("dataStamp", DataStamp);
            }
            if (ShowRTMenuItem.HasValue)
            {
                writer.WriteAttributeString("ShowRTMenuItem", ShowRTMenuItem.GetHashCode().ToString());
            }

            if (AnnRenderDelay.HasValue)
            {
                writer.WriteAttributeString("AnnRenderDelay", AnnRenderDelay.Value.ToString());
            }
            if (AutoScale.HasValue)
            {
                writer.WriteAttributeString("AutoScale", AutoScale.GetHashCode().ToString());
            }

            if (IsEditMode.HasValue)
            {
                writer.WriteAttributeString("IsEditMode", IsEditMode.GetHashCode().ToString());
            }

            if (ConnectNullData.HasValue)
            {
                writer.WriteAttributeString("ConnectNullData", ConnectNullData.GetHashCode().ToString());
            }

            if (_tickMarkAttr != null)
            {
                _tickMarkAttr.GenerateXmlAttributes(writer);
            }
            if (_messageLogAttr != null)
            {
                _messageLogAttr.GenerateXmlAttributes(writer);
            }

            if (_fontAttr != null)
            {
                _fontAttr.GenerateXmlAttributes(writer);
            }
        }
예제 #2
0
        public async override System.Threading.Tasks.Task LoadModelFromDbAsync(long vehicleInsRecID)
        {
            this.Model = await SqliteHelper.Storage.GetSingleRecordAsync <CVehicleDetails>(x => x.VehicleInsRecID == vehicleInsRecID);

            if (this.Model == null)
            {
                this.Model = new CVehicleDetails()
                {
                    VehicleInsRecID = vehicleInsRecID
                };

                PropertyHistory.Instance.SetPropertyHistory((CVehicleDetails)this.Model);
                AppSettings.Instance.IsSyncingVehDetails = 1;
            }

            else
            {
                AppSettings.Instance.IsSyncingVehDetails = 0;
                BaseModel viBaseObject = (CVehicleDetails)this.Model;
                viBaseObject.LoadSnapshotsFromDb();
                PropertyHistory.Instance.SetPropertyHistory(viBaseObject);
                viBaseObject.ShouldSave = false;
            }

            DataStamp dataStamp = new DataStamp();
            var       d         = (CVehicleDetails)this.Model;

            var geolocator = new Geolocator();
            var position   = await geolocator.GetGeopositionAsync();

            if (position != null && position.Coordinate != null)
            {
                dataStamp.Gps = position.Coordinate.Longitude.ToString() + Environment.NewLine + position.Coordinate.Longitude.ToString();
            }
            dataStamp.CaseNo                    = d.CaseNumber;
            dataStamp.CusName                   = StampPersistData.Instance.Task.CustomerName;
            dataStamp.DateOfFirstReg            = "";
            dataStamp.InspectorName             = StampPersistData.Instance.Task.AllocatedTo;
            dataStamp.KMReading                 = "";
            dataStamp.Make                      = d.Make;
            dataStamp.VehRegNo                  = d.RegistrationNumber;
            StampPersistData.Instance.DataStamp = dataStamp;
        }