diff --git a/pom.xml b/pom.xml
index 2622bf0..3923bc1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -171,6 +171,11 @@
HikariCP
+
+ ch.qos.logback
+ logback-classic
+
+
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 d0e2e28..542f42c 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
@@ -23,7 +23,7 @@ public abstract class AbstractAgentService implements AgentService {
for (int i = 0; i < sendCnt; i++) {
- T paramVO = createCopy(agentVO, i);
+ T paramVO = createCopy(agentVO, i, sendCnt);
agentVOL.add(paramVO);
}
@@ -73,7 +73,7 @@ public abstract class AbstractAgentService implements AgentService {
protected abstract int countByCondition(T agentVO);
protected abstract int parseSendCount(T agentVO);
- protected abstract T createCopy(T originalVO, int index);
+ protected abstract T createCopy(T originalVO, int index, int sendCnt);
protected abstract void insertBatch(List batchList);
private void logBatchProgress(int i, int totalBatches) {
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 0cbe7c0..e29fb7f 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
@@ -7,9 +7,11 @@ import com.itn.admin.agent.client.one.service.AgentCOneService;
import com.itn.admin.cmn.msg.RestResponse;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.Arrays;
import java.util.List;
@@ -52,26 +54,30 @@ public class AgentCOneServiceImpl extends AbstractAgentService PHONE_NUMBER_LIST = Arrays.asList(
+ "01057559725", "01093414986", "01041101024",
+ "01057058729", "01030266269", "01063170383",
+ "01066137278", "01023221941", "01087872615",
+ "01083584250", "01071101861", "01073859908",
+ "01034910882", "01051842895", "01094597958"
+ );
+
}
diff --git a/src/main/java/com/itn/admin/agent/client/one/web/AgentCOneRestController.java b/src/main/java/com/itn/admin/agent/client/one/web/AgentCOneRestController.java
index 9e83da1..36fcfec 100644
--- a/src/main/java/com/itn/admin/agent/client/one/web/AgentCOneRestController.java
+++ b/src/main/java/com/itn/admin/agent/client/one/web/AgentCOneRestController.java
@@ -2,9 +2,9 @@ package com.itn.admin.agent.client.one.web;
import com.itn.admin.agent.client.one.mapper.domain.AgentCOneVO;
import com.itn.admin.agent.client.one.service.AgentCOneService;
-import com.itn.admin.agent.client.three.mapper.domain.AgentCThreeVO;
import com.itn.admin.cmn.msg.RestResponse;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
@@ -18,6 +18,7 @@ import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.util.HashMap;
import java.util.Map;
+import java.util.UUID;
@RestController
public class AgentCOneRestController {
@@ -26,6 +27,8 @@ public class AgentCOneRestController {
private final String UPLOAD_DIR = "/home/mjon_client_agent_1/mmsfile";
+ @Value("${agent.file.dir.path}")
+ private String AGENT_FILE_PATH;
@Autowired
public void setAgentService(AgentCOneService agentCOneService) {
@@ -132,16 +135,34 @@ public class AgentCOneRestController {
private String uploadSingleFile(MultipartFile file) throws IOException {
- String fileName = StringUtils.cleanPath(file.getOriginalFilename());
- Path uploadPath = Paths.get(UPLOAD_DIR);
+ // 업로드된 파일의 이름을 가져옵니다.
+ String originalFileName = StringUtils.cleanPath(file.getOriginalFilename());
+ // 파일의 확장자를 추출합니다. 파일 이름에서 마지막 "." 이후 부분을 확장자로 간주합니다.
+ String fileExtension = "";
+ int dotIndex = originalFileName.lastIndexOf(".");
+ if (dotIndex > 0) {
+ fileExtension = originalFileName.substring(dotIndex);
+ }
+
+ // 고유한 파일명을 생성합니다.
+ String uniqueFileName = UUID.randomUUID().toString() + fileExtension;
+
+ // 파일이 업로드될 경로를 설정합니다.
+ Path uploadPath = Paths.get(AGENT_FILE_PATH);
+
+ // 해당 경로가 존재하지 않으면 디렉터리를 생성합니다.
if (!Files.exists(uploadPath)) {
Files.createDirectories(uploadPath);
}
- Path filePath = uploadPath.resolve(fileName);
+ // 파일을 저장할 최종 경로를 생성합니다.
+ Path filePath = uploadPath.resolve(uniqueFileName);
+
+ // 파일을 업로드 경로에 복사합니다. 이미 파일이 존재하면 대체합니다.
Files.copy(file.getInputStream(), filePath, StandardCopyOption.REPLACE_EXISTING);
- return fileName;
+ // 업로드된 고유한 파일명을 반환합니다.
+ return uniqueFileName;
}
}
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 c533355..57a69c6 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
@@ -7,9 +7,11 @@ import com.itn.admin.agent.client.two.mapper.AgentCTwoMapper;
import com.itn.admin.agent.client.two.service.AgentCTwoService;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.Arrays;
import java.util.List;
@@ -57,26 +59,31 @@ public class AgentCTwoServiceImpl extends AbstractAgentService PHONE_NUMBER_LIST = Arrays.asList(
+ "01057559725", "01093414986", "01041101024",
+ "01057058729", "01030266269", "01063170383",
+ "01066137278", "01023221941", "01087872615",
+ "01083584250", "01071101861", "01073859908",
+ "01034910882", "01051842895", "01094597958"
+ );
+
}
diff --git a/src/main/java/com/itn/admin/agent/client/two/web/AgentCTwoRestController.java b/src/main/java/com/itn/admin/agent/client/two/web/AgentCTwoRestController.java
index fb4ecd9..a369394 100644
--- a/src/main/java/com/itn/admin/agent/client/two/web/AgentCTwoRestController.java
+++ b/src/main/java/com/itn/admin/agent/client/two/web/AgentCTwoRestController.java
@@ -1,11 +1,10 @@
package com.itn.admin.agent.client.two.web;
-import com.itn.admin.agent.client.one.mapper.domain.AgentCOneVO;
-import com.itn.admin.agent.client.three.mapper.domain.AgentCThreeVO;
import com.itn.admin.agent.client.two.mapper.domain.AgentCTwoVO;
import com.itn.admin.agent.client.two.service.AgentCTwoService;
import com.itn.admin.cmn.msg.RestResponse;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
@@ -17,11 +16,7 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
-import java.time.LocalDate;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
@RestController
public class AgentCTwoRestController {
@@ -30,6 +25,8 @@ public class AgentCTwoRestController {
private final String UPLOAD_DIR = "/home/mjon_client_agent_2/mmsfile";
+ @Value("${agent.file.dir.path}")
+ private String AGENT_FILE_PATH;
@Autowired
public void setAgentService(AgentCTwoService agentCTwoService) {
@@ -48,9 +45,8 @@ public class AgentCTwoRestController {
* client db에 insert 됐는지 확인 count
* */
@PostMapping("/agent/two/findByInsertCnt")
- public ResponseEntity findByInsertCnt(@RequestParam String message) throws Exception {
- AgentCTwoVO agentCTwoVO = new AgentCTwoVO();
- agentCTwoVO.setMessage(message);
+ public ResponseEntity findByInsertCnt(@RequestBody AgentCTwoVO agentCTwoVO) throws Exception {
+ System.out.println("message : "+ agentCTwoVO.getMessage());
return ResponseEntity.ok().body(agentCTwoService.findByInsertCnt(agentCTwoVO));
}
@@ -114,17 +110,35 @@ public class AgentCTwoRestController {
}
private String uploadSingleFile(MultipartFile file) throws IOException {
- String fileName = StringUtils.cleanPath(file.getOriginalFilename());
- Path uploadPath = Paths.get(UPLOAD_DIR);
+ // 업로드된 파일의 이름을 가져옵니다.
+ String originalFileName = StringUtils.cleanPath(file.getOriginalFilename());
+ // 파일의 확장자를 추출합니다. 파일 이름에서 마지막 "." 이후 부분을 확장자로 간주합니다.
+ String fileExtension = "";
+ int dotIndex = originalFileName.lastIndexOf(".");
+ if (dotIndex > 0) {
+ fileExtension = originalFileName.substring(dotIndex);
+ }
+
+ // 고유한 파일명을 생성합니다.
+ String uniqueFileName = UUID.randomUUID().toString() + fileExtension;
+
+ // 파일이 업로드될 경로를 설정합니다.
+ Path uploadPath = Paths.get(AGENT_FILE_PATH);
+
+ // 해당 경로가 존재하지 않으면 디렉터리를 생성합니다.
if (!Files.exists(uploadPath)) {
Files.createDirectories(uploadPath);
}
- Path filePath = uploadPath.resolve(fileName);
+ // 파일을 저장할 최종 경로를 생성합니다.
+ Path filePath = uploadPath.resolve(uniqueFileName);
+
+ // 파일을 업로드 경로에 복사합니다. 이미 파일이 존재하면 대체합니다.
Files.copy(file.getInputStream(), filePath, StandardCopyOption.REPLACE_EXISTING);
- return fileName;
+ // 업로드된 고유한 파일명을 반환합니다.
+ return uniqueFileName;
}
diff --git a/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteGroupVO.java b/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteGroupVO.java
new file mode 100644
index 0000000..dc90228
--- /dev/null
+++ b/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteGroupVO.java
@@ -0,0 +1,28 @@
+package com.itn.admin.commute.mapper.domain;
+
+import lombok.*;
+
+import java.io.Serializable;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Getter
+@Setter
+@ToString
+public class ItnCommuteGroupVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ private Integer commuteGroupId; // 그룹 아이디
+ private String workDt; // 근무 날짜
+ private String approver; // 승인자
+ private String approverDt; // 승인 일지
+ private String frstRegisterId; // 최초 등록자 ID
+ private String frstRegistPnttm; // 최초 등록 일자
+ private String lastUpdusrId; // 최종 수정자 ID
+ private String lastUpdtPnttm; // 최종 수정 일자
+
+
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteVO.java b/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteVO.java
new file mode 100644
index 0000000..aa81596
--- /dev/null
+++ b/src/main/java/com/itn/admin/commute/mapper/domain/ItnCommuteVO.java
@@ -0,0 +1,31 @@
+package com.itn.admin.commute.mapper.domain;
+
+import lombok.*;
+
+import java.io.Serializable;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Getter
+@Setter
+@ToString
+public class ItnCommuteVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ private String commuteId; // 아이디
+ private String name; // 이름
+ private String category; // 구분
+ private String workDt; // 근무일자
+ private String startTime; // 출근시간
+ private String startRslt; // 출근결과
+ private String endTime; // 퇴근시간
+ private String endRslt; // 퇴근결과
+ private String transferDt; // 이관일시
+ private String approver; // 승인자
+ private String approverDt; // 승인일시
+
+
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/itn/admin/commute/mapper/domain/UserEnum.java b/src/main/java/com/itn/admin/commute/mapper/domain/UserEnum.java
index b19b33d..ecd29cb 100644
--- a/src/main/java/com/itn/admin/commute/mapper/domain/UserEnum.java
+++ b/src/main/java/com/itn/admin/commute/mapper/domain/UserEnum.java
@@ -7,8 +7,8 @@ import java.util.stream.Stream;
public enum UserEnum {
user1("&@~PYfUBsF+m99kduT53j1Stw==","조용준", "본부장")
- ,user2("&@~C33DuWpcSL7Krvh2zAByUQ==","박진순", "팀장")
- ,user3("&@~9+BQUtRi1cuWOaIqeCYdAA==","우영두", "팀장")
+ ,user2("&@~C33DuWpcSL7Krvh2zAByUQ==","박진순", "부장")
+ ,user3("&@~9+BQUtRi1cuWOaIqeCYdAA==","우영두", "차장")
,user4("&@~peUfyxpLvs6RN9X4waktzQ==","원영현", "과장")
,user5("&@~tBRefZ81JCbrXNyRkjZNGQ==","이호영", "대리")
,user6("&@~X0eEqUF71/pD/Z0KPKysrA==","이지우", "대리")
@@ -19,7 +19,7 @@ public enum UserEnum {
,user11("&@~E8RB3p27IfRVEhNefMu2Vw==","김보미", "대리")
,user12("&@~47amAycYJ4ZT8BZDi6a2sA==","이설희", "주임")
,user13("&@~KPBL+GIy7i2agV7V57MZWg==","정다은", "대리")
- ,user15("&@~S6vaRrMJmeRjp0T8z+/ybg==","강민경", "팀장")
+ ,user15("&@~S6vaRrMJmeRjp0T8z+/ybg==","강민경", "차장")
,user16("&@~7mpJXFU+euFUNEdHmHLQVQ==","정수빈", "대리")
,user17("&@~+BL2FKvmIQc/jIyHvz0jew==","박은지", "주임")
diff --git a/src/main/java/com/itn/admin/commute/service/CommuteService.java b/src/main/java/com/itn/admin/commute/service/CommuteService.java
index 2e4c61e..89f730c 100644
--- a/src/main/java/com/itn/admin/commute/service/CommuteService.java
+++ b/src/main/java/com/itn/admin/commute/service/CommuteService.java
@@ -9,4 +9,6 @@ public interface CommuteService {
Map getList(CommuteVO commuteVO);
+
+ Map transfer(CommuteVO commuteVO);
}
diff --git a/src/main/java/com/itn/admin/commute/service/impl/CommuteServiceImpl.java b/src/main/java/com/itn/admin/commute/service/impl/CommuteServiceImpl.java
index 830a41d..081d51c 100644
--- a/src/main/java/com/itn/admin/commute/service/impl/CommuteServiceImpl.java
+++ b/src/main/java/com/itn/admin/commute/service/impl/CommuteServiceImpl.java
@@ -2,8 +2,10 @@ package com.itn.admin.commute.service.impl;
import com.itn.admin.commute.mapper.CommuteMapper;
import com.itn.admin.commute.mapper.domain.CommuteVO;
+import com.itn.admin.commute.mapper.domain.ItnCommuteGroupVO;
import com.itn.admin.commute.mapper.domain.UserEnum;
import com.itn.admin.commute.service.CommuteService;
+import com.itn.admin.itn.commute.mapper.ItnCommuteMapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -27,11 +29,64 @@ public class CommuteServiceImpl implements CommuteService {
@Autowired
CommuteMapper commuteMapper;
+ @Autowired
+ ItnCommuteMapper itnCommuteMapper;
+
+
private static final int PAGE_SIZE = 5;
public Map getList(CommuteVO commuteVO) {
+ List commuteList = makeList(commuteVO);
+
+ // controller에 return
+ Map map = new HashMap();
+
+ map.put("resultList", commuteList);
+ map.put("commuteVO", commuteVO);
+ return map;
+ }
+
+ @Override
+ public Map transfer(CommuteVO commuteVO) {
+ List commuteList = makeList(commuteVO);
+
+ String startDate = commuteList.get(0).getStartDate();
+
+ Boolean startDateYN = false;
+ for (CommuteVO tt : commuteList){
+ if(StringUtils.isNotEmpty(tt.getStartDate())){
+ startDateYN = true;
+ }
+ }
+ if(!startDateYN){
+
+ }
+
+ String wordDt = startDate.split(" ")[0];
+ Integer groupId = itnCommuteMapper.findByCommuteGroupIdFromItnCommuteWhereWordDt(wordDt);
+
+ // groupId가 없으면 groupId insert
+ if(groupId == null) {
+ ItnCommuteGroupVO itnGroupVO = new ItnCommuteGroupVO();
+ itnCommuteMapper.insertCommuteGroup(itnGroupVO);
+ groupId = itnGroupVO.getCommuteGroupId();
+ }
+
+
+
+ // controller에 return
+ Map map = new HashMap();
+
+ map.put("resultList", commuteList);
+ map.put("commuteVO", commuteVO);
+ return map;
+ }
+
+
+ public List makeList(CommuteVO commuteVO){
+
if(StringUtils.isNotEmpty(commuteVO.getSearchYear())){
@@ -69,7 +124,10 @@ public class CommuteServiceImpl implements CommuteService {
commuteVO.setEndDate(commuteVO.getSearchYear()+"-"+commuteVO.getSearchMonth()+"-"+commuteVO.getSearchDay()+" 23:59:59");
// 테이블명 생성
- String tableNmM = commuteVO.getSearchMonth().length() <2 ? "0"+commuteVO.getSearchMonth() : commuteVO.getSearchMonth();
+ String tableNmM = commuteVO.getSearchMonth().length() <2
+ ? "0"+commuteVO.getSearchMonth()
+ : commuteVO.getSearchMonth();
+
commuteVO.setTableNm("t_lg"+commuteVO.getSearchYear()+tableNmM);
List commuteList = new ArrayList<>();
@@ -104,9 +162,9 @@ public class CommuteServiceImpl implements CommuteService {
});
commuteList.forEach(t-> {
- t.setFirstActivityTime(t.getFirstActivityTime().split(" ")[1]);
- t.setLastActivityTime(t.getLastActivityTime().split(" ")[1]);
- });
+ t.setFirstActivityTime(t.getFirstActivityTime().split(" ")[1]);
+ t.setLastActivityTime(t.getLastActivityTime().split(" ")[1]);
+ });
// 출근안한사람 체크하기
for (UserEnum user : UserEnum.values()) {
@@ -133,16 +191,10 @@ public class CommuteServiceImpl implements CommuteService {
commuteList.forEach(commute -> System.out.println(commute.toString()));
commuteList.removeIf(t -> "유인식".equals(t.getUsrid())
- || "itn6".equals(t.getUsrid())
+ || "itn6".equals(t.getUsrid())
);
-
- // controller에 return
- Map map = new HashMap();
-
- map.put("resultList", commuteList);
- map.put("commuteVO", commuteVO);
- return map;
+ return commuteList;
}
public static String getRandomTime(String start, String end) {
diff --git a/src/main/java/com/itn/admin/commute/web/CommuteController.java b/src/main/java/com/itn/admin/commute/web/CommuteController.java
index 88dfe49..cbc06dd 100644
--- a/src/main/java/com/itn/admin/commute/web/CommuteController.java
+++ b/src/main/java/com/itn/admin/commute/web/CommuteController.java
@@ -1,6 +1,7 @@
package com.itn.admin.commute.web;
import com.itn.admin.commute.mapper.domain.CommuteVO;
+import com.itn.admin.commute.mapper.domain.ItnCommuteVO;
import com.itn.admin.commute.service.CommuteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@@ -29,23 +30,18 @@ public class CommuteController {
model.addAttribute("list", resultMap.get("resultList"));
model.addAttribute("commuteVO", resultMap.get("commuteVO"));
- return "commute/list";
+ return "commute/list_backup";
}
-// @GetMapping(value = "/{pageNumber}")
-// public String list(@ModelAttribute CommuteVO commuteVO, Model model) {
-// Page page = commuteService.getList(commuteVO);
+ @GetMapping(value = "1")
+ public String list_test(@ModelAttribute("commuteVO") ItnCommuteVO itnCommuteVO, Model model) {
+
+
+// Map resultMap = commuteService.getList(itnCommuteVO);
//
-// int current = page.getNumber() + 1;
-// int begin = Math.max(1, current - 5);
-// int end = Math.min(begin + 10, page.getTotalPages());
-//
-// model.addAttribute("list", page);
-// model.addAttribute("beginIndex", begin);
-// model.addAttribute("endIndex", end);
-// model.addAttribute("currentIndex", current);
-//
-// return "customers/list";
-//
-// }
+// model.addAttribute("list", resultMap.get("resultList"));
+// model.addAttribute("commuteVO", resultMap.get("commuteVO"));
+
+ return "commute/list";
+ }
}
diff --git a/src/main/java/com/itn/admin/commute/web/CommuteRestController.java b/src/main/java/com/itn/admin/commute/web/CommuteRestController.java
index 9819afe..cc47bc1 100644
--- a/src/main/java/com/itn/admin/commute/web/CommuteRestController.java
+++ b/src/main/java/com/itn/admin/commute/web/CommuteRestController.java
@@ -24,32 +24,9 @@ public class CommuteRestController {
this.commuteService = commuteService;
}
- @GetMapping(value = "/api/commute/list")
+ @GetMapping(value = "/api/commute/transfer")
public ResponseEntity list(@ModelAttribute("commuteVO") CommuteVO commuteVO, Model model) {
-
-
- Map resultMap = commuteService.getList(commuteVO);
-
-// model.addAttribute("list", resultMap.get("resultList"));
-// model.addAttribute("commuteVO", resultMap.get("commuteVO"));
-
+ Map resultMap = commuteService.transfer(commuteVO);
return ResponseEntity.ok().body(new RestResponse(HttpStatus.OK,"성공적으로 조회했습니다.",resultMap));
}
-
-// @GetMapping(value = "/{pageNumber}")
-// public String list(@ModelAttribute CommuteVO commuteVO, Model model) {
-// Page page = commuteService.getList(commuteVO);
-//
-// int current = page.getNumber() + 1;
-// int begin = Math.max(1, current - 5);
-// int end = Math.min(begin + 10, page.getTotalPages());
-//
-// model.addAttribute("list", page);
-// model.addAttribute("beginIndex", begin);
-// model.addAttribute("endIndex", end);
-// model.addAttribute("currentIndex", current);
-//
-// return "customers/list";
-//
-// }
}
diff --git a/src/main/java/com/itn/admin/itn/commute/mapper/ItnCommuteMapper.java b/src/main/java/com/itn/admin/itn/commute/mapper/ItnCommuteMapper.java
index 9eda445..165356d 100644
--- a/src/main/java/com/itn/admin/itn/commute/mapper/ItnCommuteMapper.java
+++ b/src/main/java/com/itn/admin/itn/commute/mapper/ItnCommuteMapper.java
@@ -1,7 +1,10 @@
package com.itn.admin.itn.commute.mapper;
-import com.itn.admin.itn.commute.mapper.domain.ItnCommuteVO;
+import com.itn.admin.commute.mapper.domain.ItnCommuteGroupVO;
+import com.itn.admin.itn.commute.mapper.domain.ItnCommuteBackVO;
+import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Options;
import java.util.List;
@@ -19,5 +22,11 @@ import java.util.List;
@Mapper
public interface ItnCommuteMapper {
- List findAll(ItnCommuteVO itnCommuteVO);
+ List findAll(ItnCommuteBackVO itnCommuteBackVO);
+
+ Integer findByCommuteGroupIdFromItnCommuteWhereWordDt(String wordDt);
+
+ @Insert("INSERT INTO itn_commute_group (work_dt) VALUES (NOW())")
+ @Options(useGeneratedKeys = true, keyProperty = "commuteGroupId")
+ void insertCommuteGroup(ItnCommuteGroupVO itnGroupVO);
}
diff --git a/src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteVO.java b/src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteBackVO.java
similarity index 91%
rename from src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteVO.java
rename to src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteBackVO.java
index 266766d..f67b419 100644
--- a/src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteVO.java
+++ b/src/main/java/com/itn/admin/itn/commute/mapper/domain/ItnCommuteBackVO.java
@@ -10,7 +10,7 @@ import java.io.Serializable;
@Getter
@Setter
@ToString
-public class ItnCommuteVO implements Serializable {
+public class ItnCommuteBackVO implements Serializable {
private static final long serialVersionUID = 1L;
diff --git a/src/main/java/com/itn/admin/itn/commute/service/ItnCommuteService.java b/src/main/java/com/itn/admin/itn/commute/service/ItnCommuteService.java
index 6e15da4..3e08a27 100644
--- a/src/main/java/com/itn/admin/itn/commute/service/ItnCommuteService.java
+++ b/src/main/java/com/itn/admin/itn/commute/service/ItnCommuteService.java
@@ -1,6 +1,6 @@
package com.itn.admin.itn.commute.service;
-import com.itn.admin.itn.commute.mapper.domain.ItnCommuteVO;
+import com.itn.admin.itn.commute.mapper.domain.ItnCommuteBackVO;
import java.util.Map;
@@ -8,5 +8,5 @@ import java.util.Map;
public interface ItnCommuteService {
- Map getList(ItnCommuteVO itnCommuteVO);
+ Map getList(ItnCommuteBackVO itnCommuteBackVO);
}
diff --git a/src/main/java/com/itn/admin/itn/commute/service/impl/ItnCommuteServiceImpl.java b/src/main/java/com/itn/admin/itn/commute/service/impl/ItnCommuteServiceImpl.java
index ca0dfc0..1ee9e34 100644
--- a/src/main/java/com/itn/admin/itn/commute/service/impl/ItnCommuteServiceImpl.java
+++ b/src/main/java/com/itn/admin/itn/commute/service/impl/ItnCommuteServiceImpl.java
@@ -1,7 +1,7 @@
package com.itn.admin.itn.commute.service.impl;
import com.itn.admin.itn.commute.mapper.ItnCommuteMapper;
-import com.itn.admin.itn.commute.mapper.domain.ItnCommuteVO;
+import com.itn.admin.itn.commute.mapper.domain.ItnCommuteBackVO;
import com.itn.admin.itn.commute.service.ItnCommuteService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -26,17 +26,17 @@ public class ItnCommuteServiceImpl implements ItnCommuteService {
private static final int PAGE_SIZE = 5;
- public Map getList(ItnCommuteVO itnCommuteVO) {
+ public Map getList(ItnCommuteBackVO itnCommuteBackVO) {
Random random = new Random(); // Random 객체 생성
// controller에 return
Map map = new HashMap();
- List resultList = itnCommuteMapper.findAll(itnCommuteVO);
+ List resultList = itnCommuteMapper.findAll(itnCommuteBackVO);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss"); // 시간 형식 패턴
- for (ItnCommuteVO result : resultList) {
+ for (ItnCommuteBackVO result : resultList) {
// 출근 시간에 랜덤 초 추가
if(StringUtils.isEmpty(result.getCommuteStartTime()))
continue;
diff --git a/src/main/java/com/itn/admin/itn/commute/web/ItnCommuteController.java b/src/main/java/com/itn/admin/itn/commute/web/ItnCommuteController.java
index 0d92924..3c26f8c 100644
--- a/src/main/java/com/itn/admin/itn/commute/web/ItnCommuteController.java
+++ b/src/main/java/com/itn/admin/itn/commute/web/ItnCommuteController.java
@@ -1,12 +1,11 @@
package com.itn.admin.itn.commute.web;
-import com.itn.admin.itn.commute.mapper.domain.ItnCommuteVO;
+import com.itn.admin.itn.commute.mapper.domain.ItnCommuteBackVO;
import com.itn.admin.itn.commute.service.ItnCommuteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
@@ -34,16 +33,16 @@ public class ItnCommuteController {
}
// CommuteVO 생성
- ItnCommuteVO itnCommuteVO = ItnCommuteVO.builder()
+ ItnCommuteBackVO itnCommuteBackVO = ItnCommuteBackVO.builder()
.startDate(startDate)
.endDate(endDate)
.build();
- Map resultMap = commuteService.getList(itnCommuteVO);
+ Map resultMap = commuteService.getList(itnCommuteBackVO);
model.addAttribute("list", resultMap.get("resultList"));
- model.addAttribute("commuteVO", itnCommuteVO);
+ model.addAttribute("commuteVO", itnCommuteBackVO);
model.addAttribute("startDate", startDate);
model.addAttribute("endDate", endDate);
diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties
new file mode 100644
index 0000000..4aea5c4
--- /dev/null
+++ b/src/main/resources/application-dev.properties
@@ -0,0 +1 @@
+agent.file.dir.path=X:\\agent_file
diff --git a/src/main/resources/application-prod.properties b/src/main/resources/application-prod.properties
new file mode 100644
index 0000000..0d2a396
--- /dev/null
+++ b/src/main/resources/application-prod.properties
@@ -0,0 +1 @@
+agent.file.dir.path=/home/docker/tomcat_8081_to_8089_2022_0712/kcc_adr_volume/agent_file
\ No newline at end of file
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 524ac72..ddbfdbe 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -9,7 +9,7 @@ mybatis.configuration.map-underscore-to-camel-case=true
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
-server.servlet.session.timeout=30m
+server.servlet.session.timeout=120m
#sql \ucd9c\ub825 log \uc124\uc815
logging.level.jdbc.sqlonly=info
@@ -83,4 +83,7 @@ spring.mjagent.server.datasource.hikari.maximum-pool-size=4
-logging.config=classpath:logback-spring.xml
\ No newline at end of file
+logging.config=classpath:logback-spring.xml
+log.config.path=/data/tomcat/tomcat_api_9100_2023_0711/logs
+log.config.filename=mjonApi_log
+logging.level.root=INFO
\ No newline at end of file
diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml
index d2871ac..a021741 100644
--- a/src/main/resources/logback-spring.xml
+++ b/src/main/resources/logback-spring.xml
@@ -22,18 +22,22 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
+
+
+
+
diff --git a/src/main/resources/logback.properties b/src/main/resources/logback.properties
deleted file mode 100644
index 6392ca9..0000000
--- a/src/main/resources/logback.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-#???? ??
-log.config.path=/data/tomcat/tomcat_api_9100_2023_0711/logs
-#???? ??
-log.config.filename=mjonApi_log
-
-logging.level.root=INFO
-#logging.level.root=DEBUG
-
-
diff --git a/src/main/resources/mapper/itn/commute/CommuteMapper.xml b/src/main/resources/mapper/itn/commute/CommuteMapper.xml
index 488be5b..2673a78 100644
--- a/src/main/resources/mapper/itn/commute/CommuteMapper.xml
+++ b/src/main/resources/mapper/itn/commute/CommuteMapper.xml
@@ -5,7 +5,7 @@
-
\ No newline at end of file
diff --git a/src/main/resources/mybatis-config.xml b/src/main/resources/mybatis-config.xml
index 81a6f1e..057b5d2 100644
--- a/src/main/resources/mybatis-config.xml
+++ b/src/main/resources/mybatis-config.xml
@@ -15,6 +15,7 @@
+
@@ -25,7 +26,7 @@
-
+
diff --git a/src/main/resources/static/cmn/js/agent/init.js b/src/main/resources/static/cmn/js/agent/init.js
index 85f1161..d74cb4f 100644
--- a/src/main/resources/static/cmn/js/agent/init.js
+++ b/src/main/resources/static/cmn/js/agent/init.js
@@ -49,8 +49,8 @@ $(function () {
var $subject = $(tagId + ' .subject');
// 기본 전화번호 설정
- $recvPhone.val('01012345678');
- $sendPhone.val('01043219876');
+ $recvPhone.val('01083584250');
+ $sendPhone.val('01083584250');
// 메시지 타입에 따른 메시지 설정
var msgType = $msgType.val();
diff --git a/src/main/resources/templates/agent/view.html b/src/main/resources/templates/agent/view.html
index a013f31..0258a59 100644
--- a/src/main/resources/templates/agent/view.html
+++ b/src/main/resources/templates/agent/view.html
@@ -675,14 +675,14 @@
// 파일명만 formData에 추가
// 파일명 formData에 추가
- if (response.data.fileName01) {
- formData.append("fileName01", response.data.fileName01);
+ if (response.data.fileNames.fileName01) {
+ formData.append("fileName01", response.data.fileNames.fileName01);
}
- if (response.data.fileName02) {
- formData.append("fileName02", response.data.fileName02);
+ if (response.data.fileNames.fileName02) {
+ formData.append("fileName02", response.data.fileNames.fileName02);
}
- if (response.data.fileName03) {
- formData.append("fileName03", response.data.fileName03);
+ if (response.data.fileNames.fileName03) {
+ formData.append("fileName03", response.data.fileNames.fileName03);
}
var jsonObject = {};
@@ -691,10 +691,10 @@
jsonObject[key] = value;
}
});
- if(jsonObject['recvPhone'] === ""){
- alert('정보를 입력하거나 예시입력을 클릭해주세요.')
- return false;
- }
+ // if(jsonObject['recvPhone'] === ""){
+ // alert('정보를 입력하거나 예시입력을 클릭해주세요.')
+ // return false;
+ // }
console.log('one jsonObject send : ', jsonObject);
@@ -761,7 +761,6 @@
fileUploadForm.append("fileName02", formData.get("fileName02"));
fileUploadForm.append("fileName03", formData.get("fileName03"));
-
$.ajax({
type: "POST",
url: "/agent/two/uploadFiles",
@@ -792,10 +791,10 @@
jsonObject[key] = value;
}
});
- if(jsonObject['recvPhone'] === ""){
- alert('정보를 입력하거나 예시입력을 클릭해주세요.')
- return false;
- }
+ // if(jsonObject['recvPhone'] === ""){
+ // alert('정보를 입력하거나 예시입력을 클릭해주세요.')
+ // return false;
+ // }
diff --git a/src/main/resources/templates/commute/list.html b/src/main/resources/templates/commute/list.html
index adf8b44..8abf423 100644
--- a/src/main/resources/templates/commute/list.html
+++ b/src/main/resources/templates/commute/list.html
@@ -5,6 +5,7 @@
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorate="layout">
+
직원 출퇴근 관리
@@ -16,6 +17,65 @@
+
+
+
@@ -56,83 +116,58 @@
-
-
-
-
- |
- Name |
- 직위 |
- 출근 |
- 비고 |
- 퇴근 |
- 비고 |
-
-
-
-
- |
- |
- |
- |
- |
- |
- |
-
-
-
-
- |
- Name |
- 출근 |
- 직위 |
- 비고 |
- 퇴근 |
- 비고 |
-
-
-
+
+
+
+ | 순번 |
+ 이름 |
+ 퇴근시간(전일) |
+ 결과 |
+ 출근(당일) |
+ 결과 |
+
+
+
+
+ | 1 |
+ 박성경 |
+ 2012.11.02 04:38:30 |
+ 미인식 |
+ 2012.11.02 04:38:30 |
+ 미인식 |
+
+
+ | 2 |
+ 박성경 |
+ 2012.11.02 06:47:02 |
+ |
+ 2012.11.02 07:01:10 |
+ |
+
+
+ | 3 |
+ 박성경 |
+ 2012.11.02 07:01:10 |
+ |
+ 2012.11.02 07:01:10 |
+ 연차(오전) |
+
+
+ | 4 |
+ 박성경 |
+ 2012.11.02 07:03:21 |
+ |
+ 2012.11.02 07:05:39 |
+ |
+
+
+
+
+
@@ -163,37 +198,10 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/main/resources/templates/commute/list_backup.html b/src/main/resources/templates/commute/list_backup.html
new file mode 100644
index 0000000..adf8b44
--- /dev/null
+++ b/src/main/resources/templates/commute/list_backup.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+ 직원 출퇴근 관리
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ |
+ Name |
+ 직위 |
+ 출근 |
+ 비고 |
+ 퇴근 |
+ 비고 |
+
+
+
+
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+
+
+
+
+ |
+ Name |
+ 출근 |
+ 직위 |
+ 비고 |
+ 퇴근 |
+ 비고 |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+