Commit 82c2501b by xuxf

1.4.1规范新增作案动机代码字典生成类。

parent e725489e
package com.founder.framework.dictionary.service;
import com.founder.framework.dictionary.bean.SysDict;
import com.founder.framework.utils.PathUtil;
import com.founder.framework.utils.StringUtils;
import com.founder.framework.utils.TreeDataBuilder;
import com.founder.framework.utils.TreeNode;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;
/**
* Package: com.founder.framework.dictionary.service
* ClassName: DictTree_GA_D_ZADJDM
* Author: Tiger
* Description:
* CreateDate: 2016/9/29
* Version: 1.0
*/
public class DictTree_GA_D_ZADJDM extends DictTreeCreator {
private String treeName = "作案动机代码字典";
public DictTree_GA_D_ZADJDM() {
}
@Override
public void createTreeJS(String zdbh, String zdbhMc) throws Exception {
List<SysDict> dictList = super.getSysDictDao().queryListByZdbh(zdbh);
String JSPath = PathUtil.getServlet_context_path() + "/common/dict/";
if (dictList != null && dictList.size() > 0) { // 有数据
String mc, py, xt_zxbz;
List<TreeNode> nodeList1 = new ArrayList<TreeNode>();
for(int i1 = 0; i1 < dictList.size(); i1++){
String dm1 = dictList.get(i1).getDm();
dm1 = StringUtils.nullToStr(dm1);
if(dm1.endsWith("00") ){//第一级判定条件
TreeNode treeNode1 = new TreeNode();
mc = dictList.get(i1).getCt();
xt_zxbz = StringUtils.nullToStr(dictList.get(i1)
.getXt_zxbz());
if ("1".equals(xt_zxbz)) {
continue;
}
py = dictList.get(i1).getPy();
treeNode1.setId(dm1);
treeNode1.setText(mc);
treeNode1.setPy(py);
// 获取第2级结点开始
List<TreeNode> nodeList2 = new ArrayList<TreeNode>();
String dm1Matching=dm1.substring(0, dm1.length()-2);//下一级前1位相同
for(int i2 = 0; i2 < dictList.size(); i2++){
String dm2 = dictList.get(i2).getDm();
dm2 = StringUtils.nullToStr(dm2);
if(!dm2.equals(dm1)&&dm2.startsWith(dm1Matching)
&&dm2.length()==dm1.length()){
TreeNode treeNode2 = new TreeNode();
mc = dictList.get(i2).getCt();
xt_zxbz = StringUtils.nullToStr(dictList.get(i2)
.getXt_zxbz());
if ("1".equals(xt_zxbz)) {
mc += "(已注销)";
}
py = dictList.get(i2).getPy();
treeNode2.setId(dm2);
treeNode2.setText(mc);
treeNode2.setPy(py);
nodeList2.add(treeNode2);
}
}
if (nodeList2.size() > 0) {
treeNode1.setState("closed");
treeNode1.setChildren(nodeList2);
}
// 获取第2级结点结束
nodeList1.add(treeNode1);
}
}
String tableNameUpper = zdbh.toUpperCase();
Writer fileWriter = new OutputStreamWriter(new FileOutputStream(
JSPath + tableNameUpper + ".js"), "UTF8");
fileWriter.write("[{\"id\":\"ROOT\",\"text\":\"" + zdbhMc
+ "\",\"iconCls\":\"icon-treeroot1\",\"children\":"
+ StringUtils.enterNewline + StringUtils.enterNewline);
fileWriter.write(TreeDataBuilder.getTreeData(nodeList1));
fileWriter.write(StringUtils.enterNewline + "}]");
fileWriter.flush();
fileWriter.close();
System.out.println("文件 :" + tableNameUpper + ".js 创建成功!");
} else {
String tableNameUpper = zdbh.toUpperCase();
Writer fileWriter = new OutputStreamWriter(new FileOutputStream(
JSPath + tableNameUpper + ".js"), "UTF8");
fileWriter.write("[]");
fileWriter.flush();
fileWriter.close();
System.out.println("字典: " + treeName + " 无数据, 创建空文件成功!");
System.out.println("文件 :" + tableNameUpper + ".js 创建成功!");
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment