Skip to content

Station模块概要设计

销售单

获取销售单列表

接口名: /salemenu/list
Method: GET
请求:
    time_config_id O string 服务时间配置ID
    type O int 销售单类型(-1:已删除;1:供应商销售单;2:代售单;4:自售单)
    is_active O bool 销售单状态
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的销售单列表
    [{
        'id' M string 销售单ID
        'name' M string 销售单名
        'type' M int 销售单类型
        'is_active' M bool 是否激活
        'desc' M string 描述
        'supplier_name' M string 供应名称
        'time_config_id' M string 服务时间配置ID
        'time_config_name' M string 服务时间配置名称
    }]
逻辑:
    根据请求参数获取销售单
    返回销售单列表

获取站点的采购销售单

接口名: /salemenu/purchase/list
Method: GET
请求:
    q O string 销售单ID或名称
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的销售单列表
    [{
        'id' M string 销售单ID
        'station_id' M string 站点ID
        'name' M string 销售单名称
        'desc' M string 描述信息
        'is_active' M bool 是否激活
        'sku_num' M int 供应商品数量
    }]
逻辑:
    根据text匹配采购类型的销售单ID或销售单名称
    返回销售单列表

获取出售商品的销售单

接口名: /salemenu/sale/list
Method: GET
请求:
    time_config_id O string 服务时间配置ID
    type O int 销售单类型
    is_active O bool 销售单状态
    q O string 销售单ID或销售单名称
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的销售单列表
    [{
        'id' M string 销售单ID
        'name' M string 销售单名
        'type' M int 销售单类型(2:代售单;4:自售单)
        'is_active' M bool 是否激活
        'desc' M string 描述
        'supplier_name' M string 供应名称
        'time_config_name' M string 运营时间
        'sku_num' M string 在售商品数
    }]
逻辑:
    根据请求参数获取自营或服务销售单
    返回销售单列表

一级分类

创建一级分类

接口名: /merchandise/category1/create
Method: POST
请求:
    name M string 一级分类名
    icon M string 图片名
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string 一级分类ID
逻辑:
    验证分类名是否存在
    创建用户所在group的一级分类

修改一级分类

接口名: /merchandise/category1/update
Method: POST
请求:
    id M string 一级分类ID
    name O string 一级分类名
    icon O string 图片ID
    name icon必需二选一
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断指定的一级分类ID是否在用户所在的group
    验证待修改的一级分类名是否重复
    验证待修改的图片名是否存在
    修改一级分类信息

删除一级分类

接口名: /merchandise/category1/delete
Method: POST
请求:
    id M string 一级分类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断指定的一级分类ID是否在用户所在的group
    设置分类状态为删除

获取一级分类信息

接口名: /merchandise/category1/get
Method: GET
请求:
    无
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的分类信息
    [{
        'id' M string 分类ID
        'name' M string 分类名
        'icon' M int 图标ID
    }]
逻辑:
    获取用户所在group的一级分类
    返回一级分类信息列表

获取分类图标

接口名: /merchandise/category1/icon
Method: GET
请求:
    无
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的图标信息
    [{
        'id' M int 图标ID
        'url' M string 图标文件url
    }]

二级分类

创建二级分类

接口名: /merchandise/category2/create
Method: POST
请求:
    name M string 二级分类名
    upstream_id M string 一级分类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string 返回创建的二级分类ID
逻辑:
    判断用户所在的group下一级分类ID是否存在
    验证二级分类名是否存在
    创建指定一级分类ID下的二级分类

更新二级分类

接口名: /merchandise/category2/update
Method: POST
请求:
    id M string 二级分类ID
    name O string 二级分类名
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户所在的group下二级分类ID是否存在
    验证待修改的二级分类名是否重复
    验证待修改的一级分类ID是否有效
    更新二级分类信息

删除二级分类

接口名: /merchandise/category2/delete
Method: POST
请求:
    id M string 二级分类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户所在的group下二级分类ID是否存在
    设置二级分类状态为删除

获取二级分类信息

接口名: /merchandise/category2/get
Method: GET
请求:
    upstream_id O string 上游ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的分类信息
    [{
        'id' M string 分类ID
        'name' M string 分类名
        'upstream_id' M string 一级分类ID
    }]
逻辑:
    获取用户所在group的指定一级分类ID下的二级分类
    返回二级分类信息列表

品类

创建品类

接口名: /merchandise/pinlei/create
Method: POST
请求:
    name M string 品类名称
    upstream_id M string 二级分类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string 品类ID
