Compare commits
No commits in common. "20b2db556d115272e78d5e7a2f1f4e84977b0641" and "2adfc53e5bdc98cbedf6ec41bec3033f46b70059" have entirely different histories.
20b2db556d
...
2adfc53e5b
@ -116,18 +116,11 @@ public class DisplayItemService {
|
||||
*/
|
||||
public int setBomSyncSave(List<BomSyncResponse> bomSyncList) throws Exception {
|
||||
int cnt = 0;
|
||||
// 2026-05-12 같은 키(PACKAGE_ITEM_ID, ITEM_ID)에 A/D 가 함께 오는 케이스 대비,
|
||||
// 외부 응답 순서와 무관하게 결정적 결과(A 가 이김)를 보장하기 위해 2단계로 처리.
|
||||
// 1단계: D 먼저 전부 DELETE
|
||||
for (BomSyncResponse bomSyncData : bomSyncList) {
|
||||
if ("D".equals(bomSyncData.getStatCd())) {
|
||||
// Bom 아이템 삭제 처리
|
||||
cnt += displayItemMapper.deleteBomSync(bomSyncData);
|
||||
}
|
||||
}
|
||||
// 2단계: D 외 전부 MERGE (upsert)
|
||||
for (BomSyncResponse bomSyncData : bomSyncList) {
|
||||
if (!"D".equals(bomSyncData.getStatCd())) {
|
||||
} else {
|
||||
// Bom 아이템 수정/등록 처리
|
||||
cnt += displayItemMapper.setBomSyncSave(bomSyncData);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user