diff --git a/src/main/java/com/itn/admin/agent/client/cmm/service/AbstractAgentService.java b/src/main/java/com/itn/admin/agent/client/cmm/service/AbstractAgentService.java index 1e6734d..73e989f 100644 --- a/src/main/java/com/itn/admin/agent/client/cmm/service/AbstractAgentService.java +++ b/src/main/java/com/itn/admin/agent/client/cmm/service/AbstractAgentService.java @@ -47,6 +47,20 @@ public abstract class AbstractAgentService implements AgentService { return new RestResponse(HttpStatus.OK, "", count); } + @Override + public RestResponse findByLogMoveCntWhereMessage(T agentVO) { + int count = countByLogMoveCntWhereMsgTypeAndMessage(agentVO); + return new RestResponse(HttpStatus.OK, "", count); + } + public RestResponse findAllLogMoveCnt(T agentVO) { + int count = this.countAllLogMoveCnt(agentVO); + return new RestResponse(HttpStatus.OK, "", count); + } + + protected abstract int countAllLogMoveCnt(T agentVO); + + protected abstract int countByLogMoveCntWhereMsgTypeAndMessage(T agentVO); + protected abstract int countByCondition(T agentVO); protected abstract int parseSendCount(T agentVO); protected abstract T createCopy(T originalVO, int index); @@ -57,4 +71,5 @@ public abstract class AbstractAgentService implements AgentService { log.info("현재 처리 중인 배치: [{}]", currentBatch + "/" + totalBatches); log.info("남은 배치 수: [{}]", (totalBatches - currentBatch)); } + } diff --git a/src/main/java/com/itn/admin/agent/client/cmm/service/AgentService.java b/src/main/java/com/itn/admin/agent/client/cmm/service/AgentService.java index 049be149..6977fd7 100644 --- a/src/main/java/com/itn/admin/agent/client/cmm/service/AgentService.java +++ b/src/main/java/com/itn/admin/agent/client/cmm/service/AgentService.java @@ -5,4 +5,8 @@ import com.itn.admin.cmn.msg.RestResponse; public interface AgentService { RestResponse send(T agentVO); RestResponse findByInsertCnt(T agentVO); + + RestResponse findByLogMoveCntWhereMessage(T agentVO); + + RestResponse findAllLogMoveCnt(T agentVO); } diff --git a/src/main/java/com/itn/admin/agent/client/one/mapper/AgentCOneMapper.java b/src/main/java/com/itn/admin/agent/client/one/mapper/AgentCOneMapper.java index 93f2883..25e3cf7 100644 --- a/src/main/java/com/itn/admin/agent/client/one/mapper/AgentCOneMapper.java +++ b/src/main/java/com/itn/admin/agent/client/one/mapper/AgentCOneMapper.java @@ -24,4 +24,8 @@ public interface AgentCOneMapper { void insertAgents(List agentCTwoVO); int countBySendStatusNotAndMsgType(AgentCOneVO agentCTwoVO); + + int countByLogMoveCntWhereMsgTypeAndMessage(AgentCOneVO agentVO); + + int findAllLogMoveCnt(AgentCOneVO agentVO); } diff --git a/src/main/java/com/itn/admin/agent/client/one/service/AgentCOneService.java b/src/main/java/com/itn/admin/agent/client/one/service/AgentCOneService.java index 0c83a9f..049f64e 100644 --- a/src/main/java/com/itn/admin/agent/client/one/service/AgentCOneService.java +++ b/src/main/java/com/itn/admin/agent/client/one/service/AgentCOneService.java @@ -1,7 +1,6 @@ package com.itn.admin.agent.client.one.service; import com.itn.admin.agent.client.one.mapper.domain.AgentCOneVO; -import com.itn.admin.agent.client.two.mapper.domain.AgentCTwoVO; import com.itn.admin.cmn.msg.RestResponse; @@ -13,5 +12,9 @@ public interface AgentCOneService { RestResponse findByInsertCnt(AgentCOneVO agentCOneVO); + RestResponse findByLogMoveCntWhereMessage(AgentCOneVO agentCOneVO); + + RestResponse findAllLogMoveCnt(AgentCOneVO agentCOneVO); + // RestResponse findByReportCnt(AgentCTwoVO agentCTwoVO); } diff --git a/src/main/java/com/itn/admin/agent/client/one/service/impl/AgentCOneServiceImpl.java b/src/main/java/com/itn/admin/agent/client/one/service/impl/AgentCOneServiceImpl.java index 36ab241..88e0985 100644 --- a/src/main/java/com/itn/admin/agent/client/one/service/impl/AgentCOneServiceImpl.java +++ b/src/main/java/com/itn/admin/agent/client/one/service/impl/AgentCOneServiceImpl.java @@ -10,11 +10,11 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; -@Slf4j@Service +@Slf4j +@Service public class AgentCOneServiceImpl extends AbstractAgentService implements AgentCOneService { @Autowired @@ -25,6 +25,16 @@ public class AgentCOneServiceImpl extends AbstractAgentService findByReportCnt(@RequestBody AgentCTwoVO agentCTwoVO) throws Exception { -// return ResponseEntity.ok().body(agentCTwoService.findByReportCnt(agentCTwoVO)); -// } + * client LOG TB에 insert 됐는지 확인 count + * 리포트할때 ''현재'' 데이터가 LOG 테이블에 이동됐는지 확인 + * select cnt MESSAGE LIKE CONCAT(#{message}, '%') + * */ + @PostMapping("/agent/one/findByLogMoveCntWhereMessage") + public ResponseEntity findByLogMoveCntWhereMessage(@RequestBody AgentCOneVO agentCOneVO) throws Exception { + return ResponseEntity.ok().body(agentCOneService.findByLogMoveCntWhereMessage(agentCOneVO)); + } + + /* + * client LOG TB에 insert 됐는지 확인 count + * 리포트할때 동일 타입 데이터가 LOG 테이블에 이동됐는지 확인 + * select cnt WHERE msgType = #{msgType} + * */ + @PostMapping("/agent/one/findByLogMoveCnt") + public ResponseEntity findByLogMoveCnt(@RequestBody AgentCOneVO agentCOneVO) throws Exception { + return ResponseEntity.ok().body(agentCOneService.findAllLogMoveCnt(agentCOneVO)); + } } diff --git a/src/main/java/com/itn/admin/agent/client/two/mapper/AgentCTwoMapper.java b/src/main/java/com/itn/admin/agent/client/two/mapper/AgentCTwoMapper.java index 4c5c3ef..c34d978 100644 --- a/src/main/java/com/itn/admin/agent/client/two/mapper/AgentCTwoMapper.java +++ b/src/main/java/com/itn/admin/agent/client/two/mapper/AgentCTwoMapper.java @@ -24,4 +24,8 @@ public interface AgentCTwoMapper { void insertAgents(List agentCTwoVO); int countBySendStatusNotAndMsgType(AgentCTwoVO agentCTwoVO); + + int countByLogMoveCntWhereMsgTypeAndMessage(AgentCTwoVO agentVO); + + int findAllLogMoveCnt(AgentCTwoVO agentVO); } diff --git a/src/main/java/com/itn/admin/agent/client/two/service/AgentCTwoService.java b/src/main/java/com/itn/admin/agent/client/two/service/AgentCTwoService.java index 3d90de9..f0492b7 100644 --- a/src/main/java/com/itn/admin/agent/client/two/service/AgentCTwoService.java +++ b/src/main/java/com/itn/admin/agent/client/two/service/AgentCTwoService.java @@ -12,5 +12,7 @@ public interface AgentCTwoService { RestResponse findByInsertCnt(AgentCTwoVO agentCTwoVO); -// RestResponse findByReportCnt(AgentCTwoVO agentCTwoVO); + RestResponse findByLogMoveCntWhereMessage(AgentCTwoVO agentCTwoVO); + + RestResponse findAllLogMoveCnt(AgentCTwoVO agentCTwoVO); } diff --git a/src/main/java/com/itn/admin/agent/client/two/service/impl/AgentCTwoServiceImpl.java b/src/main/java/com/itn/admin/agent/client/two/service/impl/AgentCTwoServiceImpl.java index 2005b8f..5b40b06 100644 --- a/src/main/java/com/itn/admin/agent/client/two/service/impl/AgentCTwoServiceImpl.java +++ b/src/main/java/com/itn/admin/agent/client/two/service/impl/AgentCTwoServiceImpl.java @@ -1,7 +1,6 @@ package com.itn.admin.agent.client.two.service.impl; import com.itn.admin.agent.client.cmm.service.AbstractAgentService; -import com.itn.admin.agent.client.one.service.AgentCOneService; import com.itn.admin.agent.client.two.mapper.domain.AgentCTwoVO; import com.itn.admin.agent.client.two.mapper.AgentCTwoMapper; import com.itn.admin.agent.client.two.service.AgentCTwoService; @@ -26,11 +25,22 @@ public class AgentCTwoServiceImpl extends AbstractAgentService findByReportCnt(@RequestBody AgentCTwoVO agentCTwoVO) throws Exception { -// return ResponseEntity.ok().body(agentCTwoService.findByReportCnt(agentCTwoVO)); -// } + * client LOG TB에 insert 됐는지 확인 count + * 리포트할때 ''현재'' 데이터가 LOG 테이블에 이동됐는지 확인 + * select cnt WHERE MESSAGE LIKE CONCAT(#{message}, '%') + * */ + @PostMapping("/agent/two/findByLogMoveCntWhereMessage") + public ResponseEntity findByLogMoveCntWhereMessage(@RequestBody AgentCTwoVO agentCTwoVO) throws Exception { + return ResponseEntity.ok().body(agentCTwoService.findByLogMoveCntWhereMessage(agentCTwoVO)); + } + + /* + * client LOG TB에 insert 됐는지 확인 count + * 리포트 update한 모든 데이터가 LOG 테이블에 이동됐는지 확인 + * */ + @PostMapping("/agent/two/findByLogMoveCnt") + public ResponseEntity findByLogMoveCnt(@RequestBody AgentCTwoVO agentCTwoVO) throws Exception { + return ResponseEntity.ok().body(agentCTwoService.findAllLogMoveCnt(agentCTwoVO)); + } } diff --git a/src/main/java/com/itn/admin/agent/server/mapper/AgentSMapper.java b/src/main/java/com/itn/admin/agent/server/mapper/AgentSMapper.java index 7b7e0b9..afb3308 100644 --- a/src/main/java/com/itn/admin/agent/server/mapper/AgentSMapper.java +++ b/src/main/java/com/itn/admin/agent/server/mapper/AgentSMapper.java @@ -19,4 +19,8 @@ public interface AgentSMapper { int countByCurStateAndUserId(AgentSVO agentSVO); int updateReportWhereUserId(AgentSVO agentSVO); + + String findByCurStateAndUserIdAndSmsTxt(AgentSVO agentSVO); + + int updateReportWhereUserIdAndMassage(AgentSVO agentSVO); } diff --git a/src/main/java/com/itn/admin/agent/server/mapper/domain/AgentSVO.java b/src/main/java/com/itn/admin/agent/server/mapper/domain/AgentSVO.java index 0b0bdf7..7a17509 100644 --- a/src/main/java/com/itn/admin/agent/server/mapper/domain/AgentSVO.java +++ b/src/main/java/com/itn/admin/agent/server/mapper/domain/AgentSVO.java @@ -78,6 +78,14 @@ public class AgentSVO implements Serializable { private String bizKakaoResendYn; // 카카오 재전송 여부 private String bizKakaoTitle; // 카카오 강조유형 타이틀 private String bizUmid; // 비즈뿌리오 서버에서 정의한 ID + private String message; // + + // client 컬럼 + private String sendStatus; + private String requestSate; + private String recvPhone; + private String sendPhone; + private String sendCnt; } diff --git a/src/main/java/com/itn/admin/agent/server/service/AgentSService.java b/src/main/java/com/itn/admin/agent/server/service/AgentSService.java index 574cccb..a465bb2 100644 --- a/src/main/java/com/itn/admin/agent/server/service/AgentSService.java +++ b/src/main/java/com/itn/admin/agent/server/service/AgentSService.java @@ -10,4 +10,6 @@ public interface AgentSService { RestResponse findByTransferCnt(AgentSVO agentSVO); RestResponse serverReport(AgentSVO agentSVO); + + RestResponse nowDataReport(AgentSVO agentSVO); } diff --git a/src/main/java/com/itn/admin/agent/server/service/impl/AgentSServiceImpl.java b/src/main/java/com/itn/admin/agent/server/service/impl/AgentSServiceImpl.java index d435f35..cdd6ee1 100644 --- a/src/main/java/com/itn/admin/agent/server/service/impl/AgentSServiceImpl.java +++ b/src/main/java/com/itn/admin/agent/server/service/impl/AgentSServiceImpl.java @@ -21,14 +21,28 @@ public class AgentSServiceImpl implements AgentSService { @Override public RestResponse findByTransferCnt(AgentSVO agentSVO) { - int cnt = agentSMapper.countByCurStateAndUserId(agentSVO); +// int cnt = agentSMapper.countByCurStateAndUserId(agentSVO); + String cntTxt = agentSMapper.findByCurStateAndUserIdAndSmsTxt(agentSVO); - return new RestResponse(HttpStatus.OK,"", cnt); + cntTxt = cntTxt.replace(agentSVO.getMessage(),"").trim(); + return new RestResponse(HttpStatus.OK,"", cntTxt); } @Override public RestResponse serverReport(AgentSVO agentSVO) { int cnt = agentSMapper.updateReportWhereUserId(agentSVO); - return new RestResponse(HttpStatus.OK,"report를 시작합니다.", cnt); + String msg = agentSVO.getUserId()+ "관련 모든 데이터 report 시작합니다."; + return new RestResponse(HttpStatus.OK,msg, cnt); + } + + @Override + public RestResponse nowDataReport(AgentSVO agentSVO) { + + int cnt = agentSMapper.updateReportWhereUserIdAndMassage(agentSVO); + + log.info(" + nowDataReport cnt : [{}]", cnt); + String msg = agentSVO.getMessage() + "관련 데이터 report 시작합니다."; + + return new RestResponse(HttpStatus.OK,msg, cnt); } } diff --git a/src/main/java/com/itn/admin/agent/server/web/AgentSRestController.java b/src/main/java/com/itn/admin/agent/server/web/AgentSRestController.java index ca7fa2b..14d44c3 100644 --- a/src/main/java/com/itn/admin/agent/server/web/AgentSRestController.java +++ b/src/main/java/com/itn/admin/agent/server/web/AgentSRestController.java @@ -30,11 +30,20 @@ public class AgentSRestController { /* * 전송사가 리턴해준것처럼 * server DB에 update 함 - * @@ 대량 없뎃 + * @@ 모든 데이터 대량 없뎃 * */ - @PostMapping("/agent/server/report") + @PostMapping("/agent/server/allReport") public ResponseEntity serverReport(@RequestBody AgentSVO agentSVO) throws Exception { return ResponseEntity.ok().body(agentSService.serverReport(agentSVO)); } + /* + * 전송사가 리턴해준것처럼 + * server DB에 update 함 + * @@ 현재 화면 기준 data만 없뎃 + * */ + @PostMapping("/agent/server/nowDataReport") + public ResponseEntity serverNowDataReport(@RequestBody AgentSVO agentSVO) throws Exception { + return ResponseEntity.ok().body(agentSService.nowDataReport(agentSVO)); + } } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index dbbb91f..04f2057 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -6,6 +6,8 @@ mybatis.mapper-locations=classpath:mapper/**/*.xml # model camel case set mybatis.configuration.map-underscore-to-camel-case=true +mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl + server.servlet.session.timeout=30m #sql \ucd9c\ub825 log \uc124\uc815 @@ -27,7 +29,6 @@ spring.main.datasource.jdbc-url=jdbc:log4jdbc:mysql://119.193.215.98:3306/itn_ad spring.main.datasource.username=itnAdmin spring.main.datasource.password=itntest123 - # spring.commute.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy spring.commute.datasource.jdbc-url=jdbc:log4jdbc:mysql://192.168.0.200:3312/biostar2_ac?serverTimezone=Asia/Seoul diff --git a/src/main/resources/mapper/agent/client/one/AgentCOneMapper.xml b/src/main/resources/mapper/agent/client/one/AgentCOneMapper.xml index 5da5dda..3309c02 100644 --- a/src/main/resources/mapper/agent/client/one/AgentCOneMapper.xml +++ b/src/main/resources/mapper/agent/client/one/AgentCOneMapper.xml @@ -45,7 +45,7 @@ - + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/agent/client/two/AgentCTwoMapper.xml b/src/main/resources/mapper/agent/client/two/AgentCTwoMapper.xml index c068922..2a28c21 100644 --- a/src/main/resources/mapper/agent/client/two/AgentCTwoMapper.xml +++ b/src/main/resources/mapper/agent/client/two/AgentCTwoMapper.xml @@ -45,7 +45,7 @@ - + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/agent/server/AgentSMapper.xml b/src/main/resources/mapper/agent/server/AgentSMapper.xml index ab0d457..8506d70 100644 --- a/src/main/resources/mapper/agent/server/AgentSMapper.xml +++ b/src/main/resources/mapper/agent/server/AgentSMapper.xml @@ -6,6 +6,16 @@ + + +
@@ -287,7 +292,7 @@
- +
@@ -307,6 +312,105 @@ + +
+
+
+

Client 1 현재현황

+ +
+
+
+ +
+
+ +
+ MSG 건 + 0 +
+
+
+ +
+
+ +
+ MSG_LOG 건 + 0 +
+
+
+ +
+
+ +
+ report(X) 건 + 0 +
+
+
+
+
+
+
+ +
+
+
+

Client 2 현재현황

+ +
+
+
+ +
+
+ +
+ MSG 건 + 0 +
+
+
+ +
+
+ +
+ MSG_LOG 건 + 0 +
+
+
+ +
+
+ +
+ report(X) 건 + 0 +
+
+
+
+
+
+
+ + + + + + + + +
@@ -363,7 +467,7 @@
클라이언트 report (S -> C)
- 0 + 0 0 건수 @@ -383,7 +487,7 @@
- +
@@ -445,7 +549,7 @@
클라이언트 report (S -> C)
- 0 + 0 0 건수 @@ -465,7 +569,14 @@
- + + + +
@@ -532,7 +643,7 @@ contentType: 'application/json', // async: true, success: function (data) { - console.log('data : ', data); + // console.log('data : ', data); if (data.status === 'OK') { fn_successAlert('경과시간 : '+data.data, data.msg); @@ -547,7 +658,7 @@ console.log("ERROR : " + JSON.stringify(e)); }, beforeSend : function(xmlHttpRequest) { - fn_oneScriptStart(); + fn_oneInsertScriptStart(); }, complete : function(xhr, textStatus) { @@ -561,7 +672,9 @@ /* * client_1 reporting 버튼 * */ - $("#divOneSmsCard .reportingStartBtn").on("click", function () { + $("#divOneSmsCard .rprtAllStrtBtn").on("click", function () { + + var ajaxUrl = '/agent/one/findByLogMoveCnt' // 폼 데이터를 수집 var formData = new FormData($("#divTwoSms .sendForm")[0]); @@ -576,15 +689,21 @@ console.log('jsonObject : ', jsonObject); $.ajax({ type: "POST", - url: "/agent/server/report", + url: "/agent/server/allReport", data: JSON.stringify(jsonObject), // JSON 문자열로 변환된 데이터를 전송 dataType: 'json', contentType: 'application/json', // async: true, success: function (data) { - console.log('data : ', data); + // console.log('data : ', data); if (data.status === 'OK') { + if(data.data < 1){ + alert('리포팅할 데이터가 없습니다.'); + oneStopInsertTimer(); + return false; + } + $("#divTwoSmsCard .reportStartCnt").text(data.data); fn_successAlert(data.data+'건', data.msg); } @@ -596,7 +715,10 @@ alert("저장에 실패하였습니다."); console.log("ERROR : " + JSON.stringify(e)); }, - beforeSend : function(xmlHttpRequest) { + beforeSend : function(xmlHttpRequest, data) { + if(data.data > 0){ + return false; + } // 건수를 현황확인으로 이동 fn_oneReportScriptStart(); @@ -607,6 +729,71 @@ }); }); + /* + * client_1 reporting 버튼 + * */ + $("#divOneSmsCard .rprtCrrntStrtBtn").on("click", function () { + + var ajaxUrl = '/agent/one/findByLogMoveCntWhereMessage' + + // 폼 데이터를 수집 + var formData = new FormData($("#divTwoSms .sendForm")[0]); + + var jsonObject = {}; + formData.forEach((value, key) => { + jsonObject[key] = value; + }); + var usertagId = '#'+$(this).data('tagid'); + jsonObject['userId'] = $(usertagId).val(); + + // console.log('two rprtCrrntStrtBtn jsonObject : ', jsonObject); + $.ajax({ + type: "POST", + url: "/agent/server/nowDataReport", + data: JSON.stringify(jsonObject), // JSON 문자열로 변환된 데이터를 전송 + dataType: 'json', + contentType: 'application/json', + // async: true, + success: function (data) { + // console.log('two rprtCrrntStrtBtn data : ', data); + + if (data.status === 'OK') { + if(data.data < 1){ + alert('리포팅할 데이터가 없습니다.'); + oneStopInsertTimer(); + return false; + } + var $oriTag = $("#divOneSmsCard .reportStartCnt"); + var oriText = $oriTag.text(); + var dataCnt = data.data; + var totalCnt = dataCnt; + if(Number(oriText) > 0){ + totalCnt = dataCnt + Number(oriText); + $("#divOneSmsCard .reportStartSubCnt").text(' (+'+dataCnt+')'); + } + $oriTag.text(totalCnt); + fn_successAlert(data.data+'건', data.msg); + } + else { + alert("오류 알림 : :: "+data.msg); + } + }, + error: function (e) { + alert("저장에 실패하였습니다."); + console.log("ERROR : " + JSON.stringify(e)); + }, + beforeSend : function(data) { + if(data.data > 0){ + return false; + } + fn_oneReportScriptStart(ajaxUrl); + + }, + complete : function(xhr, textStatus) { + oneStopInsertTimer(); + } + }); + }); // client_2 영역 // client_2 영역 @@ -617,6 +804,7 @@ * client_2 msg insert * */ $("#divTwoSms .sendBtn").on("click", function () { + console.log('#divTwoSms .sendBtn '); // 폼 데이터를 수집 var formData = new FormData($("#divTwoSms .sendForm")[0]); @@ -630,7 +818,6 @@ return false; } - console.log('two sendBtn : ', jsonObject); @@ -642,7 +829,7 @@ contentType: 'application/json', // async: true, success: function (data) { - console.log('data : ', data); + // console.log('data : ', data); if (data.status === 'OK') { fn_successAlert('경과시간 : '+data.data, data.msg); @@ -657,7 +844,7 @@ console.log("ERROR : " + JSON.stringify(e)); }, beforeSend : function(xmlHttpRequest) { - fn_twoScriptStart(); + fn_twoInsertScriptStart(); }, complete : function(xhr, textStatus) { @@ -671,7 +858,9 @@ /* * client_2 reporting 버튼 * */ - $("#divTwoSmsCard .reportingStartBtn").on("click", function () { + $("#divTwoSmsCard .rprtAllStrtBtn").on("click", function () { + + var ajaxUrl = '/agent/two/findByLogMoveCnt' // 폼 데이터를 수집 var formData = new FormData($("#divTwoSms .sendForm")[0]); @@ -685,15 +874,22 @@ console.log('jsonObject : ', jsonObject); $.ajax({ type: "POST", - url: "/agent/server/report", + url: "/agent/server/allReport", data: JSON.stringify(jsonObject), // JSON 문자열로 변환된 데이터를 전송 dataType: 'json', contentType: 'application/json', // async: true, success: function (data) { - console.log('data : ', data); + // console.log('data : ', data); if (data.status === 'OK') { + if(data.data < 1){ + alert('리포팅할 데이터가 없습니다.'); + oneStopInsertTimer(); + return false; + } + + $("#divTwoSmsCard .reportStartCnt").text(data.data); fn_successAlert(data.data+'건', data.msg); } @@ -705,9 +901,11 @@ alert("저장에 실패하였습니다."); console.log("ERROR : " + JSON.stringify(e)); }, - beforeSend : function(xmlHttpRequest) { - // 건수를 현황확인으로 이동 - fn_twoReportScriptStart(); + beforeSend : function(xmlHttpRequest, data) { + if(data.data > 0){ + return false; + } + fn_twoReportScriptStart(ajaxUrl); }, complete : function(xhr, textStatus) { @@ -715,10 +913,75 @@ } }); }); + + /* + * client_2 reporting 버튼 + * */ + $("#divTwoSmsCard .rprtCrrntStrtBtn").on("click", function () { + + var ajaxUrl = '/agent/two/findByLogMoveCntWhereMessage' + + // 폼 데이터를 수집 + var formData = new FormData($("#divTwoSms .sendForm")[0]); + + var jsonObject = {}; + formData.forEach((value, key) => { + jsonObject[key] = value; + }); + var usertagId = '#'+$(this).data('tagid'); + jsonObject['userId'] = $(usertagId).val(); + + // console.log('two rprtCrrntStrtBtn jsonObject : ', jsonObject); + $.ajax({ + type: "POST", + url: "/agent/server/nowDataReport", + data: JSON.stringify(jsonObject), // JSON 문자열로 변환된 데이터를 전송 + dataType: 'json', + contentType: 'application/json', + // async: true, + success: function (data) { + // console.log('two rprtCrrntStrtBtn data : ', data); + + if (data.status === 'OK') { + if(data.data < 1){ + alert('리포팅할 데이터가 없습니다.'); + twoStopInsertTimer(); + return false; + } + var $oriTag = $("#divTwoSmsCard .reportStartCnt"); + var oriText = $oriTag.text(); + var dataCnt = data.data; + var totalCnt = dataCnt; + if(Number(oriText) > 0){ + totalCnt = dataCnt + Number(oriText); + $("#divTwoSmsCard .reportStartSubCnt").text(' (+'+dataCnt+')'); + } + $oriTag.text(totalCnt); + fn_successAlert(data.data+'건', data.msg); + } + else { + alert("오류 알림 : :: "+data.msg); + } + }, + error: function (e) { + alert("저장에 실패하였습니다."); + console.log("ERROR : " + JSON.stringify(e)); + }, + beforeSend : function(data) { + if(data.data > 0){ + return false; + } + fn_twoReportScriptStart(ajaxUrl); + + }, + complete : function(xhr, textStatus) { + twoStopInsertTimer(); + } + }); + }); + }); - - function fn_successAlert(title, msg){ $(document).Toasts('create', { class: 'bg-info',