Skip to content

商户批量修改方案

商户批量修改方案

custommanage/edit_customer/export(新增接口)

接口描述:
        商户详情信息导出
        大于两百条商户信息做异步,小于同步生产excel
Method:
        POST
请求:
    all             O           int        标识是否全选(1为全选)
    # 若是全选需要传搜索条件
    area_l1                 O       str        一级区域
    area_l2                 O       str        二级区域
    station_id              O       str        station_id
    search_text             O       str        搜索
    check_out               O       str        审查状态
    district_code           O       str        城市
    create_employee_id      O       str        开户经理
    sales_employee_id       O       str        销售经理
    salemenu_id             O       str        报价单_id
    settle_way              O       str        结款方式
    pay_method              O       str        结算周期
    # 若是自己选取商户,则传商户id列表
    sids                    O       list       商户id列表
响应:
    {
        code:0,                 M       int             0为成功, 其它为失败
        data:{},                M       dict            返回数据容器
        msg:"ok"                M       str             错误提示信息
    }
    data示例:
    {
        async            M       int             标识同步异步(异步为1,同步为0)
        task_url         M       str             以上方标识区分不同类型url
    }
异步任务信息获取借鉴:
https://doc.guanmai.cn/%E9%A1%B9%E7%9B%AE%E5%BC%80%E5%8F%91/MA%E5%BC%82%E6%AD%A5%E5%AF%BC%E5%87%BA%E6%96%87%E6%A1%A3/
其中的前端可用接口
custommanage/edit_customer/import(新增接口)

接口描述:
        商户修改详情信息后导入
Method:
        POST
请求:
    # Excel导入方式的参数:
    import_file     M   file    Excel文件
响应:
    {
        code:0,                 M       int             0为成功, 其它为失败
        data:{...},             M       dict            返回数据容器
        msg:"ok"                M       str             错误提示信息
    }
    示例:
        data:{
        # 如果上传的excel表格内信息无误,就直接异步修改
          "task_id"           O          int      任务id
        #后台缓存修改信息名称    O           str     如果有错误在展示错误商户信息携带的id 
          "edit_customer_id" : "356-a8098c1a-f86e-11da-bd1a-00112444be1e"
        }
custommanage/edit_customer/update(新增接口)

接口描述:
    商户修改后有误信息展示以及修改
    商户信息修改无误后,异步更新商户信息
Method:
    POST
请求:     
    edit_customer_id     M      str   后台缓存修改信息id
    edit_customer_list   O      list  修过后的商户信息
    示例:
    edit_customer_list : [{
        "SID" : "S156454"                           str         商户ID
        "username" : "wangwu",                      str         账户名
        "payment_name" : "haha",                    str         结款人
        "payment_telephone" : "15624532545"         str         结款电话
        "settle_way" : 1,                           int         结算方式(1为先货后款,2为先款后货)
        "account_period_way" : 1,                   int         账期方式(1为按周期,2为按额度)
        "pay_method" : 1,                           int         结款周期(1为日结,2为周结,3为月结,4为自定义)
        "settle_date_type" : 1,                     int         时间维度(1为按下单时间,2为按收货时间)
        "finance_status" : 0,                       int         冻结(0为非冻结,1为冻结)
        "whitelist" : 1,                            int         白名单(0为不加入白名单,1为加入白名单)
        "company_name" : "公司名",                   str         公司名
        "resname" : "店铺名",                        str         店铺名
        "consignee" : "hehe",                       str         收货人
        "telephone" : "14563254864",                str         手机号
        "geographic_label":"深圳市-南山区-科技园",     str         地理标签
        "area_detail" : "sdaasd",                   str         店铺地址
        "create_employee_name" : "hehe",            str         开户经理
        "sales_employee_name" : "haha",             str         销售经理
        "salemenus" : ["S156124","S478456"],        list        报价单
    },{...},]
