package com.zbooksoft.gdmis.service.impl;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.node.ArrayNode;
|
import com.fasterxml.jackson.databind.node.ObjectNode;
|
import com.ruili.wcp.common.IdGenerater;
|
import com.ruili.wcp.data.entity.management.User;
|
import com.zbooksoft.gdmis.data.entity.*;
|
import com.zbooksoft.gdmis.service.*;
|
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.session.Session;
|
import org.apache.shiro.subject.Subject;
|
import org.dom4j.Document;
|
import org.dom4j.Node;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.List;
|
|
import static com.zbooksoft.gdmis.common.XmlUtil.*;
|
|
/**
|
* @Description:
|
* @Author: zhai
|
* @Date: 2024/8/7
|
**/
|
@Service
|
public class UpdateXml2023ServiceImpl implements UpdateXml2023Service {
|
|
@Autowired
|
CatXzqService catXzqService;
|
@Autowired
|
CatDlwzxxService catDlwzxxService;
|
@Autowired
|
CatKcService catKcService;
|
@Autowired
|
CatSmxxService catSmxxService;
|
@Autowired
|
CatZkxxService catZkxxService;
|
@Autowired
|
CatTfxxService catTfxxService;
|
@Autowired
|
CatYswjxxService catYswjxxService;
|
@Autowired
|
CatCgwjxxService catCgwjxxService;
|
@Autowired
|
CatAjjxxService catAjjxxService;
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void updateXml(Document document, String checkData, Long ajjxxId) throws Exception {
|
|
Subject currentUser = SecurityUtils.getSubject();
|
Session session = currentUser.getSession();
|
User user = (User) session.getAttribute("user");
|
//案卷级信息
|
Node ajjxxNode = getNode(document, "AJJXX");
|
CatAjjxx catAjjxx = catAjjxxService.getById(ajjxxId);
|
|
if (checkData != null && !"".equals(checkData)) {
|
catAjjxx.setYswsj(stringToDate(checkData));
|
catAjjxx.setZlzt(2);
|
catAjjxx.setYsr(user.getUserName());
|
}
|
//项目信息
|
catAjjxx.setSmqk(getNodeText(ajjxxNode, "SMQK"));
|
catAjjxx.setZjly(getNodeText(ajjxxNode, "ZJLY"));
|
catAjjxx.setXmkyqlx(getNodeText(ajjxxNode, "XMKYQ/XMKYQLX"));
|
catAjjxx.setXmkyqxz(getNodeText(ajjxxNode, "XMKYQ/XMKYQXZ"));
|
catAjjxx.setXmkyqbh(getNodeText(ajjxxNode, "XMKYQ/XMKYQBH"));
|
catAjjxx.setXmkyqmc(getNodeText(ajjxxNode, "XMKYQ/XMKYQMC"));
|
catAjjxx.setXmcddwkyqr(getNodeText(ajjxxNode, "XMKYQ/XMCDDWKYQR"));
|
catAjjxx.setQssj(getNodeText(ajjxxNode, "XMKYQ/QSSJ"));
|
catAjjxx.setZzsj(getNodeText(ajjxxNode, "XMKYQ/ZZSJ"));
|
// catAjjxx.setQssj(stringToDate(getNodeText(ajjxxNode, "XMKYQ/QSSJ")));
|
// catAjjxx.setZzsj(stringToDate(getNodeText(ajjxxNode, "XMKYQ/ZZSJ")));
|
catAjjxx.setXmxxsm(getNodeText(ajjxxNode, "XMKYQ/XMXXSM"));
|
catAjjxx.setSpjg(getNodeText(ajjxxNode, "XMKYQ/SPJG"));
|
catAjjxx.setSpsj(stringToDate(getNodeText(ajjxxNode, "XMKYQ/SPSJ")));
|
|
//汇交人信息
|
catAjjxx.setHjrmc(getNodeText(ajjxxNode, "HJR/HJRMC"));
|
catAjjxx.setHjrdz(getNodeText(ajjxxNode, "HJR/HJRDZ"));
|
catAjjxx.setHjryb(getNodeText(ajjxxNode, "HJR/HJRYB"));
|
catAjjxx.setHjrtyshxydm(getNodeText(ajjxxNode, "HJR/HJRTYSHXYDM"));
|
catAjjxx.setHjrlxr(getNodeText(ajjxxNode, "HJR/HJRLXR"));
|
catAjjxx.setHjrdh(getNodeText(ajjxxNode, "HJR/HJRDH"));
|
catAjjxx.setHjrdzyx(getNodeText(ajjxxNode, "HJR/HJRDZYX"));
|
|
//报送单信息
|
// xmxx.GPSL = XMLHelper.GetNodeValue(bsdNode, "GPSL").ToInt();
|
// xmxx.YPSL = XMLHelper.GetNodeValue(bsdNode, "YPSL").ToInt();
|
// xmxx.QTJZMC = XMLHelper.GetNodeValue(bsdNode, "QTJZSL/JZMC");
|
// xmxx.QTJZSL = XMLHelper.GetNodeValue(bsdNode, "QTJZSL/JZSL").ToInt();
|
// xmxx.BSDBZ = XMLHelper.GetNodeValue(bsdNode, "BZ");
|
|
//案卷级信息
|
catAjjxx.setHjrdh(getNodeText(ajjxxNode, "HJRDH"));
|
catAjjxx.setDh(getNodeText(ajjxxNode, "DH"));
|
// catAjjxx.setSgdh(getNodeText(ajjxxNode, "SGDH"));
|
catAjjxx.setZlmc(getNodeText(ajjxxNode, "ZLMC"));
|
catAjjxx.setFzmc(getNodeText(ajjxxNode, "FZMC"));
|
|
String bzz = "";
|
List<Node> BzzNodeList = getNodeList(ajjxxNode, "BZZ/Item");
|
for (Node bzzNode : BzzNodeList) {
|
String nodeText = bzzNode.getText();
|
if (nodeText != null && !"".equals(nodeText)) {
|
bzz += nodeText + ",";
|
}
|
}
|
if (!"".equals(bzz)) {
|
bzz = bzz.substring(0, bzz.length() - 1);
|
catAjjxx.setBzz(bzz);
|
|
}
|
catAjjxx.setXcdwmc(getNodeText(ajjxxNode, "XCDW/Item/XCDWMC"));
|
catAjjxx.setXcdwshxydm(getNodeText(ajjxxNode, "XCDW/Item/XCDWSHXYDM"));
|
catAjjxx.setXcsj(getNodeText(ajjxxNode, "XCSJ"));
|
|
String xzqmc = "";
|
String xzqdms = "";
|
//行政区
|
List<Node> xzqNodeList = getNodeList(ajjxxNode, "XZQ/Item");
|
//删除现存的行政区信息
|
catXzqService.deleteCatXzqByAjId(ajjxxId);
|
for (Node xzqNode : xzqNodeList) {
|
CatXzq catXzq = new CatXzq();
|
catXzq.setAjId(ajjxxId);
|
String xzqdm = getNodeText(xzqNode, "XZQDM");
|
if (!"".equals(xzqdm)) {
|
xzqdms += xzqdm + ",";
|
}
|
catXzq.setXzqdm(xzqdm);
|
catXzq.setGb(getNodeText(xzqNode, "XZQMC/GB"));
|
|
String sj = getNodeText(xzqNode, "XZQMC/SJ");
|
if (!"".equals(sj)) {
|
xzqmc += sj;
|
}
|
catXzq.setSj(sj);
|
|
String dj = getNodeText(xzqNode, "XZQMC/DJ");
|
if (!"".equals(dj)) {
|
xzqmc += " " + dj;
|
}
|
catXzq.setDj(dj);
|
|
String xj = getNodeText(xzqNode, "XZQMC/XJ");
|
if (!"".equals(xj)) {
|
xzqmc += " " + xj;
|
}
|
catXzq.setXj(xj);
|
catXzqService.saveOrUpdate(catXzq);
|
xzqmc += ",";
|
}
|
if (!"".equals(xzqmc)) {
|
catAjjxx.setXzqmc(xzqmc.substring(0, xzqmc.length() - 1));
|
}
|
if (!"".equals(xzqdms)) {
|
catAjjxx.setXzqdm(xzqdms.substring(0, xzqdms.length() - 1));
|
}
|
|
|
catAjjxx.setDlzbx(getNodeText(ajjxxNode, "DLZBX"));
|
|
//工作区范围
|
List<Node> gzqfwNodeList = getNodeList(ajjxxNode, "GZQFW/Item");
|
if (gzqfwNodeList.size() > 0) {
|
ObjectMapper mapper = new ObjectMapper();
|
ObjectNode root = mapper.createObjectNode();
|
ArrayNode addresses = mapper.createArrayNode();
|
catDlwzxxService.deleteCatDlwzxxByAjId(ajjxxId);
|
for (int i = 0; i < gzqfwNodeList.size(); i++) {
|
Node gzqfwNode = gzqfwNodeList.get(i);
|
if (i == 0) {
|
catAjjxx.setQsjdFx(getNodeText(gzqfwNode, "SZZB/QSJD/FX"));
|
catAjjxx.setQsjdDu(getNodeText(gzqfwNode, "SZZB/QSJD/DU"));
|
catAjjxx.setQsjdFen(getNodeText(gzqfwNode, "SZZB/QSJD/FEN"));
|
catAjjxx.setQsjdMiao(getNodeText(gzqfwNode, "SZZB/QSJD/MIAO"));
|
catAjjxx.setZzjdFx(getNodeText(gzqfwNode, "SZZB/ZZJD/FX"));
|
catAjjxx.setZzjdDu(getNodeText(gzqfwNode, "SZZB/ZZJD/DU"));
|
catAjjxx.setZzjdFen(getNodeText(gzqfwNode, "SZZB/ZZJD/FEN"));
|
catAjjxx.setZzjdMiao(getNodeText(gzqfwNode, "SZZB/ZZJD/MIAO"));
|
catAjjxx.setQswdFx(getNodeText(gzqfwNode, "SZZB/QSWD/FX"));
|
catAjjxx.setQswdDu(getNodeText(gzqfwNode, "SZZB/QSWD/DU"));
|
catAjjxx.setQswdFen(getNodeText(gzqfwNode, "SZZB/QSWD/FEN"));
|
catAjjxx.setQswdMiao(getNodeText(gzqfwNode, "SZZB/QSWD/MIAO"));
|
catAjjxx.setZzwdFx(getNodeText(gzqfwNode, "SZZB/ZZWD/FX"));
|
catAjjxx.setZzwdDu(getNodeText(gzqfwNode, "SZZB/ZZWD/DU"));
|
catAjjxx.setZzwdFen(getNodeText(gzqfwNode, "SZZB/ZZWD/FEN"));
|
catAjjxx.setZzwdMiao(getNodeText(gzqfwNode, "SZZB/ZZWD/MIAO"));
|
catAjjxx.setGdzb(getNodeText(gzqfwNode, "GDZB"));
|
} else {
|
String qsjdFx = getNodeText(gzqfwNode, "SZZB/QSJD/FX");
|
String qsjdDu = getNodeText(gzqfwNode, "SZZB/QSJD/DU");
|
String qsjdFen = getNodeText(gzqfwNode, "SZZB/QSJD/FEN");
|
String qsjdMiao = getNodeText(gzqfwNode, "SZZB/QSJD/MIAO");
|
String zzjdFx = getNodeText(gzqfwNode, "SZZB/ZZJD/FX");
|
String zzjdDu = getNodeText(gzqfwNode, "SZZB/ZZJD/DU");
|
String zzjdFen = getNodeText(gzqfwNode, "SZZB/ZZJD/FEN");
|
String zzjdMiao = getNodeText(gzqfwNode, "SZZB/ZZJD/MIAO");
|
String qswdFx = getNodeText(gzqfwNode, "SZZB/QSWD/FX");
|
String qswdDu = getNodeText(gzqfwNode, "SZZB/QSWD/DU");
|
String qswdFen = getNodeText(gzqfwNode, "SZZB/QSWD/FEN");
|
String qswdMiao = getNodeText(gzqfwNode, "SZZB/QSWD/MIAO");
|
String zzwdFx = getNodeText(gzqfwNode, "SZZB/ZZWD/FX");
|
String zzwdDu = getNodeText(gzqfwNode, "SZZB/ZZWD/DU");
|
String zzwdFen = getNodeText(gzqfwNode, "SZZB/ZZWD/FEN");
|
String zzwdMiao = getNodeText(gzqfwNode, "SZZB/ZZWD/MIAO");
|
String gdzb = getNodeText(gzqfwNode, "GDZB");
|
|
// CatDlwzxx catDlwzxx = new CatDlwzxx();
|
// catDlwzxx.setAjId(ajjxxId);
|
// catDlwzxx.setQsjdFx(qsjdFx);
|
// catDlwzxx.setQsjdDu(qsjdDu);
|
// catDlwzxx.setQsjdFen(qsjdFen);
|
// catDlwzxx.setQsjdMiao(qsjdMiao);
|
// catDlwzxx.setZzjdFx(zzjdFx);
|
// catDlwzxx.setZzjdDu(zzjdDu);
|
// catDlwzxx.setZzjdFen(zzjdFen);
|
// catDlwzxx.setZzjdMiao(zzjdMiao);
|
// catDlwzxx.setQswdFx(qswdFx);
|
// catDlwzxx.setQswdDu(qswdDu);
|
// catDlwzxx.setQswdFen(qswdFen);
|
// catDlwzxx.setQswdMiao(qswdMiao);
|
// catDlwzxx.setZzwdFx(zzwdFx);
|
// catDlwzxx.setZzwdDu(zzwdDu);
|
// catDlwzxx.setZzwdFen(zzwdFen);
|
// catDlwzxx.setZzwdMiao(zzwdMiao);
|
// catDlwzxx.setGdzb(gdzb);
|
// catDlwzxxService.saveOrUpdate(catDlwzxx);
|
|
ObjectNode address = mapper.createObjectNode();
|
address.put("qsjd", qsjdFx);
|
address.put("qsjd_d", qsjdDu);
|
address.put("qsjd_f", qsjdFen);
|
address.put("qsjd_m", qsjdMiao);
|
address.put("zzjd", zzjdFx);
|
address.put("zzjd_d", zzjdDu);
|
address.put("zzjd_f", zzjdFen);
|
address.put("zzjd_m", zzjdMiao);
|
address.put("qswd", qswdFx);
|
address.put("qswd_d", qswdDu);
|
address.put("qswd_f", qswdFen);
|
address.put("qswd_m", qswdMiao);
|
address.put("zzwd", zzwdFx);
|
address.put("zzwd_d", zzwdDu);
|
address.put("zzwd_f", zzwdFen);
|
address.put("zzwd_m", zzwdMiao);
|
address.put("gdzb", gdzb);
|
addresses.add(address);
|
}
|
|
}
|
if (addresses.size() > 0) {
|
root.put("coordinate", addresses);
|
String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(root);
|
catAjjxx.setDlwzs(jsonString);
|
}
|
|
} else {
|
catAjjxx.setQsjdFx(getNodeText(ajjxxNode, "GZQFW/SZZB/QSJD/FX"));
|
catAjjxx.setQsjdDu(getNodeText(ajjxxNode, "GZQFW/SZZB/QSJD/DU"));
|
catAjjxx.setQsjdFen(getNodeText(ajjxxNode, "GZQFW/SZZB/QSJD/FEN"));
|
catAjjxx.setQsjdMiao(getNodeText(ajjxxNode, "GZQFW/SZZB/QSJD/MIAO"));
|
catAjjxx.setZzjdFx(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZJD/FX"));
|
catAjjxx.setZzjdDu(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZJD/DU"));
|
catAjjxx.setZzjdFen(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZJD/FEN"));
|
catAjjxx.setZzjdMiao(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZJD/MIAO"));
|
catAjjxx.setQsjdFx(getNodeText(ajjxxNode, "GZQFW/SZZB/QSWD/FX"));
|
catAjjxx.setQsjdDu(getNodeText(ajjxxNode, "GZQFW/SZZB/QSWD/DU"));
|
catAjjxx.setQsjdFen(getNodeText(ajjxxNode, "GZQFW/SZZB/QSWD/FEN"));
|
catAjjxx.setQsjdMiao(getNodeText(ajjxxNode, "GZQFW/SZZB/QSWD/MIAO"));
|
catAjjxx.setZzwdFx(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZWD/FX"));
|
catAjjxx.setZzwdDu(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZWD/DU"));
|
catAjjxx.setZzwdFen(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZWD/FEN"));
|
catAjjxx.setZzwdMiao(getNodeText(ajjxxNode, "GZQFW/SZZB/ZZWD/MIAO"));
|
}
|
|
|
String yz = "[";
|
List<Node> yzNodeList = getNodeList(ajjxxNode, "YZ/Item");
|
for (Node yzNode : yzNodeList) {
|
String nodeText = yzNode.getText();
|
if (nodeText != null && !"".equals(nodeText)) {
|
yz += nodeText + ",";
|
}
|
}
|
if (!"".equals(yz)) {
|
yz = yz.substring(0, yz.length() - 1) + "]";
|
catAjjxx.setYz(yz);
|
}
|
//矿产
|
List<Node> kcNodeList = getNodeList(ajjxxNode, "KC/Item");
|
String kcmcs = "";
|
|
catKcService.deleteCatKcByAjId(ajjxxId);
|
for (Node kcNode : kcNodeList) {
|
CatKc catKc = new CatKc();
|
catKc.setAjId(ajjxxId);
|
String kcdm = getNodeText(kcNode, "KCDM");
|
catKc.setKcdm(kcdm);
|
|
String kcmc = getNodeText(kcNode, "KCMC");
|
catKc.setKcmc(kcmc);
|
if (!"".equals(kcdm) && !"".equals(kcmc)) {
|
kcmcs += kcdm + "-" + kcmc + ",";
|
}
|
catKcService.saveOrUpdate(catKc);
|
}
|
if (!"".equals(kcmcs)) {
|
catAjjxx.setKcmc(kcmcs.substring(0, kcmcs.length() - 1));
|
}
|
|
|
catAjjxx.setZllb(getNodeText(ajjxxNode, "ZLLB/ZLLBMC"));
|
|
String yj = getNodeText(ajjxxNode, "ZLLB/ZLLBMC/YJ");
|
String ej = getNodeText(ajjxxNode, "ZLLB/ZLLBMC/EJ");
|
String sj = getNodeText(ajjxxNode, "ZLLB/ZLLBMC/SJ");
|
if (sj != null && !"".equals(sj)) {
|
catAjjxx.setZllb(sj);
|
} else if (ej != null && !"".equals(ej)) {
|
catAjjxx.setZllb(ej);
|
} else if (yj != null && !"".equals(yj)) {
|
catAjjxx.setZllb(yj);
|
}
|
|
|
String gzcd = getNodeText(ajjxxNode, "GZCD");
|
gzcd = gzcd.replaceAll("/", ":").replaceAll("万", "0000");
|
catAjjxx.setGzcd(gzcd);
|
catAjjxx.setQtgzcd(getNodeText(ajjxxNode, "QTGZCD"));
|
|
String gzff = "";
|
|
List<Node> gzffNodeList = getNodeList(ajjxxNode, "GZFF/Item");
|
for (Node gzffNode : gzffNodeList) {
|
String gzffYJ = getNodeText(gzffNode, "YJ");
|
String gzffEJ = getNodeText(gzffNode, "EJ");
|
|
if (gzffEJ != null && !"".equals(gzffEJ)) {
|
gzff += gzffEJ + ",";
|
}
|
if (gzffYJ != null && !"".equals(gzffYJ)) {
|
gzff += gzffYJ + ",";
|
}
|
}
|
if (!"".equals(gzff)) {
|
gzff = gzff.substring(0, gzff.length() - 1);
|
catAjjxx.setGzff(gzff);
|
}
|
|
String gjz = "";
|
|
List<Node> gjzNodeList = getNodeList(ajjxxNode, "GJZ/Item");
|
for (Node gjzNode : gjzNodeList) {
|
String nodeText = gjzNode.getText();
|
if (nodeText != null && !"".equals(nodeText)) {
|
gjz += nodeText + ",";
|
}
|
}
|
if (!"".equals(gjz)) {
|
gjz = gjz.substring(0, gjz.length() - 1);
|
catAjjxx.setGjz(gjz);
|
}
|
catAjjxx.setNrzy(getNodeText(ajjxxNode, "ZY"));
|
catAjjxx.setYdzwjgsjbb(getNodeText(ajjxxNode, "YDZWJGSJBB"));
|
catAjjxx.setYjhj(getNodeText(ajjxxNode, "YJHJ"));
|
catAjjxx.setRjhj(getNodeText(ajjxxNode, "RJHJ"));
|
catAjjxx.setTjxtkzktysm(getNodeText(ajjxxNode, "TJXTKZKTYSM"));
|
catAjjxx.setQtsm(getNodeText(ajjxxNode, "QTSM"));
|
catAjjxx.setBz(getNodeText(ajjxxNode, "BZ"));
|
|
|
catAjjxx.setHjrmc(getNodeText(ajjxxNode, "HJR/HJRMC"));
|
catAjjxx.setHjrdz(getNodeText(ajjxxNode, "HJR/HJRTXDZ"));
|
catAjjxx.setHjryb(getNodeText(ajjxxNode, "HJR/HJRYB"));
|
catAjjxx.setHjrtyshxydm(getNodeText(ajjxxNode, "HJR/HJRTYSHXYDM"));
|
catAjjxx.setHjrlxr(getNodeText(ajjxxNode, "HJR/HJRLXR"));
|
catAjjxx.setHjrlxfs(getNodeText(ajjxxNode, "HJR/HJRDH"));
|
catAjjxx.setHjrdzyx(getNodeText(ajjxxNode, "HJR/HJRDZYX"));
|
|
String bhq = getNodeText(ajjxxNode, "BHQ");
|
catAjjxx.setBhq(bhq);
|
if (bhq != null && !"".equals(bhq)) {
|
catAjjxx.setSfbh("是");
|
} else {
|
catAjjxx.setSfbh("否");
|
}
|
catAjjxx.setSmqk(getNodeText(ajjxxNode, "SMQK"));
|
String nodeText = getNodeText(ajjxxNode, "MJ");
|
if ("不涉密".equals(nodeText)){
|
catAjjxx.setMjdm("0");
|
}else if ("内部".equals(nodeText)){
|
catAjjxx.setMjdm("1");
|
}else if ("秘密".equals(nodeText)){
|
catAjjxx.setMjdm("2");
|
}else if ("机密".equals(nodeText)){
|
catAjjxx.setMjdm("3");
|
}else if ("绝密".equals(nodeText)){
|
catAjjxx.setMjdm("4");
|
}
|
catAjjxx.setMj(nodeText);
|
|
catAjjxx.setJsrq(stringToDate(getNodeText(ajjxxNode, "JSRQ")));
|
catAjjxx.setJsdwmc(getNodeText(ajjxxNode, "JSDW/JSDWMC"));
|
catAjjxx.setBgdwmc(getNodeText(ajjxxNode, "BGDW/Item/BGDWMC"));
|
// catAjjxx.setHjpzh(getNodeText(ajjxxNode, "HJPZH"));
|
catAjjxx.setFzrq(stringToDate(getNodeText(ajjxxNode, "FZRQ")));
|
catAjjxx.setFbrq(stringToDate(getNodeText(ajjxxNode, "FBRQ")));
|
catAjjxx.setBzsdh(getNodeText(ajjxxNode, "BZSDH"));
|
catAjjxx.setZlly(getNodeText(ajjxxNode, "ZLLY"));
|
catAjjxx.setHjzsdw(getNodeText(ajjxxNode, "HJZSDW"));
|
|
//成果数量信息CGZLSJL
|
catAjjxx.setCgzldzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/CGZLDZJS")));
|
catAjjxx.setCgzlsjl(stringToDouble(getNodeText(ajjxxNode, "SLXX/CGSLXX/CGZLSJL")));
|
catAjjxx.setCgzldzwjzs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/CGZLDZWJZS")));
|
catAjjxx.setCgzldzwjjzs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/CGZLDZWJJZS")));
|
catAjjxx.setCgzlzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/CGZLZZJS")));
|
|
|
catAjjxx.setZwdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/ZWDZJS")));
|
catAjjxx.setSpdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/SPDZJS")));
|
catAjjxx.setFtdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FTDZJS")));
|
catAjjxx.setFbdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FBDZJS")));
|
catAjjxx.setFjdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FJDZJS")));
|
catAjjxx.setRjdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/RJDZJS")));
|
catAjjxx.setSjkdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/SJKDZJS")));
|
catAjjxx.setDmtdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/DMTDZJS")));
|
catAjjxx.setQtdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/QTDZJS")));
|
|
catAjjxx.setZwydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/ZWYDZJS"));
|
catAjjxx.setSpydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/SPYDZJS"));
|
catAjjxx.setFtydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FTYDZJS"));
|
catAjjxx.setFbydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FBYDZJS"));
|
catAjjxx.setFjydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FJYDZJS"));
|
catAjjxx.setRjydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/RJYDZJS"));
|
catAjjxx.setSjkydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/SJKYDZJS"));
|
catAjjxx.setDmtydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/DMTYDZJS"));
|
catAjjxx.setQtydzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/QTYDZJS"));
|
|
catAjjxx.setZwcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/ZWCDDZJS"));
|
catAjjxx.setSpcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/SPCDDZJS"));
|
catAjjxx.setFtcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FTCDDZJS"));
|
catAjjxx.setFbcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FBCDDZJS"));
|
catAjjxx.setFjcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/FJCDDZJS"));
|
catAjjxx.setRjcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/RJCDDZJS"));
|
catAjjxx.setSjkcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/SJKCDDZJS"));
|
catAjjxx.setDmtcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/DMTCDDZJS"));
|
catAjjxx.setQtcddzjs(getNodeText(ajjxxNode, "SLXX/CGSLXX/QTCDDZJS"));
|
|
|
catAjjxx.setZwzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/ZWZZJS")));
|
catAjjxx.setSpzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/SPZZJS")));
|
catAjjxx.setFtzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FTZZJS")));
|
catAjjxx.setFbzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FBZZJS")));
|
catAjjxx.setFjzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/FJZZJS")));
|
catAjjxx.setQtzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/CGSLXX/QTZZJS")));
|
|
//原始数量信息
|
catAjjxx.setYszldzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/YSZLDZJS")));
|
catAjjxx.setYszlsjl(stringToDouble(getNodeText(ajjxxNode, "SLXX/YSSLXX/YSZLSJL")));
|
catAjjxx.setYszldzwjzs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/YSZLDZWJZS")));
|
catAjjxx.setYszldzwjjzs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/YSZLDZWJJZS")));
|
catAjjxx.setYszlzzjs(getNodeText(ajjxxNode, "SLXX/YSSLXX/YSZLZZJS"));
|
|
catAjjxx.setDzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/DZZJS")));
|
catAjjxx.setCzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/CZZJS")));
|
catAjjxx.setGzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/GZZJS")));
|
catAjjxx.setTzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/TZZJS")));
|
catAjjxx.setYzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/YZZJS")));
|
catAjjxx.setSzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/SZZJS")));
|
catAjjxx.setLzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/LZZJS")));
|
catAjjxx.setXzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/XZZJS")));
|
catAjjxx.setZzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/ZZZJS")));
|
catAjjxx.setWzzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/WZZJS")));
|
|
catAjjxx.setDdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/DDZJS")));
|
catAjjxx.setCdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/CDZJS")));
|
catAjjxx.setGdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/GDZJS")));
|
catAjjxx.setTdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/TDZJS")));
|
catAjjxx.setYdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/YDZJS")));
|
catAjjxx.setSdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/SDZJS")));
|
catAjjxx.setLdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/LDZJS")));
|
catAjjxx.setXdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/XDZJS")));
|
catAjjxx.setZdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/ZDZJS")));
|
catAjjxx.setWdzjs(stringToInteger(getNodeText(ajjxxNode, "SLXX/YSSLXX/WDZJS")));
|
|
//实物汇总数量信息
|
catAjjxx.setDdgzwz(getNodeText(ajjxxNode, "SWHZXX/DDGZWZ"));
|
catAjjxx.setCkd(getNodeText(ajjxxNode, "SWHZXX/CKD"));
|
catAjjxx.setZykz(getNodeText(ajjxxNode, "SWHZXX/ZYKZ"));
|
catAjjxx.setCylx(getNodeText(ajjxxNode, "SWHZXX/CYLX"));
|
catAjjxx.setCksd(getNodeText(ajjxxNode, "SWHZXX/CKSD"));
|
catAjjxx.setZycgjs(getNodeText(ajjxxNode, "SWHZXX/ZYCGJS"));
|
catAjjxx.setSwbz(getNodeText(ajjxxNode, "SWHZXX/BZ"));
|
catAjjxx.setZksl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/ZKSL")));
|
catAjjxx.setZjc(stringToDouble(getNodeText(ajjxxNode, "SWHZXX/ZJC")));
|
catAjjxx.setYxzsl(stringToDouble(getNodeText(ajjxxNode, "SWHZXX/YXZSL")));
|
catAjjxx.setYxizsl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/YXIZSL")));
|
catAjjxx.setBbzsl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/BBZSL")));
|
catAjjxx.setYpzsl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/YPZSL")));
|
catAjjxx.setGpzsl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/GPZSL")));
|
catAjjxx.setBpzsl(stringToInteger(getNodeText(ajjxxNode, "SWHZXX/BPZSL")));
|
catAjjxx.setQtswmc(getNodeText(ajjxxNode, "SWHZXX/QTZSL/QTSWMC"));
|
catAjjxx.setQtswsl(getNodeText(ajjxxNode, "SWHZXX/QTZSL/QTSWSL"));
|
|
|
Node wjjxxNode = getNode(document, "WJJXX");
|
List<Node> cgwjjxxNodeList = getNodeList(wjjxxNode, "CGWJJXX/CGWJXX");
|
|
catSmxxService.deleteCatSmxxByAjId(ajjxxId);
|
catCgwjxxService.deleteCatCgwjxxByAjId(ajjxxId);
|
//成果文件级信息
|
for (Node cgwjjxxNode : cgwjjxxNodeList) {
|
String cgwjmc = getNodeText(cgwjjxxNode, "WJLB");
|
//成果文件册
|
List<Node> nodeList = getNodeList(cgwjjxxNode, "CGWJC");
|
for (Node cgwjcNode : nodeList) {
|
Integer cxh = stringToInteger(getNodeText(cgwjcNode, "CXH"));
|
List<Node> cgwjNodeList = getNodeList(cgwjcNode, "CGWJ");
|
for (Node cgwjNode : cgwjNodeList) {
|
Long catCgwjxxId = IdGenerater.getId();
|
CatCgwjxx catCgwjxx = new CatCgwjxx();
|
String fileType = getFileType(cgwjmc);
|
catCgwjxx.setWjlx(fileType);
|
catCgwjxx.setAjId(catAjjxx.getId());
|
catCgwjxx.setId(catCgwjxxId);
|
catCgwjxx.setCh(cxh);
|
String wjm = getNodeText(cgwjNode, "WJM");
|
catCgwjxx.setWjm(wjm);
|
if (wjm.length() >= 5) {
|
catCgwjxx.setJh(stringToInteger(wjm.substring(4)));
|
}
|
catCgwjxx.setWjtm(getNodeText(cgwjNode, "WJTM"));
|
|
catCgwjxx.setJm(getNodeText(cgwjNode, "JM"));
|
String ydzwjm = getNodeText(cgwjNode, "YDZWJM");
|
catCgwjxx.setYdzwjm(ydzwjm);
|
catCgwjxx.setYdzwjlb(getNodeText(cgwjNode, "YDZWJLB"));
|
|
catCgwjxx.setYdzwjlj(getNodeText(cgwjNode, "YDZWJLJ"));
|
|
catCgwjxx.setYdzwjdx(stringToDouble(getNodeText(cgwjNode, "YDZWJDX")));
|
catCgwjxx.setYdzfjwjmc(getNodeText(cgwjNode, "YDZFJWJMC"));
|
catCgwjxx.setYdzfjwjlb(getNodeText(cgwjNode, "YDZFJWJLB"));
|
String ydzfjwjlj = getNodeText(cgwjNode, "YDZFJWJLJ");
|
catCgwjxx.setYdzfjwjlj(ydzfjwjlj);
|
catCgwjxx.setYdzfjwjdx(getNodeText(cgwjNode, "YDZFJWJDX"));
|
|
|
catCgwjxx.setYdzwjs(getNodeText(cgwjNode, "YDZWJS"));
|
catCgwjxx.setYdzwjjs(getNodeText(cgwjNode, "YDZWJJS"));
|
//读取源电子文件格式
|
catCgwjxx.setYdzwjgs(getNodeText(cgwjNode, "WJGSXX/YDZWJGSXX/WJGS"));
|
catCgwjxx.setYdzwjgssm(getNodeText(cgwjNode, "WJGSXX/YDZWJGSXX/WJGSSM"));
|
|
|
catCgwjxx.setCddzwjm(getNodeText(cgwjNode, "CDDZWJM"));
|
catCgwjxx.setCddzwjlb(getNodeText(cgwjNode, "CDDZWJLB"));
|
catCgwjxx.setCddzwjlj(getNodeText(cgwjNode, "CDDZWJLJ"));
|
|
catCgwjxx.setCddzwjdx(stringToDouble(getNodeText(cgwjNode, "CDDZWJDX")));
|
catCgwjxx.setCddzwjs(getNodeText(cgwjNode, "CDDZWJS"));
|
catCgwjxx.setCddzwjjs(getNodeText(cgwjNode, "CDDZWJJS"));
|
//读取存档电子文件格式
|
catCgwjxx.setCddzwjgs(getNodeText(cgwjNode, "WJGSXX/CDDZWJGSXX/WJGS"));
|
catCgwjxx.setCddzwjgssm(getNodeText(cgwjNode, "WJGSXX/CDDZWJGSXX/WJGSSM"));
|
|
catCgwjxx.setZtxs(getNodeText(cgwjNode, "ZTXS"));
|
catCgwjxx.setXcr(getNodeText(cgwjNode, "XCR/Item"));
|
catCgwjxx.setXcdwmc(getNodeText(cgwjNode, "XCDWMC/Item"));
|
catCgwjxx.setXcsj(getNodeText(cgwjNode, "XCSJ"));
|
// catCgwjxx.setXcsj(stringToDate(getNodeText(cgwjNode, "XCSJ")));
|
catCgwjxx.setTh(getNodeText(cgwjNode, "TH"));
|
catCgwjxx.setFthxblc(getNodeText(cgwjNode, "BLC/FTHXBLC"));
|
catCgwjxx.setFtzxblc(getNodeText(cgwjNode, "BLC/FTZXBLC"));
|
catCgwjxx.setFtgg(getNodeText(cgwjNode, "FTGG"));
|
|
catCgwjxx.setQzy(getNodeText(cgwjNode, "QZY"));
|
catCgwjxx.setBz(getNodeText(cgwjNode, "BZ"));
|
|
//涉密信息
|
List<Node> smxxNodeList = getNodeList(cgwjNode, "SMXX/Item");
|
ObjectMapper mapper = new ObjectMapper();
|
ObjectNode root = mapper.createObjectNode();
|
ArrayNode addresses = mapper.createArrayNode();
|
if (smxxNodeList.size() > 0) {
|
catCgwjxx.setSfsm("是");
|
} else {
|
catCgwjxx.setSfsm("否");
|
}
|
for (int i = 0; i < smxxNodeList.size(); i++) {
|
Node smxxNode = smxxNodeList.get(i);
|
if (i == 0) {
|
catCgwjxx.setSmym(getNodeText(smxxNode, "SMNR"));
|
catCgwjxx.setSmzl(getNodeText(smxxNode, "SMZL"));
|
catCgwjxx.setSmsx(getNodeText(smxxNode, "SMSX"));
|
catCgwjxx.setWjmj(getNodeText(smxxNode, "WJMJ"));
|
Integer securityCode = getSecurityCode(getNodeText(smxxNode, "WJMJ"));
|
catCgwjxx.setSecurityCode(securityCode);
|
catCgwjxx.setBmqx(getNodeText(smxxNode, "BMQX"));
|
catCgwjxx.setZxfw(getNodeText(smxxNode, "ZXFW"));
|
} else {
|
String smnr = getNodeText(smxxNode, "SMNR");
|
String smzl = getNodeText(smxxNode, "SMZL");
|
String smsx = getNodeText(smxxNode, "SMSX");
|
String wjmj = getNodeText(smxxNode, "WJMJ");
|
String bmqx = getNodeText(smxxNode, "BMQX");
|
String zxfw = getNodeText(smxxNode, "ZXFW");
|
CatSmxx catSmxx = new CatSmxx();
|
catSmxx.setAjId(ajjxxId);
|
catSmxx.setWjId(catCgwjxxId);
|
catSmxx.setSmnr(smnr);
|
catSmxx.setSmzl(smzl);
|
catSmxx.setSmsx(smsx);
|
catSmxx.setWjmj(wjmj);
|
catSmxx.setBmqx(bmqx);
|
catSmxx.setZxfw(zxfw);
|
catSmxxService.saveOrUpdate(catSmxx);
|
|
//{"classified":[{"mj":"内部","smym":"11","smsx":"22","bmqx":"33","zxfw":"34","smzl":""}]}
|
ObjectNode address = mapper.createObjectNode();
|
address.put("mj", wjmj);
|
address.put("smym", smnr);
|
address.put("smsx", smsx);
|
address.put("bmqx", bmqx);
|
address.put("zxfw", zxfw);
|
address.put("smzl", smzl);
|
addresses.add(address);
|
}
|
}
|
root.put("classified", addresses);
|
String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(root);
|
catCgwjxx.setSmxx(jsonString);
|
catCgwjxxService.saveOrUpdate(catCgwjxx);
|
}
|
|
}
|
|
}
|
|
catAjjxxService.saveOrUpdate(catAjjxx);
|
}
|
}
|