def post(self, request, format=None): user = self.request.user user_people = [] for data in request.data['people']: offline_id = 0 if 'offline_id' in data: offline_id = data['offline_id'] people = People.objects.filter( mobile_number=data['mobile_number']).first() if people is None: people = People.objects.create( offline_id=offline_id, mobile_number=data['mobile_number'], first_name=data['first_name'], last_name=data['last_name'], create_by=user, modified_by=user) if UserPeople.objects.filter(user=self.request.user.id, people=people.id).count() == 0: user_people.append( UserPeople(offline_id=offline_id, nick_name=data['first_name'], user=self.request.user, people=people)) UserPeople.objects.bulk_create(user_people) actionLogUpdate(self, request, "People") return Response({"response": "Successfully Added."}, status=status.HTTP_200_OK)
def get_queryset(self): self.validate_peopleinstance() actionLogUpdate(self, self.request, "Productsellingdetails") return Productsellingdetails.objects.filter( user=self.request.user.id, people=self.kwargs.get('people'), user_group=self.kwargs.get('usergroup')).order_by('-id')
def post(self, request, format=None): data = request.data user = self.request.user people = UserPeople.objects.filter(people=data['people'], user=self.request.user.id).first() if people is None: return Response( { "errors": "Requested User Doesn't Have This Contact in His People List." }, status=status.HTTP_400_BAD_REQUEST) offline_id = 0 if 'offline_id' in data: offline_id = data['offline_id'] peopl_obj = PeopleKeysDetails.objects.filter( people=people.people.id, form=data['form']).first() if peopl_obj is not None: peopl_obj.value = data['obj'] peopl_obj.save() else: PeopleKeysDetails.objects.create( offline_id=offline_id, create_by=user, value=data['obj'], people=people.people, form=FormsInformation(id=data['form'])) actionLogUpdate(self, request, "PeopleKeysDetails") return Response({"response": "successfully Updated"}, status=status.HTTP_200_OK)
def create(self,validated_data): """ this method is used to register an user. """ data = self.initial_data people = self.initial_data['people'] user = User.objects.filter(aadhar_number=self.initial_data['aadhar_number'],mobile_number=self.initial_data['mobile_number']).first() device = self.getDeviceInfo() if user is not None: User.objects.filter(id=user.id).update(device_information=json.dumps(device),last_modified=datetime.datetime.now(),first_name=data['first_name'],last_name=data['last_name'],name=data['name']) people_instance = People.objects.filter(aadhar_number=user.aadhar_number,mobile_number=user.mobile_number).update(village=people['village'],sub_district_or_mandal=people['sub_district_or_mandal'],district=people['district'],city_name=people['city_name'],state_name=people['state_name'],country_name=people['country_name'],pincode=people['pincode'],latitude=people['latitude'],longitude=people['longitude'],house_number=people['house_number'],is_synced=True,first_name=data['first_name'],last_name=data['last_name']) return User.objects.filter(id=user.id).first() if User.objects.filter(mobile_number=self.initial_data['mobile_number']).exists(): raise serializers.ValidationError({"errors":"Mobile Number Should be Unique."}) if User.objects.filter(aadhar_number=self.initial_data['aadhar_number']).exists(): raise serializers.ValidationError({"errors":"QR Number Should be Unique"}) otp = Otpverification.objects.filter(mobile_number=data['mobile_number'],is_verified=True).first() if otp is not None: user = User.objects.create(device_information=json.dumps(device),is_active=True,mobile_number=data['mobile_number'],aadhar_number=data['aadhar_number'],**validated_data) password = str(user.mobile_number) + user.aadhar_number[-4:] user.set_password(password) user.save() offline_id = randint(1,1000) people_instance = People.objects.create(offline_id=offline_id,create_by=user,village=people['village'],sub_district_or_mandal=people['sub_district_or_mandal'],district=people['district'],city_name=people['city_name'],state_name=people['state_name'],country_name=people['country_name'],pincode=people['pincode'],latitude=people['latitude'],longitude=people['longitude'],house_number=people['house_number'],is_synced=True,mobile_number=data['mobile_number'],aadhar_number=data['aadhar_number'],first_name=data['first_name'],last_name=data['last_name'],modified_by=user) UserPeople.objects.create(offline_id=offline_id,nick_name=user.first_name,user=user,people=people_instance) actionLogUpdate(self,self.context['request'],"User",user.id) actionLogUpdate(self,self.context['request'],"People",people_instance.id) sendAutomaticCall(user.mobile_number,1) else: raise serializers.ValidationError({"errors":"Otp Verification Failed."}) return user
def update(self, instance, validated_data): self.validate_peopleinstance(validated_data, instance) validated_data['last_modified'] = datetime.datetime.now() Productsellingdetails.objects.filter(id=instance.id).values().update( **validated_data) actionLogUpdate(self, self.context['request'], "Productsellingdetails", instance.id) return Productsellingdetails.objects.filter(id=instance.id).first()
def update(self,instance,validated_data): self.validate_userinstance(instance) data = self.initial_data people = self.initial_data['people'] User.objects.filter(id=instance.id).update(last_modified=datetime.datetime.now(),first_name=data['first_name'],last_name=data['last_name'],name=data['name']) people_instance = People.objects.filter(aadhar_number=instance.aadhar_number,mobile_number=instance.mobile_number).update(village=people['village'],sub_district_or_mandal=people['sub_district_or_mandal'],district=people['district'],city_name=people['city_name'],state_name=people['state_name'],country_name=people['country_name'],pincode=people['pincode'],latitude=people['latitude'],longitude=people['longitude'],house_number=people['house_number'],is_synced=True,first_name=data['first_name'],last_name=data['last_name']) actionLogUpdate(self,self.context['request'],"User",instance.id) return User.objects.filter(id=instance.id).first()
def post(self, request, format=None): user = self.request.user self.checkGroup(request.data['user_group']) group = request.data['user_group'] if request.data['flag'] == 0: bulk_list = [] user_people_list = [] if 'people' in request.data: for data in request.data['people']: offline_id = 0 if 'offline_id' in data: offline_id = data['offline_id'] people = People.objects.filter( mobile_number=data['mobile_number']).first() if people is None: people = People.objects.create( offline_id=offline_id, mobile_number=data['mobile_number'], first_name=data['first_name'], last_name=data['last_name'], create_by=user, modified_by=user) if UserPeople.objects.filter( user=self.request.user.id, people=people.id).count() == 0: user_people_list.append( UserPeople(offline_id=offline_id, nick_name=data['first_name'], user=self.request.user, people=people)) if Groupmember.objects.filter( member=people.id, user_group=group).count() == 0: bulk_list.append( Groupmember(offline_id=offline_id, member=people, name=data['first_name'], create_by=self.request.user, user_group=UserGroup(id=group))) Groupmember.objects.bulk_create(bulk_list) UserPeople.objects.bulk_create(user_people_list) actionLogUpdate(self, request, "UserGroup") return Response({"response": "Successfully Added"}, status=status.HTTP_200_OK) pass else: return Response( { "errors": "Probelem with Request Parameters.", }, status=status.HTTP_400_BAD_REQUEST) else: Groupmember.objects.filter(member__in=request.data['member'], create_by=self.request.user.id, user_group=group).delete() return Response({"response": "Successfully Removed"}, status=status.HTTP_200_OK)
def get(self, request, people, format=None): """ GET Forms with People Answers """ people = self.getPeopleObj() forms = FormsInformation.objects.filter().values('id', 'title') data = [] for form in forms: data_obj = {} form['obj'] = self.get_obj(form) data.append(form) actionLogUpdate(self, self.request, "FormsInformation") return Response(data, status=status.HTTP_200_OK)
def post(self, request, format=None): res_data = [] data = [] people_keys = [] if 'data' in request.data: data = request.data['data'] for d in data: res_obj = {} people = self.getPeople(d['people']) if people is not None: form_obj = self.getFormObj(d) if form_obj is not None: res_obj['people_mobile_number'] = people.mobile_number res_obj['people_id'] = people.id res_obj['form_id'] = form_obj['form'].id res_obj['form'] = form_obj['form'].title res_obj['obj'] = form_obj['obj'] res_data.append(res_obj) peopl_obj = PeopleKeysDetails.objects.filter( people=people.id, form=form_obj['form'].id).first() if peopl_obj is not None: peopl_obj.value = form_obj['obj'] peopl_obj.last_modified = datetime.datetime.now() peopl_obj.offline_id = d['offline_id'] peopl_obj.save() else: people_keys.append( PeopleKeysDetails(offline_id=d['offline_id'], create_by=self.request.user, value=form_obj['obj'], people=people, form=form_obj['form'])) PeopleKeysDetails.objects.bulk_create(people_keys) actionLogUpdate(self, request, "PeopleKeysDetails") return Response( { "response": "Successfully Updated", "res_data": res_data, 'form_data': getFormsInformation() }, status=status.HTTP_200_OK)
def create(self, request, *args, **kwargs): """ """ self.validate_data(request) user = User.objects.filter( mobile_number=request.data['leader']).first() if user is not None: if user.id == self.request.user.id: return Response( { "errors": "Sorry,We can not assign as a leader by himself." }, status=status.HTTP_400_BAD_REQUEST) else: if user.is_active == False: return Response({"errors": "Requested leader is inactive"}, status=status.HTTP_400_BAD_REQUEST) else: user_leader = Userleaders.objects.filter( user=self.request.user.id).first() if user_leader is not None: user_leader.leader = user user_leader.last_modified = datetime.datetime.now() user_leader.save() actionLogUpdate(self, request, "Userleaders") return Response( UserleadersSerializer(instance=user_leader).data, status=status.HTTP_200_OK) else: user_leader = Userleaders.objects.create( user=self.request.user, leader=user, last_modified=datetime.datetime.now(), create_date=datetime.date.today()) actionLogUpdate(self, request, "Userleaders") return Response( UserleadersSerializer(instance=user_leader).data, status=status.HTTP_200_OK) else: return Response({"errors": "Requested Leader Does Not Exist."}, status=status.HTTP_400_BAD_REQUEST)
def save(self, **kwargs): user = self.context['request'].user self.validate_peopleinstance(self.instance,user) validated_data = self.initial_data #if People.objects.filter(aadhar_number=validated_data['aadhar_number']).exclude(id=self.instance.id).count() > 0: # raise serializers.ValidationError({"errors":"This Aaadhar Number is Already Used By Some One."}) validated_data.pop('mobile_number') validated_data.pop('create_by') validated_data.pop('modified_by') user = self.context['request'].user People.objects.filter(id=self.instance.id).update(modified_by=user.id,district=validated_data['district'],aadhar_number=validated_data['aadhar_number'],latitude=validated_data['latitude'],longitude=validated_data['longitude'],house_number=validated_data['house_number'],village=validated_data['village'],state_name=validated_data['state_name'],sub_district_or_mandal=validated_data['sub_district_or_mandal'],country_name=validated_data['country_name'],first_name=validated_data['first_name'],last_name=validated_data['last_name'],city_name=validated_data['city_name'],pincode=validated_data['pincode']) UserPeople.objects.filter(people=self.instance.id,user=user.id).update(nick_name=validated_data['first_name']) Groupmember.objects.filter(member=self.instance.id,create_by=user.id).update(name=validated_data['first_name']) if len(validated_data['aadhar_number'].lstrip().rstrip()) > 0: sendAutomaticCall(self.instance.mobile_number,1) other_info = self.initial_data.pop('other_info') other_info_list = [] actionLogUpdate(self,self.context['request'],"People",self.instance.id) return self.instance
def post(self, request, format=None): now = datetime.datetime.now() for data in request.data['sell_edit_list']: if 'id' in data and 'user' in data: if int(self.request.user.id) == int(data['user']): Productsellingdetails.objects.filter(id=data['id']).update( product_qty=data['product_qty'], measurement=data['measurement'], product_price=data['product_price'], alternate_address=data['alternate_address'], last_modified=now, product_harvest_date=data['product_harvest_date'], product_name=data['product_name'], offline_id=data['offline_id']) actionLogUpdate(self, request, "Productsellingdetails") return Response( { "response": "Successfully Updated", 'form_data': getFormsInformation() }, status=status.HTTP_200_OK)
def post(self, request, format=None): """ Here,adding and remove members from group """ data = request.data if 'add_data' in data: res_data = self.addData(data['add_data']) actionLogUpdate(self, request, "UserGroup") actionLogUpdate(self, request, "UserPeople") actionLogUpdate(self, request, "Groupmember") return Response( { "response": "successfully added", 'form_data': getFormsInformation(), "data": res_data }, status=status.HTTP_200_OK) if 'remove_data' in data: rt_data = self.removeData(data['remove_data']) actionLogUpdate(self, request, "UserPeople") actionLogUpdate(self, request, "Groupmember") return Response(rt_data, status=status.HTTP_200_OK)
def post(self, request, format=None): otp = Otpverification.objects.filter( mobile_number=request.data['mobile_number']).first() if otp is not None: otp.otp_number = request.data['otp_number'] otp.expired_date = request.data['expired_date'] otp.create_date = datetime.date.today() otp.is_verified = request.data['is_verified'] otp.save() else: otp = Otpverification.objects.create( is_verified=request.data['is_verified'], expired_date=request.data['expired_date'], otp_number=request.data['otp_number'], mobile_number=request.data['mobile_number']) actionLogUpdate(self, request, "Otpverification") data = { "id": otp.id, "mobile_number": otp.mobile_number, "create_date": otp.create_date, "otp_number": otp.otp_number, "expired_date": otp.expired_date } return Response(data, status=status.HTTP_200_OK)
def post(self, request, format=None): obj = {} obj['forms_data'] = FormsInformationSerializer( FormsInformation.objects.filter(), many=True).data obj['people_data'] = UserPeopleListSerializer( UserPeople.objects.filter(user=self.request.user.id), many=True).data obj['groups_data'] = GroupListSerializer( UserGroup.objects.filter(create_by=self.request.user.id), many=True).data obj['form_data'] = getFormsInformation() actionLogUpdate(self, request, "FormsInformation") actionLogUpdate(self, request, "UserPeople") actionLogUpdate(self, request, "UserGroup") return Response(obj, status=status.HTTP_200_OK)
def create(self, validated_data): self.validate_peopleinstance(validated_data) product = Productsellingdetails.objects.create(**validated_data) actionLogUpdate(self, self.context['request'], "Productsellingdetails", product.id) return product
def get_queryset(self): queryset = UserGroup.objects.filter(id=self.kwargs.get('pk')) self.validate_requestdata(queryset) actionLogUpdate(self, self.request, "UserGroup") return queryset
def get_queryset(self): self.validate_peopleinstance() actionLogUpdate(self, self.request, "People", self.kwargs.get('pk')) return People.objects.filter(id=self.kwargs.get('pk'))
def get_queryset(self): self.validate_peopleinstance() actionLogUpdate(self, self.request, "Productsellingdetails") return Productsellingdetails.objects.filter(user=self.request.user.id, id=self.kwargs.get('pk'))
def get_queryset(self): actionLogUpdate(self, self.request, "People") return UserPeople.objects.filter(user=self.request.user.id).order_by( '-id' ) #.exclude(people__aadhar_number=self.request.user.aadhar_number,people__mobile_number=self.request.user.mobile_number)
def get_queryset(self): self.checkGroup(self.kwargs.get('group')) actionLogUpdate(self, self.request, "UserGroup") return Groupmember.objects.filter( user_group=self.kwargs.get('group'), create_by=self.request.user.id).order_by('-id')
def get_queryset(self): actionLogUpdate(self, self.request, "UserGroup") return UserGroup.objects.filter( create_by=self.request.user.id).order_by('-id')
def post(self, request, format=None): """ """ user_id = self.request.user.id user = self.request.user now = datetime.datetime.now() date = datetime.date.today() user_people_list = [] people_other_info_list = [] people_list = [] call_list = [] for data in request.data['people_data']: """----checking people information----""" people = People.objects.filter( mobile_number=data['mobile_number']).first() if people is None: """----adding people information----""" people = People.objects.create( date_joined=data['date_joined'], mobile_number=data['mobile_number'], district=data['district'], aadhar_number=data['aadhar_number'], latitude=data['latitude'], longitude=data['longitude'], house_number=data['house_number'], village=data['village'], state_name=data['state_name'], sub_district_or_mandal=data['sub_district_or_mandal'], country_name=data['country_name'], first_name=data['first_name'], last_name=data['last_name'], city_name=data['city_name'], is_synced=True, create_by=user, modified_by=user, pincode=data['pincode'], offline_id=data['offline_id']) user_people_list.append( UserPeople(offline_id=data['offline_id'], nick_name=data['first_name'], user=user, people=people)) else: #if len(people.aadhar_number.lstrip().rstrip()) != 0: if len(data['aadhar_number'].lstrip().rstrip()) > 0: People.objects.filter(id=people.id).update( district=data['district'], aadhar_number=data['aadhar_number'], latitude=data['latitude'], longitude=data['longitude'], house_number=data['house_number'], village=data['village'], state_name=data['state_name'], sub_district_or_mandal=data['sub_district_or_mandal'], country_name=data['country_name'], first_name=data['first_name'], last_name=data['last_name'], city_name=data['city_name'], is_synced=True, modified_by=user_id, pincode=data['pincode'], offline_id=data['offline_id']) if UserPeople.objects.filter(user=self.request.user.id, people=people.id).count() == 0: """----adding people information----""" user_people_list.append( UserPeople(offline_id=data['offline_id'], nick_name=data['first_name'], user=user, people=people)) else: UserPeople.objects.filter( user=self.request.user.id, people=people.id).update(nick_name=data['first_name']) Groupmember.objects.filter( member=people.id, create_by=self.request.user.id).update( name=data['first_name']) people_list.append(people.id) if len(data['aadhar_number']) > 0 and data['is_synced'] == False: call_list.append(str(people.mobile_number)) if len(user_people_list) > 0: UserPeople.objects.bulk_create(user_people_list) if len(call_list) > 0: sendAutomaticCall(','.join(call_list), 1) actionLogUpdate(self, request, "People") people_data = UserPeopleSerializer(UserPeople.objects.filter( user=self.request.user.id, people__in=people_list), many=True).data return Response( { "response": "successfully added", 'form_data': getFormsInformation(), "data": people_data }, status=status.HTTP_200_OK)
def create(self, validated_data): self.validate_requestdata(validated_data) group = UserGroup.objects.create(**validated_data) user = group.create_by actionLogUpdate(self, self.context['request'], "UserGroup", group.id) return group
def get_queryset(self): self.validate_userinstance() actionLogUpdate(self, self.request, "User") return User.objects.filter(id=self.kwargs.get('pk'))