Esempio n. 1
0
 protected void SetInfo(out Model.Meter info, SqlDataReader reader)
 {
     try
     {
         info = new Model.Meter();
         info.SerialNumber     = CastDBNull.To <string>(reader["SerialNumber"], "");
         info.X                = CastDBNull.To <decimal>(reader["X"], 0.0m);
         info.Y                = CastDBNull.To <decimal>(reader["Y"], 0.0m);
         info.Status           = CastDBNull.To <string>(reader["Status"], "");
         info.HCN              = CastDBNull.To <string>(reader["HCN"], "");
         info.InstallationDate = CastDBNull.To <DateTime>(reader["InstallationDate"], DateTime.Now);
         info.MaintenanceDate  = CastDBNull.To <DateTime>(reader["MaintenanceDate"], DateTime.Now);
         info.MeterTypeId      = CastDBNull.To <string>(reader["MeterTypeId"], "");
         info.MeterSizeId      = CastDBNull.To <string>(reader["MeterSizeId"], "");
         info.MeterProtocolId  = CastDBNull.To <string>(reader["MeterProtocolId"], "");
         info.DMZId            = CastDBNull.To <string>(reader["DMZId"], "");
         info.CityId           = CastDBNull.To <string>(reader["CityId"], "");
         info.MacAddress       = CastDBNull.To <string>(reader["MacAddress"], "");
         info.CreatedBy        = CastDBNull.To <string>(reader["Createdby"], "");
         info.EditedBy         = CastDBNull.To <string>(reader["Editedby"], "");
         info.DocDate          = CastDBNull.To <DateTime>(reader["DocDate"], DateTime.Now);
         info.Show             = CastDBNull.To <int>(reader["Show"], 1);
         info.LockCount        = CastDBNull.To <int>(reader["LockCount"], 1);
         info.IsNew            = false;
         info.IsDirty          = true;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 2
0
        public ReturnInfo Create(SmartDB dbInstance, ref Model.Meter info)
        {
            IInfo info2 = _dal.Insert(dbInstance, info);

            info.IsNew   = false;
            info.IsDirty = true;
            return(new ReturnInfo(info2.Code, info2.Message));
        }
Esempio n. 3
0
        public override IInfo GetRecord(SmartDB dbInstance, object Id)
        {
            string sQL_GET = this.SQL_GET;

            SqlParameter[] array = new SqlParameter[]
            {
                new SqlParameter(this.PARM_ID, SqlDbType.NVarChar)
            };
            array[0].Value = Id;
            Model.Meter bizObject = null;
            IInfo       result;

            try
            {
                bool          transactionControl = dbInstance.TransactionControl;
                SqlDataReader sqlDataReader;
                if (transactionControl)
                {
                    sqlDataReader = SqlHelper.ExecuteReader(dbInstance.Transaction, CommandType.StoredProcedure, sQL_GET, array);
                }
                else
                {
                    sqlDataReader = SqlHelper.ExecuteReader(SqlHelper.MyConnectionString, CommandType.StoredProcedure, sQL_GET, array);
                }
                bool hasRows = sqlDataReader.HasRows;
                if (hasRows)
                {
                    sqlDataReader.Read();
                    this.SetInfo(out bizObject, sqlDataReader);
                    result = new ReturnInfo
                    {
                        BizObject = bizObject,
                        Code      = ErrorEnum.NoError
                    };
                }
                else
                {
                    result = new ReturnInfo(ErrorEnum.NoRecord, string.Format("No record found for ID: {0}", Id));
                }
            }
            catch (Exception ex)
            {
                result = new ReturnInfo(ErrorEnum.DataException, ex.Message);
            }
            return(result);
        }
Esempio n. 4
0
        public ReturnInfo Update(SmartDB dbInstance, Model.Meter info)
        {
            IInfo      info2 = _dal.GetRecord(dbInstance, info.SerialNumber);
            bool       flag  = info2.Code == ErrorEnum.NoError;
            ReturnInfo result;

            if (flag)
            {
                bool flag2 = (info2.BizObject as Model.Meter).LockCount == info.LockCount;
                if (!flag2)
                {
                    result = new ReturnInfo(ErrorEnum.ColumnReference, "Record has been changed.");
                    return(result);
                }
                info.LockCount++;
                info2 = _dal.Update(dbInstance, info);
            }
            result = new ReturnInfo(info2.Code, info2.Message, info2.RowsAffected);
            return(result);
        }
Esempio n. 5
0
        public ReturnInfo IsValid(Model.Meter info)
        {
            bool       flag = string.IsNullOrEmpty(info.SerialNumber);
            ReturnInfo result;

            if (flag)
            {
                result = new ReturnInfo
                {
                    Code      = ErrorEnum.InvalidInput,
                    Message   = "Name cannot be blank.",
                    BizObject = "Name"
                };
            }
            else
            {
                result = new ReturnInfo(ErrorEnum.NoError, "");
            }
            return(result);
        }