/*
** ${CLASS:enoECMChangeRequest}
**
** Copyright (c) 1993-2020 Dassault Systemes. All Rights Reserved.
*/
import com.dassault_systemes.enovia.enterprisechangemgt.common.ChangeConstants;
import com.matrixone.apps.domain.DomainObject;
import com.matrixone.apps.domain.util.MapList;
import com.matrixone.apps.domain.util.MqlUtil;
import com.matrixone.apps.domain.util.PersonUtil;
import matrix.db.Context;
import matrix.util.StringList;
import java.util.*;
/**
* The enoECMChangeOrder
class contains code for the "Change Order" business type.
*
* @version ECM R215 - # Copyright (c) 1992-2020 Dassault Systemes.
*/
public class enoECMChangeRequest_mxJPO extends enoECMChangeRequestBase_mxJPO
{
/**
* Constructor.
*
* @param context the eMatrix Context
object.
* @param args holds no arguments.
* @throws Exception if the operation fails.
* @since ECM R215.
*/
public enoECMChangeRequest_mxJPO (Context context, String[] args) throws Exception {
super(context, args);
}
public MapList getMyChangeRequests(Context context, String args[]) throws Exception{
MapList objList = new MapList();
String user = context.getUser();
if(user != null && user.equals("admin_platform")){
String getCRValue = "temp query bus 'Change Request' * * select id dump |";
String crInfo = MqlUtil.mqlCommand(context, getCRValue);
System.out.println("123=====>"+getCRValue);
String[] split = crInfo.split("\\n");
if(split.length - 1 != 0)
{
for (String value : split) {
String[] crDetail = value.split("\\|");
String objId = crDetail[3];
Map map =new HashMap();
map.put("id",objId);
objList.add(map);
}
return objList;
}
}
try{
System.out.println(" inside getMyChangeRequests " );
String objectId = PersonUtil.getPersonObjectID(context);
StringList strCROwned = (StringList)getOwnedCR(context, args);
StringList sRouteCR = getRouteTaskAssignedCRs(context, objectId);
StringList sRouteTemplateCR = getRouteTemplateAssignedCRs(context, objectId);
Set hs = new HashSet();
hs.addAll(strCROwned);
hs.addAll(sRouteCR);
hs.addAll(sRouteTemplateCR);
String[] args1 = new String[hs.size()];
int i=0;
for(String s : hs )
{
args1[i++] = s;
}
StringList objectSelects = new StringList();
objectSelects.add(ChangeConstants.SELECT_ID);
objectSelects.add(ChangeConstants.SELECT_POLICY);
DomainObject domObj = new DomainObject(objectId);
MapList crListwithPolicyInfo = domObj.getInfo(context, args1 , objectSelects);
Iterator itr = crListwithPolicyInfo.iterator();
String id = "";
while(itr.hasNext()){
Map eachCR = (Map)itr.next();
String policy = (String) eachCR.get(SELECT_POLICY);
System.out.println(" policy " + policy);
if(!"".equalsIgnoreCase(policy) && policy.equalsIgnoreCase(ChangeConstants.POLICY_REQUEST_FOR_CHANGE))
objList.add(eachCR);
}
if(objList.size()!=0)
return objList;
else
return new MapList();
}catch (Exception e) {
throw e;
}
}
}