Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 1 | Rev 2086 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 2085
Línea 7... Línea 7...
7
use LeadersLinked\Mapper\Common\MapperCommon;
7
use LeadersLinked\Mapper\Common\MapperCommon;
8
use Laminas\Db\Adapter\AdapterInterface;
8
use Laminas\Db\Adapter\AdapterInterface;
9
use Laminas\Log\LoggerInterface;
9
use Laminas\Log\LoggerInterface;
10
use LeadersLinked\Hydrator\ObjectPropertyHydrator;
10
use LeadersLinked\Hydrator\ObjectPropertyHydrator;
11
use Laminas\Db\Sql\Expression;
11
use Laminas\Db\Sql\Expression;
12
 
-
 
-
 
12
use LeadersLinked\Model\HighPerformanceTeamsGroupsMembers;
Línea 13... Línea 13...
13
 
13
 
14
class CompanyUserMapper extends MapperCommon
14
class CompanyUserMapper extends MapperCommon
15
{
15
{
Línea 209... Línea 209...
209
        $delete->where->equalTo('id', $id);
209
        $delete->where->equalTo('id', $id);
Línea 210... Línea 210...
210
        
210
        
211
        return $this->executeDelete($delete);
211
        return $this->executeDelete($delete);
Línea -... Línea 212...
-
 
212
    }
-
 
213
    
-
 
214
    public function fetchAllSuggestForInvitationByHptgId($group_id, $company_id, $search)
-
 
215
    {
-
 
216
        $selectGroupMembers = $this->sql->select(HighPerformanceTeamsGroupsMembersMapper::_TABLE);
-
 
217
        $selectGroupMembers->columns(['user_id']);
-
 
218
        $selectGroupMembers->where->equalTo('group_id', $group_id);
-
 
219
        $selectGroupMembers->where->in('status', [
-
 
220
            HighPerformanceTeamsGroupsMembers::STATUS_ACCEPTED,
-
 
221
            HighPerformanceTeamsGroupsMembers::STATUS_ADDED_BY_ADMIN,
-
 
222
            HighPerformanceTeamsGroupsMembers::STATUS_INVITED,
-
 
223
        ]);
-
 
224
        
-
 
225
        //echo $selectGroupMembers->getSqlString($this->adapter->platform); exit;
-
 
226
        
-
 
227
        $select = $this->sql->select();
-
 
228
        $select->from(self::_TABLE);
-
 
229
        $select->where->notIn('id', $selectGroupMembers);
-
 
230
        $select->where->equalTo('company_id', $company_id);
-
 
231
        
-
 
232
        if($search) {
-
 
233
            $select->where->nest()
-
 
234
            ->like('first_name', '%' . $search . '%')
-
 
235
            ->or->like('last_name', '%' . $search . '%')
-
 
236
            ->or->like('email', '%' . $search . '%')
-
 
237
            ->unnest();
-
 
238
            
-
 
239
        }
-
 
240
        
-
 
241
        $select->order(['first_name', 'last_name']);
-
 
242
        
-
 
243
        // echo $select->getSqlString($this->adapter->platform); exit;
-
 
244
        
-
 
245
        $prototype = new User();
-
 
246
        
Línea 212... Línea 247...
212
    }
247
        return $this->executeFetchAllObject($select, $prototype);
213
    
248
    }