逻辑:
    判断用户所在的group下二级分类ID是否存在
    验证品类名是否重复
    创建指定二级分类ID下的品类

更新品类

接口名: /merchandise/pinlei/update
Method: POST
请求:
    id M string 品类ID
    name M string 品类名称
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户所在的group下品类ID是否存在
    验证待修改的品类名是否重复
    更新品类信息

删除品类

接口名: /merchandise/pinlei/delete
Method: POST
请求:
    id M string 品类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户所在的group下品类ID是否存在
    设置品类状态为删除

获取品类信息

接口名: /merchandise/pinlei/get
Method: GET
请求:
    upstream_id 上游ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的品类信息
    [{
        'id' M string 分类ID
        'name' M string 分类名
        'upstream_id' M string 二级分类ID
    }]
逻辑:
    获取用户所在group的指定二级分类ID下的品类
    返回二品类信息列表

获取品类详情

接口名: /merchandise/pinlei/detail
Method: GET
请求:
    id 品类ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M dict 返回的品类信息
    {
        'id' M string 分类ID
        'name' M string 分类名
        'category_id_2' M string 二级分类ID
        'category_name_2' M string 二级分类名称
        'category_id_1' M string 一级分类ID
        'category_name_1' M string 一级分类名称
    }

spu

创建spu

接口名: /merchandise/spu/create
Method: POST
请求:
    name M string spu名称
    desc M string spu描述
    p_type M int 类型(0:通用;1:私有)
    std_unit_name M string 基本单位
    image M string 图片名称
    dispatch_method M int 分拣方式(1:bagua;2:union)
    pinlei_id M string 品类ID
    alias O list 别名列表
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string spu ID
逻辑:
    判断用户是否能创建对应类型的spu
    判断品类ID是否有效
    创建spu

更新spu

接口名: /merchandise/spu/update
Method: POST
请求:
    id M string spu ID
    name O string spu名称
    desc O string spu描述
    p_type O int 类型(0:通用;1:私有)
    std_unit_name O string 基本单位
    image O string 图片名称
    dispatch_method O int 分拣方式(1: bagua;2: union)
    pinlei_id O string 品类ID
    alias O list 别名列表
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户是否能修改对应类型的spu
    判断spu ID是否有效
    修改spu信息

删除spu

接口名: /merchandise/spu/delete
Method: POST
请求:
    id M string spu ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    判断用户是否能删除对应类型的spu
    判断spu ID是否有效
    设置spu状态为删除

获取spu列表

接口名: /merchandise/spu/list
Method: GET
请求:
    pinlei_id M string 品类ID
    P_type O int spu类型(0:通用;1:私有)
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的分类信息
    [{
        'id' M string spu ID
        'name' M string spu名
        'desc' M string 描述
        'p_type' M int spu类型
    }]
逻辑:
    判断品类ID是否有效
    获取对应品类ID下的spu信息
    返回spu信息列表

导出spu和分类信息

接口名: /merchandise/spu/export
Method: GET
请求:
    p_type O int spu类型(0:通用;1:私有)
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    导出group下的所有spu信息

获取spu分支

接口名: /merchandise/spu/branch
Method: GET
请求:
    q O string spu id或spu名称
    p_type O int spu类型(0:通用;1:私有)
    offset O int 偏移量 默认0
    limit O int 返回个数 默认10
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    pagination M dict 分页数据
    {'count': 总数, 'offset': 当前偏移, 'limit': 个数}
    data M list 返回的信息列表
    [{
        'spu_id' M string spu ID
        'spu_name' M string 商品名
        'category_id_1' M string 一级分类ID
        'category_name_1' M string 一级分类名称
        'category_id_2' M string 二级分类ID
        'category_name_2' M string 二级分类名称
        'pinlei_id' M string 品类ID
        'pinlei_name' M string 品类名称
        'p_type' M int 商品类型(0:通用;1:私有)
        'std_unit_name' M string 基本单位
        'dispatch_method' M int 分拣方式(1: bagua 八卦/2: union 统配)
    }]

获取spu详情

接口名: /merchandise/spu/details
Method: GET
请求:
    spu_id spu ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M dict 返回的spu信息
    {
        'id' M string spu ID
        'name' M string spu名称
        'image' M string 图片ID
        'category_name_1' M string 一级分类名称
        'category_name_2' M string 二级分类名称
        'pinlei_name' M string 品类名称
        'dispatch_method' M int 分拣方式(1: bagua 八卦/2: union 统配)
        'p_type' M int 商品类型(0:通用;1:私有)
        'desc' M string 描述
        'alias' M list 别名 [string]
        'std_unit_name' M string 基本单位
    }
