private static MaintenanceInfo ParseMaintenanceContainingFile(string maintenanceCost)
        {
            MaintenanceInfo result = null;

            var indexOfFileHeader = maintenanceCost.IndexOf("[[", StringComparison.OrdinalIgnoreCase);
            var valueString       = maintenanceCost.Substring(0, indexOfFileHeader).Trim();
            var temp = maintenanceCost.Remove(0, indexOfFileHeader);

            if (!double.TryParse(valueString, out double value))
            {
            }

            temp = temp.Replace("[[File:", string.Empty); //filename with space? .Replace(" ", string.Empty)
            var splitted = temp.Split(new[] { "|" }, StringSplitOptions.RemoveEmptyEntries);
            var tempName = splitted[0];

            var unit = new CostUnit
            {
                Type = CostUnitType.File,
                Name = tempName.Trim()
            };

            result = new MaintenanceInfo
            {
                Value = value,
                Unit  = unit
            };

            return(result);
        }
        private static MaintenanceInfo ParseMaintenanceContainingInfoIcon(string maintenanceCost)
        {
            MaintenanceInfo result = null;

            var splittedInfo = maintenanceCost.Split(new[] { WIKITEXT_LINK_START }, StringSplitOptions.RemoveEmptyEntries);

            if (!double.TryParse(splittedInfo[0], out double parsedValue))
            {
                logger.Warn($"could not parse maintenance cost: \"{maintenanceCost}\"");
            }

            var unit = new CostUnit();

            if (splittedInfo[1].Contains("Infoicon"))
            {
                unit.Type = CostUnitType.InfoIcon;
            }
            else
            {
                unit.Type = CostUnitType.Unknown;
            }

            unit.Name = splittedInfo[1].Replace(WIKITEXT_LINK_END, string.Empty).Replace("Infoicon", string.Empty).Trim();

            result = new MaintenanceInfo
            {
                Value = parsedValue,
                Unit  = unit,
            };


            return(result);
        }
        private static MaintenanceInfo ParseMaintenanceContainingInfoIcon(string maintenanceCost)
        {
            MaintenanceInfo result = null;

            if (!double.TryParse(maintenanceCost.Split(new[] { "{{" }, StringSplitOptions.RemoveEmptyEntries)[0], out double value))
            {
                //−20
                //-20
            }

            var splittedInfo = maintenanceCost.Split(new[] { "{{" }, StringSplitOptions.RemoveEmptyEntries);

            var unit = new CostUnit();

            if (splittedInfo[1].Contains("Infoicon"))
            {
                unit.Type = CostUnitType.InfoIcon;
            }
            else
            {
                unit.Type = CostUnitType.Unknown;
            }

            unit.Name = splittedInfo[1].Replace("}}", string.Empty).Replace("Infoicon", string.Empty).Trim();

            result = new MaintenanceInfo
            {
                Value = double.Parse(splittedInfo[0]),
                Unit  = unit,
            };


            return(result);
        }
Ejemplo n.º 4
0
 public async Task <CostUnit> SaveCostUnit(CostUnit pCostUnit)
 {
     if (pCostUnit.Id == Guid.Empty)
     {
         return(await mAsyncCLient.AddCostUnitAsync(pCostUnit));
     }
     return(await mAsyncCLient.EditCostUnitAsync(pCostUnit));
 }
Ejemplo n.º 5
0
        private async void CostListView_ItemSelected(object sender, SelectedItemChangedEventArgs e)
        {
            _costUnit = e.SelectedItem as CostUnit;
            if (_costUnit == null)
            {
                return;
            }

            await Navigation.PopModalAsync();
        }
Ejemplo n.º 6
0
 public bool DeleteCostUnit(CostUnit pCostUnit) => mBlue10Async.DeleteCostUnitAsync(pCostUnit).Sync();
Ejemplo n.º 7
0
 public CostUnit EditCostUnit(CostUnit pCostUnit) => mBlue10Async.EditCostUnitAsync(pCostUnit).Sync();
Ejemplo n.º 8
0
 public CostUnit AddCostUnit(CostUnit pCostUnit) => mBlue10Async.AddCostUnitAsync(pCostUnit).Sync();
Ejemplo n.º 9
0
 public async Task <bool> DeleteCostUnit(CostUnit pCostUnit)
 {
     return(await mAsyncCLient.DeleteCostUnitAsync(pCostUnit));
 }
Ejemplo n.º 10
0
 public bool DeleteCostUnit(CostUnit pCostUnit) =>
 SyncHelper.RunAsyncAsSync(() =>
                           DeleteItem($"{COSTUNITS}/{pCostUnit.Id}"));
Ejemplo n.º 11
0
 public CostUnit EditCostUnit(CostUnit pCostUnit) =>
 SyncHelper.RunAsyncAsSync(() =>
                           EditAndReturnItem(pCostUnit, $"{COSTUNITS}/{pCostUnit.Id}"));
Ejemplo n.º 12
0
 public CostUnit AddCostUnit(CostUnit pCostUnit) =>
 SyncHelper.RunAsyncAsSync(() =>
                           AddItem(pCostUnit, COSTUNITS));
Ejemplo n.º 13
0
 public Task <CostUnit> EditCostUnitAsync(CostUnit pCostUnit) =>
 EditAndReturnItem(pCostUnit, $"{COSTUNITS}/{pCostUnit.Id}");
Ejemplo n.º 14
0
 public Task <CostUnit> AddCostUnitAsync(CostUnit pCostUnit) =>
 AddItem(pCostUnit, COSTUNITS);
Ejemplo n.º 15
0
 public Task <bool> DeleteCostUnitAsync(CostUnit pCostUnit) =>
 DeleteItem($"{COSTUNITS}/{pCostUnit.Id}");