响应:
    {
        code:0,                 M       int             0为成功, 其它为失败
        data:[...],             M       list            返回数据容器
        msg:"ok",               M       str             错误提示信息
        }
    示例:
    data:{
      # 有错误返回商户信息,无为[]
      "customer_info" : [{
            "SID" : "S156454"                           str         商户ID
            "username" : "wangwu",                      str         账户名
            "payment_name" : "haha",                    str         结款人
            "payment_telephone" : "15624532545"         str         结款电话
            "settle_way" : 1,                           int         结算方式(1为先货后款,2为先款后货)
            "account_period_way" : 1,                   int         账期方式(1为按周期,2为按额度)
            "pay_method" : 1,                           int         结款周期(1为日结,2为周结,3为月结,4为自定义)
            "settle_date_type" : 1,                     int         时间维度(1为按下单时间,2为按收货时间)
            "finance_status" : 0,                       int         冻结(0为非冻结,1为冻结)
            "whitelist" : 1,                            int         白名单(0为不加入白名单,1为加入白名单)
            "company_name" : "公司名",                   str         公司名
            "resname" : "店铺名",                        str         店铺名
            "consignee" : "hehe",                       str         收货人
            "telephone" : "14563254864",                str         手机号
            "geographic_label":"深圳市-南山区-科技园",     str         地理标签
            "area_detail" : "sdaasd",                   str         店铺地址
            "create_employee_name" : "hehe",            str         开户经理
            "sales_employee_name" : "haha",             str         销售经理
            "salemenus" : ["S156124","S478456"],        list        报价单
            "error_msg" : {                             dict        错误信息dict
                    #错误信息提示,只有显示有错误的错误信息提示
                    "username" : "用户名过长",     O     str         错误信息提示
                    ...
                }
            },...{...}],
    # 没有权限编辑字段列表                                 list
    "no_permission_list" : [                       
            "username",                                 str
            "area_detail",                              str
            ...
         ],
    "count" : 40,                                       int         商户信息有误条数总数
    # 有则为id,无则为None
    "task_id" : 3                                       int         任务id
    }
custommanage/fail_customer/update(新增接口)

接口描述:
    批量更新,更新失败的商户信息
Method:
    GET
请求:
    task_id         M         int        任务id
响应:
    {
        code:0,                 M       int             0为成功, 其它为失败
        data:{...},             M       dict            返回数据容器
        msg:"ok"                M       str             错误提示信息
    }
    data示例:
    data : {
         task_id             M       int       任务id
         succeed_number      M       int       成功条数
         fail_number         M       int       失败条数
    }
对于导出,导入后的商户详情信息,先做缓存在redis当中,期限为1天。
示例:
    # edit-customer-group_id+唯一标识符
    "edit-customer-356-a8098c1a-f86e-11da-bd1a-00112444be1e" : [{
            "SID" : "S154645"                           str         商户ID
            "username" : "wangwu",                      str         账户名
            "payment_name" : "haha",                    str         结款人
            "payment_telephone" : "15624532545"         str         结款电话
            "settle_way" : 1,                           int         结算方式(1为先货后款,2为先款后货)
            "account_period_way" : 1,                   int         账期方式(1为按周期,2为按额度)
            "pay_method" : 1,                           int         结款周期(1为日结,2为周结,3为月结,4为自定义)
            "settle_date_type" : 1,                     int         时间维度(1为按下单时间,2为按收货时间)
            "finance_status" : 0,                       int         冻结(0为非冻结,1为冻结)
            "whitelist" : 1,                            int         白名单(0为不加入白名单,1为加入白名单)
            "company_name" : "公司名",                   str         公司名
            "resname" : "店铺名",                        str         店铺名
            "consignee" : "hehe",                       str         收货人
            "telephone" : "14563254864",                str         手机号
            "geographic_label":"深圳市-南山区-科技园",     str         地理标签
            "area_detail" : "sdaasd",                   str         店铺地址
            "create_employee_name" : "hehe",            str         开户经理
            "sales_employee_name" : "haha",             str         销售经理
            "salemenus" : ["S156124","S478456"],        list        报价单
    },...{...},]

对于更新失败的商户信息,做缓存到redis中,时间为1天。
示例:
        edit_customer_group_id+task_id为key
        "edit_customer_356_3":[
            商户信息结构与上相同
        ]
时间安排如下:
    依次以上5个接口时间预期为:
    5月9日起
    商户详情信息导出两天,
    商户修改详情信息后导入一天,
    批量修改商户信息两天,
    批量更新,更新失败的商户信息一天。
    总时长6天
    5月17日结束
    连调1天
    测试4天