跳转至

扩展函数库

本文档内容来源于 http://doc.myapps.cn/docs/common-script/common-script-1f1a4c3t5ndk8

脚本说明

扩展函数库是MyApps平台提供的扩展函数集合,用于增强脚本功能。可以通过include指令引入扩展函数库,然后在脚本中使用这些函数。

常见实现方式

方式1:引入扩展函数库

#include "扩展函数库名称";

(function(){
    // 使用扩展函数库中的函数
    var result = 扩展函数名(参数);

    return result;
})();

方式2:使用数据字典扩展函数

#include "数据字典";

(function(){
    var dictValue = "字典值";
    var dictName = getDictName(dictValue);

    return dictName;
})();

方式3:使用系统函数扩展

#include "系统函数";

(function(){
    var userId = "用户ID";
    var userName = getUserNameById(userId);

    return userName;
})();

方式4:使用业务函数扩展

#include "业务函数";

(function(){
    var businessData = getBusinessData("业务类型");

    return businessData;
})();

扩展示例

示例1:使用扩展函数获取字典名称

#include "数据字典";

(function(){
    var dictCode = "DICT001";
    var dictName = getDictNameByCode(dictCode);

    return dictName;
})();

示例2:使用扩展函数格式化数据

#include "格式化函数";

(function(){
    var amount = 1234.56;
    var formattedAmount = formatAmount(amount);

    return formattedAmount;  // 输出: 1,234.56
})();

示例3:使用扩展函数进行数据验证

#include "验证函数";

(function(){
    var email = "test@example.com";
    var isValid = validateEmail(email);

    if(isValid){
        return "邮箱格式正确";
    }else{
        return "邮箱格式错误";
    }
})();

示例4:使用扩展函数进行数据转换

#include "转换函数";

(function(){
    var dateStr = "2024-01-01";
    var dateObj = parseDate(dateStr);
    var formattedDate = formatDate(dateObj, "yyyy年MM月dd日");

    return formattedDate;
})();

示例5:使用扩展函数进行加密解密

#include "加密函数";

(function(){
    var plainText = "原始文本";
    var encrypted = encrypt(plainText);
    var decrypted = decrypt(encrypted);

    return "加密: " + encrypted + ", 解密: " + decrypted;
})();

示例6:使用扩展函数进行HTTP请求

#include "HTTP函数";

(function(){
    var url = "http://api.example.com/data";
    var response = httpGet(url);
    var result = JSON.parse(response);

    return result;
})();

示例7:使用扩展函数进行文件操作

#include "文件函数";

(function(){
    var filePath = "/path/to/file.txt";
    var content = readFile(filePath);
    var lines = content.split("\n");

    return "文件行数: " + lines.length;
})();

示例8:使用扩展函数进行日志记录

#include "日志函数";

(function(){
    var message = "操作日志";
    logInfo(message);
    logError("错误信息");
    logDebug("调试信息");

    return "日志已记录";
})();

示例9:使用扩展函数进行缓存操作

#include "缓存函数";

(function(){
    var key = "cache_key";
    var value = "cache_value";

    // 设置缓存
    setCache(key, value, 3600);  // 缓存1小时

    // 获取缓存
    var cachedValue = getCache(key);

    return cachedValue;
})();

示例10:使用扩展函数进行字符串处理

#include "字符串函数";

(function(){
    var str = "  Hello World  ";
    var trimmed = trim(str);
    var upper = toUpperCase(str);
    var lower = toLowerCase(str);

    return "原字符串: " + str + "\n" +
           "去空格: " + trimmed + "\n" +
           "大写: " + upper + "\n" +
           "小写: " + lower;
})();

示例11:使用扩展函数进行数组操作

#include "数组函数";

(function(){
    var arr = ["值1", "值2", "值3"];
    var joined = arrayJoin(arr, ";");
    var reversed = arrayReverse(arr);
    var unique = arrayUnique(arr);

    return "连接: " + joined + "\n" +
           "反转: " + reversed.join(",") + "\n" +
           "去重: " + unique.join(",");
})();

示例12:使用扩展函数进行数学计算

#include "数学函数";

(function(){
    var numbers = [1, 2, 3, 4, 5];
    var sum = arraySum(numbers);
    var avg = arrayAverage(numbers);
    var max = arrayMax(numbers);
    var min = arrayMin(numbers);

    return "和: " + sum + ", 平均: " + avg + ", 最大: " + max + ", 最小: " + min;
})();

常用扩展函数库

数据字典函数库

#include "数据字典";

// 常用函数:
// getDictName(dictValue) - 根据字典值获取字典名称
// getDictCode(dictName) - 根据字典名称获取字典代码
// getDictList(dictType) - 获取字典列表

系统函数库

#include "系统函数";

// 常用函数:
// getUserNameById(userId) - 根据用户ID获取用户名称
// getDepartmentNameById(deptId) - 根据部门ID获取部门名称
// getRoleNameById(roleId) - 根据角色ID获取角色名称

格式化函数库

#include "格式化函数";

// 常用函数:
// formatAmount(amount) - 格式化金额
// formatDate(date, format) - 格式化日期
// formatNumber(number, decimals) - 格式化数字

验证函数库

#include "验证函数";

// 常用函数:
// validateEmail(email) - 验证邮箱
// validatePhone(phone) - 验证手机号
// validateIdCard(idCard) - 验证身份证

关键函数说明

  • #include "函数库名称": 引入扩展函数库
  • 扩展函数库中的函数可以直接调用
  • 函数库名称需要与平台配置的函数库名称一致

扩展函数库说明

引入方式

#include "函数库名称";

使用方式

引入函数库后,可以直接调用函数库中的函数,无需前缀。

函数库类型

  • 数据字典函数库: 处理数据字典相关操作
  • 系统函数库: 处理系统对象相关操作
  • 格式化函数库: 处理数据格式化
  • 验证函数库: 处理数据验证
  • 业务函数库: 处理业务逻辑
  • 工具函数库: 提供通用工具函数

注意事项

  • ⚠️ 函数库名称: 确保函数库名称正确,区分大小写
  • ⚠️ 函数库存在性: 确保函数库已配置且可用
  • ⚠️ 函数名称: 确保调用的函数名称正确
  • ⚠️ 参数类型: 注意函数参数的类型和数量
  • ⚠️ 返回值: 注意函数的返回值类型
  • ⚠️ 错误处理: 建议添加错误处理,函数可能不存在或执行失败
  • 扩展函数库需要在平台中预先配置
  • 使用#include引入函数库后,函数库中的函数可以直接调用
  • 建议查阅平台文档了解可用的扩展函数库

使用场景

  • 数据字典操作
  • 系统对象操作
  • 数据格式化
  • 数据验证
  • 业务逻辑处理
  • 通用工具函数

如需查看完整脚本代码,请访问源文档链接。