예제 #1
0
 public static double?GetDoubleNullable(System.Data.IDataReader dataReader, int i)
 {
     if (dataReader.IsDBNull(i))
     {
         return(null);
     }
     return(dataReader.GetDouble(i));
 }
예제 #2
0
 public static double GetDouble(System.Data.IDataReader rdr, string Column, double NullValue)
 {
     if (rdr[Column] != DBNull.Value)
     {
         return(rdr.GetDouble(rdr.GetOrdinal(Column)));
     }
     else
     {
         return(NullValue);
     }
 }
예제 #3
0
    public IQuest ParseQuest(System.Data.IDataReader reader)
    {
        dbReader = DatabaseReader.Instance();
        IQuest currentQuest = null;

        string name         = reader.GetString(0);
        string description  = reader.GetString(1);
        int    type         = reader.GetInt32(2);
        int    rewardExp    = reader.GetInt32(3);
        int    rewardMoney  = reader.GetInt16(4);
        double prevValue    = reader.GetDouble(5);
        double requireValue = reader.GetDouble(6);

        switch (type)
        {
        case 0:                 // Distance
            double totalDistance = dbReader.totalDistance;
            currentQuest = new DistanceQuest
                               (name, description,
                               requireValue, prevValue,
                               rewardExp, rewardMoney);
            break;

        case 1:                 // Share
            int totalShare = dbReader.totalShare;
            currentQuest = new FacebookQuest(
                name, description,
                (int)prevValue, (int)requireValue,
                rewardExp, rewardMoney);
            break;

        default:
            break;
        }


        return(currentQuest);
    }
예제 #4
0
    public static Achievement Parse(System.Data.IDataReader reader)
    {
        string _name                = reader.GetString(0);
        string _description         = reader.GetString(1);
        int    _shareRequirement    = reader.GetInt32(2);
        double _distanceRequirement = reader.GetDouble(3);
        int    _petLevelRequirement = reader.GetInt32(4);
        int    _rewardExp           = reader.GetInt32(5);
        int    _rewardMoney         = reader.GetInt32(6);

        return(new Achievement(
                   _name,
                   _description,
                   _shareRequirement,
                   _distanceRequirement,
                   _petLevelRequirement,
                   _rewardExp,
                   _rewardMoney
                   ));
    }
예제 #5
0
        public void TestUpdateOPCSampleGrp01()
        {
            OPCSampleGrpConfigStartModel oPCSampleGrpConfigStartModel = new OPCSampleGrpConfigStartModel();
            //insert temp grp
            EtyDataLogDPGroupTrend etySampleGrp = new EtyDataLogDPGroupTrend();

            etySampleGrp.SampleGrpName        = "ParasoftTesting123";
            etySampleGrp.SampleGrpDescription = "testing";
            etySampleGrp.IntervalType         = "S";
            etySampleGrp.Interval             = 23;
            etySampleGrp.DeltaValue           = 1;
            etySampleGrp.Disabled             = true;
            etySampleGrp.StartTime            = "09:44";
            etySampleGrp.NewData = true;
            oPCSampleGrpConfigStartModel.InsertOPCSampleGrp(etySampleGrp);
            //update the values
            etySampleGrp.IntervalType = "H";
            etySampleGrp.Interval     = 1;
            etySampleGrp.DeltaValue   = 4;
            etySampleGrp.Disabled     = false;
            etySampleGrp.StartTime    = "";
            //Test Procedure Call
            oPCSampleGrpConfigStartModel.UpdateOPCSampleGrp(etySampleGrp);

            //Post Condition Check
            #region PostConditionCheck
            //Check updation from DB
            try
            {
                string localSQL = "SELECT PKEY,NAME,DESCRIPTION,SAMPLE_INTERVAL,INTERVAL_TYPE,START_TIME,DELTA_VALUE,ENABLED FROM DATALOG_DP_GROUP_TREND where NAME ='" +
                                  etySampleGrp.SampleGrpName + "'";

                System.Data.IDataReader drReader = SimpleDatabase.GetInstance().ExecuteQuery(localSQL);

                if (drReader != null && drReader.Read())
                {
                    if (!drReader.IsDBNull(0))
                    {
                        etySampleGrp.SampleGrpID = drReader.GetInt32(0);
                        double Interval = drReader.GetInt32(3);
                        Assert.AreEqual(Interval, etySampleGrp.Interval);
                        string IntervalType = drReader.GetString(4).ToString();
                        Assert.AreEqual(etySampleGrp.IntervalType, IntervalType);
                        string StartTime = drReader.GetString(5).ToString();
                        Assert.AreEqual(etySampleGrp.StartTime, StartTime);
                        double DeltaValue = drReader.GetDouble(6);
                        Assert.AreEqual(etySampleGrp.DeltaValue, DeltaValue);
                        string disabled = drReader.GetString(7).ToString();
                        bool   bdis     = DAOHelper.ChangeStrToBool(disabled);
                        Assert.AreEqual(etySampleGrp.Disabled, bdis);
                    }
                }

                if (drReader != null)
                {
                    drReader.Close();
                    drReader.Dispose();
                }
            }
            catch (Exception localException)
            {
                //failed test
            }

            #endregion

            #region Cleanup
            //delete inserted temp group
            DatalogDPGroupTrendDAO.GetInstance().DeleteOPCSampleGroupById(etySampleGrp.SampleGrpID.ToString());
            #endregion
        }
