class Order(object): def __init__(self, id, ticket, status, title, note, id_metaservice, is_global, is_visible, service, service_type, time_created, time_placed, time_start=None, time_start_predicted=None, time_finish_predicted=None, time_start_real=None, time_finish_real=None, order_place_type=None, order_place_start=None, order_place_start_gps=None, order_place_start_real=None, order_place_start_real_gps=None, order_place_finish_predicted=None, order_place_finish_predicted_gps=None, order_place_finish_real=None, order_place_finish_real_gps=None, predicted_price=None, real_price=None, payment_transaction_id=None, rating_id=None, provider=None, provider_screen_name=None, receiver=None, receiver_screen_name=None, client_id=None, resource_id=None, attempts=None, asap=None, money_limit=None, tasks=None, proceed_before_arrival=False, confirmation=False): self.id = id self.ticket = ticket self.status = status self.title = title self.note = note self.id_metaservice = id_metaservice self.is_global = is_global self.is_visible = is_visible self.service = service self.service_type = service_type self.time_created = time_created self.time_placed = time_placed self.time_start = time_start self.time_start_predicted = time_start_predicted self.time_finish_predicted = time_finish_predicted self.time_start_real = time_start_real self.time_finish_real = time_finish_real self.order_place_type = order_place_type self.order_place_start = order_place_start self.order_place_start_gps = order_place_start_gps self.order_place_start_real = order_place_start_real self.order_place_start_real_gps = order_place_start_real_gps self.order_place_finish_predicted = order_place_finish_predicted self.order_place_finish_predicted_gps = order_place_finish_predicted_gps self.order_place_finish_real = order_place_finish_real self.order_place_finish_real_gps = order_place_finish_real_gps self.predicted_price = predicted_price self.real_price = real_price self.payment_transaction_id = payment_transaction_id self.rating_id = rating_id self.provider = provider self.provider_screen_name = provider_screen_name self.receiver = receiver self.receiver_screen_name = receiver_screen_name self.client_id = client_id self.resource_id = resource_id self.attempts = attempts self.asap = asap self.money_limit = money_limit self.tasks = tasks self.proceed_before_arrival = proceed_before_arrival self.confirmation = confirmation def __str__(self): return "{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}, {10}, {11}, {12}, {13}, {14}, {15}, {16}, {17}, {18}, {19}, {20}, {21}, {22}, {23}, {24}, {25}, {26}, {27}, {28}, {29}, {30}, {31}, {32}, {33}, {34}, {35}, {36}, {37}, {38}".format(self.id, self.ticket, self.status, self.title, self.note, self.id_metaservice, self.is_global, self.is_visible, self.service, self.service_type, self.time_created, self.time_placed, self.time_start, self.time_start_predicted, self.time_finish_predicted, self.time_start_real, self.time_finish_real, self.order_place_type, self.order_place_start, self.order_place_start_gps, self.order_place_start_real, self.order_place_start_real_gps, self.order_place_finish_predicted, self.order_place_finish_predicted_gps, self.order_place_finish_real, self.order_place_finish_real_gps, self.predicted_price, self.real_price, self.payment_transaction_id, self.rating_id, self.provider, self.provider_screen_name, self.receiver, self.receiver_screen_name, self.client_id, self.resource_id, self.attempts, self.asap, self.money_limit, self.tasks, self.proceed_before_arrival, self.confirmation) #Тестовый класс User и Address (ВАЖНО!!!) поля классов должны называться также как и поля json объекта ''' #Full json order example https://wiki.sharix-app.org/doku.php/open/tech/dev/sharix_open_-_primery_json { "ticket": 123, "status": 111, "priority": 1, "title": "123", "note": "123", "due_date": 2023-05-15T17:16:22.955601Z, "id_metaservice": 1, "is_global": false, "is_visible": false, "service": 1, "service_type": 1, "status_changed_date": "2023-05-15T17:16:22.955601Z", "time_placed": "2023-05-15T16:40:32.179777Z", "time_start": "2023-05-15T16:40:32.179777Z", "time_start_predicted": "2023-05-15T16:40:32.179777Z", "time_finish_predicted": "2023-05-15T16:40:32.179777Z", "time_start_real": "2023-05-15T16:40:32.179777Z", "time_finish_real": "2023-05-15T16:40:32.179777Z", "order_place_type": "address", "order_place_start": "р-н Беговой", "order_place_start_gps": "55.751941, 37.607513", "order_place_start_sector": 4, "order_place_start_real": "р-н Беговой", "order_place_start_real_gps": "55.751941, 37.607513", "order_place_finish_predicted": "р-н Мещанский", "order_place_finish_predicted_gps": "55.751941, 37.607513", "order_place_finish_sector": 4, "order_place_finish_real": "р-н Мещанский", "order_place_finish_real_gps": "55.751941, 37.607513", "predicted_price": 1000, "real_price": 1001, "payment_transaction_id": 1, "rating_id": 1, "provider": 1, "provider_screen_name": "Vasya Ispolnitelev", "receiver": 1, "receiver_screen_name": "Marfa Clientovna", "client_id": 1, "client_screen_name": "Fedor Client", "resource_id": 1, "attempts": null } ''' #надо адаптировать класс к новому формату JSON # class Order(object): # def __init__(self, id,order_synced, ticket, status, title, note, due_date, id_metaservice, is_global, is_visible, service, service_type, status_changed_date,time_created, time_placed, time_start=None, time_start_predicted=None, time_finish_predicted=None, time_start_real=None, time_finish_real=None, order_place_type=None, order_place_start=None, order_place_start_gps=None, order_place_start_real=None, order_place_start_real_gps=None, order_place_finish_predicted=None, order_place_finish_predicted_gps=None, order_place_finish_real=None, order_place_finish_real_gps=None, predicted_price=None, real_price=None, payment_transaction_id=None, rating_id=None, provider=None, provider_screen_name=None, receiver=None, receiver_screen_name=None, client_id=None, resource_id=None, attempts=None, asap=None): # self.order_synced = order_synced # self.id = id # self.ticket = ticket # self.status = status # self.title = title # self.note = note # self.due_date = due_date # self.id_metaservice = id_metaservice # self.is_global = is_global # self.is_visible = is_visible # self.service = service # self.service_type = service_type # self.status_changed_date = status_changed_date # self.time_created = time_created # self.time_placed = time_placed # self.time_start = time_start # self.time_start_predicted = time_start_predicted # self.time_finish_predicted = time_finish_predicted # self.time_start_real = time_start_real # self.time_finish_real = time_finish_real # self.order_place_type =order_place_type # self.order_place_start = order_place_start # self.order_place_start_gps = order_place_start_gps # self.order_place_start_real = order_place_start_real # self.order_place_start_real_gps = order_place_start_real_gps # self.order_place_finish_predicted = order_place_finish_predicted # self.order_place_finish_predicted_gps = order_place_finish_predicted_gps # self.order_place_finish_real = order_place_finish_real # self.order_place_finish_real_gps = order_place_finish_real_gps # self.predicted_price = predicted_price # self.real_price = real_price # self.payment_transaction_id = payment_transaction_id # self.rating_id = rating_id # self.provider = provider # self.provider_screen_name = provider_screen_name # self.receiver = receiver # self.receiver_screen_name = receiver_screen_name # self.client_id = client_id # self.resource_id = resource_id # self.attempts = attempts # self.asap = asap # #доделать до конца по аналогии с закоммиченным json # def __str__(self): # return "{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}, {10}, {11}, {12}, {13}, {14}, {15}, {16}, {17}, {18}, {19}, {20}, {21}, {22}, {23}, {24}, {25}, {26}, {27}, {28}, {29}, {30}, {31}, {32} , {33} ,{34}".format(self.order_synced, self.id, self.ticket, self.status, self.title, self.note, self.due_date, self.id_metaservice, self.is_global, self.is_visible, self.service, self.service_type, self.status_changed_date, self.time_created,self.time_placed, self.time_start, self.time_start_predicted, self.time_finish_predicted, self.time_start_real, self.time_finish_real, self.order_place_type, self.order_place_start, self.order_place_start_gps, self.order_place_start_real, self.order_place_start_real_gps, self.order_place_finish_predicted, self.order_place_finish_predicted_gps, self.order_place_finish_real, self.order_place_finish_real_gps, self.predicted_price, self.real_price, self.payment_transaction_id, self.rating_id, self.provider, self.provider_screen_name, self.receiver, self.receiver_screen_name, self.client_id, self.resource_id, self.attempts, self.asap) #\n добавляете в местах с пустой строкой в шаблоне