Channel Product

1、添加频道商品

描述

添加频道商品库商品
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/add

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、当商品类型为普通商品时,商品名称、商品封面链接、商品实际价格、商品上下架状态、商品链接类型必传,并根据商品链接类型传入对应链接

3、当商品类型为金融商品时,商品名称、商品上下架状态、商品链接类型必传,并根据商品链接类型传入对应链接

单元测试

	@Test
	public void testAddChannelProduct() throws IOException, NoSuchAlgorithmException {
        LiveAddProductRequest liveAddProductRequest = new LiveAddProductRequest();
        LiveAddProductResponse liveAddProductResponse;
        try {
            liveAddProductRequest.setChannelId(createChannel())
                    .setName("测试添加金融产品1")
                    .setProductType("finance")
                    .setStatus(1)
                    .setLinkType(11)
                    .setPcLink("http://polyv.net")
                    .setMobileLink("http://polyv.net")
                    .setMobileAppLink("http://polyv.net")
                    .setWxMiniProgramLink("pages/home/index.html")
                    .setWxMiniProgramOriginalId("xxxxxxx")
                    .setYield("88")
                    .setFeatures("[\"tab1\", \"tab2\", \"tab3\", \"tab4\"]")
                    .setBtnShow("立即了解")
                    .setProductDesc("测试描述")
                    .setParams("{\"code\":123,\"color\":\"red\"}");
            liveAddProductResponse = new LiveChannelProductServiceImpl().addChannelProduct(liveAddProductRequest);
            Assert.assertNotNull(liveAddProductResponse);
            if (liveAddProductResponse != null) {
                log.debug("测试添加频道商品成功 {}", JSON.toJSONString(liveAddProductResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveAddProductResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

name

true

String

商品名称,长度范围:1-60

status

true

Integer

商品上下架状态:1:上架,2:下架

linkType

true

Integer

商品链接类型:10:通用链接,11:多平台链接

link

false

String

商品链接,链接地址长度为1-500:请求参数linkType=10时,该参数必填,当请求参数linkType=11时,该参数为非必填

pcLink

false

String

多平台链接,pc端跳转链接,链接地址长度为1-500:请求参数linkType=10时,该参数非必填,当请求参数linkType=11时,该参数必填

mobileLink

false

String

多平台链接,移动web端链接

wxMiniProgramLink

false

String

多平台链接,小程序内页面路径及参数(对于path属性,所声明的页面路径必须添加.html后缀,如pages/home/index.html)【对应api文档的wxMiniprogramLink字段】

wxMiniProgramOriginalId

false

String

多平台链接,小程序端原始Id【对应api文档的wxMiniprogramOriginalId字段】

mobileAppLink

false

String

多平台链接,移动App端链接

androidLink

false

String

多平台链接,移动APP-安卓系统原生页面链接

iosLink

false

String

多平台链接,移动APP-苹果系统原生页面链接

params

false

String

自定义参数,类型json对象,需要转为string

productDesc

false

String

产品描述

features

false

String

产品特色,卖点标签,可以多个,json字段,如:["tab1", "tab2"]

cover

false

String

普通商品参数,商品封面链接,商品类型为普通商品时必传,长度范围:1-500

realPrice

false

Float

普通商品参数,商品实际价格,商品类型为普通商品时必传,保留两位小数,如:0.01

price

false

Float

普通商品参数,商品原价,保留两位小数,如:0.01

btnShow

false

String

金融商品参数,按钮显示文案

yield

false

String

金融商品参数,产品收益率/价格

productType

false

String

商品类型,默认为普通商品:normal:普通商品,finance:金融商品

返回对象描述

参数名类型说明

productId

Integer

商品productId

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

channelId

String

频道号

name

String

商品名称,长度范围:1-60

price

Float

普通商品参数,商品原价,保留两位小数,如:0.01

cover

String

商品封面链接

link

String

商品通用类型商品链接

status

Integer

商品上下架状态:1:上架,2:下架

createdTime

Date

创建商品时间

lastModified

Date

更新商品时间

rank

Integer

商品排序号

realPrice

Float

商品实际价格,保留两位小数,如:0.01

type

String

平台标志,默认live,其他无效

linkType

Integer

商品链接类型:10:通用链接,11:多平台链接

pcLink

String

多平台链接,pc端跳转链接

mobileLink

String

多平台链接,移动web端跳转链接

wxMiniProgramLink

String

多平台链接,小程序端跳转链接【对应api文档的wxMiniprogramLink字段】

wxMiniProgramOriginalId

String

多平台链接,小程序端原始Id【对应api文档的wxMiniprogramOriginalId字段】

mobileAppLink

String

多平台链接,移动App端跳转链接

androidLink

String

多平台链接,移动APP-安卓系统原生页面链接

iosLink

String

多平台链接,移动APP-苹果系统原生页面链接

params

String

自定义参数,类型json对象,需要转为string

productType

String

商品类型,normal:普通商品,finance:金融商品

btnShow

String

按钮显示文案

features

String

产品特色,卖点标签,可以多个,json字段,如:["tab1", "tab2"]

productDesc

String

产品描述

yield

String

金融商品参数,产品收益率/价格


2、修改频道商品信息

描述

修改频道商品库商品信息
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、当商品类型为普通商品时,商品名称、商品封面链接、商品实际价格、商品上下架状态、商品链接类型必传,并根据商品链接类型传入对应链接

3、当商品类型为金融商品时,商品名称、商品上下架状态、商品链接类型必传,并根据商品链接类型传入对应链接

单元测试

	@Test
	public void testUpdateChannelProduct() throws IOException, NoSuchAlgorithmException {
        LiveUpdateProductRequest liveUpdateProductRequest = new LiveUpdateProductRequest();
        Boolean liveUpdateProductResponse;
        try {
            liveUpdateProductRequest.setChannelId(createChannel())
                    .setProductId(getChannelProductId(createChannel()))
                    .setCover(
                            "https://liveimages.videocc.net/uploadimage/20200827/chat_img_1779741_15985125681801.jpeg")
                    .setRealPrice(Float.MIN_VALUE)
                    .setName("测试修改普通产品")
                    .setStatus(1)
                    .setProductType("normal")
                    .setLinkType(11)
                    .setPcLink("http://polyv.net")
                    .setMobileLink("http://polyv.net")
                    .setMobileAppLink("http://polyv.net")
                    .setWxMiniProgramLink("pages/home/index.html")
                    .setWxMiniProgramOriginalId("xxxxxxx")
                    .setYield("88.88")
                    .setFeatures("[\"tab1\", \"tab2\", \"tab3\", \"tab4\"]")
                    .setBtnShow("立即了解")
                    .setProductDesc("测试描述")
                    .setParams("{\"code\":123,\"color\":\"red\"}");
            liveUpdateProductResponse = new LiveChannelProductServiceImpl().updateChannelProduct(
                    liveUpdateProductRequest);
            Assert.assertTrue(liveUpdateProductResponse);
            if (liveUpdateProductResponse != null) {
                log.debug("测试修改频道商品信息成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

productId

true

Integer

商品库商品productId

name

true

String

商品名称,必填,长度范围:1-60

realPrice

true

Float

商品实际价格,保留两位小数,如:0.01

linkType

true

Integer

商品链接类型 10:通用链接 11:多平台链接

cover

true

String

商品封面链接,必填,长度范围:1-500

price

false

Float

商品价格,保留两位小数,如:0.01

link

false

String

通用链接,商品链接,长度1-500,当linkType=10时,该参数必填;当请求参数linkType=11时,该参数无效

pcLink

false

String

多平台链接,pc端跳转链接,长度1-500 当请求参数linkType=11时,该参数必填;当请求参数linkType=10时,该参数无效

mobileLink

false

String

多平台链接,移动web端链接

wxMiniProgramLink

false

String

多平台链接,小程序内页面路径及参数(对于path属性,所声明的页面路径必须添加.html后缀,如pages/home/index.html)【对应api文档的wxMiniprogramLink字段】

wxMiniProgramOriginalId

false

String

多平台链接,小程序端原始Id【对应api文档的wxMiniprogramOriginalId字段】

mobileAppLink

false

String

多平台链接,移动App端链接

androidLink

false

String

多平台链接,移动APP-安卓系统原生页面链接

iosLink

false

String

多平台链接,移动APP-苹果系统原生页面链接

params

false

String

自定义参数,类型json对象,需要转为string

productDesc

false

String

产品描述

features

false

String

产品特色,卖点标签,可以多个,json字段,如:["tab1", "tab2"]

btnShow

false

String

金融商品参数,按钮显示文案

yield

false

String

金融商品参数,产品收益率/价格

productType

false

String

商品类型,默认为普通商品:normal:普通商品,finance:金融商品

status

true

Integer

商品上下架状态:1:上架,2:下架

返回对象描述

null


3、查询频道商品库开关状态

描述

查询频道商品库开关状态
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/get-enabled

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetChannelProductEnabled() throws IOException, NoSuchAlgorithmException {
        LiveGetProductEnabledRequest liveGetProductEnabledRequest = new LiveGetProductEnabledRequest();
        LiveGetProductEnabledResponse liveGetProductEnabledResponse;
        try {
            liveGetProductEnabledRequest.setChannelId(createChannel());
            liveGetProductEnabledResponse = new LiveChannelProductServiceImpl().getChannelProductEnabled(
                    liveGetProductEnabledRequest);
            Assert.assertNotNull(liveGetProductEnabledResponse);
            if (liveGetProductEnabledResponse != null) {
                //to do something ......
                log.debug("测试查询频道商品库开关状态成功{}", JSON.toJSONString(liveGetProductEnabledResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetProductEnabledResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

返回对象描述

参数名类型说明

enabled

String

开关状态,Y:开启,N:关闭


4、查询频道商品列表

描述

获取频道商品库商品列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetChannelProductList() throws IOException, NoSuchAlgorithmException {
        LiveGetProductListRequest liveGetProductListRequest = new LiveGetProductListRequest();
        LiveGetProductListResponse liveGetProductListResponse;
        try {
            liveGetProductListRequest.setChannelId(createChannel()).setCurrentPage(1).setPageSize(2);
            liveGetProductListResponse = new LiveChannelProductServiceImpl().getChannelProductList(
                    liveGetProductListRequest);
            Assert.assertNotNull(liveGetProductListResponse);
            if (liveGetProductListResponse != null) {
                //to do something ......
                log.debug("测试查询频道商品列表成功{}", JSON.toJSONString(liveGetProductListResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetProductListResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

currentPage

false

Integer

页数,默认为1【对应api文档的page字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

查询的商品列表【详见channelProductList参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

channelProductList参数描述

参数名类型说明

productId

Integer

商品productId

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

channelId

String

频道号

name

String

商品名称

price

Float

商品价格,保留两位小数,如:0.01

cover

String

商品封面链接

link

String

商品通用类型商品链接

status

Integer

商品上下架状态,1:上架状态,2:下架状态

createdTime

Date

创建商品时间,格式:yyyy-MM-dd HH:mm:ss

lastModified

Date

更新商品时间,格式:yyyy-MM-dd HH:mm:ss

rank

Integer

商品排序号

realPrice

Float

商品实际价格,保留两位小数,如:0.01

type

String

平台标志,默认live,其他无效

linkType

Integer

商品链接类型,10:通用链接,11:多平台链接

pcLink

String

多平台链接,pc端跳转链接

mobileLink

String

多平台链接,移动web端跳转链接

wxMiniProgramLink

String

多平台链接,小程序端跳转链接【对应api文档的wxMiniprogramLink字段】

wxMiniProgramOriginalId

String

多平台链接,小程序端原始Id【对应api文档的wxMiniprogramOriginalId字段】

mobileAppLink

String

多平台链接,移动App端跳转链接

androidLink

String

多平台链接,移动APP-安卓系统原生页面链接

iosLink

String

多平台链接,移动APP-苹果系统原生页面链接

params

String

自定义参数,类型json对象,需要转为string

productType

String

商品类型,normal:普通商品,finance:金融商品

btnShow

String

按钮显示文案

features

String

产品特色,卖点标签,可以多个,json字段,如:["tab1", "tab2"]

productDesc

String

产品描述

yield

String

金融商品参数,产品收益率/价格

showId

Integer

显示Id


5、修改频道商品库开关状态

描述

修改频道商品库商品列表开关状态,开启后,观看页将展示商品列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/update-enabled

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateChannelProductEnabled() throws IOException, NoSuchAlgorithmException {
        LiveUpdateProductEnabledRequest liveUpdateProductEnabledRequest = new LiveUpdateProductEnabledRequest();
        Boolean liveUpdateProductEnabledResponse;
        try {
            liveUpdateProductEnabledRequest.setChannelId(createChannel()).setEnabled("Y");
            liveUpdateProductEnabledResponse = new LiveChannelProductServiceImpl().updateChannelProductEnabled(
                    liveUpdateProductEnabledRequest);
            Assert.assertTrue(liveUpdateProductEnabledResponse);
            if (liveUpdateProductEnabledResponse) {
                //to do something ......
                log.debug("测试修改频道商品库开关状态成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

enabled

true

String

开关状态,Y:开启,N:关闭

返回对象描述

true为修改成功,false为修改失败


6、修改频道商品库上下架状态

描述

修改频道商品库商品上下架状态
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/shelf

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testShelfChannelProduct() throws IOException, NoSuchAlgorithmException {
        LiveShelfChannelProductRequest liveShelfChannelProductRequest = new LiveShelfChannelProductRequest();
        Boolean liveShelfChannelProductResponse;
        try {
            liveShelfChannelProductRequest.setChannelId(createChannel())
                    .setProductId(super.getChannelProductId(createChannel()))
                    .setShelf(1);
            liveShelfChannelProductResponse = new LiveChannelProductServiceImpl().shelfChannelProduct(
                    liveShelfChannelProductRequest);
            Assert.assertTrue(liveShelfChannelProductResponse);
            if (liveShelfChannelProductResponse) {
                //to do something ......
                log.debug("测试修改频道商品库上下架状态成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

productId

true

Integer

商品ID

shelf

true

Integer

商品上下架状态,1:上架,2:下架

返回对象描述

true为修改成功,false为修改失败


7、推送频道商品库商品

描述

推送频道商品库商品
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/push-product

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、仅商品为上架状态才可进行推送

单元测试

	@Test
	public void testPushChannelProduct() throws IOException, NoSuchAlgorithmException {
        LivePushProductRequest livePushProductRequest = new LivePushProductRequest();
        Boolean livePushProductResponse;
        try {
            livePushProductRequest.setChannelId(createChannel())
                    .setProductId(super.getChannelProductId(createChannel()));
            livePushProductResponse = new LiveChannelProductServiceImpl().pushChannelProduct(livePushProductRequest);
            Assert.assertTrue(livePushProductResponse);
            if (livePushProductResponse) {
                //to do something ......
                log.debug("测试推送频道商品库商品成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

productId

true

Integer

商品productId

返回对象描述

true为推送成功,false为推送失败


8、修改频道商品库列表顺序

描述

修改商品库商品列表顺序
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/sort

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、排序在第一位不能上移操作,最后一位不能下移

单元测试

	@Test
	public void testSortChannelProduct() throws IOException, NoSuchAlgorithmException {
        LiveSortChannelProductRequest liveSortChannelProductRequest = new LiveSortChannelProductRequest();
        Boolean liveSortChannelProductResponse;
        try {
            liveSortChannelProductRequest.setChannelId(createChannel())
                    .setProductId(super.getChannelProductId(createChannel()))
                    .setType(20);
            liveSortChannelProductResponse = new LiveChannelProductServiceImpl().sortChannelProduct(
                    liveSortChannelProductRequest);
            Assert.assertTrue(liveSortChannelProductResponse);
            if (liveSortChannelProductResponse) {
                //to do something ......
                log.debug("测试修改频道商品库列表顺序成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

productId

true

Integer

商品ID

type

true

Integer

商品上下移动操作,10:上移,20:下移

sort

false

Integer

type为50时必传,移动到的指定位置(范围:1~商品总数)

返回对象描述

true为修改成功,false为修改失败


9、删除频道商品

描述

删除频道商品库商品
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/product/delete

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testDeleteChannelProduct() throws IOException, NoSuchAlgorithmException {
        LiveDeleteChannelProductRequest liveDeleteChannelProductRequest = new LiveDeleteChannelProductRequest();
        Boolean liveDeleteChannelProductResponse;
        try {
            //准备测试数据
            Integer productId = super.getChannelProductId(createChannel());
            liveDeleteChannelProductRequest.setChannelId(createChannel()).setProductId(productId);
            liveDeleteChannelProductResponse = new LiveChannelProductServiceImpl().deleteChannelProduct(
                    liveDeleteChannelProductRequest);
            Assert.assertTrue(liveDeleteChannelProductResponse);
            if (liveDeleteChannelProductResponse) {
                //to do something ......
                log.debug("测试删除频道商品成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }
}

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

频道号

productId

true

Integer

商品ID

返回对象描述

true为删除成功,false为删除失败

Last updated