任务列表

  • 客户根据注册资本自动带出公司规模等 task 深瑞 逻辑调整 @处理中 🔼 📅 2025-10-18 ✅ 2025-10-21

需求描述

原始需求

【需求】经集团聂祥总确认,CRM“客户”对象,“业务类型”=国内客户,做以下几点调整

1、公司规模系统依据以下条件自动判断:
(1)特大企业:注册资本>10亿
(2)大型企业:1亿≤注册资本<10亿
(3)中小型企业:1千万≤注册资本<1亿
(4)小型企业:注册资本<1千万

2、定位字段取消必填

需求增补(需求确认)

IT执行

执行方案概述

注册资本、税号等字段由系统内部固有功能工商信息级联带出,不会触发UI事件,因此UI事件挂载在公司性质上

新建UI事件,目标字段:注册资本、公司性质

/**
 * 根据  客户名称查询注册资本  赋值  公司规模
 * 注册资本有两种格式,一种是“100万人民币”,一种是“100”
 */
String recordType = context.data.record_type as String
String createAmount = context.data.field_941Sf__c as String ?: "none"
String companySize = "" //公司规模
if(triggerField == "company_nature__c" || triggerField == "field_941Sf__c"){
    if(recordType == "default__c"){
        log.info("注册资本: " + createAmount)
        // 找到“万人民币”在字符串中的位置
        def index = createAmount.indexOf("万")
        log.info("index: " + index)
        BigDecimal amount = 0
        // 截取数字部分
        if(index != -1){  //包含“万”字
            def numericString = createAmount.substring(0, index)
            log.info("截取后文本  金额: " + numericString)
            // 将数字字符串转换为 double
            def numericPart = numericString as BigDecimal //单位是万元
            // 将“万”转换为实际金额
            if(numericPart){
                amount = numericPart * 10000
                log.info("转换后金额: " + amount)
            }
        }else{ //不符合“万”字格式
            //判断注册资本是否为纯数字
            if(createAmount.isNumber()){
                amount = (createAmount as BigDecimal) * 10000
                log.info("注册资本为纯数字,金额: " + amount)
            }
        }
        if (amount >= 1000000000) {
            companySize = "GSGM01SYS"
        } else if (amount >= 100000000) {
            companySize = "GSGM02SYS"
        } else if (amount >= 10000000) {
            companySize = "GSGM03SYS"
        } else if (amount > 0) {
            companySize = "GSGM04SYS"
        } else {
            companySize = "other"
        }
    }
}

时间队列