行情工具
读取上传文件接口
接口名: station/purchase_app/tool/price/upload/excel
Method: POST
请求:
session
响应:
code M int 返回码 0为成功、其他为错误
msg O string 出错信息提示
示例:
request:
http://test.guanmai.cn/station/purchase_app/tool/upload/excel
response:
{
"code": 0,
"msg": ""
}
逻辑:
获取上传的excel文件
excel处理规则:
按列名识别,上传SPUID、品质(quality)、单价(std_unit_price)、数量(number)、采购时间(purchase_time),共5列
若单价大于2位小数则四舍五入
上传前,若数据库已存在同一日期的数据,则删除老数据,并重新计算中位数
中位数的计算要按照相同日期,相同时间段,相同品质三个限制条件下计算
按照excel处理规则进行文件处理
返回
行情列表接口
接口名: station/purchase_app/price_tool/price_list
Method: GET
请求:
search_filter O string 搜索商品名称
offset O int 页数
limit O int 每页条数
响应:
code M int 返回码 0为成功、其他为错误
msg O string 出错信息提示
data O list 成功时返回数据,json格式
data._id O string 商品唯一确定编号
data.spu_id O string spu_id
data.spu_name O string spu名字
data.spu_desc O string spu描述
data.quality O string 品质
data.quality_name O string 品质描述
data.price_median O int 中位价
data.differential_value O int 与上一次同一时间段中位价差值
data.last_purchase_time O datetime 上一次采购时间
data.date_time O datetime 保存时间
data.time_section O 当前时间段
示例:
request:
http://test.guanmai.cn/purchase/tool/price/price_name_search
post: search_filter="大白菜"&offset=2&limit=10
response:
{
"data": [{
"_id": "C00001-1",
"spu_id": "C00001",
"spu_name": "白菜苔",
"spu_desc": "山东产",
"quality": 1,
"quality_name": "优质"
"price_median": "2.7",
"differential_value": "0.5",
"last_purchase_time": "",
"date_time": "",
"time_section": ""
}],
"msg": "",
"code": 0
}
逻辑:
获取商品列表
统计数据
格式化商品统计数据
返回
行情详情接口
接口名: station/purchase_app/price_tool/price_detail
Method: GET
请求:
spu_key M string spu_id和品质的组合字段
响应:
code M int 返回码 0为成功、其他为错误
msg O string 出错信息提示
data O dict 成功时返回数据,json格式
data.contrast_info O dict 对比信息
data.contrast_info.today_price O dict 当日价格
data.contrast_info.today_time_section O list 时间段配置结果
data.contrast_info. yesterday_price.time_section_one O stirng 昨日某时间段内均价
data.price_show O list 行情动态展示
data.price_show.std_unit_price O float 单价
data.price_show.number O int 数量
data.price_show.purchase_time O datetime 采购时间
data.price_show._id O string 唯一编号
data.price_show.spu_id O string spu_id
data.price_show.quality O string 品质
示例:
request:
http://testbshop.guanmai.cn/product/sku/search?spu_id=C00003&quality=1
response:
{
"code":0,
"msg":"success",
"data":{
"today_statistic_show":{
"price_median":1.29,
"std_unit_name":"斤",
"last_purchase_time":"2016-10-14 17:08:58",
"spu_desc":"广东产,叶浓绿色,细长管状,三角形截面",
"spu_id":"C25535",
"quality":2,
"differential_value":0,
"spu_name":"带叶荞头",
"time_section":0,
"spu_key":"C25535-2"
},
"keys":[
"C25533-1",
"C25533-2",
"C25535-2"
],
"today_time_section": [
{
"start_time":"6:00:00",
"end_time":"11:00:00",
"id":1
},
{
"start_time":"11:00:00",
"end_time":"14:00:00",
"id":2
},
{
"start_time":"14:00:00",
"end_time":"23:00:00",
"id":3
}
]
"yesterday_price":[
{
"median_price":1.7,
"time_section":1
},
{
"median_price":1.7,
"time_section":2
},
{
"median_price":1.7,
"time_section":3
}
],
"price_show":[
{
"quality":2,
"spu_key":"C25535-2",
"purchase_time":"2016-10-14T17:08:58",
"number":28,
"std_unit_price":1.29,
"spu_id":"C25535",
"time_section":0
}
]
}
}
逻辑:
获取商户销售单ID
根据商品名称搜索sku
格式化商品数据
返回
工具时间段划分
时间段已配置形式进行(json格式) 现阶段有三个时间段划分
time_section = { 1: (time(6), time(11)), 2: (time(11), time(14)), 3: (time(14), time(23)) }
quality_reflect = { "优质": 1, "普通": 2 }