예제 #6
0
        public void Write(System.Data.IDataReader reader)
        {
            var organization = db.Organizations.Find(organizationId);

            Dictionary <string, KitMaterial>        materials          = new Dictionary <string, KitMaterial>();
            Dictionary <string, KitOption>          options            = new Dictionary <string, KitOption>();
            Dictionary <int, ValveInterfaceCode>    valveInterfaces    = new Dictionary <int, ValveInterfaceCode>();
            Dictionary <int, ActuatorInterfaceCode> actuatorInterfaces = new Dictionary <int, ActuatorInterfaceCode>();

            while (reader.Read())
            {
                // columns
                // KitNumber, ValveIntCode, ActIntCode, MaterialCode, OptionCode, Price
                string kitNumber = reader.GetString(0);
                var    kit       = db.Kits.Where(k => k.KitNumber == kitNumber).FirstOrDefault();

                if (kit == null)
                {
                    // get the material
                    string materialCode = reader.GetString(3);
                    var    material     = db.KitMaterials.Where(m => m.Code == materialCode).FirstOrDefault();

                    if (material == null)
                    {
                        if (materials.ContainsKey(materialCode))
                        {
                            material = materials[materialCode];
                        }
                        else
                        {
                            material = new KitMaterial()
                            {
                                Code = materialCode,
                                Name = materialCode
                            };
                            db.KitMaterials.Add(material);
                            materials.Add(materialCode, material);
                        }
                    }

                    // get the locking option
                    string optionCode = reader.GetString(4);
                    var    option     = db.KitOptions.Where(o => o.Code == optionCode).FirstOrDefault();

                    if (option == null)
                    {
                        if (options.ContainsKey(optionCode))
                        {
                            option = options[optionCode];
                        }
                        else
                        {
                            option = new KitOption()
                            {
                                Code = optionCode,
                                Name = optionCode
                            };
                            db.KitOptions.Add(option);
                            options.Add(optionCode, option);
                        }
                    }

                    // get the valve interface
                    int valveIntCode   = reader.GetInt32(1);
                    var valveInterface = db.ValveInterfaceCodes.Find(valveIntCode);

                    if (valveInterface == null)
                    {
                        if (valveInterfaces.ContainsKey(valveIntCode))
                        {
                            valveInterface = valveInterfaces[valveIntCode];
                        }
                        else
                        {
                            valveInterface = new ValveInterfaceCode()
                            {
                                InterfaceCode = valveIntCode
                            };
                            db.ValveInterfaceCodes.Add(valveInterface);
                            valveInterfaces.Add(valveIntCode, valveInterface);
                        }
                    }

                    // get the actuator interace
                    int actIntCode   = reader.GetInt32(2);
                    var actInterface = db.ActuatorInterfaceCodes.Find(actIntCode);

                    if (actInterface == null)
                    {
                        if (actuatorInterfaces.ContainsKey(actIntCode))
                        {
                            actInterface = actuatorInterfaces[actIntCode];
                        }
                        else
                        {
                            actInterface = new ActuatorInterfaceCode()
                            {
                                InterfaceCode = actIntCode
                            };
                            db.ActuatorInterfaceCodes.Add(actInterface);
                            actuatorInterfaces.Add(actIntCode, actInterface);
                        }
                    }

                    // add the kit
                    double price = reader.GetDouble(5);

                    kit = new Kit()
                    {
                        KitNumber = reader.GetString(0),
                        ValuveIntefaceCodeEntity    = valveInterface,
                        ActuatorInterfaceCodeEntity = actInterface,
                        Price    = price,
                        Material = material,
                        Option   = option
                    };

                    db.Kits.Add(kit);
                }

                // link this kit to the organization
                if (kit.KitId > 0)
                {
                    if (!organization.Kits.Where(k => k.KitId == kit.KitId).Any())
                    {
                        organization.Kits.Add(kit);
                    }
                }
                else
                {
                    organization.Kits.Add(kit);
                }
            }
        }
