@ -1,6 +1,7 @@
package com.engine.custom.archives.service ;
import cn.hutool.core.util.ZipUtil ;
import com.alibaba.fastjson.JSONObject ;
import com.dcfs.fts.common.error.FtpException ;
import com.engine.custom.archives.entity.PushArchivesBean ;
import com.engine.custom.archives.util.ArchivesUtil ;
@ -8,16 +9,18 @@ import com.engine.custom.hg.util.HgUtils;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
import weaver.conn.RecordSet ;
import weaver.file.ImageFileManager ;
import weaver.general.Util ;
import weaver.hrm.User ;
import weaver.hrm.company.DepartmentComInfo ;
import weaver.soa.workflow.request.RequestInfo ;
import weaver.soa.workflow.request.RequestService ;
import java.io.File ;
import java.io.FileOutputStream ;
import java.io.IOException ;
import java.io.OutputStream ;
import java.io.* ;
import java.text.SimpleDateFormat ;
import java. u til. Date;
import java. util.List ;
import java.util. Map ;
import java.time.LocalDate ;
import java.time.format.DateTimeFormatter ;
import java.util. * ;
public class SignReportPushArchivesService {
public static Logger log = LoggerFactory . getLogger ( "Archives" ) ;
@ -54,7 +57,8 @@ public class SignReportPushArchivesService {
// 获取当前时间的最后一秒
String lastSecond = yyyyMMddHHmmss . format ( ArchivesUtil . getLastSecondOfDate ( date ) ) ;
RecordSet recordSet = new RecordSet ( ) ;
List < PushArchivesBean > result = ArchivesUtil . getResultList ( recordSet , firstSecond , lastSecond , 0 ) ;
//签报 type = 2
List < PushArchivesBean > result = ArchivesUtil . getResultList ( recordSet , firstSecond , lastSecond , 2 ) ;
log . error ( "推送发文的数量:{}" , result . size ( ) ) ;
File file = ArchivesUtil . crFile ( filePath + "/togd_" + new SimpleDateFormat ( "yyyyMMdd000000" ) . format ( date ) ) ;
log . error ( "textfile:{}" , file . getAbsolutePath ( ) ) ;
@ -63,7 +67,7 @@ public class SignReportPushArchivesService {
int request = pushArchivesBean . getRequest ( ) ;
log . error ( "推送的requestId:{}" , request ) ;
try {
// String context = generateFile(request);
String context = generateFile ( request ) ;
ArchivesUtil . writeToTxt ( file . getPath ( ) , file . getName ( ) , context , true ) ;
File txtzip = new File ( filePath + File . separator + "togd_" + new SimpleDateFormat ( "yyyyMMdd000000" ) . format ( date ) + ".zip" ) ;
log . error ( "textZipFile:{}" , txtzip . getAbsolutePath ( ) ) ;
@ -81,4 +85,382 @@ public class SignReportPushArchivesService {
}
}
}
private String generateFile ( int requestid ) throws FtpException , IOException {
Map < String , String > requesData = getRequestByid ( requestid ) ;
log . info ( "requesData:{}" , requesData ) ;
String fj = Util . null2String ( requesData . get ( "fj" ) ) ;
String dwd = Util . null2String ( requesData . get ( "dwd" ) ) ;
String zw = Util . null2String ( requesData . get ( "zw" ) ) ;
String qgqhj = Util . null2String ( requesData . get ( "qgqhj" ) ) ;
//增加签字意见中的附件到附件文件夹中
Map < String , String > signFiles = ArchivesUtil . getSignFiles ( requestid , true ) ;
List < String > docids = new ArrayList < > ( ) ;
// docids.addAll(Arrays.asList(fj.split(",")));
// docids.addAll(Arrays.asList(zwkbj.split(",")));
Map < String , String > fjMap = ArchivesUtil . getFileIdByDocId ( fj ) ;
Map < String , String > zwMap = ArchivesUtil . getFileIdByDocId ( zw ) ;
Map < String , String > qgqhjMap = ArchivesUtil . getFileIdByDocId ( qgqhj ) ;
List < String > zwFileName = new ArrayList < > ( ) ;
List < String > fjFileName = new ArrayList < > ( ) ;
final int [ ] i = { 1 } ;
//附件
fjMap . forEach ( ( docid , imageid ) - > {
ImageFileManager imageFileManager = new ImageFileManager ( ) ;
imageFileManager . getImageFileInfoById ( Util . getIntValue ( imageid ) ) ;
InputStream inputStream = imageFileManager . getInputStream ( ) ;
//中文路径/中文文件名
String imageFileName = filePath + File . separator + requestid + File . separator + fjdir + File . separator + lcfjWord + "-" + imageFileManager . getImageFileName ( ) ;
fjFileName . add ( imageFileManager . getImageFileName ( ) ) ;
log . info ( "生成附件路径:{}" , imageFileName ) ;
imageFileName = ArchivesUtil . codeUtf8 ( imageFileName ) ;
try {
File file = ArchivesUtil . saveInputStreamToFile ( inputStream , imageFileName ) ;
String jsonStr = ArchivesUtil . callApi ( Url , file ) ;
log . error ( "永中接口返回数据:{}" , jsonStr ) ;
JSONObject result = JSONObject . parseObject ( jsonStr ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , filePath + File . separator + requestid + File . separator + fjdir + File . separator + lcfjWord + "-" + imageFileManager . getImageFileName ( ) + ".pdf" ) ;
}
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
} ) ;
//签字意见附件
signFiles . forEach ( ( docid , imageid ) - > {
ImageFileManager imageFileManager = new ImageFileManager ( ) ;
imageFileManager . getImageFileInfoById ( Util . getIntValue ( imageid ) ) ;
InputStream inputStream = imageFileManager . getInputStream ( ) ;
//中文路径/中文文件名
String imageFileName = filePath + File . separator + requestid + File . separator + fjdir + File . separator + qzyjfjWord + "-" + imageFileManager . getImageFileName ( ) ;
fjFileName . add ( imageFileManager . getImageFileName ( ) ) ;
log . info ( "生成签字意见附件路径:{}" , imageFileName ) ;
imageFileName = ArchivesUtil . codeUtf8 ( imageFileName ) ;
try {
File file = ArchivesUtil . saveInputStreamToFile ( inputStream , imageFileName ) ;
String jsonStr = ArchivesUtil . callApi ( Url , file ) ;
log . error ( "永中接口返回数据:{}" , jsonStr ) ;
JSONObject result = JSONObject . parseObject ( jsonStr ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , filePath + File . separator + requestid + File . separator + fjdir + File . separator + qzyjfjWord + "-" + imageFileManager . getImageFileName ( ) + ".pdf" ) ;
}
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
} ) ;
//正文
zwMap . forEach ( ( docid , imageid ) - > {
ImageFileManager imageFileManager = new ImageFileManager ( ) ;
imageFileManager . getImageFileInfoById ( Util . getIntValue ( imageid ) ) ;
InputStream inputStream = imageFileManager . getInputStream ( ) ;
String newFile = fjWord + i [ 0 ] + "_" + zwWord + "-" + imageFileManager . getImageFileName ( ) ;
//中文路径/中文文件名
String imageFileName = filePath + File . separator + requestid + File . separator + zwdir + File . separator + newFile ;
zwFileName . add ( newFile ) ;
log . info ( "生成正文路径:{}" , imageFileName ) ;
imageFileName = ArchivesUtil . codeUtf8 ( imageFileName ) ;
try {
File file = ArchivesUtil . saveInputStreamToFile ( inputStream , imageFileName ) ;
String jsonStr = ArchivesUtil . callApi ( Url , file ) ;
log . error ( "永中接口返回:{}" , jsonStr ) ;
JSONObject result = JSONObject . parseObject ( jsonStr ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , filePath + File . separator + requestid + File . separator + zwdir + File . separator + newFile + ".pdf" ) ;
}
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
i [ 0 ] + + ;
} ) ;
//清稿前痕迹
qgqhjMap . forEach ( ( docid , imageid ) - > {
ImageFileManager imageFileManager = new ImageFileManager ( ) ;
imageFileManager . getImageFileInfoById ( Util . getIntValue ( imageid ) ) ;
InputStream inputStream = imageFileManager . getInputStream ( ) ;
String newFile = fjWord + i [ 0 ] + "_" + lhgWord + "-" + imageFileManager . getImageFileName ( ) ;
zwFileName . add ( newFile ) ;
//中文路径/中文文件名
String imageFileName = filePath + File . separator + requestid + File . separator + zwdir + File . separator + newFile ;
log . info ( "生成清稿前痕迹路径:{}" , imageFileName ) ;
imageFileName = ArchivesUtil . codeUtf8 ( imageFileName ) ;
try {
File file = ArchivesUtil . saveInputStreamToFile ( inputStream , imageFileName ) ;
String jsonStr = ArchivesUtil . callApi ( Url , file ) ;
log . error ( "永中接口返回:{}" , jsonStr ) ;
JSONObject result = JSONObject . parseObject ( jsonStr ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , filePath + File . separator + requestid + File . separator + zwdir + File . separator + newFile + ".pdf" ) ;
}
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
i [ 0 ] + + ;
} ) ;
//套红后留痕
// thhlhMap.forEach((docid, imageid) -> {
// ImageFileManager imageFileManager = new ImageFileManager();
// imageFileManager.getImageFileInfoById(Util.getIntValue(imageid));
// InputStream inputStream = imageFileManager.getInputStream();
// zwFileName.add(imageFileManager.getImageFileName());
// //中文路径/中文文件名
// String imageFileName = filePath + File.separator + requestid + File.separator + zwdir + File.separator + fjWord + i[0] + "_" + lhgWord + "_" + imageFileManager.getImageFileName();
// log.info("生成套红后留痕路径:{}", imageFileName);
// imageFileName = ArchivesUtil.codeUtf8(imageFileName);
// try {
// File file = ArchivesUtil.saveInputStreamToFile(inputStream, imageFileName);
// String jsonStr = ArchivesUtil.callApi(Url, file);
// log.error("永中接口返回:{}", jsonStr);
// JSONObject result = JSONObject.parseObject(jsonStr);
// String errorcode = result.getString("errorcode");
// if ("0".equals(errorcode)) {
// JSONObject data = result.getJSONObject("data");
// String destFileName = data.getString("destFileName");
// String viewUrl = data.getString("viewUrl");
// ArchivesUtil.downloadFile(viewUrl, filePath + File.separator + requestid + File.separator + zwdir + File.separator + fjWord + i[0] + "_" + lhgWord + "_" + imageFileManager.getImageFileName() + ".pdf");
// }
// } catch (IOException e) {
// e.printStackTrace();
// }
// i[0]++;
// });
//开始承办单 先获取主流程的承办单
List < String > requestDocid = ArchivesUtil . generaRequestFormPdf ( requestid , 1 ) ;
// 1.去掉生成子流程承办单
// List<String> subRequestDocid = generaSubRequestFormPdf(requestid);
Map < String , String > reqDocMap = ArchivesUtil . getFileIdByDocId ( String . join ( "," , requestDocid ) ) ;
// 2.去掉生成子流程承办单
// Map<String, String> subReqDocMap = getFileIdByDocId(String.join(",", subRequestDocid));
log . error ( "reqDocMap:{}" , JSONObject . toJSONString ( reqDocMap ) ) ;
//log.error("subReqDocMap:{}", JSONObject.toJSONString(subReqDocMap));
docids . addAll ( requestDocid ) ;
// 3.去掉生成子流程承办单
// docids.addAll(subRequestDocid);
i [ 0 ] = 1 ;
//主流程承办单
reqDocMap . forEach ( ( docid , imageid ) - > {
ImageFileManager imageFileManager = new ImageFileManager ( ) ;
imageFileManager . getImageFileInfoById ( Util . getIntValue ( imageid ) ) ;
InputStream inputStream = imageFileManager . getInputStream ( ) ;
//中文路径/中文文件名
// String imageFileName = filePath + File.separator + requestid + File.separator + cbddir + File.separator + fjFile + i[0] + "_" + imageFileManager.getImageFileName();
String imageFileName = filePath + File . separator + requestid + File . separator + cbddir + File . separator + fjFile + i [ 0 ] + "_" + wjcldWord + ".pdf" ;
log . info ( "主流程承办单路径:{}" , imageFileName ) ;
imageFileName = ArchivesUtil . codeUtf8 ( imageFileName ) ;
try {
File file = ArchivesUtil . saveInputStreamToFile ( inputStream , imageFileName ) ;
String jsonStr = ArchivesUtil . callApi ( Url , file ) ;
log . error ( "永中接口返回:{}" , jsonStr ) ;
JSONObject result = JSONObject . parseObject ( jsonStr ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , filePath + File . separator + requestid + File . separator + cbddir + File . separator + fjFile + i [ 0 ] + "_" + wjcldWord + ".pdf" + ".pdf" ) ;
}
i [ 0 ] + + ;
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
} ) ;
//正文
log . error ( JSONObject . toJSONString ( requestDocid ) ) ;
for ( String docid : docids ) {
log . error ( "删除了" + docid ) ;
ArchivesUtil . deleteDocByid ( docid ) ;
}
//--------------------------------------------------------------------
RequestService requestService = new RequestService ( ) ;
RequestInfo requestInfo = requestService . getRequest ( Util . getIntValue ( requestid ) , 100 ) ;
String workflowid = requestInfo . getWorkflowid ( ) ;
String logFile = ArchivesUtil . getSignLog ( requestid , cbddir + File . separator + lzxxdir , requestInfo . getCreatorid ( ) + requestInfo . getDescription ( ) , templatePath , filePath , true , workflowid ) ;
String s = ArchivesUtil . callApi ( Url , new File ( logFile ) ) ;
log . error ( s ) ;
JSONObject result = JSONObject . parseObject ( s ) ;
String errorcode = result . getString ( "errorcode" ) ;
if ( "0" . equals ( errorcode ) ) {
JSONObject data = result . getJSONObject ( "data" ) ;
String destFileName = data . getString ( "destFileName" ) ;
String viewUrl = data . getString ( "viewUrl" ) ;
ArchivesUtil . downloadFile ( viewUrl , logFile + ".pdf" ) ;
}
String zipName = filePath + File . separator + requestid + ".zip" ;
ZipUtil . zip ( filePath + File . separator + requestid , zipName ) ;
log . error ( "zipName:{}" , zipName ) ;
String ftpFilePath = HgUtils . putFile ( zipName , requestid + ".zip" ) ;
log . error ( "ftpFilePath:{}" , ftpFilePath ) ;
// String ftpFilePathNew = HgUtils.putFile(zipName, "test" + File.separator + requestid + ".zip");
// log.error("ftpFilePathNew:{}", ftpFilePathNew);
String context = getContext ( requestid , requesData , requestid + ".zip" , zwFileName , fjFileName ) ;
// insertRecord(requestid, context, ftpFilePath);
log . error ( "context:{}" , context ) ;
return context ;
}
/ * * *
* 封 装 数 据
* @param requestid
* @return
* /
public Map < String , String > getRequestByid ( int requestid ) {
HashMap < String , String > record = new HashMap < > ( ) ;
String sql = "select * from formtable_main_20 where requestid = ?" ;
String reqsql = "select REQUESTNAME from WORKFLOW_REQUESTBASE where REQUESTID = ?" ;
RecordSet rs = new RecordSet ( ) ;
rs . executeQuery ( sql , requestid ) ;
if ( rs . next ( ) ) {
record . put ( "bh" , Util . null2String ( rs . getString ( "bh" ) ) ) ;
record . put ( "ngbm" , Util . null2String ( rs . getString ( "ngbm " ) ) ) ;
record . put ( "ngr" , Util . null2String ( rs . getString ( "ngr" ) ) ) ;
record . put ( "ngrq" , Util . null2String ( rs . getString ( "ngrq" ) ) ) ;
record . put ( "lxfs" , Util . null2String ( rs . getString ( "lxfs" ) ) ) ;
record . put ( "bt" , Util . null2String ( rs . getString ( "bt" ) ) ) ;
record . put ( "zw" , Util . null2String ( rs . getString ( "zw" ) ) ) ;
record . put ( "fj" , Util . null2String ( rs . getString ( "fj" ) ) ) ;
record . put ( "hqbm" , Util . null2String ( rs . getString ( "hqbm" ) ) ) ;
record . put ( "hqbmzhwy" , Util . null2String ( rs . getString ( "hqbmzhwy" ) ) ) ;
record . put ( "hqdqbm" , Util . null2String ( rs . getString ( "hqdqbm" ) ) ) ;
record . put ( "ffbm" , Util . null2String ( rs . getString ( "ffbm" ) ) ) ;
record . put ( "hqbmzjhqbmzj" , Util . null2String ( rs . getString ( "hqbmzj" ) ) ) ;
record . put ( "dwd" , Util . null2String ( rs . getString ( "dwd" ) ) ) ;
record . put ( "bmffzj" , Util . null2String ( rs . getString ( "bmffzj" ) ) ) ;
record . put ( "dqnf" , Util . null2String ( rs . getString ( "dqnf" ) ) ) ;
record . put ( "qgqhj" , Util . null2String ( rs . getString ( "qgqhj" ) ) ) ;
}
rs . executeQuery ( reqsql , requestid ) ;
if ( rs . next ( ) ) {
record . put ( "REQUESTNAME" , Util . null2String ( rs . getString ( "REQUESTNAME" ) ) ) ;
}
return record ;
}
private String getContext ( int requestid , Map < String , String > requesData , String zipName , List < String > zwFileName , List < String > fjFileName ) {
StringBuilder context = new StringBuilder ( ) ;
try {
DepartmentComInfo departmentComInfo = new DepartmentComInfo ( ) ;
String ngrq = Util . null2String ( requesData . get ( "ngrq" ) ) ; //拟稿日期
DateTimeFormatter formatter = DateTimeFormatter . ofPattern ( "yyyy-MM-dd" ) ;
LocalDate date = LocalDate . parse ( ngrq , formatter ) ;
int year = date . getYear ( ) ;
context . append ( year ) . append ( "|" ) ; //1.年度 -> 拟稿日期
String jghwt = Util . null2String ( requesData . get ( "jghwt" ) ) ; //2.机构或问题 -> 机构或问题
context . append ( jghwt ) . append ( "|" ) ;
String bh = Util . null2String ( requesData . get ( "bh" ) ) ; // 3.文号 -> 编号
context . append ( bh ) . append ( "|" ) ;
String requestname = Util . null2String ( requesData . get ( "REQUESTNAME" ) ) ; // 4.文件题名 -> 流程名称
context . append ( requestname ) . append ( "|" ) ;
String ngbmName = Util . null2String ( departmentComInfo . getDepartmentname ( requesData . get ( "ngbm" ) ) ) ; //5 责任者 -> 拟稿部门
context . append ( ngbmName ) . append ( "|" ) ;
String bgqx = Util . null2String ( requesData . get ( "bgqx" ) ) ; //6 保管期限 -> 保管期限
context . append ( bgqx ) . append ( "|" ) ;
String cwrq = Util . null2String ( requesData . get ( "cwrq" ) ) ; //7 日期 -> 成文日期
context . append ( cwrq ) . append ( "|" ) ;
String ys = Util . null2String ( requesData . get ( "ys" ) ) ; //8 页数 -> 页数
context . append ( ys ) . append ( "|" ) ;
String wz = Util . null2String ( requesData . get ( "wz" ) ) ; //9 文种 -> 文种
context . append ( wz ) . append ( "|" ) ;
String ngbm = Util . null2String ( requesData . get ( "ngbm" ) ) ;
String [ ] deptData = ArchivesUtil . getDeptNameAndCode ( ngbm ) ;
context . append ( deptData [ 0 ] ) . append ( "|" ) ; //10 行编号 -> 拟稿部门
context . append ( deptData [ 1 ] ) . append ( "|" ) ; //11 行名称
context . append ( "" ) . append ( "|" ) ; // 12 保管期限编号
context . append ( "" ) . append ( "|" ) ; // 13 保管期限及编号
context . append ( "" ) . append ( "|" ) ; // 14 是否开放
context . append ( "" ) . append ( "|" ) ; // 15 互见号
String lb = Util . null2String ( requesData . get ( "lb" ) ) ;
context . append ( lb ) . append ( "|" ) ; //16 类别 -> 类别
//TODO
String xgbm = Util . null2String ( getAssociatedDepts ( requesData ) ) ;
context . append ( xgbm ) . append ( "|" ) ; //17 相关部门 -> 流经部门
// String lwh = Util.null2String(requesData.get("lwh"));
context . append ( "" ) . append ( "|" ) ; // 18 收文号 -> 空
String fs = "" ;
context . append ( fs ) . append ( "|" ) ; // 19 份数 -> 份数
String bz = Util . null2String ( requesData . get ( "bz" ) ) ;
context . append ( "" ) . append ( "|" ) ; // 20 备注 -> 备注
String yywh = Util . null2String ( requesData . get ( "yywh" ) ) ;
context . append ( "" ) . append ( "|" ) ; // 21 引用文号 -> 引用文号
String wjlx = Util . null2String ( requesData . get ( "wjlx" ) ) ;
context . append ( "" ) . append ( "|" ) ; // 22 文件类型 -> 空
String fwlx = Util . null2String ( requesData . get ( "fwlx" ) ) ;
context . append ( "总行发文" ) . append ( "|" ) ; // 23 发文类型 -> 空
String f = Util . null2String ( requesData . get ( "f" ) ) ;
context . append ( f ) . append ( "|" ) ; // 24 发 -> 空
String ngr = Util . null2String ( requesData . get ( "ngr" ) ) ;
context . append ( new User ( Util . getIntValue ( ngr ) ) . getLoginid ( ) ) . append ( "|" ) ; // 25 拟稿人 -> 拟稿人
context . append ( ngbmName ) . append ( "|" ) ; // 26 拟稿部门 -> 拟稿部门名称
context . append ( "发文" ) . append ( "|" ) ; // 27 公文类型 -> "收文"
//TODO
context . append ( ArchivesUtil . getAssociatedPersons ( requestid , false ) ) . append ( "|" ) ; // 28 相关人员 -> 参与人员
context . append ( "智慧OA" ) . append ( "|" ) ; // 29 数据来源 -> 数据来源
context . append ( year ) . append ( "|" ) ; // 30 形成年度 -> 年份
context . append ( String . join ( "&&" , zwFileName ) ) . append ( "|" ) ; // 31 正文名称
context . append ( String . join ( "&&" , fjFileName ) ) . append ( "|" ) ; // 32 附件名称
context . append ( requestid ) . append ( "|" ) ; // 33 主键
context . append ( "" ) . append ( "|" ) ; // 34 关联主键
context . append ( "" ) . append ( "|" ) ; // 35 被关联主键
context . append ( zipName ) ; // 36 压缩包名称
} catch ( Exception e ) {
e . printStackTrace ( ) ;
log . error ( "getContextError:{}" , e . getMessage ( ) ) ;
}
return context . toString ( ) ;
}
private String getAssociatedDepts ( Map < String , String > requesData ) {
HashSet < String > records = new HashSet < > ( ) ;
records . addAll ( Arrays . asList ( Util . null2String ( requesData . get ( "ngbm" ) ) . split ( "," ) ) ) ; // 会签部门
records . addAll ( Arrays . asList ( Util . null2String ( requesData . get ( "hqbm" ) ) . split ( "," ) ) ) ; // 拟稿部门
records . addAll ( Arrays . asList ( Util . null2String ( requesData . get ( "ffbm" ) ) . split ( "," ) ) ) ; // 部门阅办
records . addAll ( Arrays . asList ( Util . null2String ( requesData . get ( "hqbmzj" ) ) . split ( "," ) ) ) ; // 抄送
records . addAll ( Arrays . asList ( Util . null2String ( requesData . get ( "bmffzj" ) ) . split ( "," ) ) ) ; // 本行发送
ArrayList < String > deptName = new ArrayList < > ( ) ;
DepartmentComInfo departmentComInfo = new DepartmentComInfo ( ) ;
for ( String record : records ) {
try {
String departmentName = departmentComInfo . getDepartmentName ( record ) ;
deptName . add ( departmentName ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
return String . join ( "&&" , deptName ) ;
}
private void updateRecord ( int requestid , String s ) {
String sql = "update uf_pushArchivesLog set esbtxtml = ? where request = ?" ;
RecordSet recordSet = new RecordSet ( ) ;
recordSet . executeUpdate ( sql , s , requestid ) ;
}
}