건물주소갱신 일변동에서 월변동으로 변경

main
이범준 1 month ago
parent 2c429a2721
commit 721323cda1

@ -12,21 +12,14 @@
<w2:dataCollection baseNode="map">
<w2:dataMap baseNode="map" id="searchParam">
<w2:keyInfo>
<w2:key id="dataDateFrom" name="제공일자From" dataType="text"></w2:key>
<w2:key id="dataDateTo" name="제공일자To" dataType="text"></w2:key>
<w2:key id="actionDateFrom" name="갱신처리일자From" dataType="text"></w2:key>
<w2:key id="actionDateTo" name="갱신처리일자To" dataType="text"></w2:key>
<w2:key id="keyword" name="키워드" dataType="text"></w2:key>
</w2:keyInfo>
</w2:dataMap>
<w2:dataList baseNode="list" repeatNode="map" id="searchResultList" saveRemovedData="true">
<w2:columnInfo>
<w2:column id="dataDate" name="변동일" dataType="text"></w2:column>
<w2:column id="actionDate" name="갱신처리일" dataType="text"></w2:column>
<w2:column id="actionStartTime" name="갱신처리시작시간" dataType="text"></w2:column>
<w2:column id="actionEndTime" name="갱신처리종료시간" dataType="text"></w2:column>
<w2:column id="updateDate" name="갱신일" dataType="text"></w2:column>
<w2:column id="statCd" name="상태코드" dataType="text"></w2:column>
<w2:column id="statNm" name="상태" dataType="text"></w2:column>
<w2:column id="failRow" name="오류발생row" dataType="number"></w2:column>
</w2:columnInfo>
</w2:dataList>
</w2:dataCollection>
@ -48,70 +41,80 @@
scwin.onpageload = function() {
var ymd = com.getToday();
ica_dataDateFrom.setValue( '20250801' );
ica_dataDateTo.setValue( ymd );
ica_actionDateFrom.setValue( ymd );
ica_actionDateTo.setValue( ymd );
var setYm = scwin.getBeforeMonth(ymd);
ica_ymForLink.setValue(setYm);
};
scwin.onpageunload = function() {
};
scwin.getBeforeMonth = function(ymd){
var curY = ymd.substr(0,4);
var curM = ymd.substr(4,2);
var setYm = "";
if(curM == "01"){
setYm = ""+(Number(curY)-1)+"12";
} else {
var setM = ""+(Number(curM)-1)+"";
if(setM.length == 1){
setM = "0"+setM;
}
setYm = curY + setM;
}
return setYm;
}
scwin.btn_search_onclick = function(e) {
document.getElementById(ifi_buildJusoFile.id).value = null;
com.executeSubmission(sub_search);
};
scwin.btn_upload_onclick = function(e) {
scwin.btn_makeLink_onclick = function(e) {
var td = document.getElementById(tdForLink.id);
while (td.firstChild) {
td.removeChild(td.firstChild);
}
var fileEl = document.getElementById(ifi_buildJusoFile.id);
if(fileEl.value == null || fileEl.value == ""){
com.alert("첨부파일을 선택하세요.");
var in_ym = ica_ymForLink.getValue();
if(in_ym == null || in_ym == "" || (in_ym+"").length != 6){
return;
}
var formData = new FormData();
formData.append("buildJusoFile", fileEl.files[0]);
var in_y = in_ym.substr(0,4);
if(in_y < "2000"){
return;
}
var in_m = in_ym.substr(4,2);
if(in_m > "12" || in_m == "00"){
return;
}
var pureAjaxOpt = {
url : '/cfs/trsmrcv/uploadJuso.do'
, async : false
, processData : false
, contentType : false
, type: 'POST'
, data : formData
, success : function(data) {
if(data == null || data.result == null){
com.alert("업로드 중 오류가 발생하였습니다.");
return;
}
if(data.result == "success"){
com.alert("업로드 되었습니다.");
return;
} else {
if(data.failResn != null && data.failResn != ""){
com.alert(data.failResn);
return;
} else {
com.alert("업로드 중 오류가 발생하였습니다.");
return;
}
}
}
, error : function(){
com.alert("업로드 중 오류가 발생하였습니다.");
}
};
var curYmd = com.getToday();
var curYm = curYmd.substr(0,6);
if(in_ym >= curYm){
alert("월변동자료 미생성");
return;
}
$.ajax( pureAjaxOpt );
if(in_ym == scwin.getBeforeMonth(curYmd) && curYmd.substr(6,2) <= "05"){
alert("월변동자료 미생성");
return;
}
var linkString = "https://business.juso.go.kr/addrlink/download.do?reqType=ALLRDNM&regYmd="+in_y+"&ctprvnCd=01&stdde="+in_ym+"&fileName="+in_ym+"_%EA%B1%B4%EB%AC%BCDB_%EB%B3%80%EB%8F%99%EB%B6%84.zip&intNum=undefined&intFileNo=undefined&realFileName="+in_ym+"ALLRDNM01.zip";
var newA = document.createElement('a');
newA.setAttribute("href", linkString);
newA.setAttribute("download", "");
newA.setAttribute("target", "_blank");
newA.textContent = 'zip다운';
td.appendChild(newA);
};
scwin.btn_search_onclick = function(e) {
document.getElementById(ifi_buildJusoFile.id).value = null;
com.executeSubmission(sub_search);
};
]]></script>
</head>
<body ev:onpageload="scwin.onpageload" ev:onpageunload="scwin.onpageunload">
@ -125,56 +128,18 @@
</w2:attributes>
<xf:group tagname="colgroup">
<xf:group style="width:70px;" tagname="col"></xf:group>
<xf:group style="width:300px;" tagname="col"></xf:group>
<xf:group style="width:70px;" tagname="col"></xf:group>
<xf:group style="width:300px;" tagname="col"></xf:group>
<xf:group style="width:70px;" tagname="col"></xf:group>
<xf:group style="width:*;" tagname="col"></xf:group>
<xf:group style="width:120px;" tagname="col"></xf:group>
<xf:group style="width:120px;" tagname="col"></xf:group>
<xf:group style="width:70px;" tagname="col"></xf:group>
<xf:group style="width:70px;" tagname="col"></xf:group>
<xf:group style="width:300px;" tagname="col"></xf:group>
<xf:group style="width:150px;" tagname="col"></xf:group>
</xf:group>
<xf:group adaptive="" adaptiveThreshold="" style="" tagname="tr">
<xf:group class="w2tb_th" style="" tagname="th">변동일</xf:group>
<xf:group class="w2tb_td" style="" tagname="td">
<w2:inputCalendar calendarValueType="yearMonthDate" class=""
dateValidCheck="" focusOnDateSelect="false"
footerDiv="false"
id="ica_dataDateFrom"
ref="data:searchParam.dataDateFrom"
renderDiv="true" renderType="component" style="width: 110px;" weekStartsOn="0">
</w2:inputCalendar>
<w2:span id="spa_span1" label="~" style="padding-left: 5px;padding-right: 5px;">
</w2:span>
<w2:inputCalendar calendarValueType="yearMonthDate" class=""
dateValidCheck="" focusOnDateSelect="false"
footerDiv="false"
id="ica_dataDateTo"
ref="data:searchParam.dataDateTo"
renderDiv="true" renderType="component" style="width: 110px;" weekStartsOn="0">
</w2:inputCalendar>
</xf:group>
<xf:group class="w2tb_th" style="" tagname="th">갱신처리일</xf:group>
<xf:group class="w2tb_td" style="" tagname="td">
<w2:inputCalendar calendarValueType="yearMonthDate" class=""
dateValidCheck="" focusOnDateSelect="false"
footerDiv="false"
id="ica_actionDateFrom"
ref="data:searchParam.actionDateFrom"
renderDiv="true" renderType="component" style="width: 110px;" weekStartsOn="0">
</w2:inputCalendar>
<w2:span id="spa_span2" label="~" style="padding-left: 5px;padding-right: 5px;">
</w2:span>
<w2:inputCalendar calendarValueType="yearMonthDate" class=""
dateValidCheck="" focusOnDateSelect="false"
footerDiv="false"
id="ica_actionDateTo"
ref="data:searchParam.actionDateTo"
renderDiv="true" renderType="component" style="width: 110px;" weekStartsOn="0">
</w2:inputCalendar>
</xf:group>
<xf:group class="w2tb_td" style="" tagname="td">
<xf:group class="fr" id="">
<xf:trigger class="btn_sh" id="btn_search" style="" type="button"
@ -183,10 +148,26 @@
</xf:trigger>
</xf:group>
</xf:group>
<xf:group class="w2tb_th" style="" tagname="td"></xf:group>
<xf:group class="w2tb_th" style="" tagname="td">
</xf:group>
<xf:group class="w2tb_td" style="" tagname="td">
<w2:inputCalendar calendarValueType="yearMonth" class=""
dateValidCheck="" focusOnDateSelect="false"
footerDiv="false"
id="ica_ymForLink"
renderDiv="true" renderType="component" style="width: 100px;" weekStartsOn="0">
</w2:inputCalendar>
</xf:group>
<xf:group class="w2tb_th" style="" tagname="td">
<xf:trigger class="btn_act send" id="btn_makeLink" style="1px black solid" type="button"
ev:onclick="scwin.btn_makeLink_onclick">
<xf:label><![CDATA[다운로드링크생성]]></xf:label>
</xf:trigger>
</xf:group>
<xf:group class="w2tb_th" style="" tagname="td" id="tdForLink">
</xf:group>
<xf:group class="w2tb_th" style="" tagname="th">변동자료</xf:group>
<xf:group class="w2tb_td" style="" tagname="td">
<xf:input type="file" name="buildJusoFile"
@ -206,7 +187,7 @@
</xf:group>
<xf:group class="defaultbox" id="" style="">
<w2:textbox class="df_tt" id="" label="건물주소갱신이력" style="" tagname="h2"></w2:textbox>
<w2:textbox class="df_tt" id="" label="주소 처리 상태" style="" tagname="h2"></w2:textbox>
<xf:group class="fr" id="" style=""></xf:group>
</xf:group>
@ -216,56 +197,24 @@
<w2:caption style="" id="caption1" value="this is a grid caption."></w2:caption>
<w2:header style="" id="header1">
<w2:row style="" id="row1">
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhDataDate" value="변동일"
blockSelect="false" displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhActionDate" value="갱신처리일"
blockSelect="false" displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhActionStartTime" value="갱신처리시작시간"
blockSelect="false" displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhActionEndTime" value="갱신처리종료시간"
blockSelect="false" displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhStatNm" value="상태"
blockSelect="false" displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="columnhFailCnt" value="오류 row"
id="columnhUpdateDate" value="갱신처리일시"
blockSelect="false" displayMode="label">
</w2:column>
</w2:row>
</w2:header>
<w2:gBody style="" id="gBody1">
<w2:row style="" id="row2">
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="dataDate" value="" blockSelect="false"
displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="actionDate" value="" blockSelect="false"
displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="actionStartTime" value="" blockSelect="false"
displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="actionEndTime" value="" blockSelect="false"
displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="statNm" value="" blockSelect="false"
displayMode="label">
</w2:column>
<w2:column removeBorderStyle="false" width="70" inputType="text" style=""
id="failRow" value="" blockSelect="false"
id="updateDate" value="" blockSelect="false"
displayMode="label">
</w2:column>
</w2:row>

