示例#1
0
        /// <exception cref="MyException"></exception>
        public IList<IUnidade> Listar(ICliente cliente, Status status)
        {
            var unidades = new List<IUnidade>();
            var sql = new StringBuilder();
            var tblUnidades = new TblUnidades();

            sql.AppendFormat(" SELECT DISTINCT {0}, {1}, {2}", tblUnidades.Id, tblUnidades.Nome, tblUnidades.Status_Id);
            sql.AppendFormat(" FROM {0}", tblUnidades.NomeTabela);
            sql.AppendFormat(" WHERE {0}=@id", tblUnidades.Clientes_Id);
            sql.AppendFormat(" AND {0}=@status_id", tblUnidades.Status_Id);
            sql.AppendFormat(" ORDER BY {0};", tblUnidades.Nome);

            using (var dal = new DalHelperSqlServer())
            {
                try
                {
                    dal.CriarParametroDeEntrada("id", SqlDbType.Int, cliente.Id);
                    dal.CriarParametroDeEntrada("status_id", SqlDbType.SmallInt, status.GetHashCode());

                    using (var dr = dal.ExecuteReader(sql.ToString()))
                    {
                        while (dr.Read())
                        {
                            unidades.Add(new Unidade(
                                dr.GetInt32(0),
                                dr.GetString(1),
                                (Status)dr.GetInt16(2)));
                        }
                    }
                }
                catch (SqlException) { throw new MyException("Operação não realizada, por favor, tente novamente!"); }
            }

            return unidades;
        }
示例#2
0
 public Cliente(int id, string nome, Status status)
 {
     this.Id = id;
     this.Nome = nome;
     this.Status = status;
 }
示例#3
0
 public Unidade(int id, string nome, Status status)
 {
     this.Id = id;
     this.Nome = nome;
     this.Status = status;
 }