def save(self, *args, **kwargs): if (self.transmissionid == None): var = str(uuid.uuid4()) self.transmissionid = var[26:36] #Log events event = Event() event.EventTypeCode = "TRA" event.EventSubjectId = self.transmissionid event.EventSubjectName = self.SenderName event.EventTypeReason = "Transmission added" event.source = "Web App" event.creator=self.creator event.save() if (self.bulk_upload_indicator == "Y" and self.backend_SOR_connection != "Disconnected"): self.bulk_upload_indicator="" self.response='Success' super().save(*args, **kwargs) #connect to backend if self.backend_SOR_connection != "Disconnected": #converty model object to json serializer = TransmissionSerializer(self) json_data = serializer.data api = ApiDomains() url=api.transmission #url='https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidatatransmissionAPI' #post data to the API for backend connection resp = requests.post(url, json=json_data) print("status code " + str(resp.status_code)) if resp.status_code == 502: resp.status_code = 201 obj = get_object_or_404(APICodes, http_response_code = resp.status_code) status_message=obj.http_response_message self.response=str(resp.status_code) + " - " + status_message if resp.status_code == 201: self.commit_indicator="Committed" else: self.commit_indicator="Not Committed" #Log events event = Event() event.EventTypeCode = "TRC" event.EventSubjectId = self.transmissionid event.EventSubjectName = self.SenderName event.EventTypeReason = "Transmission added to ODS" event.source = "Web App" event.creator=self.creator event.save() super().save(*args, **kwargs) else: print("not connected to backend!")
def ListEventsHistory(request, pk): context = {} prod_obj = get_object_or_404(Event, pk=pk) api = ApiDomains() url = api.event + "/" + "history" #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataeventAPI/history' payload = {'ident': prod_obj.eventid} resp = requests.get(url, params=payload) print(resp.status_code) obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 200: # This means something went wrong. #raise ApiError('GET /tasks/ {}'.format(resp.status_code)) #raise APIError(resp.status_code) message = {'messages': mesg} return render(request, "messages.html", context=message) else: json_data = [] dict_data = [] obj_data = [] json_data = resp.json() #print(json_data[0]) #print(json_data[1]) for ix in range(len(json_data)): obj = Event() #dict_data.append(json.loads(json_data[ix])) obj.pk = int(json_data[ix]["LOCAL_ID"]) obj.eventid = json_data[ix]["EVENT_ID"] obj.EventTypeCode = json_data[ix]["EVENT_TYPE_CODE"] obj.EventSubjectId = json_data[ix]["EVENT_SUBJECT_ID"] obj.EventSubjectName = json_data[ix]["EVENT_SUBJECT_NAME"] obj.EventTypeReason = json_data[ix]["EVENT_TYPE_REASON"] obj.creator = User.objects.get(pk=int(json_data[ix]["CREATOR"])) #obj.crerator = get_object_or_404(User, pk=obj.creatorid) obj.EventDate = json_data[ix]["EVENT_DATE"] obj.TransactionDate = json_data[ix]["TRANSACTION_DATE"] obj.backend_SOR_connection = json_data[ix]["CONNECTION"] obj.response = json_data[ix]["RESPONSE"] obj.commit_indicator = json_data[ix]["COMMIT_INDICATOR"] obj.record_status = json_data[ix]["RECORD_STATUS"] obj_data.append(obj) context = {'object_list': obj_data} return render(request, "events/event_list.html", context=context)
def TransmissionList(request): if request.method == 'GET': contacts = Transmission.objects.all() serializer = TransmissionSerializer(contacts, many=True) return Response(serializer.data) elif request.method == 'POST': serializer = TransmissionSerializer(data=request.data) # Raises a ValidatinException which will be sent as a 400 response. serializer.is_valid(raise_exception=True) transmission = Transmission() event = Event() if serializer.data["transmissionid"] == '': transmission.transmissionid = str(uuid.uuid4())[26:36] event.EventTypeReason = "New transmission received via API" else: transmission.transmissionid = serializer.data["transmissionid"] event.EventTypeReason = "Transmission added via API" #transmission.transmissionid = serializer.data["transmissionid"] transmission.SenderName = serializer.data["SenderName"] transmission.BenefitAdministratorPlatform = serializer.data[ "BenefitAdministratorPlatform"] transmission.ReceiverName = serializer.data["ReceiverName"] transmission.TestProductionCode = serializer.data["TestProductionCode"] transmission.TransmissionTypeCode = serializer.data[ "TransmissionTypeCode"] transmission.SystemVersionIdentifier = serializer.data[ "SystemVersionIdentifier"] transmission.source = "Post API" transmission.creator = get_object_or_404(User, pk=serializer.data["creator"]) #transmission.create_date = serializer.data["create_date"] transmission.backend_SOR_connection = "Disconnected" transmission.response = "" transmission.commit_indicator = "Not Committed" transmission.record_status = "" transmission.bulk_upload_indicator = "Y" print(transmission) #Log events event.EventTypeCode = "TRW" event.EventSubjectId = transmission.transmissionid event.EventSubjectName = transmission.SenderName event.source = "Post API" event.creator = transmission.creator event.save() transmission.save() return Response(serializer.data)
def RefreshEvent(request, pk): # fetch the object related to passed id context = {} prod_obj = get_object_or_404(Event, pk=pk) api = ApiDomains() url = api.event + "/" + "refresh" #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataeventAPI/history' payload = {'ident': prod_obj.eventid} resp = requests.get(url, params=payload) print(resp.status_code) obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 200: # This means something went wrong. #raise ApiError('GET /tasks/ {}'.format(resp.status_code)) #raise APIError(resp.status_code) message = {'messages': mesg} return render(request, "messages.html", context=message) else: json_data = [] json_data = resp.json() obj1 = Event() #OVERRIDE THE OBJECT WITH API data obj1.pk = int(json_data["LOCAL_ID"]) obj1.eventid = json_data["EVENT_ID"] obj1.EventTypeCode = json_data["EVENT_TYPE_CODE"] obj1.EventSubjectId = json_data["EVENT_SUBJECT_ID"] obj1.EventSubjectName = json_data["EVENT_SUBJECT_NAME"] obj1.EventTypeReason = json_data["EVENT_TYPE_REASON"] obj1.creator = User.objects.get(pk=int(json_data["CREATOR"])) #obj.crerator = get_object_or_404(User, pk=obj.creatorid) obj1.EventDate = json_data["EVENT_DATE"] obj1.TransactionDate = json_data["TRANSACTION_DATE"] obj1.backend_SOR_connection = json_data["CONNECTION"] obj1.response = json_data["RESPONSE"] obj1.commit_indicator = json_data["COMMIT_INDICATOR"] obj1.record_status = json_data["RECORD_STATUS"] obj1.save() context = {'event_details': obj1} return render(request, "events/event_detail.html", context=context)
def ProductList(request): if request.method == 'GET': contacts = Product.objects.all() serializer = ProductSerializer(contacts, many=True) return Response(serializer.data) elif request.method == 'POST': serializer = ProductSerializer(data=request.data) serializer.is_valid(raise_exception=True) product = Product() event = Event() if serializer.data["productid"] == '': product.productid = str(uuid.uuid4())[26:36] event.EventTypeReason = "New product received via API" else: product.productid = serializer.data["productid"] event.EventTypeReason = "Product added via API" product.name = serializer.data["name"] product.slug = slugify(product.name), product.description = serializer.data["description"] product.description_html = misaka.html(product.description), product.coverage_limit = serializer.data["coverage_limit"] product.price_per_1000_units = serializer.data["price_per_1000_units"] product.source = "Post API" product.creator = get_object_or_404(User, pk=serializer.data["creator"]) product.backend_SOR_connection = "Disconnected" product.response = "" product.commit_indicator = "Not Committed" product.record_status = "" product.bulk_upload_indicator = "Y" #Log events event.EventTypeCode = "PRW" event.EventSubjectId = product.productid event.EventSubjectName = product.name event.source = "Post API" event.creator = product.creator event.save() product.save() return Response(serializer.data)
def form_valid(self, form): print("hello") if not self.request.user.has_perm('products.delete_product'): raise HttpResponseForbidden() else: form.instance.creator = self.request.user #Log events event = Event() event.EventTypeCode = "PRD" event.EventSubjectId = form.instance.productid event.EventSubjectName = form.instance.name event.EventTypeReason = "Product deleted" event.source = "Online Transaction" event.creator = self.request.user event.save() return super().form_valid(form)
def form_valid(self, form): if not self.request.user.has_perm('products.change_product'): raise HttpResponseForbidden() else: form.instance.creator = self.request.user form.instance.record_status = "Updated" #Log events event = Event() event.EventTypeCode = "PRU" event.EventSubjectId = form.instance.productid event.EventSubjectName = form.instance.name event.EventTypeReason = "Product updated" event.source = "Online Transaction" event.creator = self.request.user event.save() return super().form_valid(form)
def form_valid(self, form): print("hello") if not self.request.user.has_perm('transmissions.delete_transmission'): raise HttpResponseForbidden() else: form.instance.creator = self.request.user #Log events event = Event() event.EventTypeCode = "TRD" event.EventSubjectId = form.instance.transmissionid event.EventSubjectName = form.instance.SenderName event.EventTypeReason = "Transmission deleted" event.source = "Online Transaction" event.creator = self.request.user event.save() #save data return super().form_valid(form)
def VersionTransmission(request, pk): # dictionary for initial data with # field names as keys context = {} # fetch the object related to passed id obj = get_object_or_404(Transmission, pk=pk) #obj.photo.delete() #obj.photo.open(mode='rb') # pass the object as instance in form form = TransmissionForm(request.POST or None, instance=obj) # save the data from the form and # redirect to detail_view if form.is_valid(): obj.pk = int(round(time.time() * 1000)) #form.photo = request.POST.get('photo', False) #form.photo = request.FILES['photo'] form.instance.creator = request.user form.instance.record_status = "Created" #Log events event = Event() event.EventTypeCode = "TRV" event.EventSubjectId = form.instance.transmissionid event.EventSubjectName = form.instance.SenderName event.EventTypeReason = "Transmission versioned" event.source = "Online Transaction" event.creator = request.user event.save() #save data form.save() return HttpResponseRedirect(reverse("transmissions:all")) else: # add form dictionary to context context["form"] = form return render(request, "transmissions/transmission_form.html", context)
def form_valid(self, form): if not self.request.user.has_perm('transmissions.change_transmission'): raise HttpResponseForbidden() else: form.instance.creator = self.request.user form.instance.record_status = "Updated" #Log events event = Event() event.EventTypeCode = "TRU" event.EventSubjectId = form.instance.transmissionid event.EventSubjectName = form.instance.SenderName event.EventTypeReason = "Transmission updated" event.source = "Online Transaction" event.creator = self.request.user event.save() #save data return super().form_valid(form)
def BulkUploadSOR(request): array = Product.objects.filter(bulk_upload_indicator='Y') serializer = ProductSerializer(array, many=True) json_array = serializer.data api = ApiDomains() url = api.product + "/" + "upload" #url='https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataProductAPI' #post data to the API for backend connection resp = requests.post(url, json=json_array) print("status code " + str(resp.status_code)) if resp.status_code == 502: resp.status_code = 201 obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 201: # This means something went wrong. message = {'messages': mesg} return render(request, "messages.html", context=message) else: Product.objects.filter(bulk_upload_indicator='Y').update( bulk_upload_indicator=" ") #Log events event = Event() event.EventTypeCode = "PRO" event.EventSubjectId = "productodsupload" event.EventSubjectName = "Bulk upload to ODS" event.EventTypeReason = "Products uploaded to ODS in bulk" event.source = "Online Transaction" event.creator = request.user event.save() return HttpResponseRedirect(reverse("products:all"))
def BulkUploadProduct(request): context = {} form = BulkUploadForm(request.POST, request.FILES) if form.is_valid(): form.instance.creator = request.user form.save() s3 = boto3.client('s3') s3.download_file('intellidatastatic1', 'media/products.csv', 'products.csv') with open('products.csv', 'rt') as csv_file: array_good = [] array_bad = [] #array_bad =[] next(csv_file) # skip header line for row in csv.reader(csv_file): bad_ind = 0 array1 = [] array2 = [] #populate serial number serial = row[0] array2.append(serial) #pass product: productid = row[1] array2.append(productid) #validate name name = row[2] if name == "": bad_ind = 1 description = "Name is mandatory" array1.append(serial) array1.append(productid) array1.append(name) array1.append(name) array1.append(description) array_bad.append(array1) else: array2.append(name) slug = slugify(name) #array2.append(slug) type = row[3] array2.append(type) description = row[4] array2.append(description) description_html = misaka.html(description) coverage_limit = row[5] array2.append(coverage_limit) price_per_1000_units = row[6] array2.append(price_per_1000_units) if bad_ind == 0: array_good.append(array2) # create good file #with open('products1.csv', 'w', newline='') as clean_file: ## writer = csv.writer(clean_file) # writer.writerows(array_good) buff1 = io.StringIO() writer = csv.writer(buff1, dialect='excel', delimiter=',') writer.writerows(array_good) buff2 = io.BytesIO(buff1.getvalue().encode()) # check if a version of the good file already exists # try: # s3.Object('my-bucket', 'dootdoot.jpg').load() # except botocore.exceptions.ClientError as e: # if e.response['Error']['Code'] == "404": # # The object does not exist. # ... # else: # # Something else has gone wrong. # raise # else: # # do something # create good file try: response = s3.delete_object(Bucket='intellidatastatic1', Key='media/products1.csv') s3.upload_fileobj(buff2, 'intellidatastatic1', 'media/products1.csv') print("Good File Upload Successful") except FileNotFoundError: print("The good file was not found") except NoCredentialsError: print("Credentials not available") # create bad file #with open('product_error.csv', 'w', newline='') as error_file: # writer = csv.writer(error_file) # writer.writerows(array1) buff3 = io.StringIO() writer = csv.writer(buff3, dialect='excel', delimiter=',') writer.writerows(array_bad) buff4 = io.BytesIO(buff3.getvalue().encode()) # save bad file to S3 try: response = s3.delete_object(Bucket='intellidatastatic1', Key='media/products_error.csv') s3.upload_fileobj(buff4, 'intellidatastatic1', 'media/products_error.csv') print("Bad File Upload Successful") except FileNotFoundError: print("The bad file was not found") except NoCredentialsError: print("Credentials not available") # load the product table s3.download_file('intellidatastatic1', 'media/products1.csv', 'products1.csv') with open('products1.csv', 'rt') as csv_file: bulk_mgr = BulkCreateManager(chunk_size=20) for row in csv.reader(csv_file): if row[1] == "": bulk_mgr.add( models.Product(productid=str(uuid.uuid4())[26:36], name=row[2], slug=slugify(row[2]), type=row[3], description=row[4], description_html=misaka.html(row[4]), coverage_limit=row[5], price_per_1000_units=row[6], creator=request.user, source="Standard Feed Bulk Upload", record_status="Created", bulk_upload_indicator="Y")) else: bulk_mgr.add( models.Product(productid=row[1], name=row[2], slug=slugify(row[2]), type=row[3], description=row[4], description_html=misaka.html(row[4]), coverage_limit=row[5], price_per_1000_units=row[6], creator=request.user, source="Standard Feed Bulk Upload", record_status="Created", bulk_upload_indicator="Y")) bulk_mgr.done() # load the product error table s3.download_file('intellidatastatic1', 'media/products_error.csv', 'products_error.csv') #Refresh Error table for concerned employer ProductError.objects.all().delete() with open('products_error.csv', 'rt') as csv_file: bulk_mgr = BulkCreateManager(chunk_size=20) for row1 in csv.reader(csv_file): bulk_mgr.add( models.ProductError( serial=row1[0], productid=row1[1], name=row1[2], errorfield=row1[3], error_description=row1[4], creator=request.user, source="Standard Feed Bulk Upload")) bulk_mgr.done() error_report = ProductErrorAggregate() error_report.clean = Product.objects.count() error_report.error = ProductError.objects.count() error_report.total = (error_report.clean + error_report.error) #Refresh Error aggregate table for concerned employer #ProductErrorAggregate.objects.all().delete() error_report.save() #Log events event = Event() event.EventTypeCode = "PRB" event.EventSubjectId = "bulkproducts" event.EventSubjectName = "Bulk processing" event.EventTypeReason = "Products uploaded in bulk" event.source = "Standard Feed Bulk Upload" event.creator = request.user event.save() return HttpResponseRedirect(reverse("products:all")) #return HttpResponseRedirect(reverse("products:all")) else: # add form dictionary to context context["form"] = form return render(request, "bulkuploads/bulkupload_form.html", context)
def RefreshProduct(request, pk): # fetch the object related to passed id context = {} prod_obj = get_object_or_404(Product, pk=pk) api = ApiDomains() url = api.product + "/" + "refresh" #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataProductAPI/history' payload = {'ident': prod_obj.productid} resp = requests.get(url, params=payload) print(resp.status_code) obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 200: # This means something went wrong. #raise ApiError('GET /tasks/ {}'.format(resp.status_code)) #raise APIError(resp.status_code) message = {'messages': mesg} return render(request, "messages.html", context=message) else: json_data = [] json_data = resp.json() obj1 = Product() #OVERRIDE THE OBJECT WITH API data obj1.pk = int(json_data["LOCAL_ID"]) obj1.productid = json_data["PRODUCT_ID"] obj1.name = json_data["NAME"] obj1.type = json_data["TYPE"] obj1.coverage_limit = json_data["COVERAGE_LIMIT"] obj1.price_per_1000_units = json_data["RATE"] obj1.product_date = json_data["CREATE_DATE"] obj1.description = json_data["DESCRIPTION"] obj1.description_html = misaka.html(obj1.description) #obj1.photo = json_data["PHOTO"] obj1.creator = User.objects.get(pk=int(json_data["CREATOR"])) #obj.crerator = get_object_or_404(User, pk=obj.creatorid) obj1.create_date = json_data["CREATE_DATE"] obj1.backend_SOR_connection = "Disconnected" obj1.response = json_data["RESPONSE"] obj1.commit_indicator = json_data["COMMIT_INDICATOR"] obj1.record_status = json_data["RECORD_STATUS"] #Log events event = Event() event.EventTypeCode = "PRR" event.EventSubjectId = obj1.productid event.EventSubjectName = obj1.name event.EventTypeReason = "Product refreshed from ODS" event.source = "Online Transaction" event.creator = obj1.creator event.save() obj1.save() context = {'product_details': obj1} return render(request, "products/product_detail.html", context=context)
def save(self, *args, **kwargs): if (self.employeeid == None): var = str(uuid.uuid4()) self.employeeid = var[26:36] #Log events event = Event() event.EventTypeCode = "EEA" event.EventSubjectId = self.employeeid event.EventSubjectName = self.name event.EventTypeReason = "Employee added" event.source = "Web App" event.creator=self.creator event.save() self.slug = slugify(self.name) self.response='Success' if (self.bulk_upload_indicator == "Y" and self.backend_SOR_connection != "Disconnected"): self.bulk_upload_indicator="" # self.description_html = misaka.html(self.description) super().save(*args, **kwargs) #connect to backend if self.backend_SOR_connection != "Disconnected": #converty model object to json serializer = EmployeeSerializer(self) json_data = serializer.data api = ApiDomains() url=api.employee #post data to the API for backend connection resp = requests.post(url, json=json_data) print("status code " + str(resp.status_code)) if resp.status_code == 502: resp.status_code = 201 obj = get_object_or_404(APICodes, http_response_code = resp.status_code) status_message=obj.http_response_message self.response=str(resp.status_code) + " - " + status_message if resp.status_code == 201: self.commit_indicator="Committed" else: self.commit_indicator="Not Committed" #Log events event = Event() event.EventTypeCode = "EEC" event.EventSubjectId = self.employeeid event.EventSubjectName = self.name event.EventTypeReason = "Employee added to ODS" event.source = "Web App" event.creator=self.creator event.save() super().save(*args, **kwargs) else: print("not connected to backend!")
def get_queryset(self, **kwargs): # new query = self.request.GET.get('q', None) object_list = Event.objects.filter( Q(eventid__icontains=query) | Q(EventTypeCode__icontains=query) | Q(EventTypeReason__icontains=query)) #change start for remote SearcheventsForm if not object_list: api = ApiDomains() url = api.event + "/" + "refresh" #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataeventAPI/history' payload = {'ident': query} resp = requests.get(url, params=payload) print(resp.status_code) obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 200: # This means something went wrong. #raise ApiError('GET /tasks/ {}'.format(resp.status_code)) #raise APIError(resp.status_code) #message={'messages':mesg} #return render(self.request, "messages.html", context=message) print("Status Code: " + str(resp.status_code)) else: json_data = [] json_data = resp.json() obj_data = [] obj1 = Event() #OVERRIDE THE OBJECT WITH API data obj1.pk = int(json_data["LOCAL_ID"]) obj1.eventid = json_data["EVENT_ID"] obj1.EventTypeCode = json_data["EVENT_TYPE_CODE"] obj1.EventSubjectId = json_data["EVENT_SUBJECT_ID"] obj1.EventSubjectName = json_data["EVENT_SUBJECT_NAME"] obj1.EventTypeReason = json_data["EVENT_TYPE_REASON"] obj1.creator = User.objects.get(pk=int(json_data["CREATOR"])) #obj.crerator = get_object_or_404(User, pk=obj.creatorid) obj1.EventDate = json_data["EVENT_DATE"] obj1.TransactionDate = json_data["TRANSACTION_DATE"] obj1.backend_SOR_connection = json_data["CONNECTION"] obj1.response = json_data["RESPONSE"] obj1.commit_indicator = json_data["COMMIT_INDICATOR"] obj1.record_status = json_data["RECORD_STATUS"] obj1.save() #obj_data.append(obj1) #print(obj_data) #context = {'object_list':obj_data} #return render(self.request, "eventevents/event_search_list.html", context=context) object_remote_list = Event.objects.filter(eventid=query) print(object_remote_list) return object_remote_list else: #change end for remote SearcheventsForm return object_list
def RefreshTransmission(request, pk): # fetch the object related to passed id context = {} prod_obj = get_object_or_404(Transmission, pk=pk) api = ApiDomains() url = api.transmission + "/" + "refresh" #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidatatransmissionAPI/history' payload = {'ident': prod_obj.transmissionid} resp = requests.get(url, params=payload) print(resp.status_code) obj = get_object_or_404(APICodes, http_response_code=resp.status_code) status_message = obj.http_response_message mesg = str(resp.status_code) + " - " + status_message if resp.status_code != 200: # This means something went wrong. #raise ApiError('GET /tasks/ {}'.format(resp.status_code)) #raise APIError(resp.status_code) message = {'messages': mesg} return render(request, "messages.html", context=message) else: json_data = [] json_data = resp.json() obj1 = Transmission() #OVERRIDE THE OBJECT WITH API data obj1.pk = int(json_data["LOCAL_ID"]) obj1.transmissionid = json_data["TRANSMISSION_ID"] obj1.SenderName = json_data["SENDER_NAME"] obj1.BenefitAdministratorPlatform = json_data[ "BENEFIT_ADMINISTRATOR_PLATFORM"] obj1.ReceiverName = json_data["RECEIVER_NAME"] obj1.TestProductionCode = json_data["TEST_PRODUCTION_CODE"] obj1.TransmissionTypeCode = json_data["TRANSMISSION_TYPE_CODE"] obj1.SystemVersionIdentifier = json_data["SYSTEM_VERSION_IDENTIFIER"] obj1.planadmin_email = json_data["PLANADMIN_EMAIL"] obj1.creator = User.objects.get(pk=int(json_data["CREATOR"])) #obj.crerator = get_object_or_404(User, pk=obj.creatorid) obj1.create_date = json_data["CREATE_DATE"] obj1.backend_SOR_connection = "Disconnected" obj1.response = json_data["RESPONSE"] obj1.commit_indicator = json_data["COMMIT_INDICATOR"] obj1.record_status = json_data["RECORD_STATUS"] #Log events event = Event() event.EventTypeCode = "TRR" event.EventSubjectId = obj1.transmissionid event.EventSubjectName = obj1.SenderName event.EventTypeReason = "Transmission refreshed from ODS" event.source = "Online Transaction" event.creator = obj1.creator event.save() #save data obj1.save() context = {'transmission_details': obj1} return render(request, "transmissions/transmission_detail.html", context=context)