逻辑:
    判断spu ID是否有效
    获取spu信息
    返回spu信息

获取商品库索引

接口名: /merchandise/spu/index
Method: GET
请求:
    category1_ids O list 一级分类ID列表
    category2_ids O list 二级分类ID列表
    pinlei_ids O list 品类ID列表
    q O string 查询参数(按SPU别名/SKU名,SPUID/SKUID搜索)
    is_active_on O int 是否显示未激活销售单商品(0:不显示;1:显示 默认不显示)
    offset O int 偏移量 默认0
    limit O int 返回个数 默认10
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    pagination M dict 分页数据
    {'count': 总数, 'offset': 当前偏移, 'limit': 个数}
    data M list 返回的信息列表
    [{
        'spu_id' M string spu ID
        'spu_name' M string 商品名
        'category_name_1' M string 一级分类名称
        'category_name_2' M string 二级分类名称
        'pinlei_name' M string 品类ID
        'p_type' M int 商品类型(0:通用;1:私有)
        'std_unit_name' M string 基本单位
        'dispatch_method' M int 分拣方式(1: bagua 八卦/2: union 统配)
        'skus' M list sku信息
        [{
            'sku_id' M string sku id
            'sku_name' M string 商品名
            'salemenu_id' M string 销售单ID
            'salemenu_name' M string 销售单名称
            'salemenu_type' M int 销售单类型(2:代售单;4:自售单)
            'salemenu_is_active' M bool 销售单激活状态
            'state' M int 销售状态
            'std_unit_name' M string 标准单位
            'sale_unit_name' M string 售卖单位
            'std_sale_price' M int 标准价(分)
            'sale_price' M int 售卖价(分)
            'sale_ratio' M float 售卖规格
            'stocks_is_valid' M bool 是否设置库存
            'stocks' M int 库存数量
        }]
    }]

sku

创建售卖sku

接口名: /product/sku_sale/create
Method: POST
请求:
    name M string sku名称
    desc M string sku描述
    std_sale_price M int 销售单价
    sale_price M int 销售价格
    sale_unit_name M string 销售单位
    sale_ratio M float 销售规格
    sale_num_least M int 最小下单数
    attrition_rate M float 损耗率
    state M int 销售状态
    is_weigh M bool 是否称重
    slitting M bool 能否分切
    partframe M bool 能否投筐
    stock_type M int 设置库存(0:读取上游库存;1:不设置库存;2:设置库存)
    stocks O int 库存数量(stock_type为2时表示库存数量)
    image O string 图片ID(没有则默认为spu的图片)
    salemenu_id M string 销售单ID
    supply_sku_id M string 采购来源
    spu_id M string spu ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string sku ID
逻辑:
    参数校验
    验证spu_id是否有效
    验证salemenu_id是否有效
    验证采购来源sku是否有效
    创建sku

创建采购sku

接口名: /product/sku_purchase/create
Method: POST
请求:
    name M string sku名称
    desc O string sku描述
    std_sale_price M int 采购单价
    sale_price M int 采购价格
    sale_unit_name M 采购单位
    sale_ratio M float 采购规格
    state M int 供应状态
    image O string 图片ID(没有则默认为spu的图片)
    salemenu_id M string 销售单ID
    spu_id M string spu ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M string sku ID
逻辑:
    参数校验
    验证spu_id是否有效
    验证salemenu_id是否有效
    创建sku

更新sku

接口名: /product/sku/update
Method: POST
请求:
    id M string sku ID
    name O string spu名称
    desc O string spu描述
    std_sale_price O int 销售单价
    sale_price O int 销售价格
    sale_unit_name O 销售单位
    sale_ratio O float 销售规格
    sale_num_least O int 最小下单数
    attrition_rate O float 损耗率
    state O int 销售状态
    is_weigh O bool 是否称重
    slitting M bool 能否分切
    partframe M bool 能否投筐
    stock_type O int 设置库存(0:读取上游库存;1:不设置库存;2:设置库存)
    stocks O int 库存数量
    image O string 图片名称
    salemenu_id O string 销售单ID
    supply_sku_id O string 采购来源
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    参数校验
    验证sku_id是否有效
    更新sku信息

