package com.application.zhangshi_app_android.data; import androidx.annotation.NonNull; import com.android.app_base.base.model.BaseModel; import com.android.app_base.http.ResultData; import com.application.zhangshi_app_android.bean.AnnualHealthStatusBean; import com.application.zhangshi_app_android.bean.BannerBean; import com.application.zhangshi_app_android.bean.CaptchaImageBean; import com.application.zhangshi_app_android.bean.CertificateOfHonorBean; import com.application.zhangshi_app_android.bean.CleanStorageBean; import com.application.zhangshi_app_android.bean.ContactsDetailBean; import com.application.zhangshi_app_android.bean.FamilyAssetsBean; import com.application.zhangshi_app_android.bean.FamilyMemorabiliaBean; import com.application.zhangshi_app_android.bean.GrowthExperienceAbroadConditionBean; import com.application.zhangshi_app_android.bean.GrowthExperienceAutobiographyBean; import com.application.zhangshi_app_android.bean.GrowthExperienceBean; import com.application.zhangshi_app_android.bean.GrowthExperienceHolderConditionBean; import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean; import com.application.zhangshi_app_android.bean.GrowthExperienceRelationshipBean; import com.application.zhangshi_app_android.bean.HealthCareBaseInfoBean; import com.application.zhangshi_app_android.bean.HealthCareExistingProblemsBean; import com.application.zhangshi_app_android.bean.HealthCareLifeHabitsBean; import com.application.zhangshi_app_android.bean.HealthCareNotesContentBean; import com.application.zhangshi_app_android.bean.HealthCareNursingExaminationBean; import com.application.zhangshi_app_android.bean.HomeDevicesBean; import com.application.zhangshi_app_android.bean.HomeMemberBean; import com.application.zhangshi_app_android.bean.HomeRootBean; import com.application.zhangshi_app_android.bean.HonorCollectionResponseBean; import com.application.zhangshi_app_android.bean.HundredWishBean; import com.application.zhangshi_app_android.bean.IncomeAndExpensesBean; import com.application.zhangshi_app_android.bean.MarriageInfoBean; import com.application.zhangshi_app_android.bean.MemoBean; import com.application.zhangshi_app_android.bean.PageResponseBean; import com.application.zhangshi_app_android.bean.LittleDoctorBean; import com.application.zhangshi_app_android.bean.LoginRequestBean; import com.application.zhangshi_app_android.bean.LoginResponseBean; import com.application.zhangshi_app_android.bean.PersonalNotepadBean; import com.application.zhangshi_app_android.bean.PetBean; import com.application.zhangshi_app_android.bean.PetMemoBean; import com.application.zhangshi_app_android.bean.PrivacyBean; import com.application.zhangshi_app_android.bean.PropertyBean; import com.application.zhangshi_app_android.bean.TourismBean; import com.application.zhangshi_app_android.bean.TourismExperienceBean; import com.application.zhangshi_app_android.bean.UpdateVersionBean; import com.application.zhangshi_app_android.bean.UploadFileResponseBean; import com.application.zhangshi_app_android.data.source.HttpDataSource; import com.application.zhangshi_app_android.data.source.LocalDataSource; import com.application.zhangshi_app_android.data.source.http.HttpDataSourceImpl; import com.application.zhangshi_app_android.data.source.local.LocalDataSourceImpl; import java.util.List; import java.util.Map; import io.reactivex.Completable; import io.reactivex.Observable; import io.reactivex.ObservableSource; import okhttp3.MultipartBody; /** * @author Ljj * @date 2023.03.01. 20:58 * @desc 数据仓库,包含网络数据和本地数据 */ public class DataRepository extends BaseModel implements HttpDataSource, LocalDataSource { private volatile static DataRepository INSTANCE = null; private final HttpDataSource mHttpDataSource; private final LocalDataSource mLocalDataSource; private DataRepository(@NonNull HttpDataSource httpDataSource, @NonNull LocalDataSource localDataSource) { this.mHttpDataSource = httpDataSource; this.mLocalDataSource = localDataSource; } public static DataRepository getInstance() { if (INSTANCE == null) { synchronized (DataRepository.class) { if (INSTANCE == null) { INSTANCE = new DataRepository(HttpDataSourceImpl.getInstance(), LocalDataSourceImpl.getInstance()); } } } return INSTANCE; } @Override public void onCleared() { HttpDataSourceImpl.destroyInstance(); LocalDataSourceImpl.destroyInstance(); INSTANCE = null; } /** * @see HttpDataSourceImpl */ /** * 获取验证码图片 */ public Observable> getCaptchaImage(){ return mHttpDataSource.getCaptchaImage(); } /** * 登录 */ public Observable> login(LoginRequestBean loginRequestBean){ return mHttpDataSource.login(loginRequestBean); } /** * 注册 */ public Observable> register(LoginRequestBean loginRequestBean){ return mHttpDataSource.register(loginRequestBean); } /** * 获取家大事记 */ @Override public Observable>> getFamilyMemorabilia(Map paramsMap) { return mHttpDataSource.getFamilyMemorabilia(paramsMap); } /** * 增加家大事记 */ @Override public Observable> addFamilyMemorabilia(FamilyMemorabiliaBean familyMemorabiliaBean) { return mHttpDataSource.addFamilyMemorabilia(familyMemorabiliaBean); } /** * 删除家大事记 */ @Override public Observable> deleteFamilyMemorabilia(String ids) { return mHttpDataSource.deleteFamilyMemorabilia(ids); } /** * 删除家大事记 */ @Override public Observable> updateFamilyMemorabilia(FamilyMemorabiliaBean familyMemorabiliaBean) { return mHttpDataSource.updateFamilyMemorabilia(familyMemorabiliaBean); } /** * 上传文件 */ public Observable> uploadFile(MultipartBody.Part file) { return mHttpDataSource.uploadFile(file); } /** * 获取家庭资产 */ public Observable>> getFamilyAssets(Map paramsMap) { return mHttpDataSource.getFamilyAssets(paramsMap); } /** * 获取家庭设备 */ public Observable>> getHomeDevices(Map paramsMap) { return mHttpDataSource.getHomeDevices(paramsMap); } /** * 添加家庭设备 */ public Observable> addHomeDevices(HomeDevicesBean homeDevicesBean) { return mHttpDataSource.addHomeDevices(homeDevicesBean); } /** * 删除家庭设备 */ public Observable> deleteHomeDevices(String ids) { return mHttpDataSource.deleteHomeDevices(ids); } /** * 修改家庭设备 */ public Observable> updateHomeDevices(HomeDevicesBean homeDevicesBean) { return mHttpDataSource.updateHomeDevices(homeDevicesBean); } /** * 获取成长经历 */ public Observable>> getGrowthExperience() { return mHttpDataSource.getGrowthExperience(); } /** * 获取成长经历个人信息 */ public Observable> getGrowthExperienceInformation() { return mHttpDataSource.getGrowthExperienceInformation(); } @Override public Observable> updateGrowthExperienceInformation(GrowthExperienceInformationBean growthExperienceInformationBean) { return mHttpDataSource.updateGrowthExperienceInformation(growthExperienceInformationBean); } /** * 获取成长经历关系情况 */ public Observable>> getGrowthExperienceRelationship() { return mHttpDataSource.getGrowthExperienceRelationship(); } /** * 获取成长经历持有出入境证件情况 */ public Observable>> getGrowthExperienceHolderCondition() { return mHttpDataSource.getGrowthExperienceHolderCondition(); } /** * 获取成长经历出国境情况 */ public Observable>> getGrowthExperienceAbroadCondition() { return mHttpDataSource.getGrowthExperienceAbroadCondition(); } /** * 获取自传 */ @Override public Observable>> getGrowthExperienceAutobiography() { return mHttpDataSource.getGrowthExperienceAutobiography(); } /** * 获取通讯录 */ public Observable>> getContacts(Map paramsMap) { return mHttpDataSource.getContacts(paramsMap); } /** * 添加通讯录 */ public Observable> addContacts(ContactsDetailBean contactsDetailBean) { return mHttpDataSource.addContacts(contactsDetailBean); } /** * 获取家庭荣誉 */ public Observable> getHonorCollections(Map map) { return mHttpDataSource.getHonorCollections(map); } /** * 获取小医生 */ public Observable>> getLittleDoctors(Map map) { return mHttpDataSource.getLittleDoctors(map); } /** * 删除小医生 */ public Observable> deleteLittleDoctors(String ids) { return mHttpDataSource.deleteLittleDoctors(ids); } /** * 增加小医生 */ public Observable> addLittleDoctor(LittleDoctorBean littleDoctorBean) { return mHttpDataSource.addLittleDoctor(littleDoctorBean); } /** * 修改小医生 */ public Observable> updateLittleDoctor(LittleDoctorBean littleDoctorBean) { return mHttpDataSource.updateLittleDoctor(littleDoctorBean); } /** * 获取收支台账 */ public Observable>> getIncomeAndExpenses(Map map) { return mHttpDataSource.getIncomeAndExpenses(map); } /** * 增加收支台账 */ @Override public Observable> addIncomeAndExpenses(IncomeAndExpensesBean incomeAndExpensesBean) { return mHttpDataSource.addIncomeAndExpenses(incomeAndExpensesBean); } /** * 删除收支台账 */ @Override public Observable> deleteIncomeAndExpenses(String ids) { return mHttpDataSource.deleteIncomeAndExpenses(ids); } /** * 修改收支台账 */ @Override public Observable> updateIncomeAndExpenses(IncomeAndExpensesBean incomeAndExpensesBean) { return mHttpDataSource.updateIncomeAndExpenses(incomeAndExpensesBean); } /** * 获取保洁收纳 */ public Observable>> getCleanStorages(Map map) { return mHttpDataSource.getCleanStorages(map); } /** * 删除保洁收纳 */ public Observable> deleteCleanStorages(String ids) { return mHttpDataSource.deleteCleanStorages(ids); } /** * 增加保洁收纳 */ public Observable> addCleanStorage(CleanStorageBean cleanStorageBean) { return mHttpDataSource.addCleanStorage(cleanStorageBean); } /** * 修改保洁收纳 */ public Observable> updateCleanStorage(CleanStorageBean cleanStorageBean) { return mHttpDataSource.updateCleanStorage(cleanStorageBean); } /** * 获取个人婚姻信息 */ public Observable> getMarriageInfo() { return mHttpDataSource.getMarriageInfo(); } /** * 获取个人记事本 */ public Observable>> getPersonalNotepad(Map toMap) { return mHttpDataSource.getPersonalNotepad(toMap); } /** * 删除个人记事本 */ public Observable> deletePersonalNotepad(String ids) { return mHttpDataSource.deletePersonalNotepad(ids); } /** * 增加个人记事本 */ public Observable> addPersonalNotepad(PersonalNotepadBean personalNotepadBean) { return mHttpDataSource.addPersonalNotepad(personalNotepadBean); } /** * 修改个人记事本 */ public Observable> updatePersonalNotepad(PersonalNotepadBean personalNotepadBean) { return mHttpDataSource.updatePersonalNotepad(personalNotepadBean); } /** * 获取个人隐私 */ public Observable>> getPrivacy(Map toMap) { return mHttpDataSource.getPrivacy(toMap); } /** * 获取荣誉证书 */ public Observable>> getCertificateOfHonor(Map toMap) { return mHttpDataSource.getCertificateOfHonor(toMap); } /** * 获取个人资产 */ public Observable>> getProperty(Map toMap) { return mHttpDataSource.getProperty(toMap); } /** * 获取百年心愿 */ public Observable>> getHundredWish(Map toMap) { return mHttpDataSource.getHundredWish(toMap); } /** * 获取魅宠 */ public Observable>> getPets(Map toMap) { return mHttpDataSource.getPets(toMap); } @Override public Observable>> getPetMemo(Map toMap) { return mHttpDataSource.getPetMemo(toMap); } /** * 获取旅游消费记录 */ @Override public Observable>> getTourism(Map toMap) { return mHttpDataSource.getTourism(toMap); } /** * 新增旅游消费记录 */ @Override public Observable> addTourism(TourismBean tourismBean) { return mHttpDataSource.addTourism(tourismBean); } /** * 删除旅游消费记录 */ @Override public Observable> deleteTourism(String ids) { return mHttpDataSource.deleteTourism(ids); } /** * 修改旅游消费记录 */ @Override public Observable> updateTourism(TourismBean tourismBean) { return mHttpDataSource.updateTourism(tourismBean); } /** * 获取旅游经历 */ public Observable>> getTourismExperience(Map toMap) { return mHttpDataSource.getTourismExperience(toMap); } /** * 新增旅游经历 */ public Observable> addTourismExperience(TourismExperienceBean tourismExperienceBean) { return mHttpDataSource.addTourismExperience(tourismExperienceBean); } /** * 删除旅游经历 */ public Observable> deleteTourismExperience(String ids) { return mHttpDataSource.deleteTourismExperience(ids); } /** * 修改旅游经历 */ public Observable> updateTourismExperience(TourismExperienceBean tourismExperienceBean) { return mHttpDataSource.updateTourismExperience(tourismExperienceBean); } /** * 获取备忘本 */ public Observable>> getMemos(String fid, String cid) { return mHttpDataSource.getMemos(fid,cid); } /** * 增加备忘本 */ public Observable> addMemo(MemoBean memoBean) { return mHttpDataSource.addMemo(memoBean); } /** * 删除备忘本 */ public Observable> deleteMemo(String ids) { return mHttpDataSource.deleteMemo(ids); } /** * 修改备忘本 */ public Observable> updateMemo(MemoBean memoBean) { return mHttpDataSource.updateMemo(memoBean); } /** * 获取家谱 */ public Observable>> getHomeMembers(Map toMap) { return mHttpDataSource.getHomeMembers(toMap); } /** * 获取家根网 */ @Override public Observable>> getHomeRoot(String depth) { return mHttpDataSource.getHomeRoot(depth); } /** * 获取年度健康状况 */ @Override public Observable>> getAnnualHealthStatus(Map toMap) { return mHttpDataSource.getAnnualHealthStatus(toMap); } /** * 新增年度健康状况 */ @Override public Observable> addAnnualHealthStatus(AnnualHealthStatusBean annualHealthStatusBean) { return mHttpDataSource.addAnnualHealthStatus(annualHealthStatusBean); } /** * 删除年度健康状况 */ @Override public Observable> deleteAnnualHealthStatus(String ids) { return mHttpDataSource.deleteAnnualHealthStatus(ids); } /** * 修改年度健康状况 */ @Override public Observable> updateAnnualHealthStatus(AnnualHealthStatusBean annualHealthStatusBean) { return mHttpDataSource.updateAnnualHealthStatus(annualHealthStatusBean); } /** * 获取轮播图数据 */ public Observable>> getBannerData() { return mHttpDataSource.getBannerData(); } /** * 添加轮播图数据 */ public Observable> addBannerData(BannerBean bannerBean) { return mHttpDataSource.addBannerData(bannerBean); } /** * 删除轮播图数据 */ public Observable> deleteBannerData(String ids) { return mHttpDataSource.deleteBannerData(ids); } /** * 修改轮播图数据 */ public Observable> updateBannerData(BannerBean bannerBean) { return mHttpDataSource.updateBannerData(bannerBean); } /** * 获取健康保健基本信息 */ public Observable> getHealthCareBaseInfo() { return mHttpDataSource.getHealthCareBaseInfo(); } /** * 修改健康保健基本信息 */ public Observable> updateHealthCareBaseInfo(HealthCareBaseInfoBean healthCareBaseInfoBean) { return mHttpDataSource.updateHealthCareBaseInfo(healthCareBaseInfoBean); } /** * 获取健康保健生活习惯 */ public Observable> getHealthCareLifeHabits() { return mHttpDataSource.getHealthCareLifeHabits(); } /** * 修改健康保健生活习惯 */ public Observable> updateHealthCareLifeHabits(HealthCareLifeHabitsBean healthCareLifeHabitsBean) { return mHttpDataSource.updateHealthCareLifeHabits(healthCareLifeHabitsBean); } /** * 获取健康保健护理查体 */ public Observable> getHealthCareNursingExamination() { return mHttpDataSource.getHealthCareNursingExamination(); } /** * 修改健康保健护理查体 */ public Observable> updateHealthCareNursingExamination(HealthCareNursingExaminationBean healthCareNursingExaminationBean) { return mHttpDataSource.updateHealthCareNursingExamination(healthCareNursingExaminationBean); } /** * 获取健康保健现存健康问题 */ public Observable> getHealthCareExistingProblems() { return mHttpDataSource.getHealthCareExistingProblems(); } /** * 修改健康保健现存健康问题 */ public Observable> updateHealthCareExistingProblems(HealthCareExistingProblemsBean healthCareExistingProblemsBean) { return mHttpDataSource.updateHealthCareExistingProblems(healthCareExistingProblemsBean); } /** * 获取健康保健笔记内容 */ public Observable> getHealthCareNotesContent() { return mHttpDataSource.getHealthCareNotesContent(); } /** * 修改健康保健笔记内容 */ public Observable> updateHealthCareNotesContent(HealthCareNotesContentBean healthCareNotesContentBean) { return mHttpDataSource.updateHealthCareNotesContent(healthCareNotesContentBean); } /** * 获取版本更新 */ public Observable> getUpdateVersion() { return mHttpDataSource.getUpdateVersion(); } /** * @see LocalDataSourceImpl */ }