From b0bf1119ad50a5c04db3bc4cb3216546c9237431 Mon Sep 17 00:00:00 2001 From: zhal <15900249928@163.com> Date: Mon, 17 Jul 2023 17:54:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=AF=BC=E5=85=A5=E6=AD=A3?= =?UTF-8?q?=E6=96=87=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ....actionsoft.apps.coe.pal.datamigration.jar | Bin 331892 -> 342493 bytes .../util/readtable/ReadTable.java | 775 +++++++++--------- 2 files changed, 383 insertions(+), 392 deletions(-) diff --git a/com.actionsoft.apps.coe.pal.datamigration/lib/com.actionsoft.apps.coe.pal.datamigration.jar b/com.actionsoft.apps.coe.pal.datamigration/lib/com.actionsoft.apps.coe.pal.datamigration.jar index 8a29fe89ac4943e53ca7c69f08a0d626f05b365e..749d67b9b62a2432fe33ad635ade2fcb626eaa04 100644 GIT binary patch delta 23614 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 J1dwnO{|Ah;@Hqeg delta 12975 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 diff --git a/com.actionsoft.apps.coe.pal.datamigration/src/com/actionsoft/apps/coe/pal/datamigration/util/readtable/ReadTable.java b/com.actionsoft.apps.coe.pal.datamigration/src/com/actionsoft/apps/coe/pal/datamigration/util/readtable/ReadTable.java index 136a9957..8e7346af 100644 --- a/com.actionsoft.apps.coe.pal.datamigration/src/com/actionsoft/apps/coe/pal/datamigration/util/readtable/ReadTable.java +++ b/com.actionsoft.apps.coe.pal.datamigration/src/com/actionsoft/apps/coe/pal/datamigration/util/readtable/ReadTable.java @@ -1,29 +1,5 @@ package com.actionsoft.apps.coe.pal.datamigration.util.readtable; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; - -import org.apache.commons.lang.StringUtils; -import org.apache.poi.hwpf.HWPFDocument; -import org.apache.poi.hwpf.usermodel.CharacterRun; -import org.apache.poi.hwpf.usermodel.Paragraph; -import org.apache.poi.hwpf.usermodel.Range; -import org.apache.poi.hwpf.usermodel.Table; -import org.apache.poi.hwpf.usermodel.TableCell; -import org.apache.poi.hwpf.usermodel.TableRow; - import com.actionsoft.apps.coe.pal.datamigration.model.po.WordAttribute; import com.actionsoft.apps.coe.pal.datamigration.model.po.WordField; import com.actionsoft.apps.coe.pal.datamigration.util.ShapeUtil; @@ -49,8 +25,13 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.aspose.words.Document; import com.aspose.words.SaveFormat; - import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.apache.poi.hwpf.HWPFDocument; +import org.apache.poi.hwpf.usermodel.*; + +import java.io.*; +import java.util.*; /** * @author baizp @@ -91,374 +72,386 @@ public class ReadTable { idToNameMap.put(wordAttribute.getType(), wordAttribute.getTitle()); }); } - - - // 批量上传附件 - public void dataFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, - String fileName) { - fileName = fileName.trim(); - String fileName2 = fileName; - HashMap logMaps = new HashMap(); - if(fileName.substring(0, 4).contains("、")) { - fileName2 = fileName2.substring(fileName2.indexOf("、")+1); - } - if(fileName.substring(0, 4).contains(".")) { - fileName2 = fileName2.substring(fileName2.indexOf(".")+1); - } - logMaps.put("FILENAME", fileName); - try { - String name = ""; - if(fileName2.contains("-附件")) { - name = fileName2.substring(0, fileName2.indexOf("-附件")); - }else if(fileName2.contains("+附件")){ - name = fileName2.substring(0, fileName2.indexOf("+附件")); - }else { - name = fileName2.substring(0, fileName2.lastIndexOf(".")); - } - PALRepositoryModel palRepositoryModel = null; - //String name = fileName.substring(0, fileName.lastIndexOf(".")); - String sqlss = "select id from App_Act_Coe_Pal_Repository where plname = '"+name+"' and ISUSE = '1'"; - String plid = DBSql.getString(sqlss); - if(UtilString.isNotEmpty(plid)) { - palRepositoryModel = PALRepositoryCache.getCache().get(plid); - } - //PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName2(wsId, name); - /* - * if (palRepositoryModel == null) { PALRepositoryModel palRepositoryModel_s = - * ReadWordUtil.getRepositoryByName2(wsId, "酸奶" + name); if - * (palRepositoryModel_s != null) { palRepositoryModel = palRepositoryModel_s; } - * PALRepositoryModel palRepositoryModel_y = - * ReadWordUtil.getRepositoryByName2(wsId, "液奶" + name); if - * (palRepositoryModel_y != null) { palRepositoryModel = palRepositoryModel_y; } - * PALRepositoryModel palRepositoryModel_l = - * ReadWordUtil.getRepositoryByName2(wsId, "冷饮" + name); if - * (palRepositoryModel_l != null) { palRepositoryModel = palRepositoryModel_l; } - * PALRepositoryModel palRepositoryModel_n = - * ReadWordUtil.getRepositoryByName2(wsId, "奶粉" + name); if - * (palRepositoryModel_n != null) { palRepositoryModel = palRepositoryModel_n; } - * if (palRepositoryModel == null) { if (name.startsWith("酸奶") || - * name.startsWith("液奶") || name.startsWith("冷饮") || name.startsWith("奶粉")) { - * PALRepositoryModel palRepositoryModel_ss = - * ReadWordUtil.getRepositoryByName2(wsId, name.substring(2)); if - * (palRepositoryModel_ss != null) { palRepositoryModel = palRepositoryModel_ss; - * } } } } - */ - if (null == palRepositoryModel) { - logMaps.put("UPFILESTATE", "文件没有匹配到模型!"); - } else { - String id = palRepositoryModel.getId(); - logMaps.put("PALID", id); - logMaps.put("PALNAME", palRepositoryModel.getName()); - String shpId = ""; - if (palRepositoryModel.getMethodId().contains("form")) { - logMaps.put("MODLETYPE", "表单模型"); - // 查询对应绩效模型中数据模型进行填充数据 - BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); - if (null == defineModel) { - shpId = createOneMap2(wsId, name, userContext); - if ("".equals(shpId)) { - logMaps.put("UPFILESTATE", "表单图形创建失败!"); - } - } else { - String define = defineModel.getDefinition(); - JSONObject definition = JSONObject.parseObject(define); - JSONObject elements = definition.getJSONObject("elements"); - for (String key : elements.keySet()) { - JSONObject shape1 = elements.getJSONObject(key); - if ("form".equals(shape1.getString("name"))) { - shpId = key; - break; - } - } - } - if ("".equals(shpId)) { - // 画一个图形 并返回图形ID - shpId = createOneMap2(wsId, name, userContext); - if ("".equals(shpId)) { - logMaps.put("UPFILESTATE", "表单图形创建失败!"); - - } - } - - DCPluginProfile dcProfilepdfdoc = DCProfileManager - .getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); - // 将文件挂载到附件里面 - DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, - "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); - - if(fileName.contains("-附件")) { - fileName = fileName.substring(fileName.indexOf("-附件")+1); - } - if(fileName.contains("+附件")) { - fileName = fileName.substring(fileName.indexOf("+附件")+1); - } - - if(fileName.length()>4) { - if(fileName.substring(0, 4).contains("、")) { - fileName = fileName.substring(fileName.indexOf("、")+1); - } - if(fileName.substring(0, 4).contains(".")) { - fileName = fileName.substring(fileName.indexOf(".")+1); - } - - } - // 删除已有文件 - StringBuffer sql = new StringBuffer(); - sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) - .append(" WHERE SHAPEID = '" + shpId + "'"); - InputStream originfile = SDK.getDCAPI().read(dcContextorigin); - try { - logMaps.put("PLNAME", palRepositoryModel.getName()); - PALRepositoryModel prmodel = PALRepositoryCache.getCache().get(palRepositoryModel.getParentId()); - if (prmodel != null) { - logMaps.put("FRNAME", prmodel.getName()); - } - boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, - originfile, id, "s"); - if (writeFileTodisk) { - logMaps.put("UPFILESTATE", "上传成功!"); - } else { - logMaps.put("UPFILESTATE", "上传失败!"); - } - } catch (FileNotFoundException e1) { - e1.printStackTrace(); - } - - } else { - logMaps.put("PALID", id); - if (palRepositoryModel.getMethodId().contains("process")) { - logMaps.put("MODLETYPE", "流程模型"); - logMaps.put("PLNAME", palRepositoryModel.getName()); - } else { - logMaps.put("MODLETYPE", "制度模型"); - logMaps.put("PLNAME", palRepositoryModel.getName()); - } - DCPluginProfile dcProfilepdfdoc = DCProfileManager - .getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); - // 将文件挂载到附件里面 - DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, - "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); - - if(fileName.contains("-附件")) { - fileName = fileName.substring(fileName.indexOf("-附件")+1); - } - if(fileName.contains("+附件")) { - fileName = fileName.substring(fileName.indexOf("+附件")+1); - } - - if(fileName.length()>4) { - if(fileName.substring(0, 4).contains("、")) { - fileName = fileName.substring(fileName.indexOf("、")+1); - } - if(fileName.substring(0, 4).contains(".")) { - fileName = fileName.substring(fileName.indexOf(".")+1); - } - - } - - StringBuffer sql = new StringBuffer(); - sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) - .append(" WHERE FILENAME = '" + fileName + "' AND PALREPOSITORYID = '"+id+"'"); - - /* - * if(!fileName.contains("附件")) { // 删除已有文件 Date d = new Date(); StringBuffer - * sql = new StringBuffer(); SimpleDateFormat sdf = new - * SimpleDateFormat("yyyy/MM/dd"); String formatDate = sdf.format(d); - * sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY). - * append(" WHERE CREATETIME < to_date ('" - * +formatDate+"','yyyy-mm-dd') and PALREPOSITORYID = '"+id+"'"); int update = - * DBSql.update(sql.toString()); - * - * } - */ - /* - * if(!fileName.contains("附件")) { // 删除已有文件 Date d = new Date(); StringBuffer - * sql = new StringBuffer(); SimpleDateFormat sdf = new - * SimpleDateFormat("yyyy-MM-dd"); String formatDate = sdf.format(d); - * sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) - * .append(" WHERE CREATETIME < '"+formatDate+"' and PALREPOSITORYID = '"+id+"'" - * ); int update = DBSql.update(sql.toString()); - * - * } - */ - - InputStream originfile = SDK.getDCAPI().read(dcContextorigin); - try { - logMaps.put("PLNAME", palRepositoryModel.getName()); - PALRepositoryModel prmodel = PALRepositoryCache.getCache().get(palRepositoryModel.getParentId()); - if (prmodel != null) { - logMaps.put("FRNAME", prmodel.getName()); - } - boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, "", fileName, - originfile, id, "f"); - if (writeFileTodisk) { - logMaps.put("UPFILESTATE", "上传成功!"); - - } else { - logMaps.put("UPFILESTATE", "上传失败!"); - - } - } catch (FileNotFoundException e1) { - e1.printStackTrace(); - } - - } - } - - } catch (Exception e) { - // TODO: handle exception - } finally { - SDK.getBOAPI().createDataBO("BO_ACT_FORMDATDFILE_LOG_ALL", new BO().setAll(logMaps), userContext); - } - } - - - - - - @SuppressWarnings("deprecation") - public void controlPolicyFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) { - HashMap logMaps = new HashMap(); - logMaps.put("FILENAME", fileName); - try { - String substring = fileName.substring(0,fileName.indexOf(".xml")); - PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName2(wsId, substring); - if(null==palRepositoryModel) { - logMaps.put("UPFILESTATE", "文件没有匹配到制度模型!"); - }else { - String id = palRepositoryModel.getId(); - logMaps.put("PALID",id); - //查询对应绩效模型中数据模型进行填充数据 - BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); - String shpId = ""; - String define = defineModel.getDefinition(); - JSONObject definition = JSONObject.parseObject(define); - JSONObject elements = definition.getJSONObject("elements"); - for (String key : elements.keySet()) { - JSONObject shape1 = elements.getJSONObject(key); - if("regulation".equals(shape1.getString("name"))) { - shpId = key; - break; - } - } - if("".equals(shpId)) { - logMaps.put("UPFILESTATE", "模型中没有对应的形状!"); - }else { - DCPluginProfile dcProfilepdfdoc = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); - //将文件挂载到附件里面 - DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); - StringBuffer sql = new StringBuffer(); - //删除已有xml文件 - sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY).append(" WHERE SHAPEID = '" + shpId + "'"); - int update = DBSql.update(sql.toString()); - InputStream originfile = SDK.getDCAPI().read(dcContextorigin); - try { - boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, originfile, id, "s"); - if(writeFileTodisk) { - logMaps.put("UPFILESTATE", "上传成功!"); - }else { - logMaps.put("UPFILESTATE", "上传失败!"); - } - } catch (FileNotFoundException e1) { - e1.printStackTrace(); - } - } - + // 批量上传附件 + public void dataFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, + String fileName) { + fileName = fileName.trim(); + String fileName2 = fileName; + HashMap logMaps = new HashMap(); + if (fileName.substring(0, 4).contains("、")) { + fileName2 = fileName2.substring(fileName2.indexOf("、") + 1); + } + if (fileName.substring(0, 4).contains(".")) { + fileName2 = fileName2.substring(fileName2.indexOf(".") + 1); + } + logMaps.put("FILENAME", fileName); + try { + String name = ""; + if (fileName2.contains("-附件")) { + name = fileName2.substring(0, fileName2.indexOf("-附件")); + } else if (fileName2.contains("+附件")) { + name = fileName2.substring(0, fileName2.indexOf("+附件")); + } else { + name = fileName2.substring(0, fileName2.lastIndexOf(".")); } - } catch (Exception e) { - // TODO: handle exception - }finally { - SDK.getBOAPI().createDataBO("BO_ACT_DATAMIGRATION_LOG_T", new BO().setAll(logMaps), userContext); - } + PALRepositoryModel palRepositoryModel = null; + //String name = fileName.substring(0, fileName.lastIndexOf(".")); + String sqlss = "select id from App_Act_Coe_Pal_Repository where plname = '" + name + "' and ISUSE = '1'"; + String plid = DBSql.getString(sqlss); + if (UtilString.isNotEmpty(plid)) { + palRepositoryModel = PALRepositoryCache.getCache().get(plid); + } + //PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName2(wsId, name); + /* + * if (palRepositoryModel == null) { PALRepositoryModel palRepositoryModel_s = + * ReadWordUtil.getRepositoryByName2(wsId, "酸奶" + name); if + * (palRepositoryModel_s != null) { palRepositoryModel = palRepositoryModel_s; } + * PALRepositoryModel palRepositoryModel_y = + * ReadWordUtil.getRepositoryByName2(wsId, "液奶" + name); if + * (palRepositoryModel_y != null) { palRepositoryModel = palRepositoryModel_y; } + * PALRepositoryModel palRepositoryModel_l = + * ReadWordUtil.getRepositoryByName2(wsId, "冷饮" + name); if + * (palRepositoryModel_l != null) { palRepositoryModel = palRepositoryModel_l; } + * PALRepositoryModel palRepositoryModel_n = + * ReadWordUtil.getRepositoryByName2(wsId, "奶粉" + name); if + * (palRepositoryModel_n != null) { palRepositoryModel = palRepositoryModel_n; } + * if (palRepositoryModel == null) { if (name.startsWith("酸奶") || + * name.startsWith("液奶") || name.startsWith("冷饮") || name.startsWith("奶粉")) { + * PALRepositoryModel palRepositoryModel_ss = + * ReadWordUtil.getRepositoryByName2(wsId, name.substring(2)); if + * (palRepositoryModel_ss != null) { palRepositoryModel = palRepositoryModel_ss; + * } } } } + */ + + if (null == palRepositoryModel) { + logMaps.put("UPFILESTATE", "文件没有匹配到模型!"); + } else { + String id = palRepositoryModel.getId(); + logMaps.put("PALID", id); + logMaps.put("PALNAME", palRepositoryModel.getName()); + String shpId = ""; + if (palRepositoryModel.getMethodId().contains("form")) { + logMaps.put("MODLETYPE", "表单模型"); + // 查询对应绩效模型中数据模型进行填充数据 + BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); + if (null == defineModel) { + shpId = createOneMap2(wsId, name, userContext); + if ("".equals(shpId)) { + logMaps.put("UPFILESTATE", "表单图形创建失败!"); + + } + } else { + String define = defineModel.getDefinition(); + JSONObject definition = JSONObject.parseObject(define); + JSONObject elements = definition.getJSONObject("elements"); + for (String key : elements.keySet()) { + JSONObject shape1 = elements.getJSONObject(key); + if ("form".equals(shape1.getString("name"))) { + shpId = key; + break; + } + } + } + if ("".equals(shpId)) { + // 画一个图形 并返回图形ID + shpId = createOneMap2(wsId, name, userContext); + if ("".equals(shpId)) { + logMaps.put("UPFILESTATE", "表单图形创建失败!"); + + } + } + + DCPluginProfile dcProfilepdfdoc = DCProfileManager + .getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); + // 将文件挂载到附件里面 + DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, + "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); + + if (fileName.contains("-附件")) { + fileName = fileName.substring(fileName.indexOf("-附件") + 1); + } + if (fileName.contains("+附件")) { + fileName = fileName.substring(fileName.indexOf("+附件") + 1); + } + + if (fileName.length() > 4) { + if (fileName.substring(0, 4).contains("、")) { + fileName = fileName.substring(fileName.indexOf("、") + 1); + } + if (fileName.substring(0, 4).contains(".")) { + fileName = fileName.substring(fileName.indexOf(".") + 1); + } + + } + // 删除已有文件 + StringBuffer sql = new StringBuffer(); + sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) + .append(" WHERE SHAPEID = '" + shpId + "'"); + InputStream originfile = SDK.getDCAPI().read(dcContextorigin); + try { + logMaps.put("PLNAME", palRepositoryModel.getName()); + PALRepositoryModel prmodel = PALRepositoryCache.getCache().get(palRepositoryModel.getParentId()); + if (prmodel != null) { + logMaps.put("FRNAME", prmodel.getName()); + } + boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, + originfile, id, "s"); + if (writeFileTodisk) { + logMaps.put("UPFILESTATE", "上传成功!"); + } else { + logMaps.put("UPFILESTATE", "上传失败!"); + } + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + } + + } else { + logMaps.put("PALID", id); + if (palRepositoryModel.getMethodId().contains("process")) { + logMaps.put("MODLETYPE", "流程模型"); + logMaps.put("PLNAME", palRepositoryModel.getName()); + } else { + logMaps.put("MODLETYPE", "制度模型"); + logMaps.put("PLNAME", palRepositoryModel.getName()); + } + DCPluginProfile dcProfilepdfdoc = DCProfileManager + .getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); + // 将文件挂载到附件里面 + DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, + "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); + + if (fileName.contains("-附件")) { + fileName = fileName.substring(fileName.indexOf("-附件") + 1); + } + if (fileName.contains("+附件")) { + fileName = fileName.substring(fileName.indexOf("+附件") + 1); + } + + if (fileName.length() > 4) { + if (fileName.substring(0, 4).contains("、")) { + fileName = fileName.substring(fileName.indexOf("、") + 1); + } + if (fileName.substring(0, 4).contains(".")) { + fileName = fileName.substring(fileName.indexOf(".") + 1); + } + + } + + StringBuffer sql = new StringBuffer(); + sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) + .append(" WHERE FILENAME = '" + fileName + "' AND PALREPOSITORYID = '" + id + "'"); + + /* + * if(!fileName.contains("附件")) { // 删除已有文件 Date d = new Date(); StringBuffer + * sql = new StringBuffer(); SimpleDateFormat sdf = new + * SimpleDateFormat("yyyy/MM/dd"); String formatDate = sdf.format(d); + * sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY). + * append(" WHERE CREATETIME < to_date ('" + * +formatDate+"','yyyy-mm-dd') and PALREPOSITORYID = '"+id+"'"); int update = + * DBSql.update(sql.toString()); + * + * } + */ + /* + * if(!fileName.contains("附件")) { // 删除已有文件 Date d = new Date(); StringBuffer + * sql = new StringBuffer(); SimpleDateFormat sdf = new + * SimpleDateFormat("yyyy-MM-dd"); String formatDate = sdf.format(d); + * sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY) + * .append(" WHERE CREATETIME < '"+formatDate+"' and PALREPOSITORYID = '"+id+"'" + * ); int update = DBSql.update(sql.toString()); + * + * } + */ + + InputStream originfile = SDK.getDCAPI().read(dcContextorigin); + try { + logMaps.put("PLNAME", palRepositoryModel.getName()); + PALRepositoryModel prmodel = PALRepositoryCache.getCache().get(palRepositoryModel.getParentId()); + if (prmodel != null) { + logMaps.put("FRNAME", prmodel.getName()); + } + boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, "", fileName, + originfile, id, "f"); + if (writeFileTodisk) { + logMaps.put("UPFILESTATE", "上传成功!"); + + } else { + logMaps.put("UPFILESTATE", "上传失败!"); + + } + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + } + + } + } + + } catch (Exception e) { + // TODO: handle exception + } finally { + SDK.getBOAPI().createDataBO("BO_ACT_FORMDATDFILE_LOG_ALL", new BO().setAll(logMaps), userContext); + } } - + + + @SuppressWarnings("deprecation") + public void controlPolicyFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) { + HashMap logMaps = new HashMap(); + logMaps.put("FILENAME", fileName); + try { + + //获取最后一个.的位置 + int lastIndexOf = fileName.lastIndexOf("."); + //获取文件的后缀名 + String suffix = fileName.substring(lastIndexOf); + + + String substring; + if (StringUtils.equals(suffix, ".xml")) { + substring = fileName.substring(0, fileName.indexOf(".xml")); + } else { + substring = fileName.substring(0, fileName.indexOf(".doc")); + } + + PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName2(wsId, substring); + if (null == palRepositoryModel) { + logMaps.put("UPFILESTATE", "文件没有匹配到制度模型!"); + } else { + String id = palRepositoryModel.getId(); + logMaps.put("PALID", id); + //查询对应绩效模型中数据模型进行填充数据 + BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); + String shpId = ""; + String define = defineModel.getDefinition(); + JSONObject definition = JSONObject.parseObject(define); + JSONObject elements = definition.getJSONObject("elements"); + for (String key : elements.keySet()) { + JSONObject shape1 = elements.getJSONObject(key); + if ("regulation".equals(shape1.getString("name"))) { + shpId = key; + break; + } + } + if ("".equals(shpId)) { + logMaps.put("UPFILESTATE", "模型中没有对应的形状!"); + } else { + DCPluginProfile dcProfilepdfdoc = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); + //将文件挂载到附件里面 + DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); + StringBuffer sql = new StringBuffer(); + //删除已有xml文件 + sql.append("delete from ").append(UpfileModel.DATABASE_ENTITY).append(" WHERE SHAPEID = '" + shpId + "'"); + int update = DBSql.update(sql.toString()); + InputStream originfile = SDK.getDCAPI().read(dcContextorigin); + try { + boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, originfile, id, "s"); + if (writeFileTodisk) { + logMaps.put("UPFILESTATE", "上传成功!"); + } else { + logMaps.put("UPFILESTATE", "上传失败!"); + } + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + } + } + + + } + + } catch (Exception e) { + // TODO: handle exception + } finally { + SDK.getBOAPI().createDataBO("BO_ACT_DATAMIGRATION_LOG_T", new BO().setAll(logMaps), userContext); + } + } + //导入表单附件 public void formDataFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) { - HashMap logMaps = new HashMap(); - logMaps.put("FILENAME", fileName); - try { - String name = fileName.substring(0,fileName.lastIndexOf(".")); + HashMap logMaps = new HashMap(); + logMaps.put("FILENAME", fileName); + try { + String name = fileName.substring(0, fileName.lastIndexOf(".")); PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName(wsId, name); - if(null==palRepositoryModel) { - logMaps.put("UPFILESTATE", "文件没有匹配到表单模型!"); - }else { - String shpId = ""; - String id = palRepositoryModel.getId(); - logMaps.put("PALID",id); - //查询对应绩效模型中数据模型进行填充数据 - BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); - if(null==defineModel) { - shpId = createOneMap2(wsId, name, userContext); - if("".equals(shpId)) { - logMaps.put("UPFILESTATE", "表单图形创建失败!"); - - } - }else { - String define = defineModel.getDefinition(); - JSONObject definition = JSONObject.parseObject(define); - JSONObject elements = definition.getJSONObject("elements"); - for (String key : elements.keySet()) { - JSONObject shape1 = elements.getJSONObject(key); - if("form".equals(shape1.getString("name"))) { - shpId = key; - break; - } - } - } - if("".equals(shpId)) { - //画一个图形 并返回图形ID - shpId = createOneMap2(wsId, name, userContext); - if("".equals(shpId)) { - logMaps.put("UPFILESTATE", "表单图形创建失败!"); - - } - } - String fileName_shap = ""; - UpFileDao upFileDao = new UpFileDao(); - StringBuilder sqlWhere = new StringBuilder(); - sqlWhere.append(" and PALREPOSITORYID ='").append(id).append("'"); - List fileList = upFileDao.search(sqlWhere.toString()); - if (fileList != null && fileList.size() > 0) - for (UpfileModel upfileModel : fileList) { - if ("s".equals(upfileModel.getType())) { - String fileName_shaps= upfileModel.getFileName(); - if(UtilString.isNotEmpty(fileName_shaps)) { - fileName_shap = fileName_shaps.substring(0,fileName_shaps.lastIndexOf(".")); - } - } - } - if(name.equals(fileName_shap)) { - logMaps.put("UPFILESTATE", "此文件已存在,已忽略!"); - }else { - - DCPluginProfile dcProfilepdfdoc = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); - //将文件挂载到附件里面 - DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); - InputStream originfile = SDK.getDCAPI().read(dcContextorigin); - try { - boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, originfile, id, "s"); - if(writeFileTodisk) { - logMaps.put("UPFILESTATE", "上传成功!"); - }else { - logMaps.put("UPFILESTATE", "上传失败!"); - } - } catch (FileNotFoundException e1) { - e1.printStackTrace(); - } - - } - - } - - } catch (Exception e) { - // TODO: handle exception - }finally { - SDK.getBOAPI().createDataBO("BO_ACT_FORMDATDFILE_LOG_F", new BO().setAll(logMaps), userContext); - } + if (null == palRepositoryModel) { + logMaps.put("UPFILESTATE", "文件没有匹配到表单模型!"); + } else { + String shpId = ""; + String id = palRepositoryModel.getId(); + logMaps.put("PALID", id); + //查询对应绩效模型中数据模型进行填充数据 + BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0); + if (null == defineModel) { + shpId = createOneMap2(wsId, name, userContext); + if ("".equals(shpId)) { + logMaps.put("UPFILESTATE", "表单图形创建失败!"); + + } + } else { + String define = defineModel.getDefinition(); + JSONObject definition = JSONObject.parseObject(define); + JSONObject elements = definition.getJSONObject("elements"); + for (String key : elements.keySet()) { + JSONObject shape1 = elements.getJSONObject(key); + if ("form".equals(shape1.getString("name"))) { + shpId = key; + break; + } + } + } + if ("".equals(shpId)) { + //画一个图形 并返回图形ID + shpId = createOneMap2(wsId, name, userContext); + if ("".equals(shpId)) { + logMaps.put("UPFILESTATE", "表单图形创建失败!"); + + } + } + String fileName_shap = ""; + UpFileDao upFileDao = new UpFileDao(); + StringBuilder sqlWhere = new StringBuilder(); + sqlWhere.append(" and PALREPOSITORYID ='").append(id).append("'"); + List fileList = upFileDao.search(sqlWhere.toString()); + if (fileList != null && fileList.size() > 0) + for (UpfileModel upfileModel : fileList) { + if ("s".equals(upfileModel.getType())) { + String fileName_shaps = upfileModel.getFileName(); + if (UtilString.isNotEmpty(fileName_shaps)) { + fileName_shap = fileName_shaps.substring(0, fileName_shaps.lastIndexOf(".")); + } + } + } + if (name.equals(fileName_shap)) { + logMaps.put("UPFILESTATE", "此文件已存在,已忽略!"); + } else { + + DCPluginProfile dcProfilepdfdoc = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); + //将文件挂载到附件里面 + DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName); + InputStream originfile = SDK.getDCAPI().read(dcContextorigin); + try { + boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, originfile, id, "s"); + if (writeFileTodisk) { + logMaps.put("UPFILESTATE", "上传成功!"); + } else { + logMaps.put("UPFILESTATE", "上传失败!"); + } + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + } + + } + + } + + } catch (Exception e) { + // TODO: handle exception + } finally { + SDK.getBOAPI().createDataBO("BO_ACT_FORMDATDFILE_LOG_F", new BO().setAll(logMaps), userContext); + } } - + //导入表单属性及附件 public void getTableInfo(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) { DCPluginProfile dcProfilepdf = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration"); @@ -564,9 +557,8 @@ public class ReadTable { } }); } - - - + + /** * 创建表单图形,用于挂附件 * @@ -604,7 +596,7 @@ public class ReadTable { props1.put("zindex", 0); elements.put(shapeIdz, shapeze); - // Map> methodAttrsMap = new HashMap<>(); + // Map> methodAttrsMap = new HashMap<>(); //handleShapeDefaultAttr("", palRepositoryModel, elements, methodAttrsMap, docfile); // 设置画布大小 defineModel.setDefinition(definition.toString()); @@ -612,9 +604,8 @@ public class ReadTable { CoeDesignerAPIManager.getInstance().storeDefinition(defineModel);// dao操作 return shapeIdz; } - - - + + /** * 创建表单图形 *