출근 후 mp4 업로드 관련 공식문서를 확인해봤는데
Bad Request 관련 문제가 너무 많기도 하고
타입별 문제도 있고 특수기호나 인코딩 형태에 따른 문제도 있다고 하는데
제일 문제가 되는건 넣지 말아야 할 문자나 형태가 일괄적으로 들어가 있었기 때문에
특정 구간의 특정 파일들만 에러가 발생했었던 것 같다.
4월 1일 오픈이라 3월 31일까지만 주말까지 해서라도 배포하면 된다고 생각했는데
마이그레이션이 다 된 상태에서 테스트를 진행할 수 있기 때문에
3월 29일까지 데이터 마이그레이션이 끝나야 한다고 해서 갑자기 더 급해졌고
인터페이스, 트리거, 스케쥴, 배치, 마이그레이션 목록 등
배포해야 할 리스트를 하나씩 정리하기 시작했다.
배치, 스케쥴, 트리거 목록 정리 후 어떤 작업을 어떻게 해야 하는지 다시 정리하고
마이그레이션, 인터페이스 관련 일정을 PM분에게 공유드린 다음
작동 로직에 대해서 정리하고 기존에 문제가 될 것 같은 다른 분이 만든 코드에 대해서도 공유하고
오전은 협력사쪽에 발송 시점 로직, 필터링 로직 등에 대한 최종 확인에 들어갔다.
운영 반영 전 언제 뭘 해야 할지 대략적으로 정리해준 다음
배치 관련 로직을 개발서버에 먼저 반영했는데
기존에 배치가 꼬여서 작성되어 있었기 때문에
해당 내용 작성자분과 합의를 한 다음 어떻게 진행할지 정하느라 시간이 더 걸리게 됐고
부품, 기타, 파일 등 전송 배치를 작성하고
각각 배치가 순서대로 발송될 수 있게 finish에 등록해줬다.
중간에 PriceBookEntry가 삭제되지 않는다는 질문을 받았고
뭐가 문제인지 간단하게 생각하고 들어갔다가
전혀 알 수 없는 에러로 인해서 검색하다가
Standard는 Custom을 먼저 지우고 지워야 한다고 해서 다시 확인해보고
다시 Standard는 지워지지 않는다는 내용도 있고
특수한 기능을 사용해야만 지울 수 있다는 내용으로 거의 결론나버렸는데
알고보니 진짜 문제 중 하나는 Product가 같은 ProductCode 여러개를 공유하기 때문에 발생한 것으로
중복검사를 통해서 동일 ProductCode를 사용하는 레코드들을 전부 정리해주고
그 외에 보조금 필터 등을 배치 로직에 추가해서 랜덤 제품을 가져다가 연결하는 문제를 방지해줬다.
캠페인쪽 발송 트리거의 경우에도 시간을 많이 소모해야 했는데
캠페인이라는 이름과 다르게 이 부분만 WorkOrder쪽에 들어가 있었고
트리거를 만든 상태에서 내부 로직을 다시 확인해서 시간을 뺏기긴 헀지만
그래도 오랜만에 처음부터 트리거를 작성해봐서 금방 트리거 적용을 할 수 있었다.
트리거는 아래와 같이 특정 상태일 때만 체크해야 하기 때문에(공유 용 임시 값 할당 상태)
개체를 만들어서 값들을 넣어주고 ContainsKey를 통해서 바로 여러가지 IF 조건을 넣을 필요 없이
하나의 조건으로 여러개의 상태를 관리할 수 있었다.
Map<String, String> statusMap = new Map<String, String>{
'1' => '초안',
'4' => '지점 승인',
'7' => '최종 결제'
};
if(statusMap.containsKey(wo.Status)){
}
파일 전송 로직쪽 트리거도 작성해야 했는데
설명이 너무 미흡해서 개체를 발송할 때 파일이 같이 날아가야 한다면
부모보다 파일이 먼저 날아가서 Parent가 없는 에러가 발생할 것 같았는데
협력사쪽에 문의한 결과 특정 상태일 때 1회만 발송하고
그 이후에 파일이 생성되더라도 발송하지 않으며
나중에 기각이 되서 이전 상태로 돌아온 다음 다시 해당 상태가 되더라도
이미 발송한 파일들은 제외하는 방향으로 해달라는 답변을 듣고 9시 20분쯤 정리하고 퇴근했다.
(1).백준 33515번 노트북 세 대를 가지고 왔다는 노트북끼리 속도 경쟁을 할 때
제일 빠른 노트북이 되기 위한 속도를 출력해야 하는 문제로
다른 두 노트북의 해결 속도가 나오기 때문에 간단하게 Math.min에 구조분해할당으로 값을 넣어서 출력해줬다.
const input = `10 12`.split(' ').map(Number)
console.log(Math.min(...input))
'회고' 카테고리의 다른 글
[개발일지] - 633 (0) | 2025.03.27 |
---|---|
[개발일지] - 632 (0) | 2025.03.26 |
[개발일지] - 630 (0) | 2025.03.24 |
[개발일지] - 629(주말) (0) | 2025.03.23 |
[개발일지] - 628(주말) (0) | 2025.03.23 |