Merge branch 'develop' into feature/add_tag_product
This commit is contained in:
commit
01d6403ad3
37
apps/establishment/management/commands/update_employee.py
Normal file
37
apps/establishment/management/commands/update_employee.py
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
from django.core.management.base import BaseCommand
|
||||
from django.db import connections
|
||||
from establishment.management.commands.add_position import namedtuplefetchall
|
||||
from establishment.models import Employee
|
||||
from django.db.models import Q
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
help = 'Add employee from old db to new db.'
|
||||
|
||||
def employees_sql(self):
|
||||
with connections['legacy'].cursor() as cursor:
|
||||
cursor.execute('''
|
||||
select t.profile_id, t.name
|
||||
from
|
||||
(
|
||||
select
|
||||
DISTINCT
|
||||
a.profile_id,
|
||||
trim(CONCAT(p.firstname, ' ', p.lastname)
|
||||
) as name
|
||||
from affiliations as a
|
||||
join profiles p on p.id = a.profile_id
|
||||
) t
|
||||
where t.name is not null
|
||||
''')
|
||||
return namedtuplefetchall(cursor)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
objects = []
|
||||
for e in self.employees_sql():
|
||||
empl = Employee.objects.filter(old_id=e.profile_id)
|
||||
if empl.exists():
|
||||
empl.name = e.name
|
||||
empl.save()
|
||||
|
||||
self.stdout.write(self.style.WARNING(f'Update employee name objects.'))
|
||||
Loading…
Reference in New Issue
Block a user