# coalDataAPI **Repository Path**: c317/coalDataApi ## Basic Information - **Project Name**: coalDataAPI - **Description**: 煤矿大数据后端API接口 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-09-21 - **Last Updated**: 2025-05-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 煤矿大数据可视化大屏(旧页面)----后端接口 ## 主要技术与环境 | Spring Boot | Mybaits | WebSocket | jdk 1.8.0_281 | maven 3.6.3 | tomcat 9 | postgrs 10.0 | postgis IDEA 搭建Spring Boot框架 借鉴:https://blog.csdn.net/iku5200/article/details/82856621 Spring Boot + WebSocket 实现定时推送 借鉴:https://www.cnblogs.com/JohanChan/p/12522001.html 定时推送:https://www.cnblogs.com/dand/p/10319031.html # 1. 煤炭大数据可视化大屏 API 接口文档 ## 1.1. API 接口说明 - 接口基准地址:`http://127.0.0.1:8081/api/coal/` - 服务端已开启 CORS 跨域支持 - 使用 HTTP Status Code 标识状态 - 数据返回格式统一使用 JSON ### 1.1.1. 支持的请求方法 - GET(SELECT):从服务器取出资源(一项或多项)。 - POST(CREATE):在服务器新建一个资源。 - PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。 - PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。 - DELETE(DELETE):从服务器删除资源。 - HEAD:获取资源的元数据。 - OPTIONS:获取信息,关于资源的哪些属性是客户端可以改变的。 ### 1.1.2. 通用返回状态说明 | *状态码* | *含义* | *说明* | | -------- | --------- | -------------------------- | | 200 | OK | 请求成功 | | 404 | NOT FOUND | 请求的资源不存在或数据为空 | ------ ## 1.2. 煤矿源信息接口 - (source表) ### 1.2.1. 获取所有煤矿源信息 - 请求路径:source/all - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------- | ---------- | -------------------------------- | | id | 煤矿源 ID | | | name | 煤矿名称 | | | companyName | 所属企业 | | | produceStatus | 生产状态 | 0-在建;1-生产;2-停产;3-已关闭 | | supply | 核定年产能 | 万吨 | | province | 所在省 | | | lng | 经度 | | | lat | 维度 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 10, "name": "金鸡滩煤矿", "companyName": "兖矿集团", "produceStatus": 1, "supply": 1500, "province": "陕西省", "lng": 109.831678, "lat": 38.504576 }, ... ], "msg": "所有煤矿信息数据", "success": true } ``` ### 1.2.2. 获取煤矿源信息 - 包含煤矿名称、经度、纬度、生产状态、核定年产能(万吨)字段数据 - 请求路径:source/allCoal - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | -------------- | ---------- | -------------------------------- | | lng | 经度 | | | province | 所在省 | | | name | 煤矿名称 | | | produce_status | 生产状态 | 0-在建;1-生产;2-停产;3-已关闭 | | supply | 核定年产能 | 万吨 | | lat | 纬度 | | - 响应数据 ```json { "status": 200, "data": [ { "lng": 109.831678, "province": "陕西省", "name": "金鸡滩煤矿", "produce_status": 1, "supply": 1500, "lat": 38.504576 }, ... ], "msg": "所有煤矿信息数据", "success": true } ``` ### 1.2.3. 根据煤矿名获取煤矿源信息 - 请求路径:source - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | -------- | | name | 煤矿名 | 不能为空 | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------- | ---------- | -------------------------------- | | id | 煤矿源 ID | | | name | 煤矿名称 | | | companyName | 所属企业 | | | produceStatus | 生产状态 | 0-在建;1-生产;2-停产;3-已关闭 | | supply | 核定年产能 | 万吨 | | province | 所在省 | | | lng | 经度 | | | lat | 维度 | | - 响应数据 ```json { "status": 200, "data": { "id": 10, "name": "金鸡滩煤矿", "companyName": "兖矿集团", "produceStatus": 1, "supply": 1500, "province": "陕西省", "lng": 109.831678, "lat": 38.504576 }, "msg": "根据煤矿名查指定煤矿信息", "success": true } ``` ### 1.2.4. 根据指定状态获取煤矿源信息 - 请求路径:source - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | -------- | | status | 生产状态 | 不能为空 | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------- | ---------- | -------------------------------- | | id | 煤矿源 ID | | | name | 煤矿名称 | | | companyName | 所属企业 | | | produceStatus | 生产状态 | 0-在建;1-生产;2-停产;3-已关闭 | | supply | 核定年产能 | 万吨 | | province | 所在省 | | | lng | 经度 | | | lat | 维度 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 23, "name": "韩克测试煤矿0509", "companyName": null, "produceStatus": 0, "supply": null, "province": "内蒙古自治区", "lng": 109.967287, "lat": 39.810972 }, ... ], "msg": "根据生产状态查所有煤矿信息,生产状态(0-在建;1-生产;2-停产;3-已关闭)", "success": true } ``` ### 1.2.5. 根据省份获取煤矿源信息 - 请求路径:source - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | -------- | -------- | -------- | | province | 省份 | 不能为空 | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------- | ---------- | -------------------------------- | | id | 煤矿源 ID | | | name | 煤矿名称 | | | companyName | 所属企业 | | | produceStatus | 生产状态 | 0-在建;1-生产;2-停产;3-已关闭 | | supply | 核定年产能 | 万吨 | | province | 所在省 | | | lng | 经度 | | | lat | 维度 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 10, "name": "金鸡滩煤矿", "companyName": "兖矿集团", "produceStatus": 1, "supply": 1500, "province": "陕西省", "lng": 109.831678, "lat": 38.504576 }, ... ], "msg": "所有煤矿信息数据", "success": true } ``` ## 1.3. 煤矿运单接口 - (waybill表) ### 1.3.1. 获取所有煤矿运单信息 - 请求路径:waybill/all - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------------- | ---------------------------- | ---- | | id | 运单id | | | collieryName | 煤矿名称 | | | buyerAddressShort | 收货地简称 | | | extractCreateTime | 提煤单创建时间 | | | extractPayTime | 提煤单支付时间 | | | inWeight | 装车吨 | | | inTime | 出矿时间 | | | settlementAmountMix | 运单实际计算金额或者预估金额 | | | pitPrice | 坑口含税价 | | | ticketPrice | 一票到站优惠价 | | | freight | 运费 | | | extractTotalAmount | 收费总金额 | | | coalName | 煤种 | | | buyerName | 买家名称 | | | sellerName | 卖家名称 | | | sourceLongitude | 发货地纬度 | | | sourceLatitude | 发货地经度 | | | targetLongitude | 卸货地纬度 | | | targetLatitude | 卸货地经度 | | | targetProvince | 卸货地省份 | | | sourceProvince | 发货地省份 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 140765, "collieryName": "小纪汗煤矿", "buyerAddressShort": "阳泉冀东水泥", "extractCreateTime": "2019-12-31T16:03:57.000+0000", "extractPayTime": "2019-12-31T16:04:00.000+0000", "inWeight": 31.9, "inTime": "2019-12-31T22:25:22.000+0000", "settlementAmountMix": 4893.85, "pitPrice": 363, "ticketPrice": 536.14, "freight": 157.4, "extractTotalAmount": 0, "coalName": "小纪汗 2#精煤", "buyerName": "唐山冀东水泥股份有限公司", "sellerName": "内蒙古汇能集团通汇煤炭经营有限公司", "sourceLongitude": 109.512118, "sourceLatitude": 38.441484, "targetLongitude": 110.060514, "targetLatitude": 41.034106, "targetProvince": "内蒙古自治区", "sourceProvince": "陕西省" }, ... ], "msg": "所有煤矿运单信息数据", "success": true } ``` ### 1.3.2. 获取指定数量或指定时间的运单信息 - 请求路径:waybill - 请求方法:get - 请求参数(参数不可同时出现) | 参数名 | 参数说明 | 备注 | | ------ | -------- | --------------------------------------------------- | | number | 数量 | 不能为空 | | time | 时间 | 不能为空(时间格式:YYYY-mm-dd hh:mm:ss 字符串类型) | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------------- | ---------------------------- | ---- | | id | 运单id | | | collieryName | 煤矿名称 | | | buyerAddressShort | 收货地简称 | | | extractCreateTime | 提煤单创建时间 | | | extractPayTime | 提煤单支付时间 | | | inWeight | 装车吨 | | | inTime | 出矿时间 | | | settlementAmountMix | 运单实际计算金额或者预估金额 | | | pitPrice | 坑口含税价 | | | ticketPrice | 一票到站优惠价 | | | freight | 运费 | | | extractTotalAmount | 收费总金额 | | | coalName | 煤种 | | | buyerName | 买家名称 | | | sellerName | 卖家名称 | | | sourceLongitude | 发货地纬度 | | | sourceLatitude | 发货地经度 | | | targetLongitude | 卸货地纬度 | | | targetLatitude | 卸货地经度 | | | targetProvince | 卸货地省份 | | | sourceProvince | 发货地省份 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 140765, "collieryName": "小纪汗煤矿", "buyerAddressShort": "阳泉冀东水泥", "extractCreateTime": "2019-12-31T16:03:57.000+0000", "extractPayTime": "2019-12-31T16:04:00.000+0000", "inWeight": 31.9, "inTime": "2019-12-31T22:25:22.000+0000", "settlementAmountMix": 4893.85, "pitPrice": 363, "ticketPrice": 536.14, "freight": 157.4, "extractTotalAmount": 0, "coalName": "小纪汗 2#精煤", "buyerName": "唐山冀东水泥股份有限公司", "sellerName": "内蒙古汇能集团通汇煤炭经营有限公司", "sourceLongitude": 109.512118, "sourceLatitude": 38.441484, "targetLongitude": 110.060514, "targetLatitude": 41.034106, "targetProvince": "内蒙古自治区", "sourceProvince": "陕西省" }, ... ], "msg": "", "success": true } ``` ### 1.3.3. 获取当天、昨天、本月、上月、本年、去年运单信息 - 请求路径: 当天:waybill/today 昨天:waybill/yesterday 本月:waybill/month 上月:waybill/monthlast 本年:waybill/year 去年:waybill/yearlast - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | ------------------- | ---------------------------- | ---- | | id | 运单id | | | collieryName | 煤矿名称 | | | buyerAddressShort | 收货地简称 | | | extractCreateTime | 提煤单创建时间 | | | extractPayTime | 提煤单支付时间 | | | inWeight | 装车吨 | | | inTime | 出矿时间 | | | settlementAmountMix | 运单实际计算金额或者预估金额 | | | pitPrice | 坑口含税价 | | | ticketPrice | 一票到站优惠价 | | | freight | 运费 | | | extractTotalAmount | 收费总金额 | | | coalName | 煤种 | | | buyerName | 买家名称 | | | sellerName | 卖家名称 | | | sourceLongitude | 发货地纬度 | | | sourceLatitude | 发货地经度 | | | targetLongitude | 卸货地纬度 | | | targetLatitude | 卸货地经度 | | | targetProvince | 卸货地省份 | | | sourceProvince | 发货地省份 | | - 响应数据 ```json { "status": 200, "data": [ { "id": 140765, "collieryName": "小纪汗煤矿", "buyerAddressShort": "阳泉冀东水泥", "extractCreateTime": "2019-12-31T16:03:57.000+0000", "extractPayTime": "2019-12-31T16:04:00.000+0000", "inWeight": 31.9, "inTime": "2019-12-31T22:25:22.000+0000", "settlementAmountMix": 4893.85, "pitPrice": 363, "ticketPrice": 536.14, "freight": 157.4, "extractTotalAmount": 0, "coalName": "小纪汗 2#精煤", "buyerName": "唐山冀东水泥股份有限公司", "sellerName": "内蒙古汇能集团通汇煤炭经营有限公司", "sourceLongitude": 109.512118, "sourceLatitude": 38.441484, "targetLongitude": 110.060514, "targetLatitude": 41.034106, "targetProvince": "内蒙古自治区", "sourceProvince": "陕西省" }, ... ], "msg": "", "success": true } ``` ### 1.3.4. 煤矿销量分析 - (今天、昨天、今年、去年、本月、上月) - 请求路径:waybill/transactionOverview - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | ---- | | remark | 时间标注 | | | weight | 总吨数 | | - 响应数据 ```json { "status": 200, "data": [ { "weight": 6493.12, "remark": "今天" }, { "weight": 7470.38, "remark": "昨天" }, { "weight": 164443.54, "remark": "本月" }, { "weight": 166531.71, "remark": "上月" }, { "weight": 2934253.2, "remark": "本年" }, { "weight": 1136485.22, "remark": "去年" } ], "msg": "交易概况数据,今天昨天本月上月今年去年煤炭交易总量", "success": true } ``` ### 1.3.5. 历史交易总量 - (上周、上月、上季度、上年) - 请求路径:waybill/transactionOverviewOld - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | ---- | | remark | 时间标注 | | | weight | 总吨数 | | - 响应数据 ```json { "status": 200, "data": [ { "weight": 32800.73, "remark": "上周" }, { "weight": 166531.71, "remark": "上月" }, { "weight": 1088985.08, "remark": "上季度" }, { "weight": 1136485.22, "remark": "上年" } ], "msg": "历史交易总量 上周 上月 上季度 上年", "success": true } ``` ### 1.3.6. 获取每天、每月、,每年的销量总量排行 - 请求路径: 每天:waybill/everyday 每月:waybill/everyMonth 每年:waybill/everyYear - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | --------------------------- | | number | 数量 | 不能为空 获取销量前几的数据 | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | ---- | | weight | 总吨数 | | | time | 时间 | | - 响应数据 ```json { "status": 200, "data": [ { "weight": 24574.72, "time": "2020-10-28" }, { "weight": 4999.56, "time": "2020-10-27" }, { "weight": 4950.48, "time": "2020-10-26" }, { "weight": 5130.75, "time": "2020-10-25" }, { "weight": 8093.4, "time": "2020-10-24" }, { "weight": 5608.82, "time": "2020-10-23" }, { "weight": 3964.18, "time": "2020-10-22" }, { "weight": 7981.12, "time": "2020-10-21" }, { "weight": 5688.96, "time": "2020-10-20" }, { "weight": 5119, "time": "2020-10-19" } ], "msg": "每天煤矿销量", "success": true } ``` ### 1.3.7.获取各买家煤矿销量总量排行 - (今天、昨天、本月、上月、今年、去年) - 请求路径: ​ 所有时间:waybill/buyerTop ​ 今天:waybill/buyerTop/today ​ 昨天:waybill/buyerTop/yesterday ​ 本月:waybill/buyerTop/month ​ 上月:waybill/buyerTop/monthLast ​ 今年:waybill/buyerTop/year ​ 去年:waybill/buyerTop/yearLast - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | --------------------------------- | | top | 排名 | 不能为空 获取前几名的买家销售总量 | - 响应参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | ---- | | name | 买家名 | | | weight | 销售总量 | 吨 | - 响应数据 ```json { "status": 200, "data": [ { "name": "巴彦淖尔市金峰化工有限责任公司", "weight": 1113.04 }, { "name": "宁波中拓华投能源有限公司", "weight": 871.42 }, { "name": "冀东水泥", "weight": 587.68 } ], "msg": "各买家今天煤矿销量总量 top前几", "success": true } ``` ### 1.3.8.获取各省份卖家(买家)煤矿销量总量排行 - (今天、本月、今年) - 请求路径: ​ 各省份卖家今天:waybill/sourceProvince/today ​ 各省份卖家今天:waybill/sourceProvince/month ​ 各省份卖家今天:waybill/sourceProvince/year ​ 各省份买家今天:waybill/targetProvince/today ​ 各省份买家今天:waybill/targetProvince/month ​ 各省份买家今天:waybill/targetProvince/year - 请求方法:get - 请求参数 | 参数名 | 参数说明 | 备注 | | ------ | -------- | --------------------------------- | | top | 排名 | 不能为空 获取前几名的买家销售总量 | - 响应参数 | 参数名 | 参数说明 | 备注 | | -------- | -------- | ---- | | province | 省份 | | | weight | 销售总量 | 吨 | - 响应数据 ```json { "status": 200, "data": [ { "province": "辽宁省", "weight": 14137.34 }, { "province": "山西省", "weight": 9812.3 }, { "province": "内蒙古自治区", "weight": 8678.42 }, { "province": "山东省", "weight": 6079.06 }, { "province": "河北省", "weight": 617.48 } ], "msg": "各买家省份本月煤矿销量总量 top前几", "success": true } ``` ### 1.3.9. 获取卖家(买家)相同经纬度销量求和 - (一年内) - 请求路径: 卖家:waybill/sourceLatLon/year 买家:waybill/targetLatLon/year - 请求方法:get - 请求参数:无 - 响应参数 | 参数名 | 参数说明 | 备注 | | --------- | ------------ | ---- | | latitude | 纬度 | | | name | 买(卖)家名 | | | weight | 总吨数 | | | longitude | 经度 | | - 响应数据 ```json { "status": 200, "data": [ { "latitude": 39.833309, "name": "内蒙古伊泰化工有限责任公司", "weight": 23383.14, "longitude": 108.736208 }, ... ], "msg": "各买家相同经纬度销量求和 一年内", "success": true } ```