This commit is contained in:
Rinjae
2025-09-05 17:16:26 +09:00
commit c54ef1903f
4947 changed files with 817291 additions and 0 deletions
@@ -0,0 +1,170 @@
package com.eactive.eai.rms.bap.tansaction.messageProcReq;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.eactive.eai.rms.bap.manage.work.message.BapMessageProcSqlService;
import com.eactive.eai.rms.common.base.BapBaseAnnotationController;
import com.eactive.eai.rms.common.combo.ComboService;
import com.eactive.eai.rms.common.combo.ComboVo;
import com.eactive.eai.rms.common.combo.IbatisComboService;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
import com.eactive.fep.batch.client.FEPClient;
@Controller
public class BapMessageReqController extends BapBaseAnnotationController {
@Autowired
@Qualifier("bapMessageReqService")
private BapMessageReqService service;
@Autowired
private BapMessageProcSqlService sqlService;
@Autowired
private ComboService comboService;
@Autowired
private IbatisComboService ibatisComboService;
@RequestMapping(value= "/bap/transaction/messageReqMan.view")
public String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
}else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value= "/bap/transaction/messageReqMan.json", params = "cmd=LIST")
public ModelAndView selectList(HttpServletRequest request,
JsonPageVo pageVo , @RequestParam HashMap<String, Object> paramMap) throws Exception {
HashMap<String, Object> map = service.selectList( pageVo.getStartNum(), pageVo.getEndNum(), paramMap);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total" , pageVo.getTotal()); //전체 페이지수
resultMap.put("page" , pageVo.getPage()); //현재 페이지수
resultMap.put("records", pageVo.getTotalCount());//전체 레코드건수
resultMap.put("rows" , map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value= "/bap/transaction/messageReqMan.json", params = "cmd=TRANSACTION_RESEND")
public ModelAndView resend(HttpServletRequest request, String bjobDmndMsgID, String sndRecvFileName) throws Exception
{
Map<String, Object> returnMap = new HashMap<String, Object>();
String systemMode = System.getProperty("eai.systemmode");
String message="";
FEPClient fepClient;
switch(systemMode) {
case "D":
message="개발계에서는 사용할수 없습니다.";
break;
case "S":
fepClient = new FEPClient("http://tfepbt-vip.pobis.kr:20080");
message = fepClient.fepBatchCall("T", bjobDmndMsgID, sndRecvFileName);
break;
case "P":
fepClient = new FEPClient("http://pfepbt-vip.pobis.kr:20080");
message = fepClient.fepBatchCall("P", bjobDmndMsgID, sndRecvFileName);
break;
}
returnMap.put("result_resend", message);
ModelAndView modelAndView = new ModelAndView("jsonView",returnMap);
return modelAndView;
}
@SuppressWarnings("unchecked")
@RequestMapping(value= "/bap/transaction/messageReqMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initGroupCoCdCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<ComboVo> groupCoCd = comboService.getFromCode("EAIGROUPCOCD");
List<Map<String, Object>> bjobBzwkDstcd = ibatisComboService.selectListComboForTableWithCode("TSEAIBJ02", "BJOBBZWKDSTCD", "BJOBBZWKNAME");
List<Map<String, Object>> sysCd = ibatisComboService.selectListComboForTableWithCode("TSEAIBJ11", "SYSCD", "SYSNAME");
List<Map<String, Object>> uapplCd = ibatisComboService.selectListComboForTableWithCode("TSEAICM01", "TRIM(EAIBZWKDSTCD)", "BZWKDSTICNAME");
List<ComboVo> useYn = comboService.getFromCode("USE_YN");
List<Map<String, String>> sndScriptName = new ArrayList<Map<String, String>>();
// CommonCommand command = new CommonCommand("com.eactive.eai.agent.makeDir.GetScriptListCommand","");
// Map<String, Object> returnMap = agentUtilService.broadcast(command);
// Iterator<String> iter = returnMap.keySet().iterator();
// String svrName = iter.next();
//
// ArrayList<String> sndScriptNameList = new ArrayList<String>();
// if (returnMap != null && returnMap.get(svrName) instanceof List) {
// sndScriptNameList = (ArrayList<String>)returnMap.get(svrName);
// for (String sndScriptNameItem : sndScriptNameList) {
// HashMap<String, String> map = new HashMap<String, String>();
// String item = sndScriptNameItem.replaceAll("\\\\", "/");
// map.put( "CODE", item);
// map.put( "NAME", item);
// sndScriptName.add(map);
// }
// }
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("bjobBzwkDstcd" , bjobBzwkDstcd);
resultMap.put("groupCoCd" , groupCoCd);
resultMap.put("sysCd" , sysCd);
resultMap.put("uapplCd" , uapplCd);
resultMap.put("sndScriptName" , sndScriptName);
resultMap.put("useYn" , useYn);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/messageReqMan.json",params = "cmd=LIST_PROP")
public ModelAndView getProps( HttpServletRequest request,
/*HttpServletResponse response, @RequestParam String bjobBzwkDstcd) throws Exception {*/
HttpServletResponse response, @RequestParam String bjobBzwkDstcd, String bjobTranDstcdName) throws Exception {
logger.debug("bjobBzwkDstcd--->" + bjobBzwkDstcd);
logger.debug("bjobTranDstcdName--->" + bjobTranDstcdName);
String propGroupName = "";
if (bjobBzwkDstcd != null && bjobTranDstcdName != null) {
propGroupName = bjobTranDstcdName.isEmpty() ? "TelegramInfo{" + bjobBzwkDstcd + "}" : "TelegramInfo{" + bjobBzwkDstcd + "_" + bjobTranDstcdName + "}";
}
HashMap<String, Object> map = service.getProps(bjobBzwkDstcd, propGroupName);
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
}
}
@@ -0,0 +1,76 @@
package com.eactive.eai.rms.bap.tansaction.messageProcReq;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.eactive.eai.rms.common.base.SqlMapClientTemplateDao;
@Repository("bapMessageReqDao")
@SuppressWarnings({"deprecation","unchecked"})
public class BapMessageReqDao extends SqlMapClientTemplateDao {
public int selectListCount(HashMap<String, Object> param) throws Exception {
return (Integer)template.queryForObject("BapMessageProc.selectListCount", param);
}
public List<Map<String, Object>> selectList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapMessageProc.selectList", param);
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
return (HashMap<String, Object>)template.queryForObject("BapMessageProc.selectDetail", param);
}
public List<Map<String, Object>> getProps(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapMessageProc.getProps", param);
}
public void insert(HashMap<String, Object> paramMap) throws Exception{
this.template.insert("BapMessageProc.insert", paramMap);
}
public String generatePK(HashMap<String, Object> paramMap ) {
try {
return (String)this.template.queryForObject("BapMessageProc.generatePK", paramMap);
} catch (Exception e) {
//취약점소스 수정 2020.08.24
logger.error(" error", e);
//e.printStackTrace();
}
return null;
}
public void insertPropInfo(HashMap<String, Object> paramMap) throws Exception{
this.template.insert("BapMessageProc.insertPropInfo", paramMap);
}
public void update(HashMap<String, Object> paramMap) throws Exception{
this.template.update("BapMessageProc.update", paramMap);
}
public void delete(HashMap<String, Object> paramMap) throws Exception{
this.template.delete("BapMessageProc.delete", paramMap);
}
public void deleteBS01(HashMap<String, Object> paramMap) throws Exception{
this.template.delete("BapMessageProc.deleteBS01", paramMap);
}
public void deletePropInfo(HashMap<String, Object> paramMap) throws Exception{
this.template.delete("BapMessageProc.deletePropInfo", paramMap);
}
public List<Map<String, Object>> selectBjobMsgDstcd(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapMessageProc.selectBjobMsgDstcd", param);
}
public List<Map<String, Object>> selectOsidInstiDstcd(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapMessageProc.selectOsidInstiDstcd", param);
}
public List<Map<String, Object>> selectBjobPtrnDstcd(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapMessageProc.selectBjobPtrnDstcd", param);
}
}
@@ -0,0 +1,296 @@
package com.eactive.eai.rms.bap.tansaction.messageProcReq;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.eactive.eai.rms.bap.common.base.BapBaseService;
import com.eactive.eai.rms.bap.manage.comm.property.BapPropertyDao;
import com.eactive.eai.rms.bap.manage.comm.property.BapTelePropertyDao;
import com.eactive.eai.rms.common.acl.user.UserDao;
import com.eactive.eai.rms.common.util.SqlUtil;
@Service("bapMessageReqService")
public class BapMessageReqService extends BapBaseService {
@Autowired
@Qualifier("bapMessageReqDao")
private BapMessageReqDao dao;
@Autowired
@Qualifier("bapTelePropertyDao")
private BapTelePropertyDao telePropDao;
@Autowired
@Qualifier("bapPropertyDao")
private BapPropertyDao propDao;
@Autowired
private UserDao userDao;
public HashMap<String, Object> selectList(int startNum,int endNum, HashMap<String, Object> paramMap) throws Exception {
// 전체 목록수 얻기
int totalCount = dao.selectListCount(paramMap);
paramMap.put("startNum" , startNum);// 시작 record
paramMap.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> list = dao.selectList(paramMap);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("totalCount", totalCount);
map.put("list", list);
return map;
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
HashMap<String, Object> detail = dao.selectDetail(param);
String bjobBzwkDstcd = (String)detail.get("BJOBBZWKDSTCD");
String bjobTranDstcdName = (String)detail.get("BJOBTRANDSTCDNAME");
param.put("bjobBzwkDstcd", bjobBzwkDstcd );
param.put("propGroupName", "TelegramInfo{" + bjobBzwkDstcd + "_" + bjobTranDstcdName + "}");
List<Map<String, Object>> list = dao.getProps(param);
HashMap<String, Object> map = new HashMap<String, Object>();
try {
Map<String, Object> user = userDao.selectDetail(new HashMap<String, Object>() {{
put("userId", String.valueOf(detail.get("THISMSGREGSNTID")));
}});
detail.put("BZWKRSEMPNAME", user.get("USERNAME"));
detail.put("BZWKRSEMPTELNO", user.get("OFCTELNO")); // 사무실 번호
// detail.put("BZWKRSEMPTELNO", user.get("CPHNNO")); // 휴대폰번호
} catch (Exception e) {
logger.error("유저 정보를 불러오기를 실패했습니다.", e);
}
map.put("detail", detail);
map.put("rows", list);
return map;
}
public void update(HashMap<String, Object> paramMap, HashMap<String, Object>[] list, HashMap<String, Object> connList) throws Exception {
dao.update(paramMap);
telePropDao.delete(paramMap);
telePropDao.deleteProperty(paramMap);
telePropDao.insert(paramMap);
HashMap<String, Object> prop ;
for(HashMap<String, Object> map : list){
String prptyName = (String)map.get("PRPTYNAME");
String prpty2Val = (String)map.get("PRPTY2VAL");
if ( !prptyName.equals("") && !prpty2Val.equals("")){
prop = new HashMap<String, Object>();
prop.putAll(paramMap);
prop.put("prptyGroupName",paramMap.get("prptyGroupName"));
prop.put("prptyName", prptyName);
prop.put("prpty2Val", prpty2Val);
telePropDao.insertProperty(prop);
}
}
}
public String insert(HashMap<String, Object> paramMap, HashMap<String, Object>[] list, HashMap<String, Object> connList) throws Exception {
String bjobMsgDstcd = ""; //inboundErrorInfoDao.generatePK(paramMap);
paramMap.put( "bjobMsgDstcd", bjobMsgDstcd);
dao.insert(paramMap);
telePropDao.delete(paramMap);
telePropDao.deleteProperty(paramMap);
telePropDao.insert(paramMap);
HashMap<String, Object> prop ;
for(HashMap<String, Object> map : list){
String prptyName = (String)map.get("PRPTYNAME");
String prpty2Val = (String)map.get("PRPTY2VAL");
if ( !prptyName.equals("") && !prpty2Val.equals("")){
prop = new HashMap<String, Object>();
prop.putAll(paramMap);
prop.put("prptyGroupName",paramMap.get("prptyGroupName"));
prop.put("prptyName", prptyName);
prop.put("prpty2Val", prpty2Val);
telePropDao.insertProperty(prop);
}
}
return bjobMsgDstcd;
}
public void delete(HashMap<String, Object> paramMap) throws Exception {
dao.delete(paramMap);
dao.deleteBS01(paramMap);
telePropDao.delete(paramMap);
telePropDao.deleteProperty(paramMap);
}
@SuppressWarnings("unchecked")
public HashMap<String,String> mkInsertSqlForMsgProc(HashMap<String, Object> msgProc) throws Exception {
StringBuffer msgProcInsertSql = new StringBuffer();
for (String bjobMsgDstcd : msgProc.get("bjobMsgDstcdList").toString().split(",")) {
HashMap<String, Object> paramDetail = new HashMap<String,Object>();
paramDetail.put("bjobMsgDstcd", bjobMsgDstcd);
HashMap<String, Object> msgProcDetail = selectDetail(paramDetail);
HashMap<String, Object> detail = (HashMap<String, Object>)msgProcDetail.get("detail");
List<Map<String, Object>> propList = (List<Map<String, Object>>)msgProcDetail.get("rows");
String bjobBzwkDstcd = (String)detail.get("BJOBBZWKDSTCD");
String bjobTranDstcd = (String)detail.get("BJOBTRANDSTCDNAME");
detail.put("PRPTYGROUPNAME", "TelegramInfo{" + bjobBzwkDstcd + "_" + bjobTranDstcd + "}");
String[] columnUserId = {"THISMSGREGSNTID","THISMSGAMNDRID"}; // userID 입력컬럼 구분
String[] columnDateTime = {"THISMSGREGIHMS","THISMSGAMNDHMS"}; // DateTime 입력컬럼 구분
String userid = msgProc.get("userid") != null ? msgProc.get("userid").toString() : "";
// 시스템대외기관 into BJ06
List<String> columnArr = new ArrayList<String>();
String[] columnList = {"BJOBMSGDSTCD","BJOBMSGDSTICNAME","BJOBBZWKDSTCD","BJOBTRANDSTCDNAME","BJOBTELGMHDRSIZE",
"BJOBTELGMRECSIZE","BJOBTELGMTRAILSIZE","EAIFILESENDUSEYN","EAIFILERECVUSEYN","MSGPRCSSPRITY",
"UAPPLCD","GROUPCOCD","THISMSGUSEYN","THISMSGREGSNTID","THISMSGREGIHMS","THISMSGAMNDRID",
"THISMSGAMNDHMS","SNDRCVFILENAME","THISMSGCHRGIDS","RECVNOTIUSEYN","RMTNODENAME",
"SNDSCRIPTNAME","LOGCRETNYN","BZWKRSEMPNAME","BZWKRSEMPTELNO","OSIDINSTICODE",
"OSIDINSTIBZWKRSEMPNAME","OSIDINSTITELNO","FILETRANSCOND","FILETRANSSCHE","FILETRANSALAM"};
columnArr = Arrays.asList(columnList);
msgProcInsertSql.append("INSERT INTO EAIPKG.TSEAIBJ01 (");
// 필드명 입력
for (String column : columnArr) {
msgProcInsertSql.append((column.equals(columnArr.get(columnArr.size()-1))) ? column : column+",");
}
msgProcInsertSql.append(") VALUES (");
// 필드값 입력
String[] columnInt = {"BJOBTELGMHDRSIZE","BJOBTELGMRECSIZE","BJOBTELGMTRAILSIZE","MSGPRCSSPRITY"}; // Integer 컬럼 구분
for (String column : columnArr) {
if (column.equals(columnArr.get(columnArr.size()-1))) {
if (Arrays.asList(columnInt).contains(column)) {
msgProcInsertSql.append((detail.containsKey(column) ? detail.get(column) : 0)+");\n");
} else {
if (Arrays.asList(columnUserId).contains(column)) {
msgProcInsertSql.append("'"+userid+"');\n");
} else if (Arrays.asList(columnDateTime).contains(column)) {
msgProcInsertSql.append("TO_CHAR(LOCALTIMESTAMP, 'YYYYMMDDHH24MISSFF3'));\n");
} else {
msgProcInsertSql.append("'"+(detail.get(column) != null ? detail.get(column) : "")+"');\n");
}
}
} else {
if (Arrays.asList(columnInt).contains(column)) {
msgProcInsertSql.append((detail.containsKey(column) ? detail.get(column) : 0)+",");
} else {
if (Arrays.asList(columnUserId).contains(column)) {
msgProcInsertSql.append("'"+userid+"',");
} else if (Arrays.asList(columnDateTime).contains(column)) {
msgProcInsertSql.append("TO_CHAR(LOCALTIMESTAMP, 'YYYYMMDDHH24MISSFF3'),");
} else {
if (column.equals("EAIFILESENDUSEYN")) column = "FILESENDUSEYN";
if (column.equals("EAIFILERECVUSEYN")) column = "FILERECVUSEYN";
msgProcInsertSql.append("'"+(detail.get(column) != null ? detail.get(column) : "")+"',");
}
}
}
}
// TELEGRAM PROP GROUP into BA05 (공통코드에서 별도로 입력됨)
List<String> columnPropGrpArr = new ArrayList<String>();
String[] columnPropGrpList = {"PRPTYGROUPNAME","PRPTYGROUPDESC"};
columnPropGrpArr = Arrays.asList(columnPropGrpList);
msgProcInsertSql.append("INSERT INTO EAIPKG.TSEAIBA05 (");
// 필드명 입력
for (String column : columnPropGrpArr) {
msgProcInsertSql.append((column.equals(columnPropGrpArr.get(columnPropGrpArr.size()-1))) ? column : column+",");
}
msgProcInsertSql.append(") VALUES (");
// 필드값 입력
for (String column : columnPropGrpArr) {
if (column.equals(columnPropGrpArr.get(columnPropGrpArr.size()-1))) {
msgProcInsertSql.append("'"+(detail.get(column) != null ? detail.get(column) : "")+"');\n");
} else {
msgProcInsertSql.append("'"+(detail.get(column) != null ? detail.get(column) : "")+"',");
}
}
// TELEGRAM PROP LIST into BA06 (프로퍼티명과 프로퍼티설명은 업무구분에서 별도로 입력되고, 프로퍼티값만 여기서 업데이트됨)
for (Map<String, Object> prop : propList) {
List<String> columnPropArr = new ArrayList<String>();
String[] columnPropList = {"PRPTYGROUPNAME","PRPTYNAME","PRPTY2VAL"};
columnPropArr = Arrays.asList(columnPropList);
msgProcInsertSql.append("INSERT INTO EAIPKG.TSEAIBA06 (");
// 필드명 입력
for (String column : columnPropArr) {
msgProcInsertSql.append((column.equals(columnPropArr.get(columnPropArr.size()-1))) ? column : column+",");
}
msgProcInsertSql.append(") VALUES (");
// 필드값 입력
for (String column : columnPropArr) {
if (column.equals("PRPTYGROUPNAME")) {
msgProcInsertSql.append("'"+detail.get("PRPTYGROUPNAME")+"',");
} else if (column.equals(columnPropArr.get(columnPropArr.size()-1))) {
msgProcInsertSql.append("'"+(prop.get(column) != null ? prop.get(column) : "")+"');\n");
} else {
msgProcInsertSql.append("'"+(prop.get(column) != null ? prop.get(column) : "")+"',");
}
}
}
}
HashMap<String,String> retMap = new HashMap<String,String>();
if (msgProc.get("fileName") != null) {
OutputStream output = null;
try {
String sqlDownloadPath = getProperties("SQL_DOWNLOAD", "DOWNLOAD_PATH");
String sqlDownloadFile = sqlDownloadPath+msgProc.get("fileName");
output = new FileOutputStream(sqlDownloadFile);
if (sqlDownloadPath != null) {
byte[] bt = msgProcInsertSql.toString().getBytes();
output.write(bt);
output.close();
}
retMap.put("path", sqlDownloadPath);
} catch (Exception e) {
logger.error( e.getMessage(), e);
} finally {
if(output != null) try { output.close(); } catch(Exception ee) {logger.error( ee.getMessage(), ee);}
}
} else {
retMap = SqlUtil.executeSql(msgProcInsertSql.toString(), "BAP_"+msgProc.get("svrType").toString().toUpperCase());
}
return retMap;
}
public HashMap<String, Object> getProps(String bjobBzwkDstcd, String propGroupName) throws Exception {
HashMap<String, Object> param = new HashMap<String, Object>();
param.put("bjobBzwkDstcd", bjobBzwkDstcd);
param.put("propGroupName", propGroupName);
List<Map<String, Object>> list = dao.getProps(param);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("rows", list);
return map;
}
private String getProperties(String propGroup, String propName) throws Exception {
HashMap<String,Object> params = new HashMap<String,Object>();
params.put("prptyGroupName", propGroup);
params.put("prptyName", propName);
HashMap<String, Object> props = propDao.getProperties(params);
return props.get("PRPTY2VAL").toString();
}
}
@@ -0,0 +1,116 @@
package com.eactive.eai.rms.bap.tansaction.procWork;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.eactive.eai.agent.command.CommonCommand;
import com.eactive.eai.common.util.UUIDGenerator;
import com.eactive.eai.rms.bap.tansaction.transactionStatus.BapTransactionStatusService;
import com.eactive.eai.rms.common.base.BapBaseAnnotationController;
import com.eactive.eai.rms.common.combo.ComboService;
import com.eactive.eai.rms.common.combo.IbatisComboService;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
import com.google.gson.Gson;
@Controller
public class BapProcWorkController extends BapBaseAnnotationController {
@Autowired
@Qualifier("bapTransactionStatusService")
private BapTransactionStatusService statusService;
@Autowired
@Qualifier("bapProcWorkService")
private BapProcWorkService service;
@Autowired
private IbatisComboService comboService;
@RequestMapping(value= "/bap/transaction/procWorkMan.view")
public String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
}else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value= "/bap/transaction/procWorkMan.json", params = "cmd=LIST")
public ModelAndView selectList(HttpServletRequest request, JsonPageVo pageVo,
@RequestParam HashMap<String, Object> paramMap) throws Exception {
Map<String, Object> map = service.selectList(pageVo.getStartNum(), pageVo.getEndNum(), paramMap);
pageVo.setTotalCount((Integer) map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total", pageVo.getTotal()); // 전체 페이지수
resultMap.put("page", pageVo.getPage()); // 현재 페이지수
resultMap.put("records", pageVo.getTotalCount());// 전체 레코드건수
resultMap.put("rows", map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/procWorkMan.json",params = "cmd=DETAIL")
public ModelAndView selectDetail(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
HashMap<String, Object> map = service.selectDetail(param);
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/procWorkMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<Map<String, Object>> bjobBzwkDstcd = comboService.selectListComboForTableWithCode("TSEAIBJ02", "BJOBBZWKDSTCD", "BJOBBZWKNAME");
List<Map<String, Object>> osidInstiDstcd = statusService.selectOsidInstiDstcd("");
List<Map<String, Object>> svcPrcssNo = comboService.selectListComboForTable("TSEAICM20", "code", "codename","codegroup = 'SVC_PRCSS_NO' ");
//comboService.selectListCombo("SVC_PRCSS_NO");
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("bjobBzwkDstcd" , bjobBzwkDstcd);
resultMap.put("osidInstiDstcd" , osidInstiDstcd);
resultMap.put("svcPrcssNo" , svcPrcssNo);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/procWorkMan.json",params = "cmd=DELETE")
private String delete(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> map ) throws Exception {
service.delete(map);
return null;
}
}
@@ -0,0 +1,30 @@
package com.eactive.eai.rms.bap.tansaction.procWork;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.eactive.eai.rms.common.base.SqlMapClientTemplateDao;
@Repository("bapProcWorkDao")
@SuppressWarnings({"deprecation","unchecked"})
public class BapProcWorkDao extends SqlMapClientTemplateDao {
public int selectListCount(HashMap param) throws Exception {
return (Integer)template.queryForObject("BapProcWork.selectListCount", param);
}
public List<Map<String, Object>> selectList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapProcWork.selectList", param);
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
return (HashMap<String, Object>)template.queryForObject("BapProcWork.selectDetail", param);
}
public void delete(HashMap paramMap) throws Exception{
this.template.delete("BapProcWork.delete", paramMap);
}
}
@@ -0,0 +1,68 @@
package com.eactive.eai.rms.bap.tansaction.procWork;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.eactive.eai.rms.bap.common.base.BapBaseService;
@Service("bapProcWorkService")
public class BapProcWorkService extends BapBaseService {
@Autowired
@Qualifier("bapProcWorkDao")
private BapProcWorkDao dao;
public HashMap<String, Object> selectList(int startNum, int endNum, HashMap<String, Object> paramMap) throws Exception {
// 전체 목록수 얻기
int totalCount = dao.selectListCount(paramMap);
paramMap.put("startNum" , startNum);// 시작 record
paramMap.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> list = dao.selectList(paramMap);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("totalCount", totalCount);
map.put("list", list);
return map;
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
HashMap<String, Object> detail = dao.selectDetail(param);
String sndrcvStartHMS = (String)detail.get("SNDRCVSTARTHMS");
String sndrcvEndHMS = (String)detail.get("SNDRCVENDHMS");
String bjobDmndMsgCretnHMS = (String)detail.get("BJOBDMNDMSGCRETNHMS");
String msgQueeTracTdmndHMS = (String)detail.get("MSGQUEETRACTDMNDHMS");
detail.put("SNDRCVSTARTYMD", sndrcvStartHMS.substring(0, 8));
detail.put("SNDRCVSTARTHMS", sndrcvStartHMS.substring(8));
detail.put("SNDRCVENDYMD", sndrcvEndHMS.substring(0, 8));
detail.put("SNDRCVENDHMS", sndrcvEndHMS.substring(8));
detail.put("BJOBDMNDMSGCRETNYMD", bjobDmndMsgCretnHMS.substring(0, 8));
detail.put("BJOBDMNDMSGCRETNHMS", bjobDmndMsgCretnHMS.substring(8));
detail.put("MSGQUEETRACTDMNDYMD", msgQueeTracTdmndHMS.substring(0, 8));
detail.put("MSGQUEETRACTDMNDHMS", msgQueeTracTdmndHMS.substring(8));
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("detail", detail);
return map;
}
public void delete(HashMap paramMap) throws Exception {
dao.delete(paramMap);
}
}
@@ -0,0 +1,36 @@
package com.eactive.eai.rms.bap.tansaction.transactionStatus;
import java.time.LocalDate;
import java.util.Map;
import com.eactive.eai.rms.onl.server.repository.ExpiringMap;
public class BapBasisRepository {
private static Map<LocalDate, String[]> basisMap = new ExpiringMap<>(14400);
public String[] getBasis(LocalDate date) {
return basisMap.get(date);
}
public void setBasis(LocalDate date, String[] basis) {
basisMap.put(date, basis);
}
// private AtomicReference<List<Map<String, Serializable>>> procList;
// public AtomicReference<List<Map<String, Serializable>>> getProcList() {
// return procList;
// }
//
// public void setProcList(List<Map<String, Serializable>> procList) {
//
// if(procList == null) {
// this.procList.set(new ArrayList<>());
// } else {
// this.procList.set(procList);
// }
//
// }
}
@@ -0,0 +1,213 @@
package com.eactive.eai.rms.bap.tansaction.transactionStatus;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.eactive.eai.agent.command.CommonCommand;
import com.eactive.eai.rms.common.base.BapBaseAnnotationController;
import com.eactive.eai.rms.common.combo.ComboService;
import com.eactive.eai.rms.common.combo.IbatisComboService;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
@Controller
public class BapTransactionStatusController extends BapBaseAnnotationController {
@Autowired
@Qualifier("bapTransactionStatusService")
private BapTransactionStatusService service;
@Autowired
private IbatisComboService comboService;
@RequestMapping(value= "/bap/transaction/transactionStatusMan.view")
public String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
}else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json", params = "cmd=LIST")
public ModelAndView selectList(HttpServletRequest request,
@RequestParam HashMap<String, Object> paramMap) throws Exception {
// String date = (String)paramMap.get("searchStartYYYYMMDD");
// CommonCommand command = new CommonCommand("com.eactive.eai.agent.schedule.GetScheduleBasisListCommand",date);
// String[] basis = null;
Map<String, Object> returnMap = null;
Iterator<String> iter = null;
String svrName = "";
// try {
// returnMap = agentUtilService.broadcast(command);
// iter = returnMap.keySet().iterator();
// svrName = iter.next();
// basis = (String[])returnMap.get(svrName);
// } catch (Exception e) {
// basis = new String[1];
// basis[0] = "D";
// }
// paramMap.put("basis", basis);
String activeTab = (String)paramMap.get("activeTab");
if ( activeTab.equals("tabS") ){
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transaction.ProcessingFileTransferCommand","");
returnMap = agentUtilService.broadcast(command);
iter = returnMap.keySet().iterator();
svrName = iter.next();
@SuppressWarnings("unchecked")
List<Map<String, Serializable>> list = (List<Map<String, Serializable>>)returnMap.get(svrName);
paramMap.put("procList", list);
}
Map<String, Object> resultMap = service.selectList( paramMap);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=DETAIL_FILE")
public ModelAndView selectDetailFile(HttpServletRequest request, JsonPageVo pageVo,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
HashMap<String, Object> map = service.selectDetailFile(pageVo.getStartNum(), pageVo.getEndNum(), param);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total" , pageVo.getTotal());
resultMap.put("page" , pageVo.getPage());
resultMap.put("records", pageVo.getTotalCount());
resultMap.put("rows" , map.get("file"));
resultMap.putAll(map); // map(detail,file,stage,totalCount)
ModelAndView modelAndView = new ModelAndView("jsonView", resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=DETAIL_STAGE")
public ModelAndView selectDetailStage(HttpServletRequest request, JsonPageVo pageVo,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
HashMap<String, Object> map = service.selectDetailStage(pageVo.getStartNum(), pageVo.getEndNum(), param);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total" , pageVo.getTotal());
resultMap.put("pageFile" , pageVo.getPage());
resultMap.put("records", pageVo.getTotalCount());
resultMap.put("rows" , map.get("stage"));
resultMap.putAll(map); // map(detail,file,stage,totalCount)
ModelAndView modelAndView = new ModelAndView("jsonView", resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<Map<String, Object>> groupCoCd = comboService.selectListComboForTable("TSEAICM20", "code", "codename","codegroup = 'EAIGROUPCOCD' ");
//comboService.selectListCombo("EAIGROUPCOCD");
List<Map<String, Object>> bjobBzwkDstcd = comboService.selectListComboForTableWithCode("TSEAIBJ02", "BJOBBZWKDSTCD", "BJOBBZWKNAME");
List<Map<String, Object>> osidInstiDstcd = service.selectOsidInstiDstcd("");
List<Map<String, Object>> uapplCd = comboService.selectListComboForTableWithCode("TSEAICM01", "TRIM(EAIBZWKDSTCD)", "BZWKDSTICNAME");
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("bjobBzwkDstcd" , bjobBzwkDstcd);
resultMap.put("osidInstiDstcd" , osidInstiDstcd);
resultMap.put("groupCoCd" , groupCoCd);
resultMap.put("uapplCd" , uapplCd);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=LIST_ORGN_COMBO")
public ModelAndView initOrgnCombo( HttpServletRequest request,
HttpServletResponse response, String bjobBzwkDstcd) throws Exception {
List<Map<String, Object>> osidInstiDstcd = service.selectOsidInstiDstcd(bjobBzwkDstcd);
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("osidInstiDstcd" , osidInstiDstcd);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=DETAIL_FILE_DATA")
public ModelAndView getFileData(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
String[] args = null;
args = new String[4];
args[0] = (String) param.get("rcvFileName");
args[1] = (String) param.get("skipCnt");
args[2] = (String) param.get("loopCnt");
args[3] = (String) param.get("bjobMsgDstcd");
Iterator<String> iter = null;
String svrName = "";
CommonCommand command = new CommonCommand("com.eactive.eai.common.util.FileDataCommand", args);
HashMap<String, Object> returnMap = agentUtilService.broadcast(command);
iter = returnMap.keySet().iterator();
svrName = iter.next();
@SuppressWarnings("unchecked")
HashMap<String, Object> resultMap = (HashMap<String, Object>)returnMap.get(svrName);
ModelAndView modelAndView = new ModelAndView("jsonView", resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionStatusMan.json",params = "cmd=TRANSACTION_CHANGE")
public ModelAndView statusChenge(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
String message = "";
try {
service.updateStatusChangeMaster(param);
service.updateStatusChange(param);
message = "전송상태를 변경하였습니다.";
} catch(Exception e) {
message = "전송상태를 변경시 오류가 발생하였습니다.";
}
Map<String, Object> returnMap = new HashMap<String, Object>();
returnMap.put("result" , message);
ModelAndView modelAndView = new ModelAndView("jsonView", returnMap);
return modelAndView;
}
}
@@ -0,0 +1,61 @@
package com.eactive.eai.rms.bap.tansaction.transactionStatus;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.eactive.eai.rms.common.base.SqlMapClientTemplateDao;
@Repository("bapTransactionStatusDao")
@SuppressWarnings({"deprecation","unchecked"})
public class BapTransactionStatusDao extends SqlMapClientTemplateDao {
public List<Map<String, Object>> findStatusList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.list_normal", param);
}
public List<Map<String, Object>> findErrorList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.list_e", param);
}
public List<Map<String, Object>> findFutureList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.list_f", param);
}
public List<Map<String, Object>> findDelayList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.list_l", param);
}
public List<Map<String, Object>> findSpecList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.speclist", param);
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
return (HashMap<String, Object>)template.queryForObject("BapTranStatus.masterlog", param);
}
public List<Map<String, Object>> getFilelog(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.filelog", param);
}
public List<Map<String, Object>> getStagelog(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.stagelog", param);
}
public int getFileLogCount(HashMap<String, Object> param) throws Exception {
return (Integer)template.queryForObject("BapTranStatus.getFileLogCount", param);
}
public int getStageLogCount(HashMap<String, Object> param) throws Exception {
return (Integer)template.queryForObject("BapTranStatus.getStageLogCount", param);
}
public List<Map<String, Object>> selectOsidInstiDstcd(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranStatus.selectOsidInstiDstcd", param);
}
public void updateStatusChangeMaster(HashMap<String, Object> paramMap) throws Exception{
this.template.update("BapTranStatus.updateStatusChangeMaster", paramMap);
}
public void updateStatusChange(HashMap<String, Object> paramMap) throws Exception{
this.template.update("BapTranStatus.updateStatusChange", paramMap);
}
}
@@ -0,0 +1,156 @@
package com.eactive.eai.rms.bap.tansaction.transactionStatus;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.eactive.eai.rms.bap.common.base.BapBaseService;
@Service("bapTransactionStatusService")
public class BapTransactionStatusService extends BapBaseService {
@Autowired
@Qualifier("bapTransactionStatusDao")
private BapTransactionStatusDao dao;
public HashMap<String, Object> selectList(HashMap<String, Object> paramMap) throws Exception {
String activeTab = (String)paramMap.get("activeTab");
ArrayList<String> tranPrcssDstcds = new ArrayList<String>();
ArrayList<String> tranPrcssDstcds2 = new ArrayList<String>();
HashMap<String, Object> map = new HashMap<String, Object>();
if ( activeTab.equals("tabE")){
tranPrcssDstcds.add("T");
//tranPrcssDstcds.add("R");
paramMap.put("tranPrcssDstcds", tranPrcssDstcds);
paramMap.put("tranPrcssDstcds2", tranPrcssDstcds2);
List<Map<String, Object>> listNomal = dao.findStatusList(paramMap);
List<Map<String, Object>> listError = dao.findErrorList(paramMap);
map.put("rows", processErrorList(listNomal, listError));
}else if ( activeTab.equals("tabF")){
List<Map<String, Object>> listF = dao.findFutureList(paramMap);
map.put("rows", listF);
}else if ( activeTab.equals("tabQ")){
tranPrcssDstcds.add("Q");
paramMap.put("tranPrcssDstcds", tranPrcssDstcds);
List<Map<String, Object>> waitlist = dao.findStatusList(paramMap);
map.put("rows", waitlist);
}else if ( activeTab.equals("tabS")){
tranPrcssDstcds2.add("S");
paramMap.put("tranPrcssDstcds", tranPrcssDstcds);
paramMap.put("tranPrcssDstcds2", tranPrcssDstcds2);
List<Map<String, Object>> sendlist = dao.findStatusList(paramMap);
@SuppressWarnings("unchecked")
List<Map<String, Serializable>> memList = (List<Map<String, Serializable>>)paramMap.get("procList");
processMemList(sendlist, memList);
map.put("rows", sendlist);
}else if ( activeTab.equals("tabA")){
List<Map<String, Object>> listA = dao.findSpecList(paramMap);
map.put("rows", listA);
}
return map;
}
public HashMap<String, Object> selectDetailFile(int startNum, int endNum, HashMap<String, Object> param) throws Exception {
HashMap<String, Object> detail = dao.selectDetail(param);
int totalCount = dao.getFileLogCount(param);
param.put("startNum" , startNum);// 시작 record
param.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> file = dao.getFilelog(param);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("detail", detail);
map.put("file", file);
map.put("totalCount", totalCount);
return map;
}
public HashMap<String, Object> selectDetailStage(int startNum, int endNum, HashMap<String, Object> param) throws Exception {
HashMap<String, Object> detail = dao.selectDetail(param);
int totalCount = dao.getStageLogCount(param);
param.put("startNum" , startNum);// 시작 record
param.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> stage = dao.getStagelog(param);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("detail", detail);
map.put("stage", stage);
map.put("totalCount", totalCount);
return map;
}
public List<Map<String, Object>> selectOsidInstiDstcd(String bjobBzwkDstcd) throws Exception {
HashMap<String, Object> param = new HashMap<String, Object>();
param.put("bjobBzwkDstcd", bjobBzwkDstcd);
return dao.selectOsidInstiDstcd(param);
}
private List<Map<String, Object>> processErrorList( List<Map<String, Object>> listNomal, List<Map<String, Object>> listError){
// listError.stream()
// .forEach(x -> System.out.println(x.get("BJOBMSGDSTCD") + ":" + x.get("BJOBMSGDSTCDSEQ")));
List<Map<String, Object>> result = listError.stream()
.filter(x -> listNomal.stream().noneMatch(n -> {
return n.get("BJOBMSGDSTCD") != null
&& n.get("BJOBMSGDSTCD").equals(x.get("BJOBMSGDSTCD"))
&& ! x.get("TRANPRCSSDSTCD").equals("Q") && ! x.get("TRANPRCSSDSTCD").equals("H")
&& Long.parseLong(n.get("TRANENDHMS").toString()) > Long.parseLong(x.get("TRANENDHMS").toString().equals("") ? "99999999999999999" : x.get("TRANENDHMS").toString());
})).collect(Collectors.toList());
return result;
}
private List<Map<String, Object>> processMemList( List<Map<String, Object>> dbList, List<Map<String, Serializable>> memList){
for (Map<String, Object> map : dbList) {
String bjobDmndMsgID = (String)map.get("BJOBDMNDMSGID");
String bjobDmndSubMsgID = (String)map.get("BJOBDMNDSUBMSGID");
for (Map<String, Serializable> mem : memList) {
String uuid = (String)mem.get("Uuid");
String subUuid = (String)mem.get("SubUuid");
if ( bjobDmndMsgID.equals(uuid) && bjobDmndSubMsgID.equals(subUuid)){
map.put( "RATE", mem.get("Rate"));
map.put( "CURRENTFILESIZE", mem.get("CurrFileSize"));
break;
}
}
}
return dbList;
}
public void updateStatusChange(HashMap<String, Object> paramMap) throws Exception {
dao.updateStatusChange(paramMap);
}
public void updateStatusChangeMaster(HashMap<String, Object> paramMap) throws Exception {
dao.updateStatusChangeMaster(paramMap);
}
}
@@ -0,0 +1,152 @@
package com.eactive.eai.rms.bap.tansaction.transactionTrace;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.eactive.eai.agent.command.CommonCommand;
import com.eactive.eai.rms.common.base.BapBaseAnnotationController;
import com.eactive.eai.rms.common.combo.ComboService;
import com.eactive.eai.rms.common.combo.IbatisComboService;
import com.eactive.eai.rms.common.login.SessionManager;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
@Controller
public class BapTransactionTraceController extends BapBaseAnnotationController {
@Autowired
@Qualifier("bapTransactionTraceService")
private BapTransactionTraceService service;
@Autowired
private IbatisComboService comboService;
@RequestMapping(value= "/bap/transaction/transactionTraceMan.view")
public String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
}else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value= "/bap/transaction/transactionTraceMan.json", params = "cmd=LIST")
public ModelAndView selectList(HttpServletRequest request,
JsonPageVo pageVo , @RequestParam HashMap<String, Object> paramMap) throws Exception {
HashMap<String, Object> map = service.selectList( pageVo.getStartNum(), pageVo.getEndNum(), paramMap);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total" , pageVo.getTotal()); //전체 페이지수
resultMap.put("page" , pageVo.getPage()); //현재 페이지수
resultMap.put("records", pageVo.getTotalCount());//전체 레코드건수
resultMap.put("rows" , map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionTraceMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<Map<String, Object>> groupCoCd = comboService.selectListComboForTable("TSEAICM20", "code", "codename","codegroup = 'EAIGROUPCOCD' ");
List<Map<String, Object>> bjobBzwkDstcd = comboService.selectListComboForTableWithCode("TSEAIBJ02", "BJOBBZWKDSTCD", "BJOBBZWKNAME");
List<Map<String, Object>> uapplCd = comboService.selectListComboForTableWithCode("TSEAICM01", "TRIM(EAIBZWKDSTCD)", "BZWKDSTICNAME");
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("bjobBzwkDstcd" , bjobBzwkDstcd);
resultMap.put("groupCoCd" , groupCoCd);
resultMap.put("uapplCd" , uapplCd);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionTraceMan.json",params = "cmd=TRANSACTION_RESEND")
public ModelAndView resend(HttpServletRequest request, String bjobDmndMsgID, String bjobDmndSubMsgID, String fileTrsmtLogID, String sndRecvFileName, String bjobMsgDstcd) throws Exception {
String[] args = null;
CommonCommand command = null;
if ( !bjobDmndMsgID.trim().equals("")){
args = new String[3];
args[0] = bjobDmndMsgID;
args[1] = bjobDmndSubMsgID;
args[2] = sndRecvFileName;
command = new CommonCommand("com.eactive.eai.agent.transaction.ReSendRSDataCommand",args);
}else{
args = new String[3];
args[0] = fileTrsmtLogID;
args[1] = SessionManager.getUserId(request);
args[2] = bjobMsgDstcd;
command = new CommonCommand("com.eactive.eai.agent.ftp.RemoteTransferCommand",args);
}
HashMap<String, Object> resultMap = agentUtilService.broadcast(command);
Iterator<String> iter = resultMap.keySet().iterator();
Map<String, Object> returnMap = new HashMap<String, Object>();
StringBuffer sb = new StringBuffer();
while (iter.hasNext()) {
String svrName = iter.next();
sb.append( "[" + svrName + "]:" + (String)resultMap.get(svrName) + "\r" );
}
returnMap.put("result" , new String(sb));
ModelAndView modelAndView = new ModelAndView("jsonView",returnMap);
return modelAndView;
}
@RequestMapping(value= "/bap/transaction/transactionTraceMan.json",params = "cmd=TRANSACTION_RERECV")
public ModelAndView rerecv(HttpServletRequest request, String bjobDmndMsgID, String bjobDmndSubMsgID, String rqstRecvFileStorgDirname, String bkupSndrcvFilename) throws Exception {
String[] args = null;
CommonCommand command = null;
args = new String[4];
args[0] = bjobDmndMsgID;
args[1] = bjobDmndSubMsgID;
args[2] = rqstRecvFileStorgDirname;
args[3] = bkupSndrcvFilename;
command = new CommonCommand("com.eactive.eai.agent.transaction.ReRecvRSDataCommand", args);
HashMap<String, Object> resultMap = agentUtilService.broadcast(command);
Iterator<String> iter = resultMap.keySet().iterator();
Map<String, Object> returnMap = new HashMap<String, Object>();
StringBuffer sb = new StringBuffer();
while (iter.hasNext()) {
String svrName = iter.next();
sb.append( "[" + svrName + "]:" + (String)resultMap.get(svrName) + "\r" );
}
returnMap.put("result" , new String(sb));
ModelAndView modelAndView = new ModelAndView("jsonView", returnMap);
return modelAndView;
}
}
@@ -0,0 +1,22 @@
package com.eactive.eai.rms.bap.tansaction.transactionTrace;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.eactive.eai.rms.common.base.SqlMapClientTemplateDao;
@Repository("bapTransactionTraceDao")
@SuppressWarnings({"deprecation","unchecked"})
public class BapTransactionTraceDao extends SqlMapClientTemplateDao {
public int selectListCount(HashMap<String, Object> param) throws Exception {
return (Integer)template.queryForObject("BapTransactionTrace.selectListCount", param);
}
public List<Map<String, Object>> selectList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTransactionTrace.selectList", param);
}
}
@@ -0,0 +1,39 @@
package com.eactive.eai.rms.bap.tansaction.transactionTrace;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.eactive.eai.rms.bap.common.base.BapBaseService;
@Service("bapTransactionTraceService")
public class BapTransactionTraceService extends BapBaseService {
@Autowired
@Qualifier("bapTransactionTraceDao")
private BapTransactionTraceDao dao;
public HashMap<String, Object> selectList(int startNum,int endNum, HashMap<String, Object> paramMap) throws Exception {
// 전체 목록수 얻기
int totalCount = dao.selectListCount(paramMap);
paramMap.put("startNum" , startNum);// 시작 record
paramMap.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> list = dao.selectList(paramMap);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("totalCount", totalCount);
map.put("list", list);
return map;
}
}
@@ -0,0 +1,118 @@
package com.eactive.eai.rms.bap.tansaction.transactionWait;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.eactive.eai.rms.bap.tansaction.transactionStatus.BapTransactionStatusService;
import com.eactive.eai.rms.common.base.BapBaseAnnotationController;
import com.eactive.eai.rms.common.combo.ComboService;
import com.eactive.eai.rms.common.combo.IbatisComboService;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
@Controller
public class BapTransactionWaitController extends BapBaseAnnotationController {
@Autowired
@Qualifier("bapTransactionStatusService")
private BapTransactionStatusService statusService;
@Autowired
@Qualifier("bapTransactionWaitService")
private BapTransactionWaitService service;
@Autowired
private IbatisComboService comboService;
@RequestMapping(value = "/bap/transaction/transactionWaitMan.view")
public String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
} else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
/**
* @param request
* @param response
* @throws Exception
*/
@RequestMapping(value = "/bap/transaction/transactionWaitMan.json", params = "cmd=LIST")
public ModelAndView selectList(HttpServletRequest request, JsonPageVo pageVo,
@RequestParam HashMap<String, Object> paramMap) throws Exception {
Map<String, Object> map = service.selectList(pageVo.getStartNum(), pageVo.getEndNum(), paramMap);
pageVo.setTotalCount((Integer) map.get("totalCount"));
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("total", pageVo.getTotal()); // 전체 페이지수
resultMap.put("page", pageVo.getPage()); // 현재 페이지수
resultMap.put("records", pageVo.getTotalCount());// 전체 레코드건수
resultMap.put("rows", map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value = "/bap/transaction/transactionWaitMan.json",params = "cmd=DETAIL")
public ModelAndView selectDetail(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> param) throws Exception {
HashMap<String, Object> map = service.selectDetail(param);
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
}
@RequestMapping(value = "/bap/transaction/transactionWaitMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<Map<String, Object>> bjobBzwkDstcd = comboService.selectListComboForTableWithCode("TSEAIBJ02", "BJOBBZWKDSTCD", "BJOBBZWKNAME");
List<Map<String, Object>> osidInstiDstcd = statusService.selectOsidInstiDstcd("");
List<Map<String, Object>> svcPrcssNo = comboService.selectListComboForTable("TSEAICM20", "code", "codename","codegroup = 'SVC_PRCSS_NO' ");
//comboService.selectListCombo("SVC_PRCSS_NO");
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("bjobBzwkDstcd" , bjobBzwkDstcd);
resultMap.put("osidInstiDstcd" , osidInstiDstcd);
resultMap.put("svcPrcssNo" , svcPrcssNo);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value = "/bap/transaction/transactionWaitMan.json",params = "cmd=UPDATE")
private String update(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> map ) throws Exception {
service.update(map);
return null;
}
@RequestMapping(value = "/bap/transaction/transactionWaitMan.json",params = "cmd=DELETE")
private String delete(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> map ) throws Exception {
service.delete(map);
return null;
}
}
@@ -0,0 +1,42 @@
package com.eactive.eai.rms.bap.tansaction.transactionWait;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.eactive.eai.rms.common.base.SqlMapClientTemplateDao;
@Repository("bapTransactionWaitDao")
@SuppressWarnings({"deprecation","unchecked"})
public class BapTransactionWaitDao extends SqlMapClientTemplateDao {
public int selectListCount(HashMap param) throws Exception {
return (Integer)template.queryForObject("BapTranWait.selectListCount", param);
}
public List<Map<String, Object>> selectList(HashMap<String, Object> param) throws Exception {
return (List<Map<String, Object>>)template.queryForList("BapTranWait.selectList", param);
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
return (HashMap<String, Object>)template.queryForObject("BapTranWait.selectDetail", param);
}
public void updateBS03(HashMap paramMap) throws Exception{
this.template.update("BapTranWait.updateBS03", paramMap);
}
public void updateBJ03(HashMap paramMap) throws Exception{
this.template.update("BapTranWait.updateBJ03", paramMap);
}
public void updateBJ08(HashMap paramMap) throws Exception{
this.template.update("BapTranWait.updateBJ08", paramMap);
}
public void delete(HashMap paramMap) throws Exception{
this.template.delete("BapTranWait.delete", paramMap);
}
}
@@ -0,0 +1,66 @@
package com.eactive.eai.rms.bap.tansaction.transactionWait;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.eactive.eai.rms.bap.common.base.BapBaseService;
@Service("bapTransactionWaitService")
public class BapTransactionWaitService extends BapBaseService {
@Autowired
@Qualifier("bapTransactionWaitDao")
private BapTransactionWaitDao dao;
public HashMap<String, Object> selectList(int startNum, int endNum, HashMap<String, Object> paramMap) throws Exception {
// 전체 목록수 얻기
int totalCount = dao.selectListCount(paramMap);
paramMap.put("startNum" , startNum);// 시작 record
paramMap.put("endNum" , endNum);// 끝 record
List<Map<String, Object>> list = dao.selectList(paramMap);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("totalCount", totalCount);
map.put("list", list);
return map;
}
public HashMap<String, Object> selectDetail(HashMap<String, Object> param) throws Exception {
HashMap<String, Object> detail = dao.selectDetail(param);
String sndrcvStartHMS = (String)detail.get("SNDRCVSTARTHMS");
String sndrcvEndHMS = (String)detail.get("SNDRCVENDHMS");
String bjobDmndMsgCretnHMS = (String)detail.get("BJOBDMNDMSGCRETNHMS");
detail.put("SNDRCVSTARTYMD", sndrcvStartHMS.substring(0, 8));
detail.put("SNDRCVSTARTHMS", Integer.parseInt(sndrcvStartHMS.substring(8, 14)) > 240000 ? "235959" : sndrcvStartHMS.substring(8, 14));
detail.put("SNDRCVENDYMD", sndrcvEndHMS.substring(0, 8));
detail.put("SNDRCVENDHMS", Integer.parseInt(sndrcvEndHMS.substring(8, 14)) > 240000 ? "235959" : sndrcvEndHMS.substring(8, 14));
detail.put("BJOBDMNDMSGCRETNYMD", bjobDmndMsgCretnHMS.substring(0, 8));
detail.put("BJOBDMNDMSGCRETNHMS", Integer.parseInt(bjobDmndMsgCretnHMS.substring(8, 14)) > 240000 ? "235959" : bjobDmndMsgCretnHMS.substring(8, 14));
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("detail", detail);
return map;
}
public void update(HashMap paramMap) throws Exception {
dao.updateBS03(paramMap);
}
public void delete(HashMap paramMap) throws Exception {
dao.updateBJ03(paramMap);
dao.updateBJ08(paramMap);
dao.delete(paramMap);
}
}