修改sku的采购来源

接口名: /product/sku_supply/change
Method: POST
请求:
    sku_ids M list sku ID列表
    supply_sku_id O string 采购来源
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息

删除sku

接口名: /product/sku/delete
Method: POST
请求:
    id M string sku ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
逻辑:
    验证sku_id是否有效
    设置sku状态为删除

根据销售单获取商品列表

接口名: /product/sku_salemenu/list
Method: GET
请求:
    salemenu_id M string 销售的ID
    category1_ids O list 一级分类ID列表
    category2_ids O list 二级分类ID列表
    pinlei_ids O list 品类ID列表
    state O int 商品状态 (0:下架;1:上架)
    text O string 商品名称、sku_id或spu_id
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的商品列表
    [{
        'category_id_1': M string 一级分类ID
        'category_name_1': M string 一级分类名
        'category_id_2': M string 二级分类ID
        'category_name_2': M string 二级分类名
        'pinlei_id': M string 品类ID
        'pinlei_name': M string 品类名
        'spu_id': M string spu ID
        'spu_name': M string spu名称
        'sku_id': M string 商品ID
        'sku_name': M string 商品名
        'std_unit_name': M string 标准单位
        'std_sale_price' M int 标准价(分)
        'sale_unit_name': M string 售卖单位
        'sale_ratio': M float 售卖规格
        'sale_price': M int 售卖价(分)
        'state': M int 状态(1:上架;0:下架)
    }]

获取spu下的售卖商品信息

接口名: /product/sku_sale/list
Method: GET
请求:
    spu_id M string spu ID
    salemenu_id O string 销售单ID
    salemenu_type O int 销售单类型(2:代售;4:自售)
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的sku信息
    [{
        'sku_id' M string 商品ID
        'sku_name' M string 商品名称
        'desc' M string 商品描述
        'img_url' M string 商品图片链接
        'std_unit_name' M string 标准单位
        'sale_unit_name' M string 售卖单位
        'std_sale_price' M int 标准价(分)
        'sale_price' M int 售卖价(分)
        'sale_ratio' M float 售卖规格
        'sale_num_least' M int 最小下单数
        'attrition_rate' M float 损耗率
        'state' M int 销售状态
        'is_weigh' M bool 是否称重
        'slitting' M bool 分切
        'partframe' M bool 投筐
        'stock_type' M int 库存类型
        'stocks' M int 库存数量
        'salemenu_id' M string 销售单ID
        'salemenu_name' M string 销售单名称
        'supply_sku': M string 供应sku id
   }]

获取spu下的采购商品信息

接口名: /product/sku_purchase/list
Method: GET
请求:
    spu_id M string spu ID
    salemenu_id M string 销售单ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的sku信息
    [{
        'sku_id' M string 商品ID
        'sku_name' M string 商品名称
        'desc' M string 商品描述
        'std_unit_name' M string 标准单位
        'sale_unit_name' M string 售卖单位
        'std_sale_price' M int 标准价(分)
        'sale_price' M int 售卖价(分)
        'sale_ratio' M float 售卖规格
        'state' M int 供应状态
        'salemenu_id' M string 销售单ID
        'salemenu_name' M string 销售单名称
        'img_url' M string 商品图片链接
    }]

根据供应商品ID获取商品信息

接口名: /product/sku_supply/list
Method: GET
请求:
    sku_id M string 商品ID
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的商品列表
    [{
        'sku_id' M string 商品ID
        'sku_name' M string 商品名
        'sale_price' M int 售卖价(分)
        'sale_unit_name' M string 售卖单位
        'state' M int 供应状态
        'salemenu_id' M string 销售单ID
        'salemenu_name' M string 销售单名称
    }]

获取spu下的可见上游商品

接口名: /product/sku_upstream/list
Method: GET
请求:
    spu_ids M list spu IDs
响应:
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 返回的spu下的sku列表
    {
        spu_id: [{ M string spu ID
            'sku_id' M string 商品ID
            'sku_name' M string 商品名称
            'desc' M string 商品描述
            'std_unit_name' M string 标准单位
            'sale_unit_name' M string 售卖单位
            'std_sale_price' M int 标准价(分)
            'sale_price' M int 售卖价(分)
            'sale_ratio' M float 售卖规格
            'state' M int 供应状态
            'salemenu_id' M string 销售单ID
            'salemenu_name' M string 销售单名称
            'img_url' M string 商品图片链接
        }]
    }