티스토리 뷰
728x90
- 회수 후 삭제 기능 구현
- 결재자 or 참조자 선택 시 참조자 or 결재자로 선택 못하는 기능 구현
- 결재로 등록 된 멤버는 참조로 못하게 하는 기능 , 참조로 등록 된 멤버는 결재로 등록을 못하게 하는 기능
- js 에 등록
- 이 부분은 참조로 등록 되면 결재로 등록 못하게 하는 부분
function approverHandler() {
if(confirm("결재자를 등록하시겠습니까?")) {
const ul = document.getElementById("listbox-4");
const liElements = ul.querySelectorAll("li");
if(liElements.length === 0) {
alert("결재자가 선택되지 않았습니다.");
} else {
// 결재자 고유번호 정보 list에 저장
let approver = Array.from(liElements).map(li => li.getAttribute("value"));
// 결재자 이름 / 직책 결재자 - 결재자 컬럼에 추가
for(let i = 0; i < approver.length; i++) {
addColumn({
memberNo: approver[i],
staff: document.getElementById("memberStaff-" + approver[i]).textContent,
member: document.getElementById("memberName-" + approver[i]).textContent });
}
let referrers = Array.from(document.querySelectorAll('#referrerTd .hidden-referrer')).map(e => e.textContent);
for (let i = 0; i < approver.length; i++) {
if (referrers.includes(approver[i])) {
alert("결재자로 선택하려는 사람이 이미 참조인으로 지정되어 있습니다: " + document.getElementById("memberName-" + approver[i]).textContent + " " + document.getElementById("memberStaff-" + approver[i]).textContent);
return;
}
}
addApproveSign();
modal_on_off(1, 2);
ul.innerHTML = '';
}
}
}
- 이 부분은 결재자로 등록 되면 참조자로 등록 못하게 하는 부분
function referrerHandler() {
if(confirm("참조자를 등록하시겠습니까?")) {
const ul = document.getElementById("listbox-4");
const liElements = ul.querySelectorAll("li");
let referrerTxt = "";
let referrerHtml = "";
if(liElements.length === 0) {
alert("참조자가 선택되지 않았습니다.");
} else {
// 참조자 고유번호 정보 list에 저장
let referrer = Array.from(liElements).map(li => li.getAttribute("value"));
let approver = Array.from(document.querySelectorAll('#approver-tbl .hidden-approver')).map(e => e.textContent);
for(let i =0; i < approver.length; i++){
if(approver.includes(referrer[i])){
alert("참조자로 선택하려는 사람이 이미 결재자로 지정되어 있습니다: " + document.getElementById("memberName-" + referrer[i]).textContent + " " + document.getElementById("memberStaff-" + referrer[i]).textContent);
return;
}
}
console.log(approver);
// 참조자 직책 / 이름 추가
for(let i = 0; i < referrer.length; i++) {
const staff = document.getElementById("memberStaff-" + referrer[i]).textContent;
const name = document.getElementById("memberName-" + referrer[i]).textContent;
referrerTxt += i === 0 ? staff + ' ' + name : ', ' + staff + ' ' + name;
referrerHtml += '\n<span class="hidden-referrer">' + referrer[i] + '</span>';
}
document.getElementById('referrerTd').innerHTML = referrerTxt + referrerHtml;
modal_on_off(1, 2);
ul.innerHTML = '';
}
}
}
- 삭제 버튼 활성화
// 기안자가 본인이고 상태가 회수인 경우, 삭제 버튼 출력 document.getElementById('doc-delete-btn').style.display = data.memberNo === userNo && data.docState === '회수' ? '' : 'none';
-- 단위 기능 테스트 --- 집가서 정리
회수 기능 - 확인
반려 기능 - 확인
회수 후 삭제 가능 - 확인
if ( 파일 이 존재 할 시) -- 처리는 추후 개발
회수 후 수정 - 확인
회수 후 삭제 - 확인
회원가입 기능 - 확인
로그인 기능 - 확인
메인메뉴
출근 기능 - 지각 시 시작 사유 작성 등록 확인
퇴근 기능 - 조퇴 시 조퇴 사유 작성 등록 확인
전자결재 탭 이동 확인
근태관리 탭 이동 확인
프로젝트 탭 이동 확인
조직도 탭 이동 확인
게시판 탭 이동 확인
게시판 이동 확인
게시판 공지 이동 확인
내 정보 수정 기능 확인
로그아웃 기능 확인
전자결재
탭 모든 기능 확인
신규작성
- 결재자 등록 기능 확인
- 참조자 등록 기능 확인
- 파일 첨부 기능 확인
- 문서 등록 기능 확인
회수 기능 확인
회수 수정 기능 확인
회수 삭제 기능 확인
전체문서
- 기안자가 올린 문서 승인 기능 확인
- 문서 승인 기능 확인
- 문서 결재 후 완료 완료 반영
설정
-서명 등록 사진 첨부 기능 확인
- 서명 삭제 기능 확인
728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 셀렉트박스
- C언어
- @RequestParam
- reactStart
- findFirstBy
- React
- reactApp
- 제약조건
- App
- selectbox
- C
- ID
- mircrosoft visual studio
- 다른데서 react
- 받아오기
- 체크박스
- 셀프로젝트
- 서버전송
- 아이디
- 씹어먹는 C 언어
- SCP
- react 시작 오류
- @Builder
- JPA
- 다중체크박스 처리
- optional
- th:selected
- @reqeustBody
- commit 에러
- CheckBox
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함