Skip to content

Commit

Permalink
#111 [add] shop information data
Browse files Browse the repository at this point in the history
상점 정보 텍스트들
  • Loading branch information
ThirFir committed Nov 5, 2023
1 parent 56b65a3 commit 6c11b88
Show file tree
Hide file tree
Showing 9 changed files with 49 additions and 21 deletions.
12 changes: 6 additions & 6 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 21 additions & 5 deletions app/src/main/java/com/jjbaksa/jjbaksa/ui/shop/ShopActivity.kt
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
package com.jjbaksa.jjbaksa.ui.shop

import android.content.Intent
import android.util.Log
import android.view.View
import androidx.activity.viewModels
import androidx.core.view.isVisible
import com.google.android.material.tabs.TabLayoutMediator
import com.jjbaksa.domain.model.review.ReviewShopLastDate
import com.jjbaksa.jjbaksa.R
import com.jjbaksa.jjbaksa.base.BaseActivity
import com.jjbaksa.jjbaksa.databinding.ActivityShopBinding
import com.jjbaksa.jjbaksa.dialog.DoubleConfirmDialog
import com.jjbaksa.jjbaksa.ui.pin.PinActivity
import com.jjbaksa.jjbaksa.ui.pin.adapter.ImageFrameAdapter
import com.jjbaksa.jjbaksa.ui.shop.viewmodel.ShopViewModel
import com.naver.maps.geometry.LatLng
import com.naver.maps.map.CameraPosition
import com.naver.maps.map.CameraUpdate
import com.naver.maps.map.MapFragment
import com.naver.maps.map.NaverMap
import com.naver.maps.map.OnMapReadyCallback
Expand All @@ -27,6 +31,8 @@ class ShopActivity : BaseActivity<ActivityShopBinding>(), OnMapReadyCallback {
private lateinit var imageFrameAdapter: ImageFrameAdapter

override fun initView() {
binding.shop = viewModel
binding.lifecycleOwner = this
intent.getStringExtra("place_id")?.let {
viewModel.placeId.value = it
viewModel.getShopDetail(it)
Expand All @@ -39,6 +45,12 @@ class ShopActivity : BaseActivity<ActivityShopBinding>(), OnMapReadyCallback {
placeId = viewModel.placeId.value.toString(),
size = 2
)
viewModel.getFollowersShopReviewCount(
placeId = viewModel.placeId.value.toString()
)
viewModel.getMyLastReviewDate(
placeId = viewModel.placeId.value.toString()
)
initShopImageViewPagerWithTabLayout()
initMap()
}
Expand Down Expand Up @@ -72,17 +84,17 @@ class ShopActivity : BaseActivity<ActivityShopBinding>(), OnMapReadyCallback {
viewModel.shopInfo.observe(this) {
binding.shopTitleTextView.text = it.name
binding.shopTypeTextView.text = it.category
binding.reviewStarCountTextView.text =
binding.addressTextView.text = it.formattedAddress
binding.phoneTextView.text = it.formattedPhoneNumber

binding.reviewStarCountTextView.text = if(it.ratingCount == 0) "0.0" else
round((it.totalRating / it.ratingCount.toDouble()) * 10).div(10).toString()
binding.bookmarkImageView.isSelected = it.scrap != 0

it.photos.forEach {
binding.shopImagesTabLayout.addTab(binding.shopImagesTabLayout.newTab())
}
imageFrameAdapter.submitList(it.photos)

binding.addressTextView.text = it.formattedAddress
binding.phoneTextView.text = it.formattedPhoneNumber
}
viewModel.addScrapInfo.observe(this) {
if (it.id != 0) {
Expand Down Expand Up @@ -136,7 +148,11 @@ class ShopActivity : BaseActivity<ActivityShopBinding>(), OnMapReadyCallback {
}

override fun onMapReady(naverMap: NaverMap) {

val cameraUpdate = CameraUpdate.scrollTo(LatLng(
viewModel.shopInfo.value?.lat ?: 0.0,
viewModel.shopInfo.value?.lng ?: 0.0
))
naverMap.moveCamera(cameraUpdate)
}

companion object {
Expand Down
13 changes: 8 additions & 5 deletions app/src/main/res/layout/activity_shop.xml
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@
android:ellipsize="end"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintHorizontal_bias="0"
android:text="@{shop.shopInfo.name}"
tools:text="비빔밥" />

<androidx.appcompat.widget.AppCompatTextView
Expand All @@ -117,6 +118,7 @@
app:layout_constraintEnd_toStartOf="@id/bookmark_image_view"
app:layout_constraintBottom_toBottomOf="@id/shop_title_text_view"
app:layout_constraintStart_toEndOf="@id/shop_title_text_view"
android:text="@{shop.shopInfo.category}"
tools:text="일식집" />

<androidx.appcompat.widget.AppCompatTextView
Expand Down Expand Up @@ -207,6 +209,7 @@
app:layout_constraintBottom_toBottomOf="@+id/location_image_view"
app:layout_constraintStart_toEndOf="@id/location_image_view"
app:layout_constraintTop_toTopOf="@id/location_image_view"
android:text="@{shop.shopInfo.formattedAddress}"
tools:text="서울특별시 강남구 역삼동 123-45" />

<androidx.appcompat.widget.AppCompatImageView
Expand All @@ -226,6 +229,7 @@
app:layout_constraintStart_toStartOf="@id/address_text_view"
app:layout_constraintTop_toTopOf="@id/phone_image_view"
app:layout_constraintBottom_toBottomOf="@id/phone_image_view"
android:text="@{shop.shopInfo.formattedPhoneNumber}"
tools:text="010-0000-0000"/>

<androidx.appcompat.widget.AppCompatImageView
Expand All @@ -237,16 +241,15 @@
app:layout_constraintTop_toBottomOf="@id/phone_image_view"
app:layout_constraintStart_toStartOf="@id/phone_image_view" />

<androidx.appcompat.widget.AppCompatTextView
<TextView
android:id="@+id/schedule_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/color_000000"
app:layout_constraintStart_toStartOf="@id/phone_text_view"
app:layout_constraintTop_toTopOf="@id/schedule_image_view"
app:layout_constraintBottom_toBottomOf="@id/schedule_image_view"
android:text="@{@string/schedule(String.valueOf(shop.shopInfo.period[0].open.time),
String.valueOf(shop.shopInfo.period[0].close.time))}"
android:text="@{@string/schedule(String.valueOf(shop.shopInfo.period[0].open.time),String.valueOf(shop.shopInfo.period[0].close.time))}"
tools:text="00:00 - 23:59"/>

<androidx.appcompat.widget.AppCompatImageView
Expand Down Expand Up @@ -396,6 +399,7 @@
android:layout_marginTop="2dp"
app:layout_constraintStart_toStartOf="@id/my_review_text_view"
app:layout_constraintTop_toBottomOf="@id/my_review_text_view"
android:text="@{@string/last_review_date(shop.myLastReviewDate.lastDate)}"
tools:text="마지막 방문 21.04.02" />

<TextView
Expand Down Expand Up @@ -477,11 +481,10 @@
android:layout_height="240dp"
android:name="com.naver.maps.map.MapFragment"
app:layout_constraintTop_toBottomOf="@id/map_text_view" />


</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>


<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/progress_bar_container"
android:layout_width="match_parent"
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@
<string name="no_review_content">다녀온 음식점의 리뷰를 작성해 보세요!</string>
<string name="no_review_yet">아직 등록된 리뷰가 없습니다.\n친구에게 추천해볼까요?</string>
<string name="no_bookmark_title">등록된 북마크가 없어요.</string>
<string name="no_bookmark_content">새로운 음식점을 저장해 보세요!</string>
<string name="no_bookmark_content" formatted="false">새로운 음식점을 저장해 보세요!</string>
<string name="search">검색</string>
<string name="search_main_title">오늘은 어떤음식이 땡기나요?</string>
<string name="sharp">#</string>
Expand Down Expand Up @@ -192,5 +192,6 @@
<string name="change_profile_content">%s님,\n프로필을 변경하시겠어요?</string>
<string name="last_register_date">마지막 일자 %s</string>
<string name="total_review">총 %s개의 리뷰</string>
<string name="last_review_date">마지막 리뷰 %s</string>
<string name="schedule">%s ~ %s</string>
</resources>
2 changes: 2 additions & 0 deletions data/src/main/java/com/jjbaksa/data/mapper/RespMapper.kt
Original file line number Diff line number Diff line change
Expand Up @@ -94,4 +94,6 @@ fun ShopDetailResp.toShopDetail() = ShopDetail(
formattedPhoneNumber = formattedPhoneNumber ?: "",
openNow = openNow ?: false,
period = period?.map { it.toPeriod() } ?: listOf(Period()),
lat = lat ?: 0.0,
lng = lng ?: 0.0
)
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,8 @@ data class ShopDetailResp(
val openNow: Boolean? = false,
@SerializedName("period")
val period: List<PeriodResp>? = emptyList(),
@SerializedName("lat")
val lat: Double? = 0.0,
@SerializedName("lng")
val lng: Double? = 0.0
)
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,6 @@ data class ShopDetail(
val formattedPhoneNumber: String = "",
val openNow: Boolean = false,
val period: List<Period> = emptyList(),
val lat: Double = 0.0,
val lng: Double = 0.0
)
6 changes: 3 additions & 3 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Fri Jul 29 14:27:53 KST 2022
#Sat Nov 04 21:29:19 KST 2023
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

0 comments on commit 6c11b88

Please sign in to comment.