package net.loyin.ftl;
import java.io.IOException;
import java.io.Writer;
import java.util.List;
import java.util.Map;
import net.loyin.model.Organization;
import net.loyin.model.Partment;
import freemarker.core.Environment;
import freemarker.template.TemplateDirectiveBody;
import freemarker.template.TemplateException;
import freemarker.template.TemplateModel;
/**
* 组织机构选择
* @author loyin
* 2012-9-28
*/
public class PartmentSelectTarget extends BaseTarget {
/**partSelect*/
public static String targetName="partSelect";
@SuppressWarnings("rawtypes")
@Override
public void execute(Environment env, Map args, TemplateModel[] arg2,
TemplateDirectiveBody body) throws TemplateException, IOException {
List<Organization> orglist=Organization.dao.find("select id,name,num from Organization");
List<Partment> list= Partment.dao.find("select id,name,num,orgid from Partment");
Writer out= env.getOut();
for(Organization org:orglist){
out.append("<optgroup label='"+org.getStr("name")+"["+org.getStr("num")+"]'>");
for(Partment o:list){
if(org.getLong("id")==o.getLong("orgid")){
out.append("<option value='"+o.getLong("id")+"'>");
out.append(o.getStr("name")+"["+o.getStr("num")+"]");
out.append("</option>");
}
}
out.append("</optgroup>");
}
}
}