Skip to content

Commit

Permalink
Merge branch 'master' of github.com:Thooooor/KeepPieces into master
Browse files Browse the repository at this point in the history
  • Loading branch information
2439 committed Oct 28, 2020
2 parents e070814 + 20184a6 commit 5fbe38c
Show file tree
Hide file tree
Showing 21 changed files with 903 additions and 96 deletions.
10 changes: 8 additions & 2 deletions app/src/main/java/com/keeppieces/android/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,16 @@ package com.keeppieces.android
import android.os.Bundle
import android.view.animation.AccelerateDecelerateInterpolator
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import com.keeppieces.android.extension.toCHINADFormatted
import com.keeppieces.android.ui.PrimaryCategory.PrimaryCategoryOverviewFragment
import com.keeppieces.android.ui.account.AccountFragment
import com.keeppieces.android.ui.member.MemberFragment
import com.keeppieces.android.ui.overview.AddMonthBudgetDialog
import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.activity_main.tab_layout
import kotlinx.android.synthetic.main.activity_main.view_pager
import kotlinx.android.synthetic.main.layout_month_summary_card.*
import java.time.LocalDate

@Suppress("COMPATIBILITY_WARNING")
class MainActivity : AppCompatActivity(),AddMonthBudgetDialog.SetMonthBudgetInterface {
Expand All @@ -26,6 +32,7 @@ class MainActivity : AppCompatActivity(),AddMonthBudgetDialog.SetMonthBudgetInte
view_pager.offscreenPageLimit = 0
tab_layout.setUpWithViewPager(view_pager, true)
view_pager.setCurrentItem(0, true)
view_pager.adapter
}

private fun runEnterAnimation() {
Expand All @@ -44,5 +51,4 @@ class MainActivity : AppCompatActivity(),AddMonthBudgetDialog.SetMonthBudgetInte
override fun setMonthBudgetButtonText(monthBudget: String) {
button_set_month_budget.text = monthBudget.toDouble().toCHINADFormatted()
}

}
8 changes: 5 additions & 3 deletions app/src/main/java/com/keeppieces/android/MainPagerAdapter.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,18 @@ import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentStatePagerAdapter
import com.keeppieces.android.ui.PrimaryCategory.PrimaryCategoryOverviewFragment
import com.keeppieces.android.ui.account.AccountFragment
import com.keeppieces.android.ui.blank.BlankFragment
import com.keeppieces.android.ui.daily.DailyFragment
import com.keeppieces.android.ui.member.MemberFragment
import com.keeppieces.android.ui.monthly.MonthlyFragment
import com.keeppieces.android.ui.overview.OverviewFragment
import com.keeppieces.android.ui.settings.SettingsFragment
import java.time.LocalDate
import java.time.chrono.IsoChronology
import java.util.*


