Skip to content

Station接口

图片上传 /station/image/upload

View ImageUploadView

方法 POST
权限 无
请求
    image_file  M   files   图片
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    {
        'image_url' M string 图片url
        'img_path_id' M string 文件名
    }
逻辑
    上传图片到cos

创建销售单 /station/salemenu/create/

View SalemenuDetailView

方法 GET
权限 get_salemenu
请求
    salemenu_type   O   int 销售单类型
    station_id(session)  M   站点ID
    id(url)  M   string  销售单ID
响应
    模版(station/salemenu_create.html)
    render
    {
        'form' M 对象
            'salemenu_type'     销售单类型
            'time_config_id'    时间配置ID
            'target'    逻辑上返回了这个group下的总站、阿米巴、总仓的ID和名字
        'has_supplier_name' M list [4, 5]
        (Seller = 4  # 自营销售单,总仓的售卖销售单
        ProxySeller = 5  # 加盟商售卖的销售单,要总部代卖)
    }
逻辑
    返回销售单详情

方法 POST
权限 edit_salemenu
请求
    json    O   string  这个参数是GET参数,值可能是“0”或“1”用做判断是否返回json
    id  O   string  销售单ID,但对于供应商销售单而言,需要用供应商的station_id
    salemenu_type   M   int 销售单类型
    is_active   O   string  销售单是否激活,值可能是“on”或“off”
    station_id(session)  M   站点ID
响应
    成功时
    根据salemenu_type跳转到其他接口
    或者返回json
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    {
        'name' M string 销售单名
        'station_id' M string 站点ID
        'salemenu_id' M string 销售单ID
    }
    错误时
    返回模版(station/salemenu_create.html)
    render
    {
        'form' M 对象 空
        'has_supplier_name' M list [4, 5]
        (Seller = 4  # 自营销售单,总仓的售卖销售单
        ProxySeller = 5  # 加盟商售卖的销售单,要总部代卖)
    }
    或 json
    code M int 1
    msg M string 错误提示信息
    data M list 空
逻辑
    新建销售单,如果传入了id且is_active不为“on”时,把对应销售单内的商品全部下架
    如果json是“0“就根据salemenu_type跳转
    1供应商销售单 -> /station/supplier
    2内部扭转单 -> /station/salemenu/innerflow
    4自营销售单 -> /station/salemenu/selfsell
    5加盟商售卖的销售单 -> /station/salemenu/proxysell
    6供应商销售单 -> /station/supplier/spuprivate

搜索自营销售单 /station/salemenu/selfsell/

View SalemenuIndexView

方法 GET
权限 get_salemenu, get_sjgz
请求
    time_config_id   O   string 服务时间配置ID
    q_station_id    O   string  查询站点ID
    q_active    O   string  是否激活 “0”或“1“
    json    O   int 是否返回json 0或1
    station[salemenu](session)  M   站点下的销售单
响应
    json
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    {
        'name' M string 销售单名
        'station_id' M string 站点ID
        'salemenu_id' M string 销售单ID
    }
    模版(station/salemenu.html)
    render
    {
        'salemenus' M list  销售单
        'is_spu_private' M bool    是否是私有SPU    当前站点是老SAAS且当前接口是/station/salemenu/proxysell/为真
        'salemenu_type' M   int 销售单类型   和当前接口有关
        'service_time'  M   list    当前站点的时间配置,第一个项为全部,如果传入有time_config_id,time_config_id对应的时间配置为第一个
        'active_choice' M   list    激活选项列表,第一个项为全部,如果传入有q_active,q_active对应的项为第一个
        'station_name'  O   list    当前站点是总站返回,站点名列表,第一个项为全部,如果传入有q_station_id,q_station_id对应的项为第一个
        'is_center' O   bool    True    当前站点是总站返回
    }
逻辑
    当前站点为总站时拉取所有站点所有销售单,但此时前端不能传json为1,否则只过滤对应接口的销售单类型和是否激活,过滤时间配置ID和站点ID只在返回是模版时有效,所以我猜这个接口在总站时是返回模版的
    这个接口和下面四个接口用的同一个view,区别在于不同的view_type对应不同的销售单类型过滤

搜索加盟商售卖的销售单 /station/salemenu/proxysell/

同 /station/salemenu/selfsell/

搜索内部扭转单 /station/salemenu/innerflow/

同 /station/salemenu/selfsell/

搜索所有销售单 /station/salemenu/center/

同 /station/salemenu/selfsell/

搜索所有销售单 /station/salemenu/

同 /station/salemenu/center/

销售单详情 /station/salemenu/(?P{?\w+}?)/

同 /station/salemenu/create/

销售单内的sku /station/salemenu/(?P{?\w+}?)/skus/

View SalemenuSkusView

方法 GET
权限 get_sku
请求
    id(url)  M   string  销售单ID
    station(session)    O   string  站点
响应
    模版(station/salemenu_skus.html,老saas用station/salemenu_skus_old.html)
    render
    {
        'edit_station_id' M list  销售单所在站点ID
        'create_type' M string    'sale' 不知道有什么用
        'edit_salemenu_id' M   string 销售单ID
    }
逻辑
    没有什么特别的逻辑

采购销售单详情/station/supplier/(?P{?\w+}?)/

同 /station/salemenu/create/

拉分类列表 /station/skucategories

View CategoryWithSkusInfoView

方法 GET
权限 无
请求
    station_id  O   string  站点ID
    salemenu_id    O   string  销售单ID
    upid    O   string  上级分类ID
    addition    O   string  是否拉取sku默认配置,不传或传“sku_default_conf”
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    [{
        'id'    M   string  分类ID
        'create_time'   M   datetime    创建时间
        'title' M   string  分类名
        'upstream_id'   M   string  上级ID
        'status'    M   int 状态
        'group_id'  M   int groupid
        'origin_id' M   string  切商品库前的ID
        'level' M   int 分类级别
        'split_flag'    O   int 服务能力
    }
    最后会有一个{'old_saas'   M   int 是否是老SAAS}]
逻辑
    判断是否是老SAAS,根据addition判断是否拉取默认服务能力,
    然后拉取分类,组成列表,并在列表的最后填是否老SAAS的项

拉分类下的spu和sku /station/skus/category/(?P{?\w+}?)

View CategorySkusQueryView

方法 GET
权限 无
请求
    station_id  O   string  站点ID
    salemenu_id    O   string  销售单ID
    off_shelf   O   string  是否查看下架商品false或true
    addition    O   string  是否拉取sku默认配置,不传或传“sku_default_conf”
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    [{
        "id"    M   string  spuid
        "create_time"   M   datetime 创建时间
        "origin_id" M   string  切商品库前的ID
        "p_type"    M   int 是否私有(0:通用;1:私有)
        "modify_time"   M   datetime    编辑时间
        "image" M   string  图片
        "img_url"   M   string  图片URL
        "pinlei_id" M   string  品类ID
        "status"    M   int 状态
        "group_id"  M   int groupid
        "name"  M   string  spu名字
        "desc"  M   string  描述
        'split_flag'    O   int 服务能力
        "category_title_2"  M   string  二级分类名
        "category_id_2" M   string  二级分类ID
        "category_title_1"  M   string  一级分类名
        "category_id_1" M   string  一级分类ID
        "std_unit_name" M   string  标准单位名
        "dispatch_method"   M   int 分拣方式(1:bagua;2:union)
        "sku_infos": [  M   list
            {
                "id"    M   string  SKUID
                "stocks_is_valid"   M   int 是否设置库存
                "salemenu_id"   M   string  销售单ID
                "status"    M   int 状态
                "category_id_1" M   string  一级分类ID
                "desc"  M   string  描述
                "create_time"   M   datetime    创建时间
                "stocks"    M   int 库存
                "sync_state"    O   int 若该服务站的sku才会有该字段。该字段表示sku的是否需要同步自营站点的sku。
                "pinlei_id" M   string  品类ID
                "sale_unit_name"    M   string  销售单位名
                "station_id"    M   string  站点ID
                "state" M   int 是否上架
                "outer_id"  M   string  自定义ID
                "attrition_rate"    M   int 损耗率
                "modify_time"   M   datetime    编辑时间
                "s_type"    M   int 商品类型(0. 单一商品,即只改变价格,售卖方式, 1. 组合商品,即有多个上游商品)
                "name"  M   string  商品名字
                "imgs"  M   list    图片
                "category_id_2" M   string  二级分类ID
                "version"   M   int 版本号
                "sale_price"    M   float   售卖单位
                "is_weigh"  M   int 是否称重
                "split_flag"    M   int 服务标识
                "sale_num_least"    M   float   最小售卖数
            }
        ]
    }]
逻辑
    判断是否有查看spu的权限,没有就查私有spu,拼分类字段,奇怪的地方是如果拉了sku默认配置,sku_infos就为空

搜索SKU /station/skus

View SkusQueryView

方法 GET
权限 无
请求
    station_id  O   string  站点ID
    salemenu_id    O   string  销售单ID
    search_text     O   string  搜索内容
    active   O   string  “1”或“0“是否只查上架商品
    offset    O   int 分页偏移
    limit    O   int 分页每页限制
    fetch_category  O   string  “1”或“0“是否需要拉分类信息
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    [{
        "id"    M   string  SKUID
        "spu_id"    M   string  SPUID
        "category_id_1" M   string  一级分类ID
        "category_id_2" M   string  二级分类ID
        "name"  M   string  商品名字
        "desc"  M   string  描述
        "sale_unit_name"    M   string  销售单位名
        "unit_name" M   string  标准单位名
        "unit_price"    M   float   标准单价
        "sale_ratio"    M   float   售卖比例
        "sale_price"    M   float   售卖单价
        "state" M   int 是否上架
        "up_sku_id" M   string  采购来源SKU
        "is_weigh"  M   int 是否称重
        "sale_num_least"    M   float   最小售卖数
        "split_flag"    M   int 服务标识
        "img_url"   M   string  图片URL
        "outer_id"  M   string  自定义ID
        "category_title_2"  O   string  二级分类名
        "category_title_1"  O   string  一级分类名
        "sku_cost"  M   float   成本
    }]
逻辑
    根据输入参数搜索SKU,如果没有传入station_id,查当前站点
View SimpleSkuSearchView

方法 GET
权限 无
请求
    q   M   string  搜索内容
    cols    O   string  搜索哪些列,默认为“_id,name”
    offset    O   int 分页偏移
    limit    O   int 分页每页限制
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    "list" [{
        "salemenu_id"    M   string  销售单ID
        "salemenu_name"    M   string  销售单名字
        。。。
        其他的SKU字段是否返回由前端传的参数决定,我就不写了
    }]
    "pagination": {
        "count"
        "offset"
        "limit"
    }
    或
    [{
        "salemenu_id"    M   string  销售单ID
        "salemenu_name"    M   string  销售单名字
        。。。
        其他的SKU字段是否返回由前端传的参数决定,我就不写了
    }]
逻辑
    如果搜索内容为空,不搜索,只搜索上架商品,搜索内容支持ID精确和名字模糊,一定会查询salemenu_id字段
    如果offset字段前端传了None,那么返回格式为第二种

搜索商户可见的SKU /station/skus/addr

View SkuQueryByAddrView

方法 GET
权限 无
请求
    fetch_category  O   string  是否拉分类“0”或“1”
    active  O   string  是否只拉上架的“0”或“1”
    time_config_id  O   string  时间配置ID
    address_id  M   string  商户ID
    offset    O   int 分页偏移
    limit    O   int 分页每页限制
响应
    code M int 0为成功,其它为失败
    msg M string 错误提示信息
    data M list 成功的返回数据
    [{
        "id"    M   string  SKUID
        "sync_origin_id"    M   string   真实交易ID
        "spu_id"    M   string  SPUID
        "category_id_1" M   string  一级分类ID
        "category_id_2" M   string  二级分类ID
        "category_title_1"  O   string  一级分类名
        "category_title_2"  O   string  二级分类名
        "station_id"    M   string  站点ID
        "salemenu_id"   M   string  销售单ID
        "supplier_name" M   string  供应商名
        "name"  M   string  商品名字
        "desc"  M   string  描述
        "sale_unit_name"    M   string  销售单位名
        "std_unit_name" M   string  标准单位名
        "unit_price"    M   float   标准单价
        "sale_ratio"    M   float   售卖比例
        "sale_price"    M   float   售卖单价
        "state" M   int 是否上架
        "is_weigh"  M   int 是否称重
        "sale_num_least"    M   float   最小售卖数
        "outer_id"  M   string  自定义ID
        "is_price_timing"   M   bool    是否实价
    }]
逻辑
    根据商户ID搜索可见销售单,根据搜索内容搜索商品

/station/skuproduct/(?P{?\w+}?)/

View SkuProductView
get方法 查询sku具体信息,返回字段有和采购app有关
post方法 修改sku,purchase_app=true时和采购app有关

/station/skuproducts/spu/(?P{?\w+}?(?:-\w+)*)

view SkuProductSpuQueryView
get方法 查询指定销售单下多个spu下的sku

/station/skuproduct/upstream/visible

view UpVisibleSkusQueryView
get方法 拉取上游可见销售单中的商品

/station/skuproducts/stocks/(?P{?\w+}?)/(?P{?\w+}?)/edit/

view SkuStocksEditView
get方法 返回了一个render了station_id和salemenu_id的模版

/station/skuproducts/stocks

view SkuStocksView
get方法 返回指定销售单内带库存的商品列表
post方法 修改商品库存

/station/skuproducts/import/(?P{?\w+}?)/(?P{?\w+}?)/sku/

view SkuImportView
get方法 返回了一个render了station_id和salemenu_id的模版
post方法 导入sku或者导入sku库存

/station/skuproducts/export/(?P{?\w+}?)/(?P{?\w+}?)/stocks/

view SkuExportView
get方法 导出sku或者库存信息

/station/skuproducts/stocks/flow/

view SkuStocksFlowView
get方法 查指定sku的库存变化流水

/station/skuproducts/stocks/flow/(?P{?\w+}?)/(?P{?\w+}?)/(?P{?\w+}?)

view SkuStocksFlowIndexView
get方法 返回了一个render了station_id和salemenu_id和sku_id的模版

/station/skuproducts/servetype/(?P{?\w+}?)/

view SkuServeTypeView
get方法 返回了一个render了salemenu_id的模版
post方法 修改指定销售单内商品的服务能力

/station/skubatch/create/sale

view SkuBatchCreateFromSpuView
get方法 返回查找的spu下的sku列表
post方法 新建sku或者编辑sku,销售和采购都有

/station/skubatch/create/purchase

同/station/skubatch/create/sale

/station/config/sku/(?P{?\w+}?)/

view SkuDefaultConfView
get方法 返回了一个render了salemenu_id的模版
post方法 批量修改sku服务能力

/station/sale/category/create/

view SaleCategoryCreateView
post方法 新建分类

/station/sale/category/update/

view SaleCategoryChangeView
post方法 编辑分类

/station/sale/category/delete/

view SaleCategoryChangeView
post方法 删除分类

/station/sale/sku/set/

view SaleCategorySkuSetView
post方法 如果set_sale=1,从老的营销分类里删除sku,添加到新的分类里面去,如果set_sale=0,就只是删除

/station/sale/sku/

view SaleCategorySkuQueryView
get方法 返回指定销售单的营销分类信息,包括商品

/station/sale/categories/

view SaleCategoryQueryView
get方法 根据销售单ID和上级ID搜索营销分类

/station/sale/index/(?P{?\w+}?)/(?P{?\w+}?)

view SaleIndexView
get方法 返回了一个render了station_id和salemenu_id的模版

/station/sale/category

view SaleCategoryView
get方法 返回指定销售单的营销分类信息,不包括商品

/station/sale/skus/(?P{?\w+}?)/(?P{?\w+}?)

view SaleSkusIndexView
get方法 返回了一个render了station_id和salemenu_id的模版

/station/sale/product/create

view SaleProductCreateIndexView
get方法 返回了一个render了is_supply_spu_private和salemenu_id的模版

/station/purchase/product/create

同/station/sale/product/create

/station/sale/select/spu

同/station/sale/product/create

/station/service_time$

view ServiceTimeConfigView
get方法 如果传入时间配置id,就返回时间配置详情,否则,搜索所配置站点时间配置,总站拉全部
view SpuRemarkCustomerSearchView
get方法 搜索商户,看url名字感觉有关系,但是看了逻辑似乎和商品库没啥关系,不知道要不要放在这里
view SpuRemarkSpuSearchView
get方法 搜索指定商户当前group下的商品备注

/station/spu_remark/update_remark/

view SpuRemarkUpdateRemarkView
post方法 修改商品备注

/station/price_rule/index

view PriceRuleIndexView
get方法 返回一个模版,render了是否总站,和权限

/station/price_rule/create

view PriceRuleCreateView
post方法 创建一个营销规则,如果已经有一个冲突的营销分类,会返回错误码为10的错误

/station/price_rule/edit

view PriceRuleEditView
get方法 返回指定ID的营销规则
post方法 更新营销规则,如果已经有一个冲突的营销分类,会返回错误码为10的错误

/station/price_rule/search

view PriceRuleSalemenuView
get方法 搜索指定ID的营销规则
view PriceRuleSkuView
get方法 搜索导出营销规则明细

/station/price_rule/upload/

view PriceRuleUploadView
post方法 上传营销规则表,有三种,站点、商户、商品,返回解析后的结果

/station/price_rule/download/

view PriceRuleDownloadView
get方法 下载营销规则的商户和商品数据

/station/price_rule/station/search

view StationQueryView
get方法 根据名称拉取绑定特定销售单的站点

/salemenu/purchase/list

view SalemenuPurchaseGetView
get方法 根据text匹配采购类型的销售单ID或销售单名称
返回销售单列表

/salemenu/sale/list

view SalemenuSaleGetView
get方法 根据请求参数获取自营或服务销售单
返回销售单列表

/salemenu/list

view SalemenuListGetView
get方法 根据请求参数获取销售单
返回销售单列表

/salemenu/sale/detail

view SalemenuSaleDetailView
get方法 返回销售单详情

/salemenu/sale/targets

view SalemenuSaleTargetsView
get方法 返回销售单销售对象

/salemenu/sale/create

view SalemenuSaleCreateView
post方法 创建销售单

/salemenu/sale/update

view SalemenuSaleUpdateView
post方法 更新销售单

/salemenu/purchase/detail

view SalemenuPurchaseDetailView
get方法 获取采购报价单详情

/salemenu/purchase/create

view SalemenuPurchaseCreateView
post方法 创建采购报价单

/salemenu/purchase/update

view SalemenuPurchaseUpdateView
post方法 更新采购报价单

/salemenu/settle_suppliers

view SalemenuSettleSupplierView
get方法 获取当前站点的结算供应商

/core/spuproducts/pinlei/manage/

view PinleiManageView
get方法 拉取当前二级分类下的品类id
post方法 品类新建、编辑、删除

/core/spuproducts/spu/list/

view SPUListView
get方法 根据品类id拉取SPU

/product/sku_sale/create

view SkuSaleCreateView
post方法 创建销售SKU

/product/sku_purchase/create

view SkuPurchaseCreateView
post方法 创建采购SKU

/product/sku/update

view SkuUpdateView
post方法 编辑SKU

/product/sku/delete

view SkuDeleteView
post方法 删除SKU

/product/sku_salemenu/list

view SkuGetBySalemenuView
get方法 搜索销售单内的商品

/product/sku_sale/list

view SkuSaleGetView
get方法 搜索商品(带采购来源)

/product/sku_purchase/list

view SkuPurchaseGetView
get方法 搜索指定销售单内的spu下的sku

/product/sku_supply/list

view SkuGetBySupplySkuView
get方法 根据上游供应商品ID获取其供应的sku信息

/product/sku_supply/change

view SkuChangeSupplySkuView
post方法 修改采购来源SKU

/product/sku_upstream/list

view SkuUpstreamGetView
get方法 获取可选的上游SKU

/merchandise/category1/create

view Category1CreateView
post方法 创建一级分类

/merchandise/category1/update

view Category1UpdateView
post方法 更新一级分类

/merchandise/category1/delete

view Category1DeleteView
post方法 删除一级分类

/merchandise/category1/get

view Category1GetView
get方法 拉取所有一级分类

/merchandise/category1/icon

view Category1IconView
get方法 拉取所有一级分类图标

/merchandise/category2/create

view Category2CreateView
post方法 创建二级分类

/merchandise/category2/update

view Category2UpdateView
post方法 更新二级分类

/merchandise/category2/delete

view Category2DeleteView
post方法 删除二级分类

/merchandise/category2/get

view Category2GetView
get方法 拉取二级分类

/merchandise/pinlei/create

view PinleiCreateView
post方法 创建品类

/merchandise/pinlei/update

view PinleiUpdateView
post方法 编辑品类

/merchandise/pinlei/delete

view PinleiDeleteView
post方法 删除品类

/merchandise/pinlei/get

view PinleiGetView
get方法 拉取品类

/merchandise/pinlei/detail

view PinleiDetailGetView
get方法 拉取指定ID的品类详情

/merchandise/spu/create

view SpuCreateView
post方法 创建spu

/merchandise/spu/update

view SpuUpdateView
post方法 编辑spu

/merchandise/spu/delete

view SpuDeleteView
post方法 删除spu

/merchandise/spu/list

view SpuGetListView
get方法 拉取spu

/merchandise/spu/details

view SpuGetDetailsView
get方法 拉取指定id的spu详情

/merchandise/spu/index

view SpuIndexGetView
get方法 搜索spu,包括下属sku(商品库索引)

/merchandise/spu/branch

view SpuBranchGetView
get方法 搜索spu,不带sku信息

/merchandise/spu/export

view SpuExportView
get方法 导出spu信息