Exemplo n.º 1
0
 protected void SetInfo(out Model.MeterReading info, SqlDataReader reader)
 {
     try
     {
         info                   = new Model.MeterReading();
         info.Id                = CastDBNull.To <string>(reader["Id"], "");
         info.SerialNumber      = CastDBNull.To <string>(reader["SerialNumber"], "");
         info.ReadingDate       = CastDBNull.To <DateTime>(reader["ReadingDate"], DateTime.Now);
         info.ReadingValue      = CastDBNull.To <string>(reader["ReadingValue"], "");
         info.LowBatteryAlr     = CastDBNull.To <int>(reader["LowBatteryAlr"], 0);
         info.LeakAlr           = CastDBNull.To <int>(reader["LeakAlr"], 0);
         info.MagneticTamperAlr = CastDBNull.To <int>(reader["MagneticTamperAlr"], 0);
         info.MeterErrorAlr     = CastDBNull.To <int>(reader["MeterErrorAlr"], 0);
         info.BackFlowAlr       = CastDBNull.To <int>(reader["BackFlowAlr"], 0);
         info.BrokenPipeAlr     = CastDBNull.To <int>(reader["BrokenPipeAlr"], 0);
         info.EmptyPipeAlr      = CastDBNull.To <int>(reader["EmptyPipeAlr"], 0);
         info.SpecificErr       = CastDBNull.To <int>(reader["SpecificErr"], 0);
         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;
     }
 }
Exemplo n.º 2
0
        public ReturnInfo Create(SmartDB dbInstance, ref Model.MeterReading info)
        {
            IInfo info2 = _dal.Insert(dbInstance, info);

            info.IsNew   = false;
            info.IsDirty = true;
            return(new ReturnInfo(info2.Code, info2.Message));
        }
Exemplo 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.MeterReading 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);
        }
Exemplo n.º 4
0
        public ReturnInfo Update(SmartDB dbInstance, Model.MeterReading info)
        {
            IInfo      info2 = _dal.GetRecord(dbInstance, info.Id);
            bool       flag  = info2.Code == ErrorEnum.NoError;
            ReturnInfo result;

            if (flag)
            {
                bool flag2 = (info2.BizObject as Model.MeterReading).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);
        }
Exemplo n.º 5
0
        public ReturnInfo IsValid(Model.MeterReading info)
        {
            bool       flag = string.IsNullOrEmpty(info.Id);
            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);
        }