Exemplo n.º 1
0
        /// <summary>
        /// Retrieves the result rounding from SQLite db.  If none retrieved then rounding set to 0.
        /// </summary>
        /// <param name="roundingName">Rounding name.</param>
        async protected void RetrieveResultRounding(string roundingName)
        {
            RoundingForDisplay selectedRounding = null;

            // Get database connection
            var connection = DependencyService.Get <ISQLiteDb>().GetConnection();
            await connection.CreateTableAsync <RoundingForDisplay>();

            // See if RoundingsForDisplay Table exists
            if (await connection.Table <RoundingForDisplay>().CountAsync() > 0)
            {
                selectedRounding = await connection.Table <RoundingForDisplay>().Where(rd => rd.RoundingName.Equals(roundingName)).FirstOrDefaultAsync();

                // see if rounding retrieved from SQLitedb
                if (selectedRounding != null)
                {
                    _conversionRounding = selectedRounding.RoundingValue;
                }
                else
                {
                    _conversionRounding = 0;
                }
            }
            else
            {
                // set rounding to default = 0
                _conversionRounding = 0;
            }
        }
Exemplo n.º 2
0
        async public void UpdateRoundings(RoundingForDisplay lengthRounding, RoundingForDisplay areaRounding, RoundingForDisplay decimalAngleRounding)
        {
            await _connection.UpdateAsync(lengthRounding);

            await _connection.UpdateAsync(areaRounding);

            await _connection.UpdateAsync(decimalAngleRounding);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Retrieves the roundings if they exist in SQLite database.
        /// </summary>
        async public void RetrieveRoundings()
        {
            await _connection.CreateTableAsync <RoundingForDisplay>();

            if (await _connection.Table <RoundingForDisplay>().CountAsync() > 0)
            {
                RoundingForDisplay length = await _connection.Table <RoundingForDisplay>().Where(rd => rd.RoundingId == 1).FirstOrDefaultAsync();

                RoundingForDisplay area = await _connection.Table <RoundingForDisplay>().Where(rd => rd.RoundingId == 2).FirstOrDefaultAsync();

                RoundingForDisplay decimalAngle = await _connection.Table <RoundingForDisplay>().Where(rd => rd.RoundingId == 3).FirstOrDefaultAsync();

                InitialiseRoundings(length.RoundingValue, area.RoundingValue, decimalAngle.RoundingValue);
            }
            else
            {
                InitialiseRoundings(0, 0, 0);
            }
        }
Exemplo n.º 4
0
        async private void SaveRoundings()
        {
            await _connection.CreateTableAsync <RoundingForDisplay>();

            var lengthConversionRounding = new RoundingForDisplay
            {
                RoundingId    = 1,
                RoundingName  = "LengthConversion",
                RoundingValue = _lengthConversionSelectedIndex
            };

            var areaConversionRounding = new RoundingForDisplay
            {
                RoundingId    = 2,
                RoundingName  = "AreaConversion",
                RoundingValue = _areaConversionSelectedIndex
            };

            var decimalAngleConversionRounding = new RoundingForDisplay
            {
                RoundingId    = 3,
                RoundingName  = "DecimalAngleConversion",
                RoundingValue = _decimalAngleConversionIndex
            };

            // Check if the Roundings Table exist
            if (await _connection.Table <RoundingForDisplay>().CountAsync() > 0)
            {
                UpdateRoundings(lengthConversionRounding, areaConversionRounding, decimalAngleConversionRounding);
            }
            else
            {
                // RoundingForDisplay does not exist so we will save the tables
                await _connection.InsertAsync(lengthConversionRounding);

                await _connection.InsertAsync(areaConversionRounding);

                await _connection.InsertAsync(decimalAngleConversionRounding);
            }
        }