예제 #7
0
 public static double Double(System.Data.IDataReader reader, MapPoint mapPoint, double defaultValue = 0)
 {
     try
     {
         return(mapPoint.IsInResultSet() && !reader.IsDBNull(mapPoint.Index) ? reader.GetDouble(mapPoint.Index) : defaultValue);
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #8
0
 public static double?GetDouble(System.Data.IDataReader rdr, string Column)
 {
     return(rdr [Column] != DBNull.Value ? (double?)rdr.GetDouble(rdr.GetOrdinal(Column)) : null);
 }
예제 #9
0
        public void SetFromReader <T>(T obj, System.Data.IDataReader reader, Action <T, string, object> setMethod)
            where T : class
        {
            if (!reader.IsDBNull(this.Index))
            {
                switch (this.SqlType)
                {
                case System.Data.SqlDbType.BigInt:
                    setMethod(obj, FieldName, reader.GetInt64(this.Index));
                    break;

                case System.Data.SqlDbType.Image:
                case System.Data.SqlDbType.VarBinary:
                case System.Data.SqlDbType.Binary:
                    long   size       = reader.GetBytes(this.Index, 0, null, 0, 0);
                    byte[] values     = new byte[size];
                    int    bufferSize = 1024;
                    long   bytesRead  = 0;
                    int    curPos     = 0;
                    while (bytesRead < size)
                    {
                        bytesRead += reader.GetBytes(this.Index, curPos, values, curPos, bufferSize);
                        curPos    += bufferSize;
                    }
                    setMethod(obj, FieldName, values);
                    break;

                case System.Data.SqlDbType.Bit:
                    setMethod(obj, FieldName, reader.GetBoolean(this.Index));
                    break;

                case System.Data.SqlDbType.Char:
                    setMethod(obj, FieldName, reader.GetChar(this.Index));
                    break;

                case System.Data.SqlDbType.SmallDateTime:
                case System.Data.SqlDbType.Date:
                case System.Data.SqlDbType.DateTime:
                case System.Data.SqlDbType.DateTime2:
                    setMethod(obj, FieldName, reader.GetDateTime(this.Index));
                    break;

                case System.Data.SqlDbType.SmallMoney:
                case System.Data.SqlDbType.Money:
                case System.Data.SqlDbType.Decimal:
                    setMethod(obj, FieldName, reader.GetDecimal(this.Index));
                    break;

                case System.Data.SqlDbType.Float:
                    setMethod(obj, FieldName, reader.GetDouble(this.Index));
                    break;

                case System.Data.SqlDbType.Int:
                    setMethod(obj, FieldName, reader.GetInt32(this.Index));
                    break;

                case System.Data.SqlDbType.Text:
                case System.Data.SqlDbType.NVarChar:
                case System.Data.SqlDbType.NText:
                case System.Data.SqlDbType.VarChar:
                case System.Data.SqlDbType.NChar:
                    setMethod(obj, FieldName, reader.GetString(this.Index));
                    break;

                case System.Data.SqlDbType.Real:
                    setMethod(obj, FieldName, reader.GetFloat(this.Index));
                    break;

                case System.Data.SqlDbType.SmallInt:
                    setMethod(obj, FieldName, reader.GetInt16(this.Index));
                    break;

                case System.Data.SqlDbType.TinyInt:
                    setMethod(obj, FieldName, reader.GetByte(this.Index));
                    break;

                case System.Data.SqlDbType.UniqueIdentifier:
                    setMethod(obj, FieldName, reader.GetGuid(this.Index));
                    break;

                default:
                    break;
                }
            }
            else
            {
                setMethod(obj, FieldName, null);
            }
        }
예제 #10
0
 double System.Data.IDataRecord.GetDouble(int i)
 {
     return(_dataReader.GetDouble(i));
 }
예제 #11
0
        public static double AsDouble(this System.Data.IDataReader reader, string name, double defaultValue = 0d)
        {
            var o = reader[name];

            return(o != null && o != DBNull.Value ? reader.GetDouble(reader.GetOrdinal(name)) : defaultValue);
        }