Files
notes/work/移动杭研/开发记录/7.4.0/开发笔记.md
T
2026-03-01 01:43:46 +08:00

9.5 KiB
Raw Blame History

2.1 试用工单优化 - 同类型试用工单逻辑变更(P0)

需求背景 针对试用工单流程存在的问题,计划建议 CDN 平台与 BOSS 的信息同步机制,CDN 平台和 BOSS 基于同步的信息判断各试用阶段可以进行的操作、限制等。本期做新增试用单状态接口及同类型试用工单逻辑变更。

具体描述

  1. 分发范围(==产品类型。==)相同且业务类型相同的试用工单,视为“同类型”,其中网内和三网视为同一种分发范围。该条件在集客大厅侧进行限制,IBS 不对同一企业同一产品的试用次数进行限制。
  2. 企业开户时序调整,当 ibs 接到集客大厅试用工单并校验通过后,创建相关企业信息。在流程中的试用单做开户的数据割接。(开户所用到的手机号、邮箱等信息若校验失败,先做拒收处理,待二期做退单处理)。企业信息以第一次为准。第一次试用驳回删除企业信息。下发业务适配单带 CPID,跟 bpm 联调。
  3. 同一客户每种产品的同一种业务类型(以下简称“同一类型”)最多只能有 1 个在途试用工单。同一类型的试用工单转正式商用后,则此类型试用在途工单归 0。此时如因客户业务/计费需要,需开通新的订购将独立计费,则同一类型方可再发起新一次的试用以验证业务功能,但仍需保持同一类型最多只能有 1 个在途试用工单。该判定逻辑放在集客大厅,IBS 不限制试用单数量,集客大厅给工单接受即可。
  4. 每次发起的试用工单相互独立(独立的 ProductID),分别计算试用时长和累计流量。可以针对试用单进行多次变更,变更工单与试用工单共用一个 ProductID,基于试用的多次试用变更视为同 1 次试用。其中域名为增量变更,时长和累计流量为全量变更,多次变更的工单试用时长和试用流量取变更单中的最大值。若遇到 22 年之前试用单无订购 ID 信息的报错处理,线上若出问题时通过后台补订购 ID 规避处理。
  5. 后端企业与产品订购表结构修改,同一产品下支持多个订购。企业管理页面调整详见 3.6 章节。
  6. 试用工单转商后就不能再进行试用相关操作。如:试用暂停/恢复、变更、删除。若接到集客大厅对该试用单进行操作,本期做拒收处理,下期做退单处理。

需求评审

  1. 注意取消开户失败邮件。(开户时成功发成功,失败发失败)
  2. 停启用删除下发 CpId 问题。
  3. 驳回的时候如何确认的企业是否是第一次试用逻辑。
  4. 处理试用单前置校验。
  5. 接口创单校验。
  6. 试用变更单验收无对应试用单要报错。

测试提问:

需求备注

需求开发

  1. 创单开户校验。(已完成,使用历史手机号、邮箱校验格式。)
  2. 下发 BPM 携带 CpId,目前逻辑已支持。(已完成,注意测试及联调 BPM 接收情况。)
  3. 开户:异步开户。(已完成)
  4. 阶段反馈逻辑缩减。(已完成。)
  5. 开户失败是不是要处理受理按钮呀。(沿用验收反馈限制。)
  6. 开户成功和成功发送邮件范围确认。(原开户成功和失败会发送给运营经理,现在无法发送。已同步产品。不发运营经理、失败发刘霞等抄送)
  7. 处理试用单前置校验。
  8. 接口创单校验。
  9. 试用变更单验收无对应试用单要报错。
  10. 验收反馈:补充 productChargeModeDao (改)数据,存在性补充。
  11. 验收反馈:productChargeModeDao 改为试用中。创单设置为 配置中
  12. 开户逻辑异常重试,及数据割接接口。(沿用之前的运营经理点击配置按钮,待验证。)
  13. 驳回的时候如何确认的企业是否是第一次试用逻辑。(ecId 下其他试用单,改判断条件)

这段代码的核心逻辑可以总结为以下步骤:

  1. 从数据库中获取相关信息

    • 通过 orderInfo.getEcId()productIdInfoDaopreOrderDao 中分别获取企业客户的 ProductIdInfo 列表和 PreOrderInfo 列表。
  2. 过滤和映射预订单号

    • preOrders 中的每个元素,过滤掉与当前 orderNum 相同的订单号,并提取剩下的订单号集合。
  3. testOrderDao 获取测试订单

    • 使用过滤后的订单号列表以及企业配置状态 EnterpriseConfigEnum.CONFIGSUCCESS.getCode() 作为条件,从 testOrderDao 中获取符合条件的 TestOrderInfo 列表。
    • 进一步过滤这些 TestOrderInfo,确保它们的 TestType 与当前 testOrderInfoTestType 一致。
  4. 判断测试订单列表是否为空

    • 使用 CommonUtil.listIsNullOrSizeEqualZero 检查 testOrders 列表是否为空。
    • 如果为空,表示这是企业客户的首次试用,执行同步删除企业信息的操作,并记录日志。

总结:

  • 该逻辑通过客户 ID 获取多个相关信息,对其中部分信息进行过滤和映射,最终判断是否是企业客户的首次试用。若是首次试用,执行特定操作。

2.4 与 BPM 下发的域名删除任务中增加运营经理信息(P0)

1、当客户点击删除按钮时,触发的域名删除任务(域名删除、cache+ 域名删除),下发给 BPM 的字段内容增加运营经理信息。如果 bpm 不传 sa 信息,需补充运营经理字段信息。

2、与 BPM 接口交互中,当 9.1.2 章节 task_second_class 字段为 2 和 7 时,user_id 为必填字段。

3、去除原有的限制条件:“任务二级分类”为域名删除且“派发 BPM 工单方式”为到期自动触发时,IBS 必须传此字段,BPM 用于给对应运营经理发起 IBS 通用运维待办工单(用于进行域名删除审核)。

4、同步支持直播域名的删除。

9.1.2 章节 task_second_class 字段 cache+:停用 8 启用 10 删除 7 esop/移动云 :停用 3 启用 4 删除 2

Esop 取值顺序:

  1. BPM 回传值;
  2. 企业省份的 SA;(取第一个。)
  3. 保底配置项 GLOBAL_AREA_MANAGER_ID。

Cache+ 取值规则:

  1. 省侧:区域经理;(随机一个。)
  2. 集团:企业对应运营经理;(取第一个。)
  3. 保底配置项 GLOBAL_AREA_MANAGER_ID

关于配置项:GLOBAL_AREA_MANAGER_ID(目前现网配置的 徐娜 id:1649 角色为运营经理)

“任务二级分类”为 2、3、4、7、8、10 时此字段为必填。

需求评审

需求备注

  1. 更新接口文档。
  2. 是否只有域名删除,停启用?(更新需求文档。)
  3. cache+ 的兜底是否也设置一个徐娜。
  4. cache+ 的集团侧逻辑方案(1. 企业对应的运营经理。2. 直接兜底。)

9.1.2 章节 task_second_class 字段为 2(域名删除) 和 7(cache+ 域名删除) 时,user_id 为必填字段。

同步支持直播域名的删除。

cache+:停用 8 启用 10 删除 7

esop/移动云 :停用 3 启用 4 删除 2

需求开发

用例评审

冒烟自测

删除定制化域名 - 点播 -ESOP(试用单引入)

这一步,点击删除按钮 后会有提示框,需点击确认后观察日志。

验证点中:日志展示这个会严格比对字符吗?

现在日志打的是:点播域名操作下发 BPM

有个空格,我怕你们用用例的字眼去筛选日志筛选不到。

解除试用次数限制 - 同一企业、业务类型、产品类型

前提中:

产品类型:移动网内 CDN

浙江省份企业首次订购试用单(退回)- 验证下发业务适

前提中直接就是

1.浙江企业:测试企业,首次提交试用单

已存在 怪怪的本来就是首次。

最后一步,这个页面不能通过 cpid 查企业。

试用变更单(新增域名 - 点播):试用 - 变更时长 - 变更

前提中、六、七、十、十一、十二 的 产品类型:移动网内 CDN

第四步:4.阶段反馈决策通过,刷新页面,IBS 页面弹出 6 项配置项

“刷新页面”建议改为“重新进入工单页面”刷新页面会直接回到工单列表。

第五步:5.调用验收反馈接口,验收反馈通过

接口和报文粘贴的是阶段反馈

第五步:验证点 工单状态 已完成

第九步:验证点 工单状态 已完成


第五步:

去掉端口。

第六、七、十、十一、十二步,验证点都有两个域名,我看着最后一个是可以的,中间那个看看可以删了。

这用例算是走不完了。 哈哈。

第六步:

第七步:

重复了。留最后一个就行。

第十步:

留最后一个就行。

第十一步:

第十二步:

流程备注

商机与试用订单号:0927_0937_20

第一次变更单:0927_0941_04