//Get one single AR
        public async Task <AR> ARSingle(int id)
        {
            AR  ar         = new AR();
            var parameters = new DynamicParameters();

            parameters.Add("Ar_id", id, DbType.Int32);
            using (var conn = new SqlConnection(_configuration.Value))
            {
                ar = await conn.QueryFirstOrDefaultAsync <AR>("spAR_GetOne", parameters, commandType : CommandType.StoredProcedure);
            }
            return(ar);
        }
        public async Task <bool> ARDelete(int id)
        {
            AR ar = new AR();

            using (var conn = new SqlConnection(_configuration.Value))
            {
                var parameters = new DynamicParameters();

                parameters.Add("Ar_id", id, DbType.Int32);
                await conn.ExecuteAsync("spAR_DeleteOne", parameters, commandType : CommandType.StoredProcedure);
            }
            return(true);
        }
        //Update AR
        public async Task <bool> ARUpdate(AR ar)
        {
            using (var conn = new SqlConnection(_configuration.Value))
            {
                var parameters = new DynamicParameters();
                parameters.Add("Ar_id", ar.Ar_id, DbType.Int32);
                parameters.Add("DataEmissao", ar.DataEmissao, DbType.Date);
                parameters.Add("Prioridade", ar.Prioridade, DbType.Int16);
                parameters.Add("Objetivo", ar.Objetivo, DbType.String);
                parameters.Add("Status", ar.Status, DbType.Boolean);

                await conn.ExecuteAsync("spAR_Update", parameters, commandType : CommandType.StoredProcedure);
            }
            return(true);
        }
        //Add (Create Row) (Sql Insert)
        public async Task <bool> ARInsert(AR ar)
        {
            using (var conn = new SqlConnection(_configuration.Value))
            {
                var parameters = new DynamicParameters();
                parameters.Add("DataEmissao", ar.DataEmissao, DbType.Date);
                parameters.Add("Prioridade", ar.Prioridade, DbType.Int16);
                parameters.Add("Objetivo", ar.Objetivo, DbType.String);
                parameters.Add("Status", ar.Status, DbType.Boolean);

                //Storage Procedure Method
                await conn.ExecuteAsync("spAR_Insert", parameters, commandType : CommandType.StoredProcedure);

                //Raw SQl Method
                //const string sql = @"INSERT INTO dbo.AR (DataEmissao, Prioridade, Objetivo, Status) VALUES (@DataEmissao, @Prioridade, @Objetivo, @Status)";
                //await conn.ExecuteAsync(sql, new { ar.DataEmissao, ar.Prioridade, ar.Objetivo, ar.Status }, commandType: CommandType.Text);
            }
            return(true);
        }