Skip to content

商户标签方案

商户标签方案

数据库结构变动:

mysql:
    新增商户标签表
    CREATE TABLE management.`tbl_address_label` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `name` VARCHAR(25) NOT NULL COMMENT '名称',
    `group_id` INT(11) NOT NULL COMMENT '所属group_id',
    `create_time` DATETIME NOT NULL COMMENT '创建时间',
    `modify_time` DATETIME NOT NULL COMMENT '最后修改时间',
    `delete_time` DATETIME NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '删除时间,未删除为 1-1-1 00:00:00',
    `pstatus` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '是否删除',
    `extra1` INT(11) NOT NULL DEFAULT '0',
    `extra2` INT(11) NOT NULL DEFAULT '0',
    `extra3` VARCHAR(128) NOT NULL DEFAULT '',
    `extra4` VARCHAR(128) NOT NULL DEFAULT '',
    `extra5` DATETIME NOT NULL DEFAULT '0001-01-01 00:00:00',
    `extra6` DATETIME NOT NULL DEFAULT '0001-01-01 00:00:00',
    `extra7` DECIMAL(15,4) NOT NULL DEFAULT '0.0000',
    PRIMARY KEY (`id`),
    UNIQUE KEY `name` (`name`,`group_id`,`delete_time`),
    KEY `group_id` (`group_id`)
    )ENGINE=InnoDB;
    新增商户标签关联表
    CREATE TABLE management.`tbl_address_label_relation` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `address_id` INT(11) NOT NULL COMMENT '表tbl_address的id',
    `label_id` INT(11) NOT NULL COMMENT '表tbl_label的id',
    `group_id` INT(11) NOT NULL COMMENT '所属group_id',
    `create_time` DATETIME NOT NULL COMMENT '创建时间',
    `modify_time` DATETIME NOT NULL COMMENT '最后修改时间',
    `extra1` INT(11) NOT NULL DEFAULT '0',
    `extra2` INT(11) NOT NULL DEFAULT '0',
    `extra3` VARCHAR(128) NOT NULL DEFAULT '',
    `extra4` VARCHAR(128) NOT NULL DEFAULT '',
    `extra5` DATETIME NOT NULL DEFAULT '0001-01-01 00:00:00',
    `extra6` DATETIME NOT NULL DEFAULT '0001-01-01 00:00:00',
    `extra7` DECIMAL(15,4) NOT NULL DEFAULT '0.0000',
    PRIMARY KEY (`id`),
    UNIQUE KEY `uni_address_id` (`address_id`,`group_id`),
    KEY `address_id` (`address_id`),
    KEY `group_id` (`group_id`)
    )ENGINE=InnoDB;

接口变动:

custommanage/address_label/list(新增接口)

接口描述:
    获取所有商户标签
Method:
    GET
请求:
    search_text O     str     搜索条件
    page_obj    O   string  起始页(不包含),默认第0页
    reverse     O   bool    是否反向查询。1:是,0:不是。默认为否。
    limit       O   int     返回条数,默认10。传0表示返回所有数据。
    offset      O   int     查询起点偏移条数,默认 0 
    peek        O   int     是否需要 peek,默认不需要 peek。peek 必须大于 limit。
    count       O   bool    是否需要 count,默认不需要 count
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:[]     M           list            商户标签信息容器
        pagination: {               M   dict
            "peek": 100,            O   int     前端传 peek 的话,后端就会返回这个字段
            "more": true,           M   bool    是否有更多数据
            "page_obj": "gtyuhb",   M   string
            "count": 2000           O   int     前端传 count 的话,后端就会返回这个字段
        }
    }
    data示例:
    data: [{
        id: 1,            M          int         商户标签id
        name: SVIP,       M          str         商户标签名称
    },{},...]
custommanage/address_label/create(新增接口)

接口描述:
    新增商户标签
Method:
    POST
请求:
    name: SVIP        M       str         商户标签名称
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
    }
custommanage/address_label/delete(新增接口)

接口描述:
    删除商户标签
Method:
    POST
请求:
    id: 1         M         int         商户标签id
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
    }
custommanage/get

接口描述:
    商户信息详情
Method:
    GET
