【SDP OP】申请资产的服务单过批后将所申请的资产自动分配给请求人

【SDP OP】申请资产的服务单过批后将所申请的资产自动分配给请求人

首先用户需要购买服务目录功能,下面是配置过程

1. 编辑服务模板,在模板上新建一个选择列表类型字段,并参考实体“Asset” 设置条件位“资产状态为In Store” 目的是过滤出在库状态资产



2. 为服务模板设置至少一级审批流

3.到后台“管理--开发者空间--自定义函数” 创建自定义函数如下,请将下面标红部分的信息用您实际环境中的值替换。
configuration = {
"technicianKey" :"2E93AD97-4BCC-4E2C-A8A7-57645C52061"
};
pickList_Field="udf_pick_10963";
if(requestObj.get("udf_fields").get(pickList_Field).isNull() || requestObj.get("udf_fields").get("udf_fields").get(pickList_Field).equalsIgnoreCase("null")){ 
return {"result":"Success", "message": "No Asset Selected"};
} else {
assetID = requestObj.get("udf_fields").get(pickList_Field).get("id");
inputData = {"asset":{
"state":{"name":"In Use"},
"user":{"id":requestObj.get("requester").get("id")}
}
};
response = invokeurl
    [
    url: configuration.get("url")+"/api/v3/assets/"+assetID
    type: PUT
    parameters: {"input_data":inputData}
headers: {"authtoken":configuration.get("technicianKey"),"portalid":context.get("instance").get("id")}
    ];
if(response.containsKey("asset")){
return {"result":"success","message":"Asset Updated!"};
} else {
return {"result":"failure","message":response.get("response_status")};
}
}
return {"result":"Success","message":"No Action Performed!"};


4. 到后台“设置--自动化--触发器” 创建如下触发器, 当然条件除了工单审批通过以外可以添加其它条件例如应用的工单模板等,动作选择步骤3创建出来的自定义函数


5. 测试创建工单,给出资产,并通过审批,结果选中的资产自动指派给了工单请求人





The end