示例#1
0
 def to_json(self):
     return {
         'id': self.id,
         'vehicle_number': self.vehicle_number,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#2
0
 def to_json(self):
     return {
         'id': self.id,
         'service_tax_number': self.service_tax_number,
         'tan_number': self.tan_number,
         'pan': self.pan,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#3
0
 def to_json(self):
     return {
         'id': self.id,
         'name': self.name,
         'state': self.state.name,
         'latitude': float(self.latitude) if self.latitude else 0,
         'longitude': float(self.longitude) if self.longitude else 0,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#4
0
 def to_json(self):
     return {
         'id': self.id,
         'vehicle_type': self.vehicle_type,
         'capacity': self.capacity,
         'truck_body_type': self.truck_body_type,
         'description': self.description,
         'priority': self.priority,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#5
0
 def to_json(self):
     return {
         'id': self.id,
         'id_type': self.id_type,
         'id_number': self.id_number,
         'id_issued_in': self.id_issued_in,
         'validity': format_date(self.validity),
         'issue_date': format_date(self.issue_date),
         'id_image_url': self.id_image_url,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#6
0
 def to_json(self):
     return {
         'id': self.id,
         'transaction_id': self.transaction_id,
         'vehicle_request_id': self.vehicle_request_id,
         'user_id': self.user_id,
         'quantity': self.quantity,
         'amount': self.amount,
         'comments': self.comments,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#7
0
 def to_json(self):
     return {
         'id': self.id,
         'device_id': self.device_id,
         'driver_name': self.driver_name,
         'driver_number': self.driver_number,
         'driving_licence_number': self.driving_licence_number,
         'vehicle_number': self.vehicle_number,
         'vehicle_type': self.vehicle_type,
         'vehicle_status': self.vehicle_status,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#8
0
 def to_json(self):
     return {
         'id': self.id,
         'line1': self.line1,
         'line2': self.line2,
         'line3': self.line3,
         'landmark': self.line3,
         'pin': self.line3,
         'latitude': self.latitude,
         'longitude': self.longitude,
         'city': None if not self.city else self.city.to_json(),
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#9
0
 def to_json(self):
     return {
         'id': self.id,
         'address': self.address,
         'city': None if not self.branch else self.branch.name,
         'state': None if not self.branch else self.branch.state.name,
         'pin': self.pin,
         'phone': self.phone,
         't1_name': self.t1_name,
         't1_phone': self.t1_phone,
         't2_name': self.t2_name,
         't2_phone': self.t2_phone,
         'branch_head': self.branch_head,
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#10
0
 def symbol_ticker(self):
     response = self.client.get_symbol_ticker(symbol=self.get_symbol())
     print(response)
     return Price(pair=self.get_symbol(),
                  currency=self.currency.lower(),
                  asset=self.asset.lower(),
                  exchange=self.name.lower(),
                  current=response['price'],
                  openAt=utils.format_date(datetime.now()))
示例#11
0
 def to_json(self):
     name, phone = self.name_phone()
     return {
         'id': self.id,
         'user_id': None if not self.name else self.name.id,
         'username': None if not self.name else self.name.username,
         'user_fullname': None if not self.name else self.name.get_full_name(),
         'name': name or ('' if not self.name else self.name.username),
         'phone': phone,
         'address': None if not self.address else self.address.to_json(),
         'vehicles_detail': self.vehicles_detail,
         'account_details': None if not self.account_details else self.account_details.to_json(),
         'taxation_details': None if not self.taxation_details else self.taxation_details.to_json(),
         'declaration': self.declaration,
         'declaration_doc': None if not self.declaration_doc else self.declaration_doc.to_json(),
         'declaration_validity': format_date(self.declaration_validity),
         'created_on': format_date(self.created_on),
         'updated_on': format_date(self.updated_on),
     }
示例#12
0
 def pod_details(self):
     return {
         'allocated_vehicle_id': self.id,
         'transaction_id': self.transaction_id,
         'pod': self.pod,
         'pod_status': self.pod_status,
         'pod_date': format_date(self.pod_date),
         'pod_thumb': self.pod_thumb,
         'pod_verified': self.pod_verified,
     }
示例#13
0
 def to_json(self):
     return {
         'id':
         self.id,
         'bank':
         self.bank,
         'account_holder_name':
         self.account_holder_name,
         'account_number':
         self.account_number,
         'account_type':
         self.account_type,
         'account_type_verbose':
         dict(Bank.account_choices).get(self.account_type, ''),
         'ifsc':
         self.ifsc,
         'created_on':
         format_date(self.created_on),
         'updated_on':
         format_date(self.updated_on),
     }
示例#14
0
    def to_json(self):
        data = {
            'id': self.id,
            'name': self.name,
            'address': None if not self.address else self.address.to_json(),
            'phone': self.phone,
            'driving_licence_number': self.driving_licence_number,
            'driving_licence_validity': format_date(self.driving_licence_validity),
            'driving_licence_location': self.driving_licence_location,
            'smartphone_available': self.smartphone_available,
            'route': self.route,
            'priority_level': self.priority_level,
            'id_proof': None if not self.id_proof else self.id_proof.to_json(),
            'account_details': None if not self.account_details else self.account_details.to_json(),
            'taxation_details': None if not self.taxation_id else self.taxation_id.to_json(),
            'created_on': format_date(self.created_on),
            'updated_on': format_date(self.updated_on),
        }
        tax = self.taxation_id
        if tax:
            data['pan_doc'] = {
                'url': None if not tax.pan_doc else tax.pan_doc.document,
                'thumb_url': None if not tax.pan_doc else tax.pan_doc.document_thumb,
                'doc_id': tax.pan,
                'validity': None
            }

        data['dl_doc'] = {
            'url': None if not self.driving_licence else self.driving_licence.document,
            'thumb_url': None if not self.driving_licence else self.driving_licence.document_thumb,
            'doc_id': self.driving_licence_number,
            'validity': format_date(self.driving_licence_validity),
            'issue_location': self.driving_licence_location
        }
        data['account'] = data.get('account_details', None)

        return data
示例#15
0
 def location(self):
     if self.longitude is None or self.latitude is None:
         return None
     from api.models import google_reverse_geocode
     geo_data = google_reverse_geocode(self.latitude, self.longitude)
     data = {
         'name': geo_data['name'],
         'district': geo_data['district'],
         'state': geo_data['state'],
         'country': geo_data['country'],
         'latitude': float(self.latitude),
         'longitude': float(self.longitude),
         'time': format_date(self.datetime or timezone.now())
     }
     return data
示例#16
0
    def historical_symbol_ticker_candle(
            self,
            start: datetime,
            end=None,
            interval=Client.KLINE_INTERVAL_1MINUTE):
        # Convert default seconds interval to string like "1m"
        if isinstance(interval, int):
            interval = str(floor(interval / 60)) + 'm'

        output = []
        for candle in self.client.get_historical_klines_generator(
                self.get_symbol(), interval, start, end):
            """
                [
                    [
                        1499040000000,      # Open time
                        "0.01634790",       # Open
                        "0.80000000",       # High
                        "0.01575800",       # Low
                        "0.01577100",       # Close
                        "148976.11427815",  # Volume
                        1499644799999,      # Close time
                        "2434.19055334",    # Quote asset volume
                        308,                # Number of trades
                        "1756.87402397",    # Taker buy base asset volume
                        "28.46694368",      # Taker buy quote asset volume
                        "17928899.62484339" # Can be ignored
                    ]
                ]

            """
            output.append(
                Price(pair=self.compute_symbol_pair(),
                      currency=self.currency.lower(),
                      asset=self.asset.lower(),
                      exchange=self.name.lower(),
                      current=candle[1],
                      lowest=candle[3],
                      highest=candle[2],
                      volume=candle[5],
                      openAt=utils.format_date(
                          datetime.fromtimestamp(int(candle[0]) / 1000))))

        return output
示例#17
0
 def test_format_date_failure(self):
     self.assertNotEqual(format_date(date.today()), str(datetime.now()))
示例#18
0
 def test_format_date_success(self):
     self.assertEqual(format_date(date.today()),
                      date.today().strftime('%Y/%m/%d %H:%M:%S'))
     self.assertEqual(format_date(date(2019, 1, 3)), '2019/01/03 00:00:00')
示例#19
0
    def to_json(self):
        data = {}
        ref_fields = [
            'owner', 'driver', 'driver_app_user', 'registration_certificate',
            'insurance_certificate', 'permit_certificate', 'puc_certificate', 'fitness_certificate'
        ]
        date_fields = [
            'permit_validity', 'insurance_validity', 'registration_validity',
            'fitness_certificate_issued_on', 'fitness_certificate_validity_date', 'updated_on', 'created_on',
            'puc_certificate_issued_on', 'puc_certificate_validity_date'
        ]
        normal_fields = [
            'id', 'puc_certificate_number', 'vehicle_number', 'rc_number', 'permit', 'permit_type',
            'vehicle_model', 'chassis_number', 'engine_number', 'insurer', 'insurance_number',
            'fitness_certificate_number', 'status', 'gps_enabled', 'vehicle_capacity'
        ]

        for field in normal_fields:
            value = getattr(self, field)
            data[field] = value

        for field in date_fields:
            value = getattr(self, field)
            data[field] = format_date(value)

        for field in ref_fields:
            value = getattr(self, field)
            data[field] = None if not value else value.to_json()

        data['registration_year'] = None if not self.registration_year else str(self.registration_year.year)
        data['vehicle_type'] = self.vehicle_type_id

        if self.vehicle_type:
            data['vehicle_type_data'] = self.vehicle_type.to_json()

        data['rc_doc'] = {
            'url': (data.get('registration_certificate', None) or {}).get('url', None),
            'thumb_url': (data.get('registration_certificate', None) or {}).get('thumb_url', None),
            'doc_id': data.get('rc_number', None),
            'validity': data.get('registration_validity', None),
            'manufacture_year': data.get('registration_year', None)
        }

        data['insurance_doc'] = {
            'url': (data.get('insurance_certificate', None) or {}).get('url', None),
            'thumb_url': (data.get('registration_certificate', None) or {}).get('thumb_url', None),
            'doc_id': data.get('insurance_number', None),
            'validity': data.get('insurance_validity', None),
            'insurer_name': data.get('insurer', None)
        }

        data['permit_doc'] = {
            'url': (data.get('permit_certificate', None) or {}).get('url', None),
            'thumb_url': (data.get('registration_certificate', None) or {}).get('thumb_url', None),
            'doc_id': data.get('permit', None),
            'validity': data.get('permit_validity', None),
            'permit_type': data.get('permit_type', None)
        }

        data['fitness_doc'] = {
            'url': (data.get('fitness_certificate', None) or {}).get('url', None),
            'thumb_url': (data.get('registration_certificate', None) or {}).get('thumb_url', None),
            'doc_id': data.get('fitness_certificate_number', None),
            'validity': data.get('fitness_certificate_validity_date', None)
        }

        data['puc_doc'] = {
            'url': (data.get('puc_certificate', None) or {}).get('url', None),
            'thumb_url': (data.get('registration_certificate', None) or {}).get('thumb_url', None),
            'doc_id': data.get('puc_certificate_number', None),
            'validity': data.get('puc_certificate_validity_date', None)
        }

        owner = self.owner
        if owner:
            tax = owner.taxation_details
            if tax:
                data['owner_pan_doc'] = {
                    'url': None if not tax.pan_doc else tax.pan_doc.document,
                    'thumb_url': None if not tax.pan_doc else tax.pan_doc.document_thumb,
                    'doc_id': tax.pan,
                    'validity': None
                }

            data['owner_dec_doc'] = {
                'url': None if not owner.declaration_doc else owner.declaration_doc.document,
                'thumb_url': None if not owner.declaration_doc else owner.declaration_doc.document_thumb,
                'doc_id': None,
                'validity': format_date(owner.declaration_validity)
            }

        driver = self.driver
        if driver:
            data['driver_dl_doc'] = {
                'url': None if not driver.driving_licence else driver.driving_licence.document,
                'thumb_url': None if not driver.driving_licence else driver.driving_licence.document_thumb,
                'doc_id': driver.driving_licence_number,
                'validity': format_date(driver.driving_licence_validity),
                'issue_location': driver.driving_licence_location
            }

        return data