조회 페이지 작동을 재확인해본 다음 검색 조건 및 레이아웃 개선 문의에 대한 답변을 작성했다.
일단 자주 보는 고객이시기도 하고
소통한지 1년도 넘은 상태라 여태 업무는 개인 채팅으로 하고 있었지만
이렇게 할 경우 나에게 너무 과도한 업무가 고객사에서 직접 배당되더라도
관리하는 분이 확인하기 어렵기도 하고 애초에 인터페이스팀은 유지보수 업무를 하는게 아닌데
내가 관련된 업무의 유지보수들까지도 필터링 없이 나에게 즉각 넘어오기 때문에 업무가 많았던 것 같다.
팀장님이 해당 작업은 어드민 분들이 볼 수 있는 페이지에 작성해야 한다고 하셨고
나야 분단위로 작업 내용을 기입해서 업무 내용이 빠지는 것이 없지만
업무를 해놓고 사례 작성을 하지 않아 유지보수 처리가 되지 않는 경우들도 있다고 하셨기 때문에
확실하게 하고 내가 업무하는 내용을 추가로 공유할 필요도 없게
해당 회사 요청사항 처리 전용 채널에서 소통하기로 했다.
일단 현재 진행하고 있는 대규모 인터페이스 프로젝트와
다우오피스 관련 프로젝트, 마지막으로 여신 관련 로직 추가 등 3개를 먼저 작성해달라고 요청했고
바로 작성해주셔서 해당 페이지에서 소통하면서 업무를 진행했다.
Flow로 버튼 생성하는 작업을 하는데
어제 하나씩 받아온다고 했던 부분은 헛짓이었고
하나의 개체를 가져오면 연관된 필드들을 가져올 수 있는게 맞았다.
다만 운영서버랑 다르게 개발서버는 예전 데이터들이 섞여있었기 때문에
필요한 연결 등이 되지 않을 때 생성된 레코드들이라 원래 필수인 필드가 없어서
undefined 등으로 출력되는 부분이 조회가 안된다고 생각했던건데
알고보니 정상적으로 잘 나왔지만 안타깝게도 값이 없었던 것 뿐이었다.
개체 생성을 마무리하고 제품 Loop를 진행하려고 했는데
생성된 페이지 운영 배포 요청을 해주셔서 배포 및 프로필 권한 부여를 마무리했다.
놀랍게도 이 모든 작업들이 같은 프로젝트인데
혼자서 인터페이스, 페이지개발, 유지보수까지 동시에 처리하다보니 혼란스러웠다.
같은 프로젝트의 마지막 조회 인터페이스는 쿼리만 딸랑 받았던 것인데
어제 언급된 내용처럼 결국 인터페이스를 진행하기로 해서 수신용 클래스를 생성했고
운영도 바로 테스트를 해야 한다고 하셔서 수신만 되는 클래스를 운영에 배포해버렸다.
발송 실시간 테스트를 개발과 운영 모두 진행했는데
그 사이에 또 유지보수 문의가 들어왔는데 유지보수팀에서는 잘 모르는 내용이라
내가 확인해야 했고 인터페이스 관련 답변을 처리한 다음 다시 수신용 클래스에서
이미 생성한 개체로 값을 넣게 클래스를 수정하는데 다른 요청사항이 들어왔다.
정신없게 다시 조회 페이지에서 제외해달라고 해서 제외했던 필드들 추가와
Id들을 부여했었고 로직들이 있었기 때문에 해당 내용들을 점검했는데
정렬이 제대로 되지 않아 보이는 문제가 발생해서 확인해보니
null, undefined 외에 공백값으로 들어오는 경우도 있기 때문에 이전 로직에서 ‘’체크를 추가했다.
const targetType = this.itemList[0] == null ? 'No List' : typeof this.itemList[0][this.targetField]
console.log(targetType)
const newItemList = [...this.itemList]
if (targetType == 'number') {
newItemList.sort((a, b) => {
const aValue = a[this.targetField];
const bValue = b[this.targetField];
if (aValue === null || aValue === undefined || aValue == '') return 1;
if (bValue === null || bValue === undefined || bValue == '') return -1;
return this.isUp ? aValue - bValue : bValue - aValue;
});
} else {
newItemList.sort((a, b) => {
const aValue = a[this.targetField];
const bValue = b[this.targetField];
if (aValue === null || aValue === undefined || aValue == '') return 1;
if (bValue === null || bValue === undefined || bValue == '') return -1;
return this.isUp ? aValue.localeCompare(bValue) : bValue.localeCompare(aValue);
});
}
클래스 인터페이스 받는 부분에서 CSS 클래스명을 삼항연산자로 새로운 필드에 부여하고
특정 필드의 특정 값이 조건을 만족할 경우 클래스명칭을 부여한 다음
해당 값을 클래스에 부여해서 html쪽에서 class에 할당하는 방식으로 해결할 수 있었다.
(1).백준 24263번은 해당 숫자까지의 합을 구하는 식이 있다고 할 때 최고차항의 수치와 연산 회수를 묻는 문제였다.
최고차항은 1이고 회수는 주어진 값이기 때문에
딱히 숫자 형태로 변경할 필요 없이 주어진 값과 1을 출력하는 방식으로 해결했다.
const input = '7'
console.log(input)
console.log(1)
'회고' 카테고리의 다른 글
[개발일지] - 377(주말) (0) | 2024.07.13 |
---|---|
[개발일지] - 376 (0) | 2024.07.12 |
[개발일지] - 374 (0) | 2024.07.10 |
[개발일지] - 373 (0) | 2024.07.09 |
[개발일지] - 372 (0) | 2024.07.08 |