Edit in JSFiddle

<div ng-app="app">   
    <div ng-controller="customerSearchCtrl as ctrl" class="body-content panel-body">
        <h5 class="text-center text-info">Customer search by ozkary.com</h5>        
         <div class="container-fluid">
            <div class="row">
                <i class="fa fa-user fa-2x">&nbsp;</i><b>{{ctrl.client.id}} {{ctrl.client.name}}</b>
            <hr />
            <div class="row">
                <div class="control-group">
                    <div class="controls">
                        <label class="control-label">Customer Name Search</label>
                        <input client-auto-complete class="form-control" ng-model="ctrl.client.name" placeholder="enter name" type="text">
                            <input client-auto-complete class="form-control" ng-model="ctrl.client.id" placeholder="enter name" type="hidden">
            <div class="row"><br /></div>            
(function (angular) {
            'use strict';
            var appName = 'app';
            var app = angular.module(appName, []);
            app.controller('customerSearchCtrl', ['$scope',customerSearchCtrl]);

            function customerSearchCtrl($scope) {
                var ctrl = this;
                ctrl.client ={name:'', id:''};
                $scope.dataSource = [{name:'Oscar',id:1000},{name:'Olgina',id:2000},{name:'Oliver',id:3000},{name:'Orlando',id:4000},{name:'Osark',id:5000}, {name:'Osos',id:5000}, {name:'Oscarlos',id:5000}];
                $scope.setClientData = function(item){
                     if (item){
                         ctrl.client = item;
        function clientAutoCompleteDir($filter) {
            return {
                restrict: 'A',       
                link: function (scope, elem, attrs) {
                        source: function (request, response) {

                            //term has the data typed by the user
                            var params = request.term;
                            //simulates api call with odata $filter
                            var data = scope.dataSource;                                     
                            if (data) { 
                                var result = $filter('filter')(data, {name:params});
                                angular.forEach(result, function (item) {
                                    item['value'] = item['name'];

                        minLength: 1,                       
                        select: function (event, ui) {
                           //force a digest cycle to update the views