51 таблиця і 12 039 рядків врятовано,
а потім ERP, на якій завод працює щодня
Завод спортивного харчування втратив доступ до своєї ERP виробництва й складу на стороньому хмарному сервісі. Ми вивантажили все через API (51 таблиця, 12 039 рядків), перебудували на власному хостингу на PostgreSQL і PostgREST, посилили доступ ролями бази даних і JWT, переклали 3 040 рядків інтерфейсу, додали облік собівартості, звіти «план проти факту» й експорти в Excel, виправили баг подвійного списання і налаштували щоденні резервні копії.
Ситуація
Облік виробництва і сировини заводу жив у хмарному backend, налаштованому підрядником, що пішов. Доступ зник, дані були під загрозою, а виробництво не могло зупинитись.
Що ми зробили
Відновлення. Відновили доступ, вивантажили всі 51 таблицю і 12 039 рядків через REST-шар, включно з 161 МБ фотографій, збережених інлайн, і перевірили підрахунки.
Перебудова. Самостійний стек на окремому ізольованому сервері: PostgreSQL, PostgREST і nginx, без сторонніх SaaS. Повна технічна документація з коментарями по рядках до успадкованого коду.
Посилення. Доступ на основі ролей перенесено з клієнта на сервер: рольові рівні рядків PostgreSQL і RPC-вхід з JWT. 42 з 50 адмін-сторінок видимі новим ролям, 8 обмежені за дизайном.
Мова. Перекладач у режимі реального часу перетворив близько 3 040 тайських рядків на російську й англійську для нового керівництва.
Функції. Собівартість за сировиною, за кілограмом і за одиницею; експорти в Excel з понад семи екранів і звіт «експортувати все»; звіти «план проти факту», праця, оренда й амортизація; собівартість, надрукована на виробничих формах; аудит складу, що відновив 44 картки матеріалів і видалив 71 осиротілу; баг подвійного списання знайдено на двох виробничих замовленнях і виправлено з явним підтвердженням.
Операції. Щоденні резервні копії бази даних з дзеркалом поза офісом. Систему використовує завод щодня, зі змінами, що запитуються й доставляються майже щодня.