ludc
2025-01-16 986aa62ed00bee39363bab41b4eeb8259d446efd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package com.vci.client.portal.custom;
 
import java.util.Iterator;
import java.util.List;
import java.util.Map;
 
import com.vci.client.bof.ClientBusinessObjectOperation;
import com.vci.client.portal.utility.PRMItem;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.data.AttributeValue;
 
public class CustomFolderDepartmentSqlCol implements ICustomDefine {
 
    @Override
    public void getCustomValue(String columnName, Map<String, PRMItem> prmMap, List<Map<String, String>> cols) throws VCIError {
        Iterator<Map<String, String>> itor = cols.iterator();
        PRMItem prm = prmMap.get(columnName);
        String sql = prm.getItemAddFilter();
        ClientBusinessObjectOperation bofactory = new ClientBusinessObjectOperation();
        while (itor.hasNext()) {
            Map<String, String> map = itor.next();
            String f_nameoid = map.get("f_nameoid");
            f_nameoid = "'" + f_nameoid + "'";
            String csql = sql.replaceAll(":f_nameoid", f_nameoid);
            String t_nameoid = map.get("t_nameoid");
            t_nameoid = "'" + t_nameoid + "'";
            csql = csql.replaceAll(":t_nameoid", t_nameoid);
            String[] sqlVals = bofactory.getClassficationValue(csql, new AttributeValue[0]);
            String sqlVal = "";
            for (int i = 0; i  < sqlVals.length; i++) {
                if (i != 0) {
                    sqlVal += "<br>";
                }
                sqlVal += sqlVals[i];
            }
            map.put(columnName, sqlVal);
        }
    }
}