Передача данных о заказах в службу доставки Апишип (POST запрос)
В работе
7 |
0
21 августа 2025 в 18:46:56
(1 день 16 часов назад)
21100
21.08.2025 17:37:22
до 29.08.2025
Текст задания
1С 8.3 УТ 11.1
//Доработка интерфейса в 1С
// 1. добавить кнопку "Создать ярлык" по которой отправлять запрос /orders в апишип https://skr.sh/sXDt8V3QTL5
// 2. добавить колонку с чекбоксами обозначающими наличие уже созданных ярылков по заказам
// 3. добавить колонку Интервал доставки https://skr.sh/sXDjKDEZE92
// выпадающий список со значениями:
// с 9 до 13
// с 13 до 16
// с 16 до 19
// с 19 до 22
// с 9 до 22
// с 10 до 14
// с 14 до 18
// 4. добавить в заказ на вкладку Данные с сайта поле "Трек апишип",
// записывать туда номер трека возвращенный апишипом после создания ярлыка
// 5. доработать процедуру загрузки заказа с сайта (1С напрямую обращается к БД MySQL)
// нужно дополнительно забирать из БД cайта поле shipping_code https://skr.sh/sXDBUomf85B
// добавить в Заказ клиента на вкладку "Данные с сайта" поле shipping_code
//POST запрос /orders
{
"order": {
"clientNumber": "ROM-0086831_5", //из Заказ клиента->Номер
"description": "комментарий к заказу",
"providerKey": "integral", //ИД службы доставки, для получения данного значения необходимо разобрать
//строку вида apiship.point_cdek_53_81231 из заказа, где
//providerKey="cdek" (после первого _)
//tariffId=53 (после второго _)
//pointOutId=81231 (после третьего _, бывает не всегда, если доставка курьером этой последней части не будет
"pickupType": 1, //для apiship.door_integral% указать 1 (забор от двери), в остальных случаях -2 (сдача на ПВЗ СД)
"deliveryType": 1, //для apiship.door% ставим 1 - доставка клиенту до двери курьером, для apiship.point% 2 - доставка в пвз
"tariffId": 10686, //ИД тарифа СД в апишип, часть разбираемой строки которая после второго нижнего подчеркивания
//"pointInId": 1612802, //ИД ПВЗ получателя, в случае apiship.door% поле не передаем (доставка курьером)
//в случае apiship.point% сюда пишем ИД пвз получателся из строки для разбора
//"pointOutId" :, //В случае apiship.%_integral% поле это не передаем
//для apiship.point_cdek% = 633326
//для apiship.door_cdek% = 633326
//для apiship.point_yataxi% = 1978379
//для apiship.point_x5% = 365792
"height": 20, //CONST
"length": 10, //CONST
"width": 10, //CONST
"weight": 400, //CONST
"deliveryDate": "2025-08-22", //из Заказ Клиента->Дата доставки
"deliveryTimeStart": "09:00", //из Заказ клиента->Интервал
"deliveryTimeEnd": "13:00" // данные 2 поля (дата и интервал доставки) являются
//обязательными для любой курьерской доставки (т.е. apiship.door%)
//если их значения не заполнены в 1С, то пользователю нужно выдать сообщение об
//ошибке "Не указана дата или интервал доставки"
},
"cost": {
"assessedCost": 1540, //Сумма страховки, если заказ оплачен (codCost=0) ставим 1000, если выбрана оплата
//при получении (codCost>0) то asessedCost=codCost
Внимание, это автоотзыв. Подробно с заданием не знакомился. Используйте как резервный вариант, при сложном задании. 5000р./час., стоимость проектов обсуждаются отдельно.