请求:
    不变
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
    }
    在响应data中的data新增商户标签信息
    data示例:
    data: {
        data: {
            #    商户标签         O       dict
            address_label: {
                id: 1            M       int       商户标签id
                name: SVIP       M       str       商户标签名称
        },
        ...其余不变
    }
custommanage/edit

接口描述:
    保存商户详情信息
Method:
    POST
请求:
    新增商户标签参数
    address_label_id: 1      M       int/None       商户标签id
    ...
响应:
    不变
custommanage/list

接口描述:
    商户列表查询和导出
    导出异步条件为200条
    同步为前端生成excel
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int     商户标签id
    ...
响应:
    {
        code:0      M           int             0为成功,其他为失败
        count:34    M           int             商户列表总数
        data:[]     M           list            商户信息容器
    }
    在data中新增商户类型信息
    示例:
    data:[{
        address_label: SVIP      M       str       商户标签名称
        ...
        其余不变
    },...]
custommanage/edit_customer/export

接口描述:
    导出需要修改的商户信息
Method:
    POST
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
    ...
响应:
    不变
custommanage/edit_customer/import

接口描述:
    导入修改后的商户信息excel表格
    无前端修改,后段逻辑校验
custommanage/edit_customer/update

接口描述:
    获取,更改商户信息
Method:
    POST
请求:
    edit_customer_list中每一条商户信息添加商户标签字段
    示例:
    edit_customer_list:[{
        "address_label": SVIP      M        str/None.     商户标签名称
    },...]
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
    }
    在data中customer_info列表中新增address_label
    示例:
    data: [{
        customer_info: [{
            address_label: SVIP       M        str       商户标签
        },...],
        ...其余不变
    },...]
custommanage/restaurant/import

接口描述:
    批量添加商户
Method:
    POST
请求:
    新增商户标签
    示例:
    data: [{
        address_label: SVIP      O      str      商户标签
    },...]
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:[]     M           list            响应信息容器
    }
    data中新增address_label错误响应
    示例:
    data: [{
        address_label: {
            data: SVIP,         M         str         商户标签
            msg: 不存在          O         str         错误信息     
        },
        ...
    },...]

finance/order/search

接口描述:
    商户结算列表查询
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
   {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:[]     M           list            响应信息容器
    }
    data中orders中customer新增商户标签
    示例:
    data: {
        orders: [{
            customer: {
                address_label: SVIP        M         str         商户标签
            },...
            不变
        },...],
        ...不变
    }
finance/order/export

接口描述:
    商户结算导出
    少于100条前端生成
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
    }
    data中output_data的order_details列表中的每个订单新增商户标签
    示例:
    data: {
        output_data: {
            order_details: [{
                address_label: SVIP,        M         str         商户标签
                ...
            },...]
        },...
    }
custommanage/bill/search

接口描述:
    商户对账单查询,导出
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:[]     M           list            响应信息容器
    }
    查询响应:
    data中新增商户标签
    示例:
    data: [{
        address_label: SVIP,        M         str         商户标签
        ...不变
    },...]

ordermanage/order_new/search

接口描述:
    异常按订单查看
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
        pagination: {}
    }
    在data中orders里面的customer新增商户标签
    示例:
    data: {
        orders: [{
            customer: {
                address_label: SVIP,        M         str         商户标签
            },...
        },...],
        ...
    }
ordermanage/order_sku

接口描述:
    异常按商品查看
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    {
        code:0      M           int             0为成功,其他为失败
        msg:"ok"    M           str             错误提示信息
        data:{}     M           dict            响应信息容器
        pagination: {}
    }
    data的skus中新增商户标签
    示例:
    data: {
        skus:[{
            address_label: SVIP,        M         str         商户标签
        },...]
    }
订单分析,商品分析等es全量再做方案
report/customer_order_abnormal

接口描述:
    订单异常查询,导出
    excel表格前端生成
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    不变
report/skus_abnormal

接口描述:
    商品异常查询,导出
    excel表格前端生成
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    不变
report/refund/list

接口描述:
    商品退货查询,导出
    excel表格前端生成
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    不变
report/other_abnormal/list

接口描述:
    非商品异常查询,导出
    excel表格前端生成
Method:
    GET
请求:
    新增商户标签id参数
    address_label_id: 1      O     int    商户标签id
响应:
    不变

开发时间规划:

商户标签新建、获取、删除(一天)
custommanage/address_label/list(新增接口)
custommanage/address_label/create(新增接口)
custommanage/address_label/delete(新增接口)
商户详情信息,商户列表(一天)
custommanage/get
custommanage/edit
custommanage/list
商户信息批量修改(一天)
custommanage/edit_customer/export
custommanage/edit_customer/import
custommanage/edit_customer/update
批量添加商户(0.5天)
custommanage/restaurant/import
商户结算查询,导出(一天)
finance/order/search
finance/order/export
商户电子对账单(1.5天)
custommanage/bill/search
售后管理(一天)
ordermanage/order_new/search
ordermanage/order_sku
订单异常、订单明细(两天)
report/customer_order_abnormal
report/skus_abnormal
report/refund/list
report/other_abnormal/list
订单分析,等重构全量再做方案,再定时间
商品分析,看进度再做方案,再定时间
目前开发暂定9天