출퇴근
This commit is contained in:
parent
eb7b65aed7
commit
e8ae11250e
@ -35,6 +35,7 @@ public class MapBasedUrlRoleMapper implements UrlRoleMapper{
|
||||
urlRoleMappings.put("/api/vote/**", PERMIT_ALL);
|
||||
urlRoleMappings.put("/api/worddict/**", PERMIT_ALL);
|
||||
urlRoleMappings.put("/api/quilleditor/**", PERMIT_ALL);
|
||||
urlRoleMappings.put("/api/commuters/**", PERMIT_ALL);
|
||||
return new HashMap<>(urlRoleMappings);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,64 @@
|
||||
/************************************************************
|
||||
*
|
||||
* @packageName : io.company.localhost.controller.api
|
||||
* @fileName : CommuterController.java
|
||||
* @author : 박지윤
|
||||
* @date : 25.03.10
|
||||
* @description : 출퇴근
|
||||
*
|
||||
* ===========================================================
|
||||
* DATE AUTHOR NOTE
|
||||
* -----------------------------------------------------------
|
||||
* 25.03.10 박지윤 최초 생성
|
||||
*
|
||||
*************************************************************/
|
||||
|
||||
package io.company.localhost.controller.api;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import io.company.localhost.common.annotation.ReqMap;
|
||||
import io.company.localhost.common.dto.ApiResponse;
|
||||
import io.company.localhost.common.dto.MapDto;
|
||||
import io.company.localhost.service.CommutersService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/commuters")
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class CommutersController {
|
||||
|
||||
private final CommutersService commutersService;
|
||||
|
||||
|
||||
/**
|
||||
* 출퇴근 등록
|
||||
*
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/insert")
|
||||
public ApiResponse<Integer> insertCommuters(@ReqMap MapDto map) {
|
||||
int commuters = commutersService.insertCommuters(map);
|
||||
return ApiResponse.ok(commuters);
|
||||
}
|
||||
|
||||
/**
|
||||
* 출퇴근 당일 조회
|
||||
*
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/today")
|
||||
public ApiResponse<List<MapDto>> selectTodayCommuter(int memberSeq) {
|
||||
return ApiResponse.ok(commutersService.selectTodayCommuter(memberSeq));
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,32 @@
|
||||
/************************************************************
|
||||
*
|
||||
* @packageName : io.company.localhost.mapper
|
||||
* @fileName : CommutersMapper.java
|
||||
* @author : 박지윤
|
||||
* @date : 24.03.10
|
||||
* @description :
|
||||
*
|
||||
* ===========================================================
|
||||
* DATE AUTHOR NOTE
|
||||
* -----------------------------------------------------------
|
||||
* 24.03.10 박지윤 최초 생성
|
||||
*
|
||||
*************************************************************/
|
||||
package io.company.localhost.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import io.company.localhost.common.dto.MapDto;
|
||||
|
||||
@Mapper
|
||||
public interface CommutersMapper {
|
||||
|
||||
int insertCommuters(MapDto map);
|
||||
|
||||
int updateLeaveTime(MapDto map);
|
||||
|
||||
List<MapDto> selectTodayCommuter(int memberSeq);
|
||||
|
||||
}
|
||||
@ -0,0 +1,72 @@
|
||||
/************************************************************
|
||||
*
|
||||
* @packageName : io.company.localhost.CommutersService
|
||||
* @fileName : CommutersService.java
|
||||
* @author : 박지윤
|
||||
* @date : 25.03.10
|
||||
* @description :
|
||||
*
|
||||
* ===========================================================
|
||||
* DATE AUTHOR NOTE
|
||||
* -----------------------------------------------------------
|
||||
* 25.03.10 박지윤 최초 생성
|
||||
*
|
||||
*************************************************************/
|
||||
package io.company.localhost.service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import io.company.localhost.common.annotation.ReqMap;
|
||||
import io.company.localhost.common.dto.MapDto;
|
||||
import io.company.localhost.mapper.CommutersMapper;
|
||||
import io.company.localhost.mapper.NetprojctMapper;
|
||||
import io.company.localhost.mapper.PromemberMapper;
|
||||
import io.company.localhost.mapper.commoncodMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class CommutersService {
|
||||
private final CommutersMapper commutersMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 출퇴근 등록
|
||||
*
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
public int insertCommuters(MapDto map) {
|
||||
map.put("commutDay", LocalDateTime.now());
|
||||
int result = commutersMapper.insertCommuters(map);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 퇴근 시간 업데이트
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
// public List<MapDto> updateLeaveTime(MapDto map) {
|
||||
//
|
||||
//
|
||||
// return ;
|
||||
// }
|
||||
//
|
||||
|
||||
/**
|
||||
* 당일 출근 기록 조회
|
||||
* @param memberSeq 사용자 번호
|
||||
* @return 당일 출근 정보
|
||||
*/
|
||||
public List<MapDto> selectTodayCommuter(int memberSeq) {
|
||||
return commutersMapper.selectTodayCommuter(memberSeq);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
43
src/main/resources/mapper/CommutersMapper.xml
Normal file
43
src/main/resources/mapper/CommutersMapper.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="io.company.localhost.mapper.CommutersMapper">
|
||||
|
||||
<!-- 출퇴근 등록 -->
|
||||
<insert id="insertCommuters" useGeneratedKeys="true" keyProperty="COMMUTSEQ">
|
||||
INSERT INTO commuters (
|
||||
COMMUTSEQ,
|
||||
MRMBERSEQ,
|
||||
PROJCTSEQ,
|
||||
COMMUTCMT,
|
||||
COMMUTLVT,
|
||||
COMMUTDAY,
|
||||
COMMUTARR
|
||||
) VALUES (
|
||||
#{commutSeq},
|
||||
#{memberSeq},
|
||||
#{projctSeq},
|
||||
#{commutCmt},
|
||||
#{commutLvt},
|
||||
#{commutDay},
|
||||
#{commutArr}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 퇴근 시간 업데이트 -->
|
||||
<update id="updateLeaveTime" parameterType="map">
|
||||
UPDATE commuters
|
||||
SET COMMUTLVT = #{commutLvt}
|
||||
WHERE MRMBERSEQ = #{memberSeq}
|
||||
AND COMMUTDAY = CURDATE()
|
||||
</update>
|
||||
|
||||
<!-- 당일 출근 기록 조회 -->
|
||||
<select id="selectTodayCommuter" parameterType="int" resultType="map">
|
||||
SELECT c.*, p.PROJCTNAM, p.projctcolor
|
||||
FROM commuters c
|
||||
LEFT JOIN project p ON c.PROJCTSEQ = p.PROJCTSEQ
|
||||
WHERE c.MRMBERSEQ = #{memberSeq}
|
||||
AND c.COMMUTDAY = CURDATE()
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue
Block a user