class MainPagerAdapter(
fm: FragmentManager,
private val tabs: List<TabUiModel>
Expand All @@ -41,9 +45,7 @@ class MainPagerAdapter(
0 -> OverviewFragment()
1 -> DailyFragment()
2 -> MonthlyFragment(startDate, endDate)
3 -> PrimaryCategoryOverviewFragment(startDate, endDate)
//3 -> AccountFragment(startDate,endDate)
//3-> MemberFragment(startDate,endDate)
3 -> BlankFragment(startDate, endDate)
4 -> SettingsFragment()
else -> DailyFragment()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ interface BillDao {

// @Query("SELECT * FROM bill where DATETIME(date) BETWEEN DATETIME(:startDate) AND DATETIME(:endDate)")
// fun getPeriodBill(startDate:String,endDate:String):LiveData<List<Bill>>
@Query("SELECT * FROM bill WHERE date >= :startDate and date <= :endDate and member == :member ")
fun getPeriodMemberBill(startDate: String, endDate: String, member: String): LiveData<List<Bill>>

@Query("SELECT * FROM bill ORDER BY amount")
fun loadAllBillByAmount(): LiveData<List<Bill>>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,14 @@ class BillRepository {
return billDao.getPeriodAccountBill(startDate, endDate, account)
}

fun getMemberPeriodBill(
startDate: String,
endDate: String,
member: String
): LiveData<List<Bill>> {
return billDao.getPeriodMemberBill(startDate, endDate, member)
}

private fun billToNew(bills: List<Bill>, color: String): MutableList<GeneralBill> {
val primaryList = mutableListOf<String>()
val newBillList = mutableListOf<GeneralBill>()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,15 @@ import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.android.material.datepicker.MaterialDatePicker
import com.keeppieces.android.R
import com.keeppieces.android.*
import com.keeppieces.android.extension.getItemDecoration
import com.keeppieces.android.logic.data.Bill
import com.keeppieces.android.ui.account.adapter.AccountOverviewAdapter
import com.keeppieces.android.ui.blank.BlankFragment
import com.keeppieces.android.ui.blank.CategoryPage
import com.keeppieces.android.ui.monthly.CustomMode
import com.keeppieces.android.ui.monthly.MonthMode
import com.keeppieces.android.ui.overview.getParentActivity
import com.keeppieces.pie_chart.PieAnimation
import com.keeppieces.pie_chart.PieData
import com.keeppieces.pie_chart.PiePortion
Expand Down Expand Up @@ -124,6 +127,13 @@ class AccountFragment(var startDate: String, var endDate: String): Fragment() {
setUpView()
}
}

// accountTagTitle.setOnClickListener {
// val parentFragment:BlankFragment = getParentActivity<MainActivity>().supportFragmentManager.findFragmentById(R.id.blankFragment) as BlankFragment
// // val parentFragment:BlankFragment = this.parentFragment as BlankFragment
// parentFragment.setFragment(CategoryPage, startDate, endDate)
// Log.d("Account", "Click Change")
// }
}

//修改
Expand Down
57 changes: 57 additions & 0 deletions app/src/main/java/com/keeppieces/android/ui/blank/BlankFragment.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package com.keeppieces.android.ui.blank

import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.keeppieces.android.MainActivity
import com.keeppieces.android.R
import com.keeppieces.android.ui.PrimaryCategory.PrimaryCategoryOverviewFragment
import com.keeppieces.android.ui.account.AccountFragment
import com.keeppieces.android.ui.member.MemberFragment
import com.keeppieces.android.ui.overview.getParentActivity
import kotlinx.android.synthetic.main.fragment_account.*
import kotlinx.android.synthetic.main.fragment_blank.*


const val AccountPage = 1
const val MemberPage = 2
const val CategoryPage = 3

class BlankFragment(var startDate: String, var endDate: String) : Fragment() {
var currentType: Int = AccountPage
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.fragment_blank, container, false)
}

override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
setFragment(AccountPage, startDate, endDate)
changeFab.setOnClickListener {
when (currentType) {
AccountPage -> setFragment(CategoryPage, startDate, endDate)
CategoryPage -> setFragment(MemberPage, startDate, endDate)
MemberPage -> setFragment(AccountPage, startDate, endDate)
else -> setFragment(AccountPage, startDate, endDate)
}
}
}

private fun setFragment(typePage:Int, startDate: String, endDate: String) {
val fragmentManager = getParentActivity<MainActivity>().supportFragmentManager
val transition = fragmentManager.beginTransaction()
val newFragment = when (typePage) {
AccountPage -> AccountFragment(startDate, endDate)
MemberPage -> MemberFragment(startDate, endDate)
CategoryPage -> PrimaryCategoryOverviewFragment(startDate, endDate)
else -> PrimaryCategoryOverviewFragment(startDate, endDate)
}
transition.replace(R.id.childBlankFragment, newFragment)
transition.commit()
currentType = typePage
}
}
Loading

0 comments on commit 5fbe38c

Please sign in to comment.