728x90

코딩/♠♠기술 구현 52

장바구니 홈화면 모델 바꾸기

ProductId를 받아서CartModel을 생성하고Firestore의 cartItems에 추가하는 흐름 장바구니 기능 구현 프로세스1. 데이터 모델 설계CartModelclass CartModel { final String productId; final String productName; final String productImageUrl; final int productPrice; final int quantity; CartModel({ required this.productId, required this.productName, required this.productImageUrl, required this.productPrice, this.quantity = 1..

모델 바꾸기 //랭킹탭 장바구니 기능 구현 - 파이어스토어 CartModel 적용

랭킹탭 장바구니 기능 구현 - 파이어스토어 CartModel 적용구현 목표랭킹탭에서 상품을 장바구니에 추가할 때 Firestore의 users 컬렉션에 CartModel 형식으로 저장중복 상품 체크 및 사용자 피드백 제공일관된 장바구니 데이터 구조 유지데이터 구조"users": { "user123": { "cartItems": [ { "productId": "product123", "productName": "나이키 신발", "productImageUrl": "https://...", "productPrice": 89000, "quantity": 1 } ], "pickupItems": [] }}주요 구현 ..

장바구니 데이터베이스 연결-잘못된 연결

데비에 두컬렉션을 걸쳐서 했지때문에 잘못된 연결이다결국 롤백하고 유저로만 연결했다.Firebase를 활용한 장바구니 기능 구현 과정1. 데이터 구조 설계Firebase Firestore에서 장바구니 데이터를 양방향으로 관리하기 위해 두 개의 컬렉션을 활용했습니다:users 컬렉션{ "userId": { "cartItems": ["productId1", "productId2", ...] // 장바구니에 담은 상품 ID 목록 }}products 컬렉션{ "productId": { "cartList": [ { "userId": "userId1", "quantity": 1 } ], // 기타 상품 정보... }}이러한 양방향 구조를 채택한 ..

회사에서 깃랩 머지하는 과정

1 (사전작업:마스터에서 디벨롭 체크아웃따고) 데벨롭에서 체크아웃으로 브랜치 따서 작업하고 푸쉬하고(체크아웃) 2(싸이트 가서)원격 긱랩에서 푸시한 브랜치랑 디벨롭이랑 머지 3 로컬에 있는 디벨롭 브랜치로 이동 -깃 스위치 -(내 로컬 브랜치를 업데이트 해줘야 해서 -동기화) 4. 머지된 디벨롭을 로컬에 있는 디벨롭 브랜치에 풀 받음 - 브랜치 삭제함 5. 로컬에있는 비벨롭브랜치에서 새로운 로컬 작업 브랜치 생성(체크아웃)

좋아요 연동과정2

장바구니 기능과 유사하지만 더 간단한 좋아요 기능의 구현 과정을 정리해드리겠습니다:데이터 모델 설계class Like { final String userId; // 좋아요를 누른 사용자 ID final String itemId; // 좋아요된 상품 ID final DateTime createdAt; // 좋아요 생성 시간 Like({ required this.userId, required this.itemId, required this.createdAt, });}Firebase Firestore 구조 설계- likes (컬렉션) - {documentId} (문서) - userId: string - itemId: string - createdAt: ti..

좋아요 데이터베이스 연동 과정

좋아요 기능의 데이터베이스 연동 과정을 정리하겠습니다:하트 버튼 클릭 시 (HistoryItemCard -> HistoryBloc):// history_item_card.dartIconButton( icon: Icon( product.favoriteList.contains(userId) ? Icons.favorite : Icons.favorite_border, color: product.favoriteList.contains(userId) ? Colors.red : Colors.grey, ), onPressed: onToggleFavorite, // HistoryScreen의 ToggleFavorite 이벤트 발생),2.이벤트 처리 (Hi..

오늘의 특가 개발과정

# 오특(오늘의특가) 개발 과정 정리 ## 1. 초기 기획 - 오늘의 특가 상품을 보여주는 섹션 - 제한된 시간 동안만 특별 할인이 적용되는 상품들을 표시 - 시간 카운트다운 기능 포함 ## 2. 데이터 모델 설계 ### ProductModel 확장 ```dart class ProductModel {   // 기존 필드들...   final bool isSpecialDeal;      // 오특 상품 여부   final DateTime? specialEnd;     // 특가 종료 시간   final int specialDiscount;     // 특가 할인율   ProductModel({     // 기존 파라미터들...     this.isSpecialDeal = false,     this.spe..

카테고리별 랭킹 구현 과정

지피티 질문:RankingTabScreen 의 카드를 보면 RankingCardWidget에서이미지,이름,할인전가격, 할인률 ,할인후가격, 태그,별점,리뷰순 이 모두 직접 적은거잖아? 이거를 파이어스토어 데이터베이스에서 끌어오고 싶어. 즉 products 의 상품들을 끌어오고 싶다는 소리야. 상품마다 필드값에서 salesVolume 이 있지? 상품 카드를 salesVolume 이 가장 높을수록 위쪽에 배치하도록 하고 싶어. 즉,판매량이 높을수록 위에 배치하고 싶은데 어떻게해?블록으로 랭킹 탭 구현 과정 정리1. 초기 요구사항판매량(salesVolume)이 높은 상품이 위쪽에 배치되어야 함카테고리별 필터링 기능 필요상품 카드에는 상품 이미지, 이름, 가격, 할인율, 별점, 리뷰 수 표시2. 구현 단계2.1..

728x90