You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
256 lines
11 KiB
256 lines
11 KiB
大屏 Magic-API 接口速查
|
|
========================================
|
|
分组:/dashboard
|
|
前端代理:/api/dashboard/*
|
|
源文件:livestock-trading-backend/data/magic-api/api/大屏数据/*.ms
|
|
说明:均为只读;复杂逻辑见各 .ms 文件。修改 .ms 后需重启后端。
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
1. 系统配置
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/system-config
|
|
文件:系统配置.ms | 前端:Dashboard.vue、ChinaMap.vue、systemConfig.js
|
|
|
|
业务:大屏静态配置(标题图、地图枢纽红原、城市坐标、流向等级配色等)。
|
|
|
|
数据表:无(脚本内硬编码,可在 magic-api 或 .ms 中改)
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
2. 实时交易统计
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/real-time-stats
|
|
文件:实时交易统计.ms | 前端:RealTimeStats.vue
|
|
|
|
业务:按日/周/月读取政务统计指标(牦牛交易量、订单量、买卖商户数)。
|
|
|
|
参数:dimension(可选)day / week / month,不传返回全部
|
|
|
|
表:gov_count_item
|
|
字段:key(mnjyzl/jdjyzl/xsshsl/cgshsl), name, value, count_date
|
|
口径:day=最新 count_date;week=近7天;month=近30天;mnjyzl/jdjyzl 按日求和,xsshsl/cgshsl 取区间内最大值
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
3. 交易所牦牛成交数据
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/yak-trading-data
|
|
文件:交易所牦牛成交数据.ms | 前端:YakTradingData.vue
|
|
|
|
业务:近 6 个日/周/月时间桶的牦牛成交头数与订单数趋势(一条记录 = 一单)。
|
|
|
|
参数:period(可选)day / week / month,不传返回全部
|
|
|
|
表:gov_count_order_total
|
|
字段:id, yak_number, update_time
|
|
口径:SUM(yak_number) 为成交头数,COUNT(*) 为订单数;按 update_time 分桶
|
|
返回:labels, yakNumber, orderCount
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
4. 综合销售统计
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/comprehensive-sales-stats
|
|
文件:综合销售统计.ms | 前端:ComprehensiveSalesStats.vue
|
|
|
|
业务:三个饼图——本月销售、总体销售(按 origin_place Top5)、采购地区(按 buyer_place Top5)。
|
|
|
|
参数:type(可选)monthlySales / overallSalesDistribution / purchaseRegionDistribution
|
|
|
|
表:gov_count_order_total
|
|
字段:origin_place, buyer_place, yak_number, year, month
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
5. 活牛/鲜肉价格趋势
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/price-trend
|
|
文件:活牛鲜肉价格趋势.ms | 前端:YakPriceTrend.vue
|
|
|
|
业务:近 8 个月活牛、鲜肉采集均价(不做重量折算)。
|
|
|
|
表:gov_count_price
|
|
字段:year, month, price_key, value, unit
|
|
口径:
|
|
活牛 — price_key = hx(活畜),各区域 AVG(value)
|
|
鲜肉 — price_key IN (mnr, mnt, mnp)(牦牛肉/腿/排),各区域 AVG(value)
|
|
返回:labels, liveCattlePrice, beefPrice, liveUnit, beefUnit
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
6. 交易中心实时服务信息
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/exchange-service-info
|
|
文件:交易中心实时服务信息.ms | 前端:ExchangeMonitor.vue
|
|
|
|
业务:交易中心实时概览——供应/待售/已售头数、剩余车位、进场车辆、供应商数。
|
|
|
|
表:gov_count_real_info
|
|
条件:group_item = jygy,source_system = yzt
|
|
字段:key, name, value, tag, unit
|
|
key 映射:
|
|
mngyzl → totalSupply(牦牛供应总量)
|
|
dsmn → forSaleYaks(待售牦牛)
|
|
ysmn → soldYaks(已售牦牛)
|
|
sycw → remainingParking(剩余车位)
|
|
jccl → enteringVehicles(进场车辆)
|
|
gyssl → supplierCount(供应商数量)
|
|
返回:上述 value + Tag + Unit
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
7. 牦牛销售类型统计
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/yak-sales-type-stats
|
|
文件:牦牛销售类型统计.ms | 前端:YakSalesTypeStats.vue
|
|
|
|
业务:按 purpose 统计成交头数与占比(一条记录 = 一单)。
|
|
|
|
表:gov_count_order_total
|
|
字段:purpose, yak_number
|
|
口径:GROUP BY purpose,SUM(yak_number);空 purpose 归为「其他」
|
|
返回:name(屠宰/养殖/其他等), value, percent
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
8. 采购商户来源分析
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/buyer-source-analysis
|
|
文件:采购商户来源分析.ms | 前端:PurchaserAnalysis.vue
|
|
|
|
业务:按 buyer_place 统计采购商户数量 Top9(一条记录 = 一单)。
|
|
|
|
表:gov_count_order_total
|
|
字段:buyer_place, buyer_name, id
|
|
口径:GROUP BY buyer_place,COUNT(DISTINCT buyer_name);buyer_name 为空时按 id 计 1 户
|
|
返回:name, value, fullName, description
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
9. 牦牛供应实时信息
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/yak-supply-realtime-info
|
|
文件:牦牛供应实时信息.ms | 前端:SupplyDemandData.vue
|
|
|
|
业务:卖方进场登记列表(分页)及汇总(今日进场、总头数、交易中批次)。
|
|
|
|
参数:pageNo(默认 1)、pageSize(默认 5;勿用 page)
|
|
|
|
表及字段:
|
|
yak_trade_entry_record — id, name, vehicle_no, phone, party_id, quarantine_certificate_no, entered_at, entry_type
|
|
yak_trade_ear_tag_inventory — seller_entry_record_id, status, ear_tag_no
|
|
yak_trade_entry_record_ear_tag — entry_record_id
|
|
yak_sn_customer — id, region_name, address
|
|
条件:entry_type='SELLER'
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
10. 牦牛供应详情
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/yak-supply-detail
|
|
文件:牦牛供应详情.ms | 前端:SupplyDemandData.vue
|
|
|
|
业务:单条卖方进场详情(基本信息、耳标进度、关联成交订单、进场/检疫/称重图片 URL)。
|
|
|
|
参数:id(必填,yak_trade_entry_record.id)
|
|
|
|
表及字段:
|
|
yak_trade_entry_record — id, name, vehicle_no, phone, party_id, quarantine_certificate_no, entry_photo_id, entered_at, entry_type
|
|
yak_trade_ear_tag_inventory — seller_entry_record_id, ear_tag_no, status, locked_order_id
|
|
yak_trade_entry_record_ear_tag — entry_record_id, certificate_image_file_id
|
|
yak_trade_order / yak_trade_order_item — 订单与耳标明细
|
|
yak_trade_weighing_record — weight, photo_id
|
|
yak_trade_quarantine_certificate — certificate_no, image_file_id
|
|
yak_sn_customer — region_name, address(买卖方名称)
|
|
yak_car_record — 关联车辆
|
|
sys_oss — url(图片解析)
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
11. 市场环境监控
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/market-environment
|
|
文件:市场环境监控.ms | 前端:MarketEnvironmentMonitor.vue
|
|
|
|
业务:环境温湿度 + 气象八项实时指标。
|
|
|
|
表:gov_count_real_info
|
|
条件:group_item = env-monitor,source_system = yzt
|
|
字段:key, name, value, tag, unit
|
|
key 映射:
|
|
temperature 温度
|
|
humidity 湿度
|
|
aqi 空气质量
|
|
pressure 大气压强
|
|
uv 紫外线
|
|
rainfall 降雨量
|
|
wind_direction 风向(value=角度,tag=风向名)
|
|
wind_power 风力(value=级数)
|
|
返回:上述 value + Tag + Unit
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
12. 市场实时监控
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/market-realtime-monitor
|
|
文件:市场实时监控.ms | 前端:MarketRealtimeMonitor.vue
|
|
|
|
业务:萤石云视频监控设备列表,EZUIKit 播放 ezopen 地址。
|
|
|
|
表及字段:
|
|
iot_device_video — id, name, serial_number, channel_number, status, play_url, hd_play_url, preview_img_url, video_account_id, index, del_flag, is_show
|
|
iot_video_account — id, app_key, token
|
|
关联:v.video_account_id = a.id
|
|
条件:del_flag='0',is_show=true
|
|
返回:ezopenUrl, accessToken, preview 等
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
13. 市场实时监控播放配置
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/market-realtime-player-config
|
|
文件:市场实时监控播放配置.ms | 前端:MarketRealtimeMonitor.vue(ezvizPlayer.js)
|
|
|
|
业务:萤石云 EZUIKit 播放器参数(staticPath、template、scaleMode 等)。
|
|
|
|
数据表:无
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
14. 地图迁徙数据
|
|
--------------------------------------------------------------------------------
|
|
GET /dashboard/map-trading-network
|
|
文件:地图迁徙数据.ms | 前端:ChinaMap.vue
|
|
|
|
业务:中央地图三种模式流向,头数 SUM(yak_number),一条记录一单。
|
|
|
|
表:gov_count_order_total
|
|
字段:origin_place, destination_place, yak_number
|
|
口径:
|
|
outflow 销售网络 — origin_place 含「红原」,按 destination_place 聚合,红原→全国
|
|
inflow 源地供应 — destination_place 含「红原」,按 origin_place 聚合,全国→红原
|
|
local 红原出栏 — destination_place 含「红原」且 origin_place 含「红原」,按 origin_place 乡镇聚合,县内乡镇→红原
|
|
关联:系统配置 mapHub.name 与脚本 hubName 需一致(默认「红原县」)
|
|
|
|
|
|
================================================================================
|
|
表 → 接口索引
|
|
================================================================================
|
|
gov_count_real_info 6, 11
|
|
gov_count_price 5
|
|
gov_count_order_total 3, 4, 7, 8, 14
|
|
gov_count_item 2
|
|
yak_sn_customer 4, 6, 9, 10
|
|
yak_trade_ear_tag_inventory 6, 9, 10
|
|
yak_trade_entry_record 6, 9, 10
|
|
yak_trade_entry_record_ear_tag 9, 10
|
|
yak_trade_order / _item 10
|
|
yak_trade_weighing_record 10
|
|
yak_trade_quarantine_certificate 10
|
|
yak_car_parking_zone 6
|
|
yak_car_record 6, 10
|
|
sys_oss 10
|
|
iot_video_account 12
|
|
iot_device_video 12
|
|
(无表) 1, 13
|
|
|