220 lines
5.7 KiB
Markdown
220 lines
5.7 KiB
Markdown
# 2.2 直播流程改造-域名配置变更的工单改成增量修改
|
||
|
||
NRWLXT-30027
|
||
|
||
## 需求评审
|
||
|
||
## 需求备注
|
||
|
||
√修改引导机制:scheduleType
|
||
|
||
√cname:dnsCname
|
||
|
||
√修改回源host:convergentDomain
|
||
|
||
√httpSelection
|
||
|
||
√configCrt
|
||
|
||
√loopDomain
|
||
|
||
√provinces
|
||
|
||
√sourceProtocol
|
||
|
||
√domainPlain
|
||
|
||
√state
|
||
|
||
√绑定证书生效
|
||
|
||
---
|
||
|
||
关于 cache+ :chargeProcessFlag
|
||
|
||
httpPort
|
||
|
||
httpsPort
|
||
|
||
## 需求开发
|
||
|
||
# 2.3 直播流程改造-直播流程支持退回
|
||
|
||
NRWLXT-30028
|
||
|
||
## 需求评审
|
||
|
||
## 需求备注
|
||
|
||
涉及接口
|
||
|
||
```
|
||
驳回接口:/api/bpm/bpmDrawBack
|
||
|
||
试用单
|
||
试用变更工单
|
||
非首次开通
|
||
域名配置需求
|
||
需求变更工单
|
||
```
|
||
|
||
## 需求开发
|
||
|
||
# 2.5 针对IBS发起的工单支持现网部署验收环节退回
|
||
|
||
NRWLXT-30029
|
||
|
||
## 需求评审
|
||
|
||
1、针对ibs发起的,域名配置需求(新增)、需求变更工单、cache+域名配置工单、Cache+需求变更工单,当bpm现网部署验收环节退回时,ibs直接同步关闭这四种类型的工单。
|
||
|
||
2、与bpm交互10.4章节新增is_acceptance_returned字段,是否现网部署验收环节退回,0:是1:否,为0时表示BPM现网部署验收环节因业务结束回滚调用此接口;其他场景退回不受理BPM传1。
|
||
当bpm传0时,这四种类型的工单直接同步关闭,不再打回给创建人,当bpm传0时,仍保持现有逻辑不变。
|
||
|
||
## 需求备注
|
||
|
||
## 需求开发
|
||
|
||
# 3.5 IBS支持批量域名删除功能
|
||
|
||
NRWLXT-30019
|
||
|
||
## 需求评审
|
||
|
||
1. 文件大小,1w 域名加上备注是 百K 左右。这个地方如果限制加个三五兆是不是比较合适。
|
||
2. 根据导入时间倒序排序,对导入时间一致的不做排序要求。这个东西是不是看客户想删除的是哪一类型的?
|
||
3. 这个功能如果做成持久化,有一些问题。
|
||
1. 客户导入当时可能不处理。但是后期可能存在删除又通过别的企业引入。造成歧义。
|
||
2. 随着时间的增长,这里数据肯定会越来越多。越来越重。
|
||
3. 关于平台不存在的域名是否直接不渲染。或者怎么定期清楚。
|
||
4. 删除操作需进行校验,只允许删除当前客户经理名下企业的域名,不可删除其他。(腾讯的客户经理只能删腾讯的域名,不能删华为的),是否可以放到上传附件的时候,这样有利于数据干净。
|
||
5. 删除最好说清楚域名删除还是记录删除。
|
||
6. 关于 cache+ 和 esop。
|
||
|
||
## 需求备注
|
||
|
||
1. 政企客户经理账号,运营管理一级菜单下新增域名批量删除二级菜单
|
||
|
||
项目是 JDK8
|
||
|
||
在当前 DomainBatchDeletionController 中增加一个批量删除模板下载功能。模板只有一列,第一行第一个单元格是 "域名"此单元格绿色背景(#00B050),第一列前 30 行有框线,文件名称:批量删除域名模板。
|
||
|
||
项目新引入了 D:\MyCode\Work\yd-hy\ibs-portal\cdn-service\src\main\java\com\cmcc\cdn\platform\common\util\EasyExcelUtil.java。
|
||
|
||
实现尽可能优雅,标准,健壮。不需要参考项目其他附件模板下载实现,用你认为最合适的方式。
|
||
|
||
大数据交互接口:
|
||
|
||
```
|
||
http://172.21.16.30:8511
|
||
/analyzer/bandwidth/statistics
|
||
?startTime=2025-06-01T00%3A00%3A00%2B08%3A00 // 开始时间 2025-08-13T02:15:30+08:00
|
||
&endTime=2025-06-30T00%3A00%3A00%2B08%3A00 // 结束时间 2025-08-13T02:15:30+08:00
|
||
&cpIds=9dtzcfhn-o5qam4hr6xvd4hiy // 企业 ID
|
||
&productId=2 // 产品 ID ProductsEnums
|
||
&domainNames=xcftestf.052025030501.com // 域名
|
||
&areas=all // 默认 all
|
||
&isps=all // 默认 all
|
||
&ipProtocol=all // 默认 all
|
||
&seconds=86400 // 天粒度都是这个
|
||
&provider=1 // 所有就是这个四个平面自动转换
|
||
&provider=2
|
||
&provider=3
|
||
&provider=crs-4
|
||
&provider=8
|
||
|
||
|
||
[
|
||
{
|
||
"domain": "baidu.com",
|
||
"peakBandwidth": "123456789.12",
|
||
"peakTime": "20250813100132"
|
||
},
|
||
{
|
||
"domain": "baid.com",
|
||
"peakBandwidth": "123456789.12",
|
||
"peakTime": "20250813100132"
|
||
}
|
||
]
|
||
|
||
|
||
|
||
public class PeakBandwidthRequest {
|
||
private String startTime; // 格式: "2025-06-01T00:00:00+08:00"
|
||
private String endTime; // 格式: "2025-06-30T00:00:00+08:00"
|
||
private String cpIds; // 例如: "9dtzcfhn-o5qam4hr6xvd4hiy"
|
||
private Integer productId; // 产品ID (如2)
|
||
private List<String> domainNames; // 域名列表 (最多100个)
|
||
private String areas = "all"; // 默认"all"
|
||
private String isps = "all"; // 默认"all"
|
||
private String ipProtocol = "all"; // 默认"all"
|
||
private Integer seconds = 86400; // 默认86400(天粒度)
|
||
private List<String> providers; // 值示例: ["1","2","3","crs-4","8"]
|
||
}
|
||
|
||
```
|
||
|
||
```
|
||
批量删除-点播
|
||
/configManage/batch/operate
|
||
{
|
||
"domainIds": [
|
||
35349,
|
||
35351
|
||
],
|
||
"operate": "DELETE"
|
||
}
|
||
|
||
批量删除-直播
|
||
/live/order/batchDelete
|
||
{
|
||
"domainIds": [
|
||
34490,
|
||
34496
|
||
],
|
||
"operate": "DELETE"
|
||
}
|
||
|
||
停用-直播
|
||
/live/order/disable
|
||
```
|
||
|
||
遗留代码
|
||
|
||
```
|
||
/**
|
||
* 根据域名ID列表查询域名基本信息(ID、域名名称、产品ID)
|
||
*
|
||
* @param domainIds 域名ID列表
|
||
* @return 域名基本信息列表
|
||
*/
|
||
@Query("SELECT new com.cmcc.cdn.platform.selfservice.entity.jpa.DomainBasicInfoDTO("
|
||
+ "ssdc.id, "
|
||
+ "ssdc.domain, "
|
||
+ "ssdc.product) "
|
||
+ "FROM SelfServiceDomainConfigPO ssdc "
|
||
+ "WHERE ssdc.id IN :domainIds")
|
||
List<DomainBasicInfoDTO> findDomainIdProductIdByIds(@Param("domainIds") List<Long> domainIds);
|
||
|
||
|
||
/**
|
||
* 域名基本信息 DTO 类。
|
||
*/
|
||
@Getter
|
||
@AllArgsConstructor
|
||
public class DomainBasicInfoDTO
|
||
implements Serializable {
|
||
|
||
private final Long id;
|
||
private final String domain;
|
||
private final ProductsEnums product;
|
||
|
||
}
|
||
```
|
||
|
||
## 需求开发
|
||
|
||
# 用例评审
|
||
|
||
# 冒烟自测
|