o2o-negosium-original/negodata/backend/services
Mina Choi 1a859b198c [fix] negodata: 직접 낙찰 낙찰가가 계약가 대신 거부가로 표시되던 문제
세션 목록 API(queries.py)가 SessionData 를 필드별로 수동 조립하는데 contract_price 를
빠뜨려, 담당자가 입력한 계약가가 응답에 안 실렸다(항상 null). 그 결과 프론트가 계약가를
못 읽고 제출가(거부가/투찰가)로 폴백해, 14,000,000 으로 직접 낙찰해도 낙찰가에 거부가가
떴다. 프로토콜·ORM·컬럼은 이미 있었으나 이 직렬화 한 줄이 누락돼 있었다.

- queries.py: SessionData 조립에 contract_price=r.contract_price 추가
- ResultSummaryBand: 스펙트럼 낙찰점도 제출가(awardPrice)가 아니라 계약가(contractPrice)로 찍어
  레일 낙찰가와 일치시킴

검증: 세션 API 응답에 contract_price 실제 내려오는 것 확인(화면 아닌 응답 직접). negodata 테스트 통과.
2026-08-12 11:02:10 +09:00
..
email_templates [feat] negodata: IMK 요청 일괄 반영 — 조회 게이팅·카드 매칭·부가세 통일 모드·기준가 이원 표기·마스킹 해제·이미지 일괄 업로드·초청메일 브랜딩·반응형 정리 2026-08-07 11:57:06 +09:00
quotation [fix] negodata: 직접 낙찰 낙찰가가 계약가 대신 거부가로 표시되던 문제 2026-08-12 11:02:10 +09:00
agent_notify.py [feat] 카드 카탈로그 DB 정본화 — config 결합 제거 + 학습 보존 자동반영 2026-07-08 14:56:28 +09:00
auth_service.py [fix] negodata: /me 응답 role 을 UserRole enum 으로 직렬화 (Pydantic 경고 제거) 2026-07-01 14:41:39 +09:00
azure_blob_client.py [feat] negodata/backend: 상품 이미지 업로드(Azure Blob) 엔드포인트 추가 2026-06-18 16:21:58 +09:00
card_service.py [feat] agent·negodata: 협상카드 전술 데이터화(tactic JSONB·스크립트 파싱) + 발동규칙 정비 2026-08-05 11:48:14 +09:00
company_settings_service.py [feat] negodata: IMK 요청 일괄 반영 — 조회 게이팅·카드 매칭·부가세 통일 모드·기준가 이원 표기·마스킹 해제·이미지 일괄 업로드·초청메일 브랜딩·반응형 정리 2026-08-07 11:57:06 +09:00
company_user_service.py [feat] negodata: 권한 3단계(개발자 신설)·개발자 메뉴 그룹·디자인 시스템 페이지 2026-07-23 15:41:36 +09:00
dashboard_service.py [chore] negodata: enum 주석 영문값 보강 + 견적상태 3종 정리 + 대시보드 정비 2026-06-30 17:25:38 +09:00
email.py [fix] negodata·frontend·backend: 회사별 브랜드 색(primary_color) 기능 전면 제거 — 편집 UI 없이 값만 남아 적용되던 구현 정리(포털·메일·사이드바 색 솔루션 고정, 시드·응답 필드 제거) 2026-08-07 13:45:23 +09:00
item_service.py [feat] negodata: 회사 커스터마이징(설정·라벨·커스텀필드·엑셀·상품공급사#20·분류카테고리#17)·일괄삭제·로그export·구분·카드 전체선택·부가정보 표시 2026-07-22 15:20:24 +09:00
learning_service.py [feat] negosium·negodata: 협상 거부 흐름 정리 + 오프라인 계약가 낙찰 + 견적 상세 리모델링 2026-08-12 10:25:26 +09:00
lps_sync_service.py feat(negodata): 4단계 — 사용자 화면에서 '없음'과 '확인 못함'을 구분 2026-08-07 11:21:56 +09:00
notification.py [feat] negodata: 알림함 — 견적 마감 결과(낙찰/재생성/결렬) 자동 통지 2026-06-30 17:24:59 +09:00
quotation_setting_service.py [feat] negodata: 타결 상한(done_ceiling) — 세팅 기본율%·견적 override·세션 박제, 견적생성 3단계 타결/낙찰 섹션 분리·재생성 상속 2026-08-04 08:56:03 +09:00
renegotiation_service.py [refactor] negodata/backend: QuotationService 파사드 분할 — services/quotation/(pricing·build·closing·queries·invites), 시그니처·임포트 경로 외 동작 무변경 2026-07-27 16:15:19 +09:00
statistics_service.py [feat] negosium·negodata: 협상 거부 흐름 정리 + 오프라인 계약가 낙찰 + 견적 상세 리모델링 2026-08-12 10:25:26 +09:00
supplier_item_service.py [feat] negodata: 회사 커스터마이징(설정·라벨·커스텀필드·엑셀·상품공급사#20·분류카테고리#17)·일괄삭제·로그export·구분·카드 전체선택·부가정보 표시 2026-07-22 15:20:24 +09:00
supplier_service.py [feat] negodata: 회사 커스터마이징(설정·라벨·커스텀필드·엑셀·상품공급사#20·분류카테고리#17)·일괄삭제·로그export·구분·카드 전체선택·부가정보 표시 2026-07-22 15:20:24 +09:00