You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
198 lines
9.1 KiB
Java
198 lines
9.1 KiB
Java
import com.matrixone.apps.cpd.json.JSONObject;
|
|
import com.matrixone.apps.domain.DomainObject;
|
|
import com.matrixone.apps.domain.util.EnoviaResourceBundle;
|
|
import com.matrixone.apps.domain.util.MqlUtil;
|
|
import com.matrixone.apps.domain.util.PropertyUtil;
|
|
import matrix.db.Context;
|
|
import matrix.db.JPO;
|
|
import matrix.util.StringList;
|
|
|
|
import java.util.*;
|
|
|
|
public class TMLProjectSpace_mxJPO {
|
|
public String getProjectCategory(Context context, String[] args) throws Exception {
|
|
|
|
StringBuffer htmlString = new StringBuffer();
|
|
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
HashMap fieldMap = (HashMap) programMap.get("fieldMap");
|
|
String attNameStr = (String) fieldMap.get("name");
|
|
HashMap requestMap = (HashMap) programMap.get("requestMap");
|
|
System.out.println("11111");
|
|
System.out.println(requestMap);
|
|
if (requestMap.containsKey("mode")) {
|
|
htmlString.append("<script type=\"text/javascript\" src=\"../SxCentral/js/getProjectSpaceInfo.js\"></script>");
|
|
htmlString.append("<script type=\"text/javascript\" src=\"../SxCentral/js/jquery.js\"></script>");
|
|
|
|
Map settings = (Map) fieldMap.get("settings");
|
|
String AttributelinkSpecificType = (String) settings.get("AttributelinkSpecificType"); //SpecificType
|
|
String attNameAdmin = (String) settings.get("Admin Type"); //attribute_ProjectCategory
|
|
String attName = PropertyUtil.getSchemaProperty(context, attNameAdmin);
|
|
htmlString.append("<select id='" + attNameStr + "' name='" + attNameStr + "' onchange=\"javascript=insertSpecificType(this,'" + AttributelinkSpecificType + "');\"><option value=''></option>");
|
|
|
|
String attRangeMql = "print att " + attName + " select range dump |";
|
|
String resultAttRange = MqlUtil.mqlCommand(context, attRangeMql);
|
|
|
|
String newAttRange = resultAttRange.replaceAll("=", "");
|
|
String[] arrRange = newAttRange.split("\\|");
|
|
|
|
for (int i = 0; i < arrRange.length; i++) {
|
|
String proeprties = EnoviaResourceBundle.getProperty(context, "emxFrameworkStringResource", new Locale("zh_CN"), "emxFramework.Range." + attName + "." + arrRange[i].trim().replace(" ", "_"));
|
|
htmlString.append("<option value='" + arrRange[i].trim() + "'>" +proeprties + "</option>");
|
|
}
|
|
htmlString.append("</select>");
|
|
}
|
|
System.out.println(htmlString);
|
|
return htmlString.toString();
|
|
}
|
|
|
|
public String getSpecificType(Context context, String[] args){
|
|
String ProjectCategory = args[0];
|
|
System.out.println("======>");
|
|
System.out.println(ProjectCategory);
|
|
|
|
|
|
List<JSONObject> list = new ArrayList<>();
|
|
String ClassificationInfo = EnoviaResourceBundle.getProperty(context, "emxSxCentralStringResource", context.getLocale(), ProjectCategory);
|
|
try {
|
|
System.out.println("Test" + ClassificationInfo);
|
|
String[] classification = ClassificationInfo.split(" ");
|
|
|
|
for(int i = 0; i < classification.length; i++){
|
|
JSONObject json=new JSONObject();
|
|
System.out.println(classification[i]);
|
|
//emxSxCentral.Label.LogisticsSpecialist
|
|
if(!classification[i].equals("NA")) {
|
|
String SpecificType = EnoviaResourceBundle.getProperty(context, "emxSxCentralStringResource", context.getLocale(),
|
|
"emxSxCentral.Label." + classification[i]);
|
|
json.put("name",classification[i]);
|
|
json.put("value", SpecificType);
|
|
} else {
|
|
json.put("name",classification[i]);
|
|
json.put("value", classification[i]);
|
|
}
|
|
list.add(json);
|
|
}
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
System.out.println(list.toString());
|
|
return list.toString();
|
|
}
|
|
|
|
public String getSpecificTypeJSONInfo(Context context, String[] args) throws Exception {
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
|
|
Map fieldMap = (Map) programMap.get("fieldMap");
|
|
HashMap requestMap = (HashMap)programMap.get("requestMap");
|
|
|
|
String attNameStr = (String) fieldMap.get("name");
|
|
System.out.println("1111==>" + attNameStr);
|
|
StringBuffer htmlString=new StringBuffer();
|
|
|
|
// if(!requestMap.containsKey("mode"))
|
|
// {
|
|
htmlString.append("<select id='"+attNameStr+"' name='"+attNameStr+"'><option value=''></option></select>");
|
|
// }
|
|
|
|
return htmlString.toString();
|
|
}
|
|
|
|
public String ProjectLevelInfo(Context context, String[] args) throws Exception {
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
|
|
Map fieldMap = (Map) programMap.get("fieldMap");
|
|
HashMap requestMap = (HashMap)programMap.get("requestMap");
|
|
|
|
String attNameStr = (String) fieldMap.get("name");
|
|
System.out.println("1111==>" + attNameStr);
|
|
StringBuffer htmlString=new StringBuffer();
|
|
|
|
// if(!requestMap.containsKey("mode"))
|
|
// {
|
|
htmlString.append("<select id='"+attNameStr+"' name='"+attNameStr+"'><option value=''></option></select>");
|
|
// }
|
|
|
|
return htmlString.toString();
|
|
}
|
|
|
|
public void updateProjectCategory(Context context, String[] args) throws Exception {
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
|
|
Map paramMap = (Map) programMap.get("paramMap");
|
|
Map fieldMap = (Map) programMap.get("fieldMap");
|
|
Map settings = (Map) fieldMap.get("settings");
|
|
|
|
String attNameStr = (String) settings.get("Admin Type");
|
|
String attName = PropertyUtil.getSchemaProperty(context,attNameStr);
|
|
String NewValue = (String) paramMap.get("New Value");
|
|
System.out.println("NewValue ==> " + NewValue);
|
|
String objectId = (String) paramMap.get("objectId");
|
|
|
|
DomainObject domainObject = new DomainObject(objectId);
|
|
domainObject.setAttributeValue(context, "ProjectCategory", NewValue);
|
|
}
|
|
|
|
public void updateSpecificType(Context context, String[] args) throws Exception {
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
|
|
Map paramMap = (Map) programMap.get("paramMap");
|
|
Map fieldMap = (Map) programMap.get("fieldMap");
|
|
Map settings = (Map) fieldMap.get("settings");
|
|
|
|
String attNameStr = (String) settings.get("Admin Type");
|
|
String attName = PropertyUtil.getSchemaProperty(context,attNameStr);
|
|
String NewValue = (String) paramMap.get("New Value");
|
|
String objectId = (String) paramMap.get("objectId");
|
|
System.out.println(objectId);
|
|
|
|
DomainObject domainObject = new DomainObject(objectId);
|
|
domainObject.setAttributeValue(context, "SpecificType", NewValue);
|
|
}
|
|
|
|
public void updateProjectLevel(Context context, String[] args) throws Exception {
|
|
HashMap programMap = (HashMap) JPO.unpackArgs(args);
|
|
|
|
Map paramMap = (Map) programMap.get("paramMap");
|
|
Map fieldMap = (Map) programMap.get("fieldMap");
|
|
Map settings = (Map) fieldMap.get("settings");
|
|
|
|
String attNameStr = (String) settings.get("Admin Type");
|
|
String attName = PropertyUtil.getSchemaProperty(context,attNameStr);
|
|
String NewValue = (String) paramMap.get("New Value");
|
|
String objectId = (String) paramMap.get("objectId");
|
|
System.out.println(objectId);
|
|
|
|
DomainObject domainObject = new DomainObject(objectId);
|
|
domainObject.setAttributeValue(context, "ProjectLevel", NewValue);
|
|
}
|
|
|
|
|
|
public StringList getProjectSpecificClassification(Context context, String[] args) throws Exception {
|
|
HashMap hashMap=(HashMap) JPO.unpackArgs(args);
|
|
List list=(List) hashMap.get("objectList");
|
|
System.out.println("========");
|
|
System.out.println(list);
|
|
StringList stringList = new StringList();
|
|
for (int i = 0; i < list.size(); i++) {
|
|
Map itemMap = (Map) list.get(i);
|
|
String itemId = (String) itemMap.get("id");
|
|
|
|
String getAttrInfo = "print bus " + itemId + " select attribute[ProjectCategory].value attribute[SpecificType].value dump |";
|
|
String attrInfo = MqlUtil.mqlCommand(context, getAttrInfo);
|
|
System.out.println(attrInfo);
|
|
if(attrInfo.length() <= 1){
|
|
stringList.add("NAN");
|
|
} else {
|
|
String[] projectSpaceAttr = attrInfo.split("\\|");
|
|
String SpecificType1 = EnoviaResourceBundle.getProperty(context, "emxFrameworkStringResource", context.getLocale(),
|
|
"emxFramework.Range.ProjectCategory." + projectSpaceAttr[0]);
|
|
String SpecificType2 = EnoviaResourceBundle.getProperty(context, "emxSxCentralStringResource", context.getLocale(),
|
|
"emxSxCentral.Label." + projectSpaceAttr[1]);
|
|
stringList.add(SpecificType1 + "-" + SpecificType2);
|
|
}
|
|
}
|
|
return stringList;
|
|
}
|
|
}
|