Commit 4695d626 authored by John Red Medrano's avatar John Red Medrano

pulled cms

parent 4e294247
from app.entities import models from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from django.db.models import Q from django.db.models import Q
from app.applicationlayer.management.changerequest.utils_cr import logged_user from app.applicationlayer.cms.utils_cr import logged_user
from drf_writable_nested import WritableNestedModelSerializer
class ChangeRequestTemplatesSerializer( class ChangeRequestFormApproversSerializer(
serializers.ModelSerializer serializers.ModelSerializer
): ):
class Meta: # def to_representation(self, instance):
model = models.ChangeRequestTemplateHeader # ret = super().to_representation(instance)
fields = '__all__' # try:
read_only_fields = ['created', 'deleted_at', 'template_no'] # user = instance.user
# user_details = get_account_details(user)
# name = user_details['name']
# group = user_details['groups'][0]['name']
# company = user_details['groups'][0]['company__name']
# ret['name'] = name
# ret['department'] = group
# ret['company'] = company
# return ret
# except Exception as e:
# ret['name'] = "none"
# ret['department'] = "none"
# ret['company'] = "none"
# return ret
class ChangeRequestTemplateApproversSerializer(
serializers.ModelSerializer
):
class Meta: class Meta:
model = models.ChangeRequestTemplateApprovers model = models.ChangeRequestFormApprovers
fields = '__all__' fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code'] read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateStakeHoldersSerializer( class ChangeRequestFormStakeHoldersSerializer(
serializers.ModelSerializer serializers.ModelSerializer
): ):
class Meta: class Meta:
model = models.ChangeRequestTemplateStakeHolders model = models.ChangeRequestFormStakeHolders
fields = '__all__' fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code'] read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateAttachmentsSerializer( class ChangeRequestFormAttachmentsSerializer(
serializers.ModelSerializer serializers.ModelSerializer
): ):
class Meta: class Meta:
model = models.ChangeRequestTemplateAttachments model = models.ChangeRequestFormAttachments
fields = '__all__' fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code'] read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateDetailsSerializer( class ChangeRequestFormDetailsSerializer(
serializers.ModelSerializer serializers.ModelSerializer
): ):
class Meta: class Meta:
model = models.ChangeRequestTemplateDetails model = models.ChangeRequestFormDetails
fields = '__all__' fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code'] read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestFormHeaderSerializer( class ChangeRequestFormHeaderSerializer(
serializers.ModelSerializer WritableNestedModelSerializer
): ):
frm_approvers = ChangeRequestFormApproversSerializer(
many=True, required=False)
frm_stakes = ChangeRequestFormStakeHoldersSerializer(
many=True, required=False)
frm_attachments = ChangeRequestFormAttachmentsSerializer(
many=True, required=False)
frm_details = ChangeRequestFormDetailsSerializer(
many=True, required=False)
def to_representation(self, instance): def to_representation(self, instance):
ret = super().to_representation(instance) ret = super().to_representation(instance)
try: try:
# id_number = self.context.get('request').META.get('user') # id_number = self.context.get('request').META.get('user')
user = self.context['request'].user
print(user)
id_number = "USER-20190909-0000005" # id_number = "USER-20190909-0000005"
current_level = models.ChangeRequestFormApprovers.objects.filter( current_level = models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=ret['form_code']) & Q(form_code=ret['form_code']) &
Q(deleted_at=None) & Q(archived_at=None) &
(Q(action='') | Q(action=None)) (Q(action='') | Q(action=None))
).order_by('level') ).order_by('level')
...@@ -83,62 +107,15 @@ class ChangeRequestFormHeaderSerializer( ...@@ -83,62 +107,15 @@ class ChangeRequestFormHeaderSerializer(
class Meta: class Meta:
model = models.ChangeRequestFormHeader model = models.ChangeRequestFormHeader
fields = '__all__' # fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'form_code'] fields = ('form_code', 'requested_to_template_name', 'requested_to_objective',
'requested_to_target_date', 'requested_to_priority',
'description', 'created', 'cancel_date', 'status',
class ChangeRequestFormApproversSerializer( 'company_desc', 'department_desc', 'requested_desc',
serializers.ModelSerializer 'requested_to_template_id', 'requested_to_company',
): 'requested_to_department', 'requested_to_user',
# def to_representation(self, instance): 'requested_by_user', 'requested_by_department',
# ret = super().to_representation(instance) 'template_no', 'frm_approvers', 'frm_stakes',
# try: 'frm_attachments', 'frm_details')
# user = instance.user
read_only_fields = ['created', 'archived_at', 'form_code']
# user_details = get_account_details(user)
# name = user_details['name']
# group = user_details['groups'][0]['name']
# company = user_details['groups'][0]['company__name']
# ret['name'] = name
# ret['department'] = group
# ret['company'] = company
# return ret
# except Exception as e:
# ret['name'] = "none"
# ret['department'] = "none"
# ret['company'] = "none"
# return ret
class Meta:
model = models.ChangeRequestFormApprovers
fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code']
class ChangeRequestFormStakeHoldersSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestFormStakeHolders
fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code']
class ChangeRequestFormAttachmentsSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestFormAttachments
fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code']
class ChangeRequestFormDetailsSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestFormDetails
fields = '__all__'
read_only_fields = ['created', 'deleted_at', 'code']
from app.entities import models
from rest_framework import serializers
from django.db.models import Q
from drf_writable_nested import WritableNestedModelSerializer
class ChangeRequestTemplateApproversSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestTemplateApprovers
fields = '__all__'
read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateStakeHoldersSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestTemplateStakeHolders
fields = '__all__'
read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateAttachmentsSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestTemplateAttachments
fields = '__all__'
read_only_fields = ['created', 'archived_at', 'code']
class ChangeRequestTemplateDetailsSerializer(
serializers.ModelSerializer
):
class Meta:
model = models.ChangeRequestTemplateDetails
fields = '__all__'
read_only_fields = ['created', 'archived_at', 'code']
# comment
class ChangeRequestTemplatesSerializer(
WritableNestedModelSerializer
):
tmp_approvers = ChangeRequestTemplateApproversSerializer(
many=True, required=False)
tmp_stakes = ChangeRequestTemplateStakeHoldersSerializer(
many=True, required=False)
tmp_attachments = ChangeRequestTemplateAttachmentsSerializer(
many=True, required=False)
tmp_details = ChangeRequestTemplateDetailsSerializer(
many=True, required=False)
class Meta:
model = models.ChangeRequestTemplateHeader
# fields = '__all__'
fields = ('template_no', 'requested_to_template_name',
'requested_to_objective', 'requested_to_target_date',
'requested_to_priority', 'description', 'created',
'requested_to_template_id', 'requested_to_company',
'requested_to_department', 'requested_to_user',
'created_by_user', 'created_by_department', 'tmp_approvers',
'tmp_stakes', 'tmp_attachments', 'tmp_details')
read_only_fields = ['created', 'archived_at', 'template_no']
\ No newline at end of file
This diff is collapsed.
...@@ -153,7 +153,7 @@ def receiver_body( ...@@ -153,7 +153,7 @@ def receiver_body(
def get_template_instance(form_code): def get_template_instance(form_code):
template_instance = models.ChangeRequestFormHeader.objects.filter( template_instance = models.ChangeRequestFormHeader.objects.filter(
Q(form_code=form_code) & Q(form_code=form_code) &
Q(deleted_at=None) Q(archived_at=None)
).first() ).first()
return template_instance return template_instance
...@@ -436,3 +436,14 @@ def cancel_overdue(request): ...@@ -436,3 +436,14 @@ def cancel_overdue(request):
email_content=email_content_cancel email_content=email_content_cancel
) )
return True return True
def crhistory_save(action, entity, form_code, fromValue, toValue):
models.ChangeRequestHistory.objects.create(
action=action,
entity=entity,
form_code=form_code,
fromValue=fromValue,
toValue=toValue
)
return True
\ No newline at end of file
...@@ -3,27 +3,28 @@ from rest_framework import routers ...@@ -3,27 +3,28 @@ from rest_framework import routers
from django.conf.urls import url from django.conf.urls import url
from app.applicationlayer.management.notification.views import NotificationsViewset from app.applicationlayer.management.notification.views import NotificationsViewset
from app.applicationlayer.management.changerequest import views as crviews from app.applicationlayer.cms.template import views as crtemplate_views
from app.applicationlayer.cms.form import views as crform_views
router = routers.DefaultRouter() router = routers.DefaultRouter()
router.register(r'notifications', NotificationsViewset) router.register(r'notifications', NotificationsViewset)
router.register(r'template', crviews.ChangeRequestTemplatesViewset) router.register(r'template', crtemplate_views.ChangeRequestTemplatesViewset)
router.register(r'template-approvers', crviews.ChangeRequestTemplateApproversViewset) router.register(r'template-approvers', crtemplate_views.ChangeRequestTemplateApproversViewset)
router.register(r'template-attachments', crviews.ChangeRequestTemplateAttachmentsViewset) router.register(r'template-attachments', crtemplate_views.ChangeRequestTemplateAttachmentsViewset)
router.register(r'template-stakeholders', crviews.ChangeRequestTemplateStakeHoldersViewset) router.register(r'template-stakeholders', crtemplate_views.ChangeRequestTemplateStakeHoldersViewset)
router.register(r'template-details', crviews.ChangeRequestTemplateDetailsViewset) router.register(r'template-details', crtemplate_views.ChangeRequestTemplateDetailsViewset)
router.register(r'form', crviews.ChangeRequestFormsViewset) router.register(r'form', crform_views.ChangeRequestFormsViewset)
router.register(r'form-approvers', crviews.ChangeRequestFormApproversViewset) router.register(r'form-approvers', crform_views.ChangeRequestFormApproversViewset)
router.register(r'form-stakeholders', crviews.ChangeRequestFormStakeHoldersViewset) router.register(r'form-stakeholders', crform_views.ChangeRequestFormStakeHoldersViewset)
router.register(r'form-attachments', crviews.ChangeRequestFormAttachmentsViewset) router.register(r'form-attachments', crform_views.ChangeRequestFormAttachmentsViewset)
router.register(r'form-details', crviews.ChangeRequestFormDetailsViewset) router.register(r'form-details', crform_views.ChangeRequestFormDetailsViewset)
urlpatterns = ( urlpatterns = (
path('', include(router.urls)), path('', include(router.urls)),
path('template-post/', crviews.ChangeRequestTemplatePost.as_view()), path('template-post/', crtemplate_views.ChangeRequestTemplatePost.as_view()),
path('form-post/', crviews.ChangeRequestFormPost.as_view()), path('form-post/', crform_views.ChangeRequestFormPost.as_view()),
) )
...@@ -22,19 +22,19 @@ def list_by_user(user_id_number): ...@@ -22,19 +22,19 @@ def list_by_user(user_id_number):
approver = models.ChangeRequestFormApprovers.objects.filter( approver = models.ChangeRequestFormApprovers.objects.filter(
Q(user=user_id_number) & Q(user=user_id_number) &
Q(deleted_at=None) Q(archived_at=None)
) )
approver = [data.form_code for data in approver] approver = [data.form_code for data in approver]
stake = models.ChangeRequestFormStakeHolders.objects.filter( stake = models.ChangeRequestFormStakeHolders.objects.filter(
Q(user=user_id_number) & Q(user=user_id_number) &
Q(deleted_at=None) Q(archived_at=None)
) )
stake = [data.form_code for data in stake] stake = [data.form_code for data in stake]
headers = models.ChangeRequestFormHeader.objects.filter( headers = models.ChangeRequestFormHeader.objects.filter(
deleted_at=None, archived_at=None,
requested_by_user=user_id_number requested_by_user=user_id_number
) )
headers = [data.form_code for data in headers] headers = [data.form_code for data in headers]
...@@ -52,7 +52,7 @@ def list_by_user(user_id_number): ...@@ -52,7 +52,7 @@ def list_by_user(user_id_number):
# priviledgedList = models.ChangeRequestFormHeader.objects.filter( # priviledgedList = models.ChangeRequestFormHeader.objects.filter(
# requested_to_department__in=crViews, # requested_to_department__in=crViews,
# deleted_at=None, # archived_at=None,
# ) # )
# priviledgedCrs = [data['form_code'] for data in priviledgedList] # priviledgedCrs = [data['form_code'] for data in priviledgedList]
...@@ -62,7 +62,7 @@ def list_by_user(user_id_number): ...@@ -62,7 +62,7 @@ def list_by_user(user_id_number):
return_queryset = models.ChangeRequestFormHeader.objects.filter( return_queryset = models.ChangeRequestFormHeader.objects.filter(
form_code__in=form_code, form_code__in=form_code,
deleted_at=None, archived_at=None,
) )
exclude = return_queryset.filter( exclude = return_queryset.filter(
status__iexact='Draft', status__iexact='Draft',
...@@ -179,29 +179,13 @@ def filter_overdue(base_queryset): ...@@ -179,29 +179,13 @@ def filter_overdue(base_queryset):
overdue = [] overdue = []
for query in return_queryset: for query in return_queryset:
if (query.requested_to_target_date < now):
try:
if query.requested_to_target_date:
requested_to_target_date = datetime.strptime(query.requested_to_target_date[:-1], "%Y-%m-%dT%H:%M:%S.%f")
if (requested_to_target_date < now):
overdue.append(query.form_code)
except ValueError:
#convert now
if query.requested_to_target_date:
requested_to_target_date = datetime.strptime(query.requested_to_target_date[:-1], "%Y-%m-%d %H:%M:%S")
if (requested_to_target_date < now):
overdue.append(query.form_code) overdue.append(query.form_code)
return_queryset = return_queryset.filter( return_queryset = return_queryset.filter(
form_code__in=overdue form_code__in=overdue
) )
return_queryset
except Exception as e: except Exception as e:
pass pass
...@@ -241,14 +225,20 @@ def filter_awaiting(base_queryset, ...@@ -241,14 +225,20 @@ def filter_awaiting(base_queryset,
current_level = models.ChangeRequestFormApprovers.objects.filter( current_level = models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=query.form_code) & Q(form_code=query.form_code) &
Q(deleted_at=None) &
(Q(action='') | Q(action=None)) (Q(action='') | Q(action=None))
).order_by('level') ).order_by('level')
if current_level: if current_level:
first_level = current_level.first()
first_user = models.ChangeRequestFormApprovers.objects.filter(
code=first_level).values('user')
print(first_user.user)
# if x == user_id_number:
if current_level[0]['user'] == user_id_number: # awaiting_included.append(query.form_code)
awaiting_included.append(query.form_code)
return_queryset = return_queryset.filter(form_code__in=awaiting_included) return_queryset = return_queryset.filter(form_code__in=awaiting_included)
......
# Generated by Django 2.2 on 2019-09-11 11:02
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('entities', '0006_emaillogs_is_sent'),
]
operations = [
migrations.AlterField(
model_name='changerequestformheader',
name='requested_to_template_id',
field=models.CharField(max_length=255),
),
]
# Generated by Django 2.2 on 2019-09-11 17:15
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('entities', '0007_auto_20190911_1102'),
]
operations = [
migrations.AlterField(
model_name='changerequesthistory',
name='form_code',
field=models.CharField(blank=True, max_length=255, null=True),
),
]
# Generated by Django 2.2 on 2019-09-11 18:45
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('entities', '0008_auto_20190911_1715'),
]
operations = [
migrations.RenameField(
model_name='changerequestformapprovers',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequestformattachments',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequestformdetails',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequestformheader',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequestformstakeholders',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequesttemplateapprovers',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequesttemplateattachments',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequesttemplatedetails',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequesttemplateheader',
old_name='deleted_at',
new_name='archived_at',
),
migrations.RenameField(
model_name='changerequesttemplatestakeholders',
old_name='deleted_at',
new_name='archived_at',
),
]
# Generated by Django 2.2 on 2019-09-13 11:43
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('entities', '0009_auto_20190911_1845'),
]
operations = [
migrations.RemoveField(
model_name='changerequestformapprovers',
name='archived_at',
),
migrations.RemoveField(
model_name='changerequestformattachments',
name='archived_at',
),
migrations.RemoveField(
model_name='changerequestformdetails',
name='archived_at',
),
migrations.RemoveField(
model_name='changerequestformheader',
name='archived_at',
),
migrations.RemoveField(
model_name='changerequestformstakeholders',
name='archived_at',
),
]
...@@ -354,7 +354,6 @@ class BaseHeader(models.Model): ...@@ -354,7 +354,6 @@ class BaseHeader(models.Model):
to_field='code') to_field='code')
requested_to_template_name = models.CharField(max_length=255) requested_to_template_name = models.CharField(max_length=255)
requested_to_template_id = models.CharField(max_length=255, unique=True)
requested_to_objective = models.CharField( requested_to_objective = models.CharField(
max_length=255, max_length=255,
...@@ -374,10 +373,6 @@ class BaseHeader(models.Model): ...@@ -374,10 +373,6 @@ class BaseHeader(models.Model):
created = models.DateTimeField(auto_now_add=True) created = models.DateTimeField(auto_now_add=True)
deleted_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
abstract = True abstract = True
...@@ -399,9 +394,6 @@ class BaseApprover(models.Model): ...@@ -399,9 +394,6 @@ class BaseApprover(models.Model):
created = models.DateTimeField( created = models.DateTimeField(
blank=True, blank=True,
null=True) null=True)
deleted_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
abstract = True abstract = True
...@@ -421,9 +413,6 @@ class BaseStakeholder(models.Model): ...@@ -421,9 +413,6 @@ class BaseStakeholder(models.Model):
created = models.DateTimeField( created = models.DateTimeField(
blank=True, blank=True,
null=True) null=True)
deleted_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
abstract = True abstract = True
...@@ -452,9 +441,6 @@ class BaseAttachment(models.Model): ...@@ -452,9 +441,6 @@ class BaseAttachment(models.Model):
created = models.DateTimeField( created = models.DateTimeField(
blank=True, blank=True,
null=True) null=True)
deleted_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
abstract = True abstract = True
...@@ -469,9 +455,6 @@ class BaseDetails(models.Model): ...@@ -469,9 +455,6 @@ class BaseDetails(models.Model):
created = models.DateTimeField( created = models.DateTimeField(
blank=True, blank=True,
null=True) null=True)
deleted_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
abstract = True abstract = True
...@@ -488,6 +471,10 @@ class ChangeRequestTemplateHeader(BaseHeader): ...@@ -488,6 +471,10 @@ class ChangeRequestTemplateHeader(BaseHeader):
unique=True, unique=True,
max_length=255) max_length=255)
requested_to_template_id = models.CharField(
max_length=255,
unique=True)
created_by_user = models.ForeignKey( created_by_user = models.ForeignKey(
User, User,
on_delete=models.DO_NOTHING, on_delete=models.DO_NOTHING,
...@@ -500,6 +487,10 @@ class ChangeRequestTemplateHeader(BaseHeader): ...@@ -500,6 +487,10 @@ class ChangeRequestTemplateHeader(BaseHeader):
to_field='code', to_field='code',
related_name='created_by_department') related_name='created_by_department')
archived_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
db_table = 'change_request_template_headers' db_table = 'change_request_template_headers'
...@@ -515,7 +506,7 @@ class ChangeRequestTemplateHeader(BaseHeader): ...@@ -515,7 +506,7 @@ class ChangeRequestTemplateHeader(BaseHeader):
self.save() self.save()
def delete(self): def delete(self):
self.deleted_at = datetime.utcnow self.archived_at = datetime.utcnow
self.save() self.save()
...@@ -528,6 +519,9 @@ class ChangeRequestTemplateApprovers(BaseApprover): ...@@ -528,6 +519,9 @@ class ChangeRequestTemplateApprovers(BaseApprover):
on_delete=models.DO_NOTHING, on_delete=models.DO_NOTHING,
to_field='template_no', to_field='template_no',
related_name='tmp_approvers') related_name='tmp_approvers')
archived_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
db_table = 'change_request_template_approvers' db_table = 'change_request_template_approvers'
...@@ -544,6 +538,10 @@ class ChangeRequestTemplateApprovers(BaseApprover): ...@@ -544,6 +538,10 @@ class ChangeRequestTemplateApprovers(BaseApprover):
self.created = datetime.now() self.created = datetime.now()
self.save() self.save()
def delete(self):
self.archived_at = datetime.utcnow
self.save()
class ChangeRequestTemplateStakeHolders(BaseStakeholder): class ChangeRequestTemplateStakeHolders(BaseStakeholder):
code = models.CharField( code = models.CharField(
unique=True, unique=True,
...@@ -553,6 +551,9 @@ class ChangeRequestTemplateStakeHolders(BaseStakeholder): ...@@ -553,6 +551,9 @@ class ChangeRequestTemplateStakeHolders(BaseStakeholder):
on_delete=models.DO_NOTHING, on_delete=models.DO_NOTHING,
to_field='template_no', to_field='template_no',
related_name='tmp_stakes') related_name='tmp_stakes')
archived_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
db_table = 'change_request_template_stakeholders' db_table = 'change_request_template_stakeholders'
...@@ -569,6 +570,10 @@ class ChangeRequestTemplateStakeHolders(BaseStakeholder): ...@@ -569,6 +570,10 @@ class ChangeRequestTemplateStakeHolders(BaseStakeholder):
self.created = datetime.now() self.created = datetime.now()
self.save() self.save()
def delete(self):
self.archived_at = datetime.utcnow
self.save()
class ChangeRequestTemplateAttachments(BaseAttachment): class ChangeRequestTemplateAttachments(BaseAttachment):
code = models.CharField( code = models.CharField(
...@@ -579,6 +584,9 @@ class ChangeRequestTemplateAttachments(BaseAttachment): ...@@ -579,6 +584,9 @@ class ChangeRequestTemplateAttachments(BaseAttachment):
on_delete=models.DO_NOTHING, on_delete=models.DO_NOTHING,
to_field='template_no', to_field='template_no',
related_name='tmp_attachments') related_name='tmp_attachments')
archived_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
db_table = 'change_request_template_attachments' db_table = 'change_request_template_attachments'
...@@ -595,6 +603,10 @@ class ChangeRequestTemplateAttachments(BaseAttachment): ...@@ -595,6 +603,10 @@ class ChangeRequestTemplateAttachments(BaseAttachment):
self.created = datetime.now() self.created = datetime.now()
self.save() self.save()
def delete(self):
self.archived_at = datetime.utcnow
self.save()
class ChangeRequestTemplateDetails(BaseDetails): class ChangeRequestTemplateDetails(BaseDetails):
code = models.CharField( code = models.CharField(
...@@ -605,6 +617,9 @@ class ChangeRequestTemplateDetails(BaseDetails): ...@@ -605,6 +617,9 @@ class ChangeRequestTemplateDetails(BaseDetails):
on_delete=models.DO_NOTHING, on_delete=models.DO_NOTHING,
to_field='template_no', to_field='template_no',
related_name='tmp_details') related_name='tmp_details')
archived_at = models.DateTimeField(
blank=True,
null=True)
class Meta: class Meta:
db_table = 'change_request_template_details' db_table = 'change_request_template_details'
...@@ -621,6 +636,10 @@ class ChangeRequestTemplateDetails(BaseDetails): ...@@ -621,6 +636,10 @@ class ChangeRequestTemplateDetails(BaseDetails):
self.created = datetime.now() self.created = datetime.now()
self.save() self.save()
def delete(self):
self.archived_at = datetime.utcnow
self.save()
''' '''
***** *****
FORMS FORMS
...@@ -666,6 +685,8 @@ class ChangeRequestFormHeader(BaseHeader): ...@@ -666,6 +685,8 @@ class ChangeRequestFormHeader(BaseHeader):
max_length=255, max_length=255,
null=True, null=True,
blank=True) blank=True)
requested_to_template_id = models.CharField(
max_length=255)
class Meta: class Meta:
db_table = 'change_request_form_headers' db_table = 'change_request_form_headers'
...@@ -840,7 +861,10 @@ class ChangeRequestHistory(AuditClass): ...@@ -840,7 +861,10 @@ class ChangeRequestHistory(AuditClass):
(tag.value, tag.value) for tag in enums.CREntitiesEnum], (tag.value, tag.value) for tag in enums.CREntitiesEnum],
default=enums.CREntitiesEnum.CR_FRM_HEADER.value, default=enums.CREntitiesEnum.CR_FRM_HEADER.value,
max_length=50) max_length=50)
form_code = models.IntegerField() form_code = models.CharField(
max_length=255,
blank=True,
null=True)
fromValue = models.TextField(blank=True, null=True) fromValue = models.TextField(blank=True, null=True)
toValue = models.TextField(blank=True, null=True) toValue = models.TextField(blank=True, null=True)
......
This diff is collapsed.
...@@ -19,6 +19,7 @@ Django==2.2 ...@@ -19,6 +19,7 @@ Django==2.2
django-cors-headers==2.5.2 django-cors-headers==2.5.2
django-filter==2.1.0 django-filter==2.1.0
djangorestframework==3.9.2 djangorestframework==3.9.2
drf-writable-nested==0.5.1
gevent==1.4.0 gevent==1.4.0
greenlet==0.4.15 greenlet==0.4.15
hiredis==1.0.0 hiredis==1.0.0
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment