跳转至

Functions on Objects(对象函数)

Typescript

Assign alerts to analysts in a round-robin fashion

How do I assign a list of objects to another group of objects in a round-robin fashion using Typescript?

This code defines an Ontology edit function that assigns alerts to analysts in a round-robin fashion. It iterates through the alerts and assigns them to analysts by their employee ID, looping back to the first analyst when all analysts have been assigned an alert.

@OntologyEditFunction()
@Edits(Alert)
    public async alertAssignment(alerts: Alert[]>): Promise<void>{
        const analysts = Objects.search().analyst.all();
        const numAnalysts = analysts.length;
        if(numAnalysts === 0){
            return
        }
        let analystIndex = 0;
        for(const alert of alerts)
        {
            const employeeId = analysts.at(analystIndex)!.employeeId;
            alert.assignedTo = employeeId;
            analystIndex += 1;
            if (analystIndex === numAnalysts){
                analystIndex = 0;
            }
        }

    }
  • Date submitted: 2024-04-29
  • Tags: functions on objects, typescript, alert, analyst, round-robin

Get days between timestamps

How do I calculate the number of days between two timestamps in Typescript?

This code defines a function that takes two Timestamp objects as input and returns the number of days between them as an Integer.

import { Function, Integer, Timestamp} from "@foundry/functions-api";


@Function()
    public getDaysBetweenTimestamp(date1: Timestamp, date2: Timestamp): Integer{
            return Math.floor((Math.abs((date1.getTime()-date2.getTime())) / (1000 * 3600 * 24)));
    }
  • Date submitted: 2024-03-26
  • Tags: typescript, functions on objects

中文翻译

对象函数

TypeScript

以轮询方式将警报分配给分析师

如何使用 TypeScript 以轮询(round-robin)方式将一组对象分配给另一组对象?

以下代码定义了一个本体编辑函数(Ontology edit function),该函数以轮询方式将警报分配给分析师。它遍历警报,通过员工 ID 将其分配给分析师,当所有分析师都已分配到一个警报后,会循环回到第一位分析师。

@OntologyEditFunction()
@Edits(Alert)
    public async alertAssignment(alerts: Alert[]>): Promise<void>{
        const analysts = Objects.search().analyst.all();
        const numAnalysts = analysts.length;
        if(numAnalysts === 0){
            return
        }
        let analystIndex = 0;
        for(const alert of alerts)
        {
            const employeeId = analysts.at(analystIndex)!.employeeId;
            alert.assignedTo = employeeId;
            analystIndex += 1;
            if (analystIndex === numAnalysts){
                analystIndex = 0;
            }
        }

    }
  • 提交日期:2024-04-29
  • 标签:对象函数typescript警报分析师轮询

计算时间戳之间的天数

如何使用 TypeScript 计算两个时间戳之间的天数?

以下代码定义了一个函数,该函数接收两个 Timestamp 对象作为输入,并返回它们之间的天数(Integer 类型)。

import { Function, Integer, Timestamp} from "@foundry/functions-api";


@Function()
    public getDaysBetweenTimestamp(date1: Timestamp, date2: Timestamp): Integer{
            return Math.floor((Math.abs((date1.getTime()-date2.getTime())) / (1000 * 3600 * 24)));
    }
  • 提交日期:2024-03-26
  • 标签:typescript对象函数