Proyectos de Subversion LeadersLinked - Services

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 345
Línea 1... Línea 1...
1
<?php
1
<?php
2
 
-
 
3
declare(strict_types=1);
2
declare(strict_types = 1);
4
 
-
 
5
namespace LeadersLinked\Command;
3
namespace LeadersLinked\Command;
Línea 6... Línea 4...
6
 
4
 
7
use Symfony\Component\Console\Command\Command;
5
use Symfony\Component\Console\Command\Command;
8
use Symfony\Component\Console\Input\InputInterface;
6
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
7
use Symfony\Component\Console\Output\OutputInterface;
10
use Laminas\Db\Adapter\AdapterInterface;
-
 
11
 
8
use Laminas\Db\Adapter\AdapterInterface;
12
use Laminas\Log\LoggerInterface;
9
use Laminas\Log\LoggerInterface;
13
use LeadersLinked\Mapper\UserMapper;
10
use LeadersLinked\Mapper\UserMapper;
14
use LeadersLinked\Mapper\CompanyMapper;
11
use LeadersLinked\Mapper\CompanyMapper;
15
use LeadersLinked\Mapper\CompanyUserMapper;
12
use LeadersLinked\Mapper\CompanyUserMapper;
Línea 19... Línea 16...
19
use Laminas\Mvc\I18n\Translator;
16
use Laminas\Mvc\I18n\Translator;
20
use LeadersLinked\Cache\CacheInterface;
17
use LeadersLinked\Cache\CacheInterface;
Línea 21... Línea 18...
21
 
18
 
22
class CheckOwnerUserForCompanyCommand extends Command
19
class CheckOwnerUserForCompanyCommand extends Command
-
 
20
{
23
{
21
 
24
    /**
22
    /**
25
     *
23
     *
26
     * @var \Laminas\Db\Adapter\AdapterInterface
24
     * @var \Laminas\Db\Adapter\AdapterInterface
27
     */
25
     */
28
    private $adapter;
26
    private $adapter;
29
    
27
 
30
    /**
28
    /**
31
     *
29
     *
32
     * @var \LeadersLinked\Cache\CacheInterface
30
     * @var \LeadersLinked\Cache\CacheInterface
33
     */
31
     */
34
    private $cache;
-
 
35
    
32
    private $cache;
36
    
33
 
37
    /**
34
    /**
38
     *
35
     *
39
     * @var \Laminas\Log\LoggerInterface
36
     * @var \Laminas\Log\LoggerInterface
40
     */
37
     */
41
    private $logger;
38
    private $logger;
42
    
39
 
43
    /**
40
    /**
44
     *
41
     *
45
     * @var array
42
     * @var array
46
     */
43
     */
47
    private $config;
-
 
48
    
44
    private $config;
49
    
45
 
50
    /**
46
    /**
51
     *
47
     *
52
     * @var \Laminas\Mvc\I18n\Translator
48
     * @var \Laminas\Mvc\I18n\Translator
53
     */
49
     */
54
    private $translator;
-
 
55
    
50
    private $translator;
56
    
51
 
57
    /**
52
    /**
58
     *
53
     *
59
     * @param \Laminas\Db\Adapter\AdapterInterface $adapter
54
     * @param \Laminas\Db\Adapter\AdapterInterface $adapter
-
 
55
     * @param \LeadersLinked\Cache\CacheInterface $cache
60
     * @param \LeadersLinked\Cache\CacheInterface $cache
56
     * @param
61
     * @param \Laminas\Log\LoggerInterface
57
     *            \Laminas\Log\LoggerInterface
62
     * @param array $config
58
     * @param array $config
63
     * @param \Laminas\Mvc\I18n\Translator $translator
59
     * @param \Laminas\Mvc\I18n\Translator $translator
64
     */
60
     */
65
    public function __construct($adapter, $cache, $logger, $config, $translator)
61
    public function __construct($adapter, $cache, $logger, $config, $translator)
66
    {
62
    {
67
        $this->adapter      = $adapter;
63
        $this->adapter = $adapter;
68
        $this->cache        = $cache;
64
        $this->cache = $cache;
69
        $this->logger       = $logger;
65
        $this->logger = $logger;
70
        $this->config       = $config;
66
        $this->config = $config;
71
        $this->translator   = $translator;
67
        $this->translator = $translator;
72
        
68
 
73
        parent::__construct();
69
        parent::__construct();
74
    }
70
    }
75
    
71
 
76
    protected function execute(InputInterface $input, OutputInterface $output) : int
72
    protected function execute(InputInterface $input, OutputInterface $output): int
77
    {
73
    {
78
        $output->writeln('Cargando las empresas');
74
        $output->writeln('Cargando las empresas');
79
        
75
 
80
        $companyMapper = CompanyMapper::getInstance($this->adapter);
76
        $companyMapper = CompanyMapper::getInstance($this->adapter);
81
        $companyUserMapper = CompanyUserMapper::getInstance($this->adapter);
77
        $companyUserMapper = CompanyUserMapper::getInstance($this->adapter);
82
        
78
 
83
        $companies = $companyMapper->fetchAll();
-
 
84
        
79
        $companies = $companyMapper->fetchAll();
85
        
80
 
86
        foreach($companies as $company)
-
 
87
        {
81
        foreach ($companies as $company) {
88
            $user = $companyUserMapper->fetchOwnerByCompanyId($company->id);
82
            $user = $companyUserMapper->fetchOwnerByCompanyId($company->id);
89
            if(!$user) {
83
            if (! $user) {
90
                $output->writeln('Agregando el propietario de la empresa : ' . $company->name);
84
                $output->writeln('Agregando el propietario de la empresa : ' . $company->name);
-
 
85
 
91
                
86
                /**
-
 
87
                 * Creación del fake user propietario de la empresa
92
                /** Creación del fake user propietario de la empresa */
88
                 */
93
                $user = new User();
89
                $user = new User();
94
                $user->email = 'fake-email'.$company->id;
90
                $user->email = 'fake-email' . $company->id;
95
                $user->first_name = substr($company->name, 0, 64);
91
                $user->first_name = substr($company->name, 0, 64);
96
                $user->last_name = substr($company->name, 64);
92
                $user->last_name = substr($company->name, 64);
97
                $user->status = User::STATUS_INACTIVE;
93
                $user->status = User::STATUS_INACTIVE;
98
                $user->blocked = User::BLOCKED_YES;
94
                $user->blocked = User::BLOCKED_YES;
99
                $user->login_attempt = 0;
95
                $user->login_attempt = 0;
100
                $user->email_verified = User::EMAIL_VERIFIED_YES;
96
                $user->email_verified = User::EMAIL_VERIFIED_YES;
101
                $user->show_in_search = User::SHOW_IN_SEARCH_NO;
97
                $user->show_in_search = User::SHOW_IN_SEARCH_NO;
102
                $user->password = 'NO-PASSWORD';
98
                $user->password = 'NO-PASSWORD';
103
                $user->usertype_id = UserType::COMPANY;
99
                $user->usertype_id = UserType::COMPANY;
104
                
100
 
105
                $userMapper = UserMapper::getInstance($this->adapter);
101
                $userMapper = UserMapper::getInstance($this->adapter);
106
                if($userMapper->insert($user)) {
102
                if ($userMapper->insert($user)) {
107
                    $companyUser = new CompanyUser();
103
                    $companyUser = new CompanyUser();
108
                    $companyUser->backend = CompanyUser::BACKEND_NO;
104
                    $companyUser->backend = CompanyUser::BACKEND_NO;
109
                    $companyUser->company_id = $company->id;
105
                    $companyUser->company_id = $company->id;
110
                    $companyUser->creator = CompanyUser::CREATOR_NO;
106
                    $companyUser->creator = CompanyUser::CREATOR_NO;
111
                    $companyUser->owner = CompanyUser::OWNER_YES;
107
                    $companyUser->owner = CompanyUser::OWNER_YES;
112
                    $companyUser->status = CompanyUser::STATUS_ACCEPTED;
108
                    $companyUser->status = CompanyUser::STATUS_ACCEPTED;
113
                    $companyUser->user_id = $user->id;
109
                    $companyUser->user_id = $user->id;
114
                    
110
 
115
                    $companyUserMapper->insert($companyUser);
111
                    $companyUserMapper->insert($companyUser);
116
                }
-
 
117
                
-
 
118
                
112
                }
119
            }
113
            }
Línea 120... Línea -...
120
        }
-
 
121
 
114
        }
122
 
115
 
123
        $output->writeln('Fin del proceso');
116
        $output->writeln('Fin del proceso');
124
        
117
 
125
        return 0;
-
 
126
    }
-
 
127
    
-
 
128
    
118
        return 0;
129
    
119
    }