Проект для автоматизации управления данными о скважинах и объектах в нефтедобывающей отрасли.
Проект представляет собой серверное приложение, реализованное на языке Go, которое предоставляет REST API для работы с данными о скважинах, объектах, истории скважин за день и планами скважин за день.
Данные хранятся в реляционной базе данных PostgreSQL. API спроектировано с использованием стандартных принципов REST и документировано с помощью Swagger.
- Backend на Go: Серверная часть, реализующая логику обработки запросов к базе данных.
- REST API: Стандартизированный HTTP интерфейс для взаимодействия с приложением.
- PostgreSQL: База данных для хранения и управления данными о скважинах, объектах, истории и планах.
- Swagger: Инструмент для генерации интерактивной документации API.
-
Получение всех объектов:
curl -X GET http://localhost:8080/objects
-
Создание нового объекта:
curl -X POST http://localhost:8080/objects -H "Content-Type: application/json" -d "{\"id\":1, \"name\":\"New Object\", \"type\":1}"
-
Обновление объекта:
curl -X PUT http://localhost:8080/objects -H "Content-Type: application/json" -d "{\"id\":1, \"name\":\"Updated Object\", \"type\":2}"
-
Удаление объекта:
curl -X DELETE "http://localhost:8080/objects?id=1"
-
Получение всех скважин:
curl -X GET http://localhost:8080/wells
-
Создание новой скважины:
curl -X POST http://localhost:8080/wells -H "Content-Type: application/json" -d "{\"well\":1, \"ngdu\":1, \"cdng\":1, \"kust\":1, \"mest\":1}"
-
Обновление скважины:
curl -X PUT http://localhost:8080/wells -H "Content-Type: application/json" -d "{\"well\":1, \"ngdu\":2, \"cdng\":2, \"kust\":2, \"mest\":2}"
-
Удаление скважины:
curl -X DELETE "http://localhost:8080/wells?well=1"
-
Получение всех исторических данных:
curl -X GET http://localhost:8080/well_day_histories
-
Создание новой записи истории:
curl -X POST http://localhost:8080/well_day_histories -H "Content-Type: application/json" -d "{\"well\":4455, \"date_fact\":\"2024-12-10\", \"debit\":10, \"ee_consume\":50.5, \"expenses\":5.123, \"pump_operating\":10}"
-
Обновление записи истории:
curl -X PUT http://localhost:8080/well_day_histories -H "Content-Type: application/json" -d "{\"well\":4455, \"date_fact\":\"2024-12-10\", \"debit\":15, \"ee_consume\":55.5, \"expenses\":5.678, \"pump_operating\":12}"
-
Удаление записи истории:
curl -X DELETE "http://localhost:8080/well_day_histories?well=4455&date_fact=2024-12-10"
-
Получение всех плановых данных:
curl -X GET http://localhost:8080/well_day_plans
-
Создание нового плана:
curl -X POST http://localhost:8080/well_day_plans -H "Content-Type: application/json" -d "{\"well\":4455, \"date_plan\":\"2024-12-10\", \"debit\":20, \"ee_consume\":60.5, \"expenses\":6.789, \"pump_operating\":15}"
-
Обновление плана:
curl -X PUT http://localhost:8080/well_day_plans -H "Content-Type: application/json" -d "{\"well\":4455, \"date_plan\":\"2024-12-10\", \"debit\":25, \"ee_consume\":65.5, \"expenses\":7.891, \"pump_operating\":18}"
-
Удаление плана:
curl -X DELETE "http://localhost:8080/well_day_plans?well=4455&date_plan=2024-12-10"
- Документация API доступна по адресу:
http://localhost:8080/swagger/index.html.