@ -85,17 +85,11 @@ public interface TrsmrcvDao {
public Map<String,String> selectSendMail(String commandSeq);
public List<JusoUpdateResultVO> findBuildJusoHist(Map<String,Object> searchMap);
public JusoUpdateResultVO findLastBuildJusoHist(String str);
public void insertJusoHist(String dataDate);
public JusoUpdateResultVO getJusoStat(String str);
public void updateJusoStat(String statCd);
public void initJusoHist(String dataDate);
public void updateJusoSuccResult(String dataDate);
public void updateJusoFailResult(JusoUpdateResultVO vo);
public void mergeJuso(Map<String,String> map);
public List<AltMailVO> findReceivedAltMailList(Map<String, Object> searchMap);

@ -231,102 +231,25 @@
WHERE COMMAND_SEQ = #{commandSeq}
</select>
<resultMap id="findBuildJusoHist-result" type="cfs.trsmrcv.vo.JusoUpdateResultVO">
<result property="dataDate" column="DATA_DATE"/>
<result property="actionDate" column="ACTION_DATE"/>
<result property="actionStartTime" column="ACTION_START_TIME"/>
<result property="actionEndTime" column="ACTION_END_TIME"/>
<resultMap id="getJusoStat-result" type="cfs.trsmrcv.vo.JusoUpdateResultVO">
<result property="updateDate" column="UPDATE_DATE"/>
<result property="statCd" column="STAT_CD"/>
<result property="statNm" column="STAT_NM"/>
<result property="failRow" column="FAIL_ROW"/>
</resultMap>
<select id="findBuildJusoHist" parameterType="map" resultMap="findBuildJusoHist-result">
SELECT FUN_FMT_YMD(DATA_DATE) AS DATA_DATE
, FUN_FMT_YMD(ACTION_DATE) AS ACTION_DATE
, FUN_FMT_HMS(ACTION_START_TIME) AS ACTION_START_TIME
, FUN_FMT_HMS(ACTION_END_TIME) AS ACTION_END_TIME
, STAT_CD
, (CASE WHEN STAT_CD = '0' THEN '처리중' WHEN STAT_CD = '1' THEN '실패' ELSE '성공' END) AS STAT_NM
, FAIL_ROW
FROM TB_CFS_ADRES_BULD_INFO_HIST
WHERE 1 = 1
<if test="dataDateFrom != null and dataDateFrom != ''">
AND DATA_DATE <![CDATA[ >= ]]> REPLACE(#{dataDateFrom},'-','')
</if>
<if test="dataDateTo != null and dataDateTo != ''">
AND DATA_DATE <![CDATA[ <= ]]> REPLACE(#{dataDateTo},'-','')
</if>
<if test="actionDateFrom != null and actionDateFrom != ''">
AND ACTION_DATE <![CDATA[ >= ]]> REPLACE(#{actionDateFrom},'-','')
</if>
<if test="actionDateTo != null and actionDateTo != ''">
AND ACTION_DATE <![CDATA[ <= ]]> REPLACE(#{actionDateTo},'-','')
</if>
ORDER BY DATA_DATE DESC
<select id="getJusoStat" parameterType="string" resultMap="getJusoStat-result">
SELECT STAT_CD
, DECODE(STAT_CD,'0','처리중','1','오류','완료') AS STAT_NM
, UPDATE_DATE
FROM TB_CFS_ADRES_BULD_INFO_STAT
WHERE ROWNUM = '1'
</select>
<select id="findLastBuildJusoHist" parameterType="string" resultMap="findBuildJusoHist-result">
SELECT DATA_DATE
, ACTION_DATE
, ACTION_START_TIME
, ACTION_END_TIME
, STAT_CD
, FAIL_ROW
FROM (
SELECT ROWNUM AS RN
, DATA_DATE
, ACTION_DATE
, ACTION_START_TIME
, ACTION_END_TIME
, STAT_CD
, FAIL_ROW
FROM TB_CFS_ADRES_BULD_INFO_HIST
ORDER BY DATA_DATE DESC
)
WHERE ROWNUM = 1
</select>
<insert id="insertJusoHist" parameterType="string" >
INSERT
INTO TB_CFS_ADRES_BULD_INFO_HIST (
DATA_DATE
, ACTION_DATE
, ACTION_START_TIME
, STAT_CD
)
VALUES (
#{dataDate}
, TO_CHAR(SYSDATE,'YYYYMMDD')
, TO_CHAR(SYSDATE,'HH24MISS')
, '0'
)
</insert>
<update id="initJusoHist" parameterType="string">
UPDATE TB_CFS_ADRES_BULD_INFO_HIST
SET ACTION_DATE = TO_CHAR(SYSDATE,'YYYYMMDD')
, ACTION_START_TIME = TO_CHAR(SYSDATE,'HH24MISS')
, ACTION_END_TIME = ''
, STAT_CD = '0'
, FAIL_ROW = 0
WHERE DATA_DATE = #{dataDate}
</update>
<update id="updateJusoSuccResult" parameterType="string">
UPDATE TB_CFS_ADRES_BULD_INFO_HIST
SET ACTION_END_TIME = TO_CHAR(SYSDATE,'HH24MISS')
, STAT_CD = '2'
, FAIL_ROW = null
WHERE DATA_DATE = #{dataDate}
<update id="updateJusoStat" parameterType="string" >
UPDATE TB_CFS_ADRES_BULD_INFO_STAT
SET STAT_CD = #{statCd}
, UPDATE_DATE = SYSDATE
</update>
<update id="updateJusoFailResult" parameterType="cfs.trsmrcv.vo.JusoUpdateResultVO">
UPDATE TB_CFS_ADRES_BULD_INFO_HIST
SET ACTION_END_TIME = TO_CHAR(SYSDATE,'HH24MISS')
, STAT_CD = '1'
, FAIL_ROW = #{failRow}
WHERE DATA_DATE = #{dataDate}
</update>
<insert id="mergeJuso" parameterType="map">
MERGE INTO TB_CFS_ADRES_BULD_INFO

@ -2,38 +2,11 @@ package cfs.trsmrcv.vo;
public class JusoUpdateResultVO {
private String dataDate;
private String actionDate;
private String actionStartTime;
private String actionEndTime;
private String updateDate;
private String statCd;
private String statNm;
private int failRow;
public String getDataDate() {
return dataDate;
}
public void setDataDate(String dataDate) {
this.dataDate = dataDate;
}
public String getActionDate() {
return actionDate;
}
public void setActionDate(String actionDate) {
this.actionDate = actionDate;
}
public String getActionStartTime() {
return actionStartTime;
}
public void setActionStartTime(String actionStartTime) {
this.actionStartTime = actionStartTime;
}
public String getActionEndTime() {
return actionEndTime;
}
public void setActionEndTime(String actionEndTime) {
this.actionEndTime = actionEndTime;
}
public String getStatCd() {
return statCd;
}
@ -46,12 +19,12 @@ public class JusoUpdateResultVO {
public void setStatNm(String statNm) {
this.statNm = statNm;
}
public int getFailRow() {
return failRow;
public String getUpdateDate() {
return updateDate;
}
public void setFailRow(int failRow) {
this.failRow = failRow;
public void setUpdateDate(String updateDate) {
this.updateDate = updateDate;
}
}

@ -113,18 +113,7 @@ public class CommHealthCheckController {
result.put("commandSeq",commandSeq);
result.put("commandType",commandType);
if(commandType.equals("bringJuso")){
Map<String, String> bringJusoInfo = new HashMap<String,String>();
JusoUpdateResultVO lastData = trsmrcvDao.findLastBuildJusoHist("");
String targetYmd = lastData.getDataDate().replace("-", "");
bringJusoInfo.put("targetYmd", targetYmd);
if(bringJusoInfo == null || bringJusoInfo.isEmpty()){
result.put("res", "OK");
return result;
}
result.put("commandDetail", bringJusoInfo);
} else if(commandType.equals("sendMail")){
if(commandType.equals("sendMail")){
Map<String, String> sendMailInfo = trsmrcvDao.selectSendMail(commandSeq);
if(sendMailInfo == null || sendMailInfo.isEmpty()){
result.put("res", "OK");

@ -7,6 +7,7 @@ import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Enumeration;
@ -45,19 +46,20 @@ public class CommWebBrowserSystemManageController {
private TrsmrcvDao trsmrcvDao;
/**
*
*
* <pre></pre>
*/
@RequestMapping(value="/cfs/trsmrcv/findBuildJusoHist.do", method=RequestMethod.POST)
public @ResponseBody Map<String, Object> findBuildJusoHist(@RequestBody ParamBean<Map<String, Object>> param){
Map<String,Object> searchMap = param.getParam();
Result result = new Result();
List<JusoUpdateResultVO> buildJusoHistList = trsmrcvDao.findBuildJusoHist(searchMap);
result.setData("result", buildJusoHistList);
List<JusoUpdateResultVO> jusoStats = new ArrayList<JusoUpdateResultVO>();
JusoUpdateResultVO jusoStat = trsmrcvDao.getJusoStat("");
if(jusoStat != null){
jusoStats.add(jusoStat);
}
result.setData("result", jusoStats);
return result.getResult();
}
@ -81,57 +83,24 @@ public class CommWebBrowserSystemManageController {
String ori = mfile.getOriginalFilename();
if(!ori.startsWith("AlterD.JUSUBM.") || !ori.endsWith(".TI_SPBD_BULD.TXT")){
if(!ori.equals("build_mod.txt")){
result.put("result", "fail");
result.put("failResn", "건물주소 변동 파일이 아닙니다.");
result.put("failResn", "건물주소 변동 파일이 아닙니다.");
return result;
}
String[] ori2 = ori.split("\\.");
String dateOfFile = ori2[2];
String targetYmd = "";
JusoUpdateResultVO lastData = trsmrcvDao.findLastBuildJusoHist("");
boolean isNew = true;
JusoUpdateResultVO lastData = trsmrcvDao.getJusoStat("");
if(lastData != null){
if(lastData.getStatCd().equals("0")){
result.put("result", "fail");
result.put("failResn", "주소 갱신이 처리중 입니다.");
return result;
}
if(lastData.getStatCd().equals("1")){
targetYmd = lastData.getDataDate().replace("-", "");
isNew = false;
}
if(lastData.getStatCd().equals("2")){
String lastDataDate = lastData.getDataDate().replace("-", "");
SimpleDateFormat formatDt = new SimpleDateFormat("yyyyMMdd");
Calendar cal = Calendar.getInstance();
Date date;
try {
date = formatDt.parse(lastDataDate);
} catch (ParseException e) {
result.put("result", "fail");
return result;
}
cal.setTime(date);
cal.add(Calendar.DATE, +1);
String nextDate = formatDt.format(cal.getTime());
targetYmd = nextDate;
}
} else {
targetYmd = "20250801";
}
if(!dateOfFile.equals(targetYmd)){
result.put("result", "fail");
result.put("failResn", "다음으로 처리해야할 일변동날짜는 "+targetYmd+"입니다."
+"<br />업로드한 파일은 "+dateOfFile+" 자료입니다.");
return result;
}
String workPath = "/gpta/source-app/cfs/jusoUploadData";
File workDir = new File(workPath);
@ -160,13 +129,15 @@ public class CommWebBrowserSystemManageController {
return result;
}
JusoThread jusoThread = new JusoThread(trsmrcvDao, targetYmd, isNew, destPath);
JusoThread jusoThread = new JusoThread(trsmrcvDao, destPath);
Thread newThread = new Thread(jusoThread);
newThread.setName("jusoThread #1");
newThread.start();
result.put("result", "success");
return result;
}
/**

@ -22,14 +22,10 @@ public class JusoThread implements Runnable {
protected Logger logger = LoggerFactory.getLogger(this.getClass());
private TrsmrcvDao trsmrcvDao;
private String targetYmd;
private boolean isNew;
private String filePath;
public JusoThread(TrsmrcvDao dao, String ymd, boolean isNewFlag, String path) {
public JusoThread(TrsmrcvDao dao, String path) {
this.trsmrcvDao = dao;
this.targetYmd = ymd;
this.isNew = isNewFlag;
this.filePath = path;
}
@ -69,38 +65,23 @@ public class JusoThread implements Runnable {
@Override
public void run() {
JusoUpdateResultVO vo = new JusoUpdateResultVO();
vo.setDataDate(targetYmd);
vo.setFailRow(0);
try {
if(isNew){
trsmrcvDao.insertJusoHist(targetYmd);
} else {
trsmrcvDao.initJusoHist(targetYmd);
}
} catch (Exception e1) {
trsmrcvDao.updateJusoFailResult(vo);
return;
}
trsmrcvDao.updateJusoStat("0");
int failRow = 0;
int curRow = 0;
boolean succ = true;
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath),"MS949"));
} catch (Exception e1) {
trsmrcvDao.updateJusoFailResult(vo);
trsmrcvDao.updateJusoStat("1");
return;
}
try {
for(String line = reader.readLine(); line != null; line = reader.readLine()) {
curRow++;
if(!line.equals("") && !line.equals("No Data")) {
String[] line_split = line.split(Pattern.quote("|"), -1);
@ -115,7 +96,6 @@ public class JusoThread implements Runnable {
}
reader.close();
} catch (Exception e) {
failRow = curRow;
succ = false;
} finally {
try {
@ -126,10 +106,9 @@ public class JusoThread implements Runnable {
}
if(succ){
trsmrcvDao.updateJusoSuccResult(targetYmd);
trsmrcvDao.updateJusoStat("2");
} else {
vo.setFailRow(failRow);
trsmrcvDao.updateJusoFailResult(vo);
trsmrcvDao.updateJusoStat("1");
}
}

Loading…
Cancel
Save