def obj_update(self, bundle, **kwargs): #Edit case many to many handling. First clear out the previous related objects and create new objects bundle = super(ScreeningResource, self).obj_update(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = bundle.data.get('id') del_objs = PersonMeetingAttendance.objects.filter( screening__id=screening_id).delete() pma_list = bundle.data.get('farmers_attendance') for pma in pma_list: person_obj = Person.objects.get(id=pma['person_id']) person_obj.age = int(pma.get('age')) if pma.get('age') else None person_obj.gender = pma.get('gender') if pma.get( 'gender') else None person_obj.save() if pma.get('category'): category = json.dumps(pma.get('category')) else: category = None pma = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], user_created_id=user_id, category=category) pma.save() return bundle
def obj_update(self, bundle, **kwargs): #Edit case many to many handling. First clear out the previous related objects and create new objects bundle = super(ScreeningResource, self).obj_update(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = bundle.data.get('id') del_objs = PersonMeetingAttendance.objects.filter(screening__id=screening_id).delete() pma_list = bundle.data.get('farmers_attendance') for pma in pma_list: person_obj = Person.objects.get(id=pma['person_id']) person_obj.age = int(pma.get('age')) if pma.get('age') else None person_obj.gender = pma.get('gender') if pma.get('gender') else None person_obj.save() if pma.get('category'): category = json.dumps(pma.get('category')) else: category = None pma = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], user_created_id = user_id, category=category) pma.save() return bundle
def obj_create(self, bundle, **kwargs): pma_list = bundle.data.get('farmers_attendance') if pma_list: bundle = super(ScreeningResource, self).obj_create(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = getattr(bundle.obj, 'id') for pma in pma_list: try: person_obj = Person.objects.get(id=pma['person_id']) person_obj.age = int( pma.get('age')) if pma.get('age') else None person_obj.gender = pma.get('gender') if pma.get( 'gender') else None person_obj.save() if pma.get('category'): category = json.dumps(pma.get('category')) else: category = None attendance = PersonMeetingAttendance( screening_id=screening_id, person_id=pma['person_id'], user_created_id=user_id, category=category) attendance.save() except Exception, e: raise PMANotSaved( 'For Screening with id: ' + str(screening_id) + ' pma is not getting saved. pma details: ' + str(e)) return bundle
def obj_create(self, bundle, **kwargs): pma_list = bundle.data.get('farmers_attendance') if pma_list: bundle = super(ScreeningResource, self).obj_create(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = getattr(bundle.obj,'id') for pma in pma_list: try: person_obj = Person.objects.get(id=pma['person_id']) person_obj.age = int(pma.get('age')) if pma.get('age') else None person_obj.gender = pma.get('gender') if pma.get('gender') else None person_obj.save() if pma.get('category'): category = json.dumps(pma.get('category')) else: category = None attendance = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], user_created_id = user_id, category=category) attendance.save() except Exception, e: raise PMANotSaved('For Screening with id: ' + str(screening_id) + ' pma is not getting saved. pma details: '+ str(e)) return bundle
def obj_update(self, bundle, **kwargs): #Edit case many to many handling. First clear out the previous related objects and create new objects bundle = super(ScreeningResource, self).obj_update(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = bundle.data.get('id') del_objs = PersonMeetingAttendance.objects.filter(screening__id=screening_id).delete() pma_list = bundle.data.get('farmers_attendance') for pma in pma_list: pma = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], category=pma['category'], user_created_id = user_id) pma.save() return bundle
def save_pma(pma_record, Sid, status): for person in pma_record: try: PersonExisting = PersonMeetingAttendance.objects.filter(screening_id=Sid, person_id=person['person_id']) if not(len(PersonExisting)): pma = PersonMeetingAttendance(screening_id=Sid, person_id=person['person_id']) pma.full_clean() pma.save() status = 1 except ValidationError, e: status = error_list['PMA_SAVE_ERROR'] error = "Error in Saving PMA : " + str(e) sendmail("Exception in Mobile COCO. Error in Saving PMA {Line 164)", error)
def obj_create(self, bundle, **kwargs): pma_list = bundle.data.get('farmers_attendance') if pma_list: bundle = super(ScreeningResource, self).obj_create(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = getattr(bundle.obj,'id') for pma in pma_list: try: attendance = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], category=pma['category'], user_created_id = user_id,) attendance.save() except Exception, e: raise PMANotSaved('For Screening with id: ' + str(screening_id) + ' pma is not getting saved. pma details: '+ str(e)) return bundle
def obj_update(self, bundle, **kwargs): #Edit case many to many handling. First clear out the previous related objects and create new objects bundle = super(ScreeningResource, self).obj_update(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = bundle.data.get('id') del_objs = PersonMeetingAttendance.objects.filter(screening__id=screening_id).delete() pma_list = bundle.data.get('farmers_attendance') for pma in pma_list: pma = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], expressed_adoption_video_id = pma['expressed_adoption_video']['id'], interested = pma['interested'], expressed_question = pma['expressed_question'], user_created_id = user_id) pma.save() return bundle
def obj_create(self, bundle, **kwargs): pma_list = bundle.data.get('farmers_attendance') if pma_list: bundle = super(ScreeningResource, self).obj_create(bundle, **kwargs) user_id = None if bundle.request.user: user_id = bundle.request.user.id screening_id = getattr(bundle.obj,'id') for pma in pma_list: try: attendance = PersonMeetingAttendance(screening_id=screening_id, person_id=pma['person_id'], expressed_adoption_video_id = pma['expressed_adoption_video']['id'], interested = pma['interested'], user_created_id = user_id, expressed_question = pma['expressed_question'],) attendance.save() except Exception, e: raise PMANotSaved('For Screening with id: ' + str(screening_id) + ' pma is not getting saved. pma details: '+ str(e)) return bundle
def save_pma(pma_record, Sid, status): for person in pma_record: try: PersonExisting = PersonMeetingAttendance.objects.filter( screening_id=Sid, person_id=person['person_id']) if not (len(PersonExisting)): pma = PersonMeetingAttendance(screening_id=Sid, person_id=person['person_id']) pma.full_clean() pma.save() status = 1 except ValidationError, e: status = error_list['PMA_SAVE_ERROR'] error = "Error in Saving PMA : " + str(e) sendmail( "Exception in Mobile COCO. Error in Saving PMA {Line 164)", error)