From 42ea59771a54d2591df0a6dd3936dda669be99ae Mon Sep 17 00:00:00 2001
From: gs <3129367635@qq.com>
Date: 星期一, 08 七月 2024 12:23:48 +0800
Subject: [PATCH] 会议统计接入增加,删除,修改接口
---
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivityViewModel.java | 140 +++---
app/src/main/java/com/application/zhangshi_app_android/data/source/http/ApiService.java | 23 +
app/src/main/java/com/application/zhangshi_app_android/bean/MeetingapproveBean.java | 7
app/src/main/res/layout/item_meeting_sta.xml | 9
app/src/main/res/layout/activity_meeting_detail.xml | 3
app/src/main/java/com/application/zhangshi_app_android/data/DataRepository.java | 30 +
app/src/main/res/layout/activity_meeting_approve_detail.xml | 5
app/src/main/res/layout/item_meeting.xml | 3
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivity.java | 82 ++-
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivityViewModel.java | 204 +++++++--
app/src/main/res/layout/activity_meeting_sta_detail.xml | 26
.idea/deploymentTargetDropDown.xml | 55 --
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java | 367 +++++++++++------
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivity.java | 30
app/src/main/java/com/application/zhangshi_app_android/data/source/HttpDataSource.java | 7
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivityViewModel.java | 6
app/src/main/java/com/application/zhangshi_app_android/data/source/http/HttpDataSourceImpl.java | 27 +
app/src/main/java/com/application/zhangshi_app_android/bean/MeetingBean.java | 31
app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveActivity.java | 15
app/src/main/res/layout/pop_operate_delete.xml | 3
app/src/main/res/layout/pop_operate_sta.xml | 95 ++++
21 files changed, 746 insertions(+), 422 deletions(-)
diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
index 32da439..ab3c9d8 100644
--- a/.idea/deploymentTargetDropDown.xml
+++ b/.idea/deploymentTargetDropDown.xml
@@ -2,62 +2,11 @@
<project version="4">
<component name="deploymentTargetDropDown">
<value>
- <entry key="AnnualHealthStatusActivity">
+ <entry key="MeetingapproveActivity">
<State />
- </entry>
- <entry key="BaseActivity">
- <State />
- </entry>
- <entry key="FamilyMemorabiliaActivity">
- <State />
- </entry>
- <entry key="MeetingActivity">
- <State>
- <targetSelectedWithDropDown>
- <Target>
- <type value="QUICK_BOOT_TARGET" />
- <deviceKey>
- <Key>
- <type value="VIRTUAL_DEVICE_PATH" />
- <value value="C:\Users\home\.android\avd\Pixel_7_Pro_API_30.avd" />
- </Key>
- </deviceKey>
- </Target>
- </targetSelectedWithDropDown>
- <timeTargetWasSelectedWithDropDown value="2024-04-30T04:26:21.217761800Z" />
- </State>
- </entry>
- <entry key="TextActivity">
- <State>
- <targetSelectedWithDropDown>
- <Target>
- <type value="QUICK_BOOT_TARGET" />
- <deviceKey>
- <Key>
- <type value="VIRTUAL_DEVICE_PATH" />
- <value value="C:\Users\home\.android\avd\Pixel_7_Pro_API_30.avd" />
- </Key>
- </deviceKey>
- </Target>
- </targetSelectedWithDropDown>
- <timeTargetWasSelectedWithDropDown value="2024-04-01T07:28:32.980539900Z" />
- </State>
</entry>
<entry key="app">
- <State>
- <targetSelectedWithDropDown>
- <Target>
- <type value="QUICK_BOOT_TARGET" />
- <deviceKey>
- <Key>
- <type value="VIRTUAL_DEVICE_PATH" />
- <value value="D:\andro\.android\avd\Resizable_Experimental_API_34.avd" />
- </Key>
- </deviceKey>
- </Target>
- </targetSelectedWithDropDown>
- <timeTargetWasSelectedWithDropDown value="2024-07-01T07:42:38.368337600Z" />
- </State>
+ <State />
</entry>
</value>
</component>
diff --git a/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingBean.java b/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingBean.java
index 07d5a05..b01e2a7 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingBean.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingBean.java
@@ -150,22 +150,11 @@
this.connPerson = connPerson;
}
- public String getStatu() {
-// if(statu == "0"){
-// statu = "鎷掔粷";
-// }else if (statu == "1"){
-// statu = "鍚屾剰";
-// }else{
-// statu = "寰呭鎵�";
-// }
- return statu;
- }
- public void setStatu(String statu) {
- this.statu = statu;
- }
-
+// public MeetingBean(Integer statu) {
+// this.statu = statu;
+// }
public String getCreateTime() {
return createTime;
}
@@ -185,7 +174,19 @@
private String connPerson;
private String connPhone;
private String statu;
- private String createTime;
+
+
+ public String getStatu() {
+ return statu;
+ }
+
+ public String setStatu(String statu) {
+ this.statu = statu;
+ return statu;
+ }
+
+
+ private String createTime;
private String conn_Phone;
private List<String> urlList;
diff --git a/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingapproveBean.java b/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingapproveBean.java
index 90837e2..df25c92 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingapproveBean.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/bean/MeetingapproveBean.java
@@ -10,6 +10,7 @@
private List<String> urlList;
private String url;
+
public long getId() {
return id;
}
@@ -18,13 +19,7 @@
this.id = id;
}
- public String getStatu() {
- return statu;
- }
- public void setStatu(String statu) {
- this.statu = statu;
- }
public List<String> getUrlList() {
return urlList;
diff --git a/app/src/main/java/com/application/zhangshi_app_android/data/DataRepository.java b/app/src/main/java/com/application/zhangshi_app_android/data/DataRepository.java
index ba93b75..2648590 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/data/DataRepository.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/data/DataRepository.java
@@ -143,6 +143,32 @@
return mHttpDataSource.getMeetingSta(paramsMap);
}
+ /**
+ * 澧炲姞瀹跺ぇ浜嬭
+ */
+ @Override
+ public Observable<ResultData<String>> addMeetingSta(MeetingStaBean meetingStaBean) {
+ return mHttpDataSource.addMeetingSta(meetingStaBean);
+ }
+
+ /**
+ * 鍒犻櫎瀹跺ぇ浜嬭
+ */
+ @Override
+ public Observable<ResultData<String>> deleteMeetingSta(String ids) {
+ return mHttpDataSource.deleteMeetingSta(ids);
+ }
+
+ /**
+ *鏇存柊瀹跺ぇ浜嬭
+ */
+ @Override
+ public Observable<ResultData<String>> updateMeetingSta(MeetingStaBean meetingStaBean) {
+ return mHttpDataSource.updateMeetingSta(meetingStaBean);
+ }
+
+
+
@Override
public Observable<ResultData<PageResponseBean<MeetingBean>>> getMeeting(Map<String,Object> paramsMap) {
return mHttpDataSource.getMeeting(paramsMap);
@@ -173,8 +199,8 @@
@Override
- public Observable<ResultData<String>> approveMeeting(Integer id,Integer statu) {
- return mHttpDataSource.approveMeeting(id,statu);
+ public Observable<ResultData<String>> approveMeeting(Integer statu) {
+ return mHttpDataSource.approveMeeting(statu);
}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/data/source/HttpDataSource.java b/app/src/main/java/com/application/zhangshi_app_android/data/source/HttpDataSource.java
index 0fd51de..3525d77 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/data/source/HttpDataSource.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/data/source/HttpDataSource.java
@@ -93,7 +93,7 @@
Observable<ResultData<String>> updateMeeting(MeetingBean meetingBean);
- Observable<ResultData<String>> approveMeeting(Integer id, Integer statu);
+ Observable<ResultData<String>> approveMeeting(Integer statu);
/**
* 鍒犻櫎瀹跺ぇ浜嬭
@@ -484,6 +484,11 @@
*/
Observable<ResultData<String>> addExaminationInfo(ExaminationInfoBean examinationInfoBean);
+ Observable<ResultData<String>> updateMeetingSta(MeetingStaBean meetingStaBean);
+
+ Observable<ResultData<String>> deleteMeetingSta(String ids);
+
+ Observable<ResultData<String>> addMeetingSta(MeetingStaBean meetingStaBean);
}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/data/source/http/ApiService.java b/app/src/main/java/com/application/zhangshi_app_android/data/source/http/ApiService.java
index 3909f6d..f5d4cf4 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/data/source/http/ApiService.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/data/source/http/ApiService.java
@@ -127,10 +127,30 @@
Observable<ResultData<String>> updateMeeting(@Body MeetingBean meetingBean);
@PUT("/zMeetingRatify")
- Observable<ResultData<String>> approveMeeting(@Body Integer id,Integer statu);
+ Observable<ResultData<String>> approveMeeting(@Body Integer statu);
@GET("/zMeetingStatistic/all")
Observable<ResultData<PageResponseBean<MeetingStaBean>>> getMeetingSta(@QueryMap Map<String,Object> paramsMap);
+
+ /**
+ * 澧炲姞瀹跺ぇ浜嬭
+ */
+ @POST("/zMeetingStatistic")
+ Observable<ResultData<String>> addMeetingSta(@Body MeetingStaBean meetingStaBean);
+ /**
+ * 鍒犻櫎瀹跺ぇ浜嬭
+ */
+ @DELETE("/zMeetingStatistic/{ids}")
+ Observable<ResultData<String>> deleteMeetingSta(@Path("ids") String ids);
+ /**
+ * 淇敼瀹跺ぇ浜嬭
+ */
+ @PUT("/zMeetingStatistic")
+ Observable<ResultData<String>> updateMeetingSta(@Body MeetingStaBean meetingStaBean);
+
+
+
+
//鐩存挱鐢宠
@POST("/zLiveStreaming")
@@ -635,4 +655,5 @@
@POST("/physcial")
Observable<ResultData<String>> addExaminationInfo(@Body ExaminationInfoBean examinationInfoBean);
+
}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/data/source/http/HttpDataSourceImpl.java b/app/src/main/java/com/application/zhangshi_app_android/data/source/http/HttpDataSourceImpl.java
index dfa6cf9..9c57e44 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/data/source/http/HttpDataSourceImpl.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/data/source/http/HttpDataSourceImpl.java
@@ -131,6 +131,29 @@
public Observable<ResultData<PageResponseBean<MeetingStaBean>>> getMeetingSta(Map<String,Object> paramsMap) {
return apiService.getMeetingSta(paramsMap);
}
+
+ public Observable<ResultData<String >> addMeetingSta(MeetingStaBean meetingStaBean){
+ return apiService.addMeetingSta(meetingStaBean);
+ }
+
+
+ /**
+ * 鍒犻櫎瀹跺ぇ浜嬭
+ */
+ @Override
+ public Observable<ResultData<String>> deleteMeetingSta(String ids) {
+ return apiService.deleteMeetingSta(ids);
+ }
+
+ /**
+ * 淇敼瀹跺ぇ浜嬭
+ */
+ @Override
+ public Observable<ResultData<String>> updateMeetingSta(MeetingStaBean meetingStaBean) {
+ return apiService.updateMeetingSta(meetingStaBean);
+ }
+
+
/**
* 鑾峰彇瀹跺ぇ浜嬭
*/
@@ -165,8 +188,8 @@
@Override
- public Observable<ResultData<String>> approveMeeting(Integer id, Integer statu) {
- return apiService.approveMeeting(id,statu);
+ public Observable<ResultData<String>> approveMeeting(Integer statu) {
+ return apiService.approveMeeting(statu);
}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivity.java
index 85f8324..b77a84c 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivity.java
@@ -1,10 +1,15 @@
package com.application.zhangshi_app_android.ui.function;
+import android.content.Intent;
import android.view.View;
import android.widget.PopupWindow;
import androidx.lifecycle.Observer;
+import com.android.app_base.base.BaseConfig;
+import com.android.app_base.base.dialog.BaseDialog;
+import com.android.app_base.base.dialog.UIDialog;
+import com.android.app_base.manager.AppManager;
import com.android.app_base.utils.ScreenSizeUtils;
import com.android.app_base.utils.rxbus.RxBus;
import com.android.app_base.widget.LinearItemDecoration;
@@ -66,12 +71,10 @@
binding.recyclerView.addItemDecoration(itemDecoration);
binding.recyclerView.setAdapter(adapter);
//鍙充笂瑙掓搷浣滃脊绐�
- mOperatePopupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate,null));
+ mOperatePopupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_sta,null));
setOnClickListener(
-// mOperatePopupWindow.getContentView().findViewById(R.id.tv_add),
-// mOperatePopupWindow.getContentView().findViewById(R.id.tv_select),
- mOperatePopupWindow.getContentView().findViewById(R.id.tv_from_new_to_old),
- mOperatePopupWindow.getContentView().findViewById(R.id.tv_from_old_to_new),
+ mOperatePopupWindow.getContentView().findViewById(R.id.tv_add),
+ mOperatePopupWindow.getContentView().findViewById(R.id.tv_select),
mOperatePopupWindow.getContentView().findViewById(R.id.tv_own_top)
);
// //鐐瑰嚮鏀惧ぇ闀滄寜閽樉绀哄嚭鎼滅储妗�
@@ -102,14 +105,14 @@
// binding.tvTitle.setText("鎼滅储缁撴灉");
// hideSoftKeyboard();
// });
- //鐐瑰嚮娣诲姞鎸夐挳璺宠浆鍒板垱寤哄澶т簨璁伴〉闈�
+// 鐐瑰嚮娣诲姞鎸夐挳璺宠浆鍒板垱寤哄澶т簨璁伴〉闈�
// binding.fabAdd.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// AppManager.getAppManager().startActivity(new Intent(getSelfActivity(), MeetingStaDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
// }
// });
-
+//
// binding.etStartTime.addTextChangedListener(new TextWatcher() {
// @Override
// public void beforeTextChanged(CharSequence s, int start, int count, int after) {
@@ -291,23 +294,23 @@
});
adapter.setCheckable(true);
}
-// else if (integer == 2){
-// binding.ivOperate.setBackgroundResource(R.drawable.ic_delete_white);
-// binding.ivOperate.setOnClickListener(v -> {
-// new UIDialog.Builder(this)
-// .setTitle("鎮ㄧ‘瀹氳鍒犻櫎閫変腑鐨勯」鐩悧")
-// .setContent("椤圭洰鍒犻櫎鍚庡皢鏃犳硶鎭㈠")
-// .setConfirm("纭畾")
-// .setCancel("鍙栨秷")
-// .setListener(new UIDialog.OnListener() {
-// @Override
-// public void onConfirm(BaseDialog dialog) {
-// viewModel.deleteCheckList();
-// }
-// })
-// .show();
-// });
-// }
+ else if (integer == 2){
+ binding.ivOperate.setBackgroundResource(R.drawable.ic_delete_white);
+ binding.ivOperate.setOnClickListener(v -> {
+ new UIDialog.Builder(this)
+ .setTitle("鎮ㄧ‘瀹氳鍒犻櫎閫変腑鐨勯」鐩悧")
+ .setContent("椤圭洰鍒犻櫎鍚庡皢鏃犳硶鎭㈠")
+ .setConfirm("纭畾")
+ .setCancel("鍙栨秷")
+ .setListener(new UIDialog.OnListener() {
+ @Override
+ public void onConfirm(BaseDialog dialog) {
+ viewModel.deleteCheckList();
+ }
+ })
+ .show();
+ });
+ }
});
viewModel.getFinishDeleteListLiveData().observe(this, beans -> {
for (MeetingStaBean bean : beans) {
@@ -344,25 +347,28 @@
binding.refreshLayout.finishLoadMore();
}
-// @Override
-// public void onClick(View v) {
-// int id = v.getId();
-// if (id == R.id.tv_add){
-// AppManager.getAppManager().startActivity(new Intent(this, MeetingDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
-// }else if (id == R.id.tv_select){
-// viewModel.getOperateTypeLiveData().postValue(1);
-// mOperatePopupWindow.dismiss();
-// } else if (id == R.id.tv_from_new_to_old) {
+ @Override
+ public void onClick(View v) {
+ int id = v.getId();
+ if (id == R.id.tv_add){
+ AppManager.getAppManager().startActivity(new Intent(this, MeetingStaDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+ }else if (id == R.id.tv_select){
+ viewModel.getOperateTypeLiveData().postValue(1);
+ mOperatePopupWindow.dismiss();
+ }
+// else if (id == R.id.tv_from_new_to_old) {
// viewModel.changeOrder(true);
// mOperatePopupWindow.dismiss();
-// } else if (id == R.id.tv_from_old_to_new) {
+// }
+// else if (id == R.id.tv_from_old_to_new) {
// viewModel.changeOrder(false);
// mOperatePopupWindow.dismiss();
-// } else if (id == R.id.tv_own_top) {
-// viewModel.ownTop();
-// mOperatePopupWindow.dismiss();
// }
-// }
+ else if (id == R.id.tv_own_top) {
+ viewModel.ownTop();
+ mOperatePopupWindow.dismiss();
+ }
+ }
@Override
protected void onDestroy() {
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivityViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivityViewModel.java
index b4da281..722ed81 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivityViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaActivityViewModel.java
@@ -171,79 +171,79 @@
/**
* 鍒犻櫎瀹跺ぇ浜嬭
*/
-// public void deleteCheckList() {
-// List<MeetingBean> deleteList = getCheckListLiveData().getValue();
-// if (deleteList == null){
-// return;
-// }
-// StringBuffer sb = new StringBuffer();
-// deleteList.forEach(MeetingBean -> sb.append(MeetingBean.getId()).append(","));
-// sb.deleteCharAt(sb.length()-1);
-// model.deleteMeeting(sb.toString())
-// .compose(RxUtils.schedulersTransformer())
-// .subscribe(new Observer<ResultData<String>>() {
-// @Override
-// public void onSubscribe(Disposable d) {
-// addSubscribe(d);
-// }
-//
-// @Override
-// public void onNext(ResultData<String> stringResultData) {
-// if (stringResultData.getCode() == CODE_SUCCESS){
-// messageLiveData.postValue("鍒犻櫎鎴愬姛");
-// finishDeleteListLiveData.postValue(checkListLiveData.getValue());
-// getCheckListLiveData().postValue(new ArrayList<>());
-// }else {
-// messageLiveData.postValue(stringResultData.getMsg());
-// }
-// }
-//
-// @Override
-// public void onError(Throwable e) {
-// messageLiveData.postValue(e.getMessage());
-// }
-//
-// @Override
-// public void onComplete() {
-//
-// }
-// });
-// }
+ public void deleteCheckList() {
+ List<MeetingStaBean> deleteList = getCheckListLiveData().getValue();
+ if (deleteList == null){
+ return;
+ }
+ StringBuffer sb = new StringBuffer();
+ deleteList.forEach(MeetingStaBean -> sb.append(MeetingStaBean.getId()).append(","));
+ sb.deleteCharAt(sb.length()-1);
+ model.deleteMeetingSta(sb.toString())
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> stringResultData) {
+ if (stringResultData.getCode() == CODE_SUCCESS){
+ messageLiveData.postValue("鍒犻櫎鎴愬姛");
+ finishDeleteListLiveData.postValue(checkListLiveData.getValue());
+ getCheckListLiveData().postValue(new ArrayList<>());
+ }else {
+ messageLiveData.postValue(stringResultData.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
/**
* 鍒犻櫎鍗曚釜鏁版嵁
*/
-// public void deleteItem(MeetingBean bean) {
-// model.deleteMeeting(String.valueOf(bean.getId()))
-// .compose(RxUtils.schedulersTransformer())
-// .subscribe(new Observer<ResultData<String>>() {
-// @Override
-// public void onSubscribe(Disposable d) {
-// addSubscribe(d);
-// }
-//
-// @Override
-// public void onNext(ResultData<String> stringResultData) {
-// if (stringResultData.getCode() == CODE_SUCCESS){
-// List<MeetingStaBean> list = new ArrayList<>();
-// list.add(bean);
-// finishDeleteListLiveData.postValue(list);
-// messageLiveData.postValue("鍒犻櫎鎴愬姛");
-// }else {
-// messageLiveData.postValue(stringResultData.getMsg());
-// }
-// }
-//
-// @Override
-// public void onError(Throwable e) {
-// messageLiveData.postValue(e.getMessage());
-// }
-//
-// @Override
-// public void onComplete() {
-//
-// }
-// });
-// }
+ public void deleteItem(MeetingStaBean bean) {
+ model.deleteMeetingSta(String.valueOf(bean.getId()))
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> stringResultData) {
+ if (stringResultData.getCode() == CODE_SUCCESS){
+ List<MeetingStaBean> list = new ArrayList<>();
+ list.add(bean);
+ finishDeleteListLiveData.postValue(list);
+ messageLiveData.postValue("鍒犻櫎鎴愬姛");
+ }else {
+ messageLiveData.postValue(stringResultData.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
public MutableLiveData<List<MeetingStaBean>> getCheckListLiveData() {
if (checkListLiveData==null){
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java
index 10425ba..4594bd7 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java
@@ -1,24 +1,48 @@
package com.application.zhangshi_app_android.ui.function;
+import android.app.Activity;
+import android.content.ClipData;
import android.content.Intent;
+import android.net.Uri;
+import android.view.View;
import android.widget.PopupWindow;
+import androidx.activity.result.ActivityResult;
+import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
+import androidx.activity.result.contract.ActivityResultContracts;
import androidx.lifecycle.MutableLiveData;
import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import com.android.app_base.base.BaseConfig;
+import com.android.app_base.base.adapter.BaseRVAdapter;
import com.android.app_base.base.dialog.BaseDialog;
import com.android.app_base.base.dialog.WaitDialog;
+import com.android.app_base.manager.UserManager;
+import com.android.app_base.utils.GetFilePathFromUri;
+import com.android.app_base.utils.ScreenSizeUtils;
import com.android.app_base.utils.Utils;
import com.application.zhangshi_app_android.BR;
import com.application.zhangshi_app_android.R;
import com.application.zhangshi_app_android.adapter.ElectronicFileAddAdapter;
import com.application.zhangshi_app_android.bean.MeetingStaBean;
+import com.application.zhangshi_app_android.databinding.ActivityMeetingDetailBinding;
import com.application.zhangshi_app_android.databinding.ActivityMeetingStaDetailBinding;
import com.application.zhangshi_app_android.ui.DLBaseActivity;
+import com.github.gzuliyujiang.wheelpicker.DatePicker;
+import com.github.gzuliyujiang.wheelpicker.OptionPicker;
+import com.github.gzuliyujiang.wheelpicker.TimePicker;
+import com.github.gzuliyujiang.wheelpicker.contract.OnDatePickedListener;
+import com.github.gzuliyujiang.wheelpicker.contract.OnOptionPickedListener;
+import com.github.gzuliyujiang.wheelpicker.contract.OnTimePickedListener;
+import com.luck.picture.lib.entity.LocalMedia;
+import com.luck.picture.lib.interfaces.OnResultCallbackListener;
+import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
+import java.util.Locale;
/**
@@ -60,112 +84,178 @@
public void initView() {
adapter = new ElectronicFileAddAdapter(this);
GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 3);
-// binding.rvImage.setLayoutManager(gridLayoutManager);
-// binding.rvImage.setNestedScrollingEnabled(false);
-// adapter.setOnChildClickListener(R.id.iv_delete, new BaseRVAdapter.OnChildClickListener() {
+// adapter.setItemAndAddClickListener(new ElectronicFileAddAdapter.OnItemAndAddClickListener() {
// @Override
-// public void onChildClick(RecyclerView recyclerView, View childView, int position) {
-// MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
-// if (bean !=null){
-// List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
-// urlList.remove(adapter.getItem(position));
-// bean.setUrl(Utils.appendList2String(urlList,","));
-// }
-// adapter.removeItem(position);
-// viewModel.getBeanLiveData().setValue(bean);
-// }
-// });
-// binding.rvImage.setAdapter(adapter);
-// if (type == 1){
-// viewModel.getTypeLiveData().setValue(true);
-// binding.titleBar.setTitle("鏂板瀹跺ぇ浜嬭");
-// binding.ivOperate.setOnClickListener(v -> {
-// viewModel.add();
-// });
-// }else if (type == 0){
-// popupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_delete,null));
-// popupWindow.getContentView().findViewById(R.id.tv_modify).setOnClickListener(new View.OnClickListener() {
-// @Override
-// public void onClick(View v) {
-// viewModel.getTypeLiveData().postValue(true);
-// popupWindow.dismiss();
-// }
-// });
-// viewModel.getTypeLiveData().postValue(false);
-// }else if (type == 2){
-// viewModel.getTypeLiveData().postValue(true);
+// public void onItemClick(View v, int position) {
//
+// }
+//
+// @Override
+//// public void onAddClick() {
+//// OptionPicker picker = getOptionPicker(Arrays.asList("鍥剧墖瑙嗛","鍏朵粬鏂囦欢"));
+//// picker.setTitle("閫夋嫨鏂囦欢绫诲瀷");
+//// picker.setOnOptionPickedListener(new OnOptionPickedListener() {
+//// @Override
+//// public void onOptionPicked(int position, Object item) {
+//// if (item.equals("鍥剧墖瑙嗛")) {
+//// UserManager.getInstance().selectImage(getSelfActivity(), 0,9, new OnResultCallbackListener<LocalMedia>() {
+//// @Override
+//// public void onResult(ArrayList<LocalMedia> result) {
+//// if (result.size() == 0) return;
+//// for (LocalMedia media : result) {
+//// String path = media.getRealPath();
+//// if (path!=null){
+//// viewModel.addUploadFile(path);
+//// MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
+//// if (bean !=null){
+//// List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
+//// urlList.add(path);
+//// bean.setUrl(Utils.appendList2String(urlList,","));
+//// }
+//// viewModel.getBeanLiveData().setValue(bean);
+//// }
+//// }
+//// }
+//// @Override
+//// public void onCancel() {
+////
+//// }
+//// });
+//// }else {
+//// Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
+////// Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+//// intent.setType("*/*"); // 闄愬埗鏂囦欢绫诲瀷
+//// intent.addCategory(Intent.CATEGORY_OPENABLE); // 娣诲姞 CATEGORY_OPENABLE 鍒嗙被,鍛婅瘔绯荤粺瑕侀�夋嫨鐨勫唴瀹瑰彲浠ヨ鎵撳紑锛岃繖鏍风郴缁熶細杩囨护鎺変笉鑳借搴旂敤鎵撳紑鐨勬枃浠讹紝浠ユ彁渚涙洿濂界殑鐢ㄦ埛浣撻獙銆�
+//// intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true); // 鍏佽澶氶��
+//// activityResultLauncher.launch(intent);
+//// }
+//// }
+//// });
+//// picker.show();
+////
+//// }
+// });
+ adapter.setOnChildClickListener(R.id.iv_delete, new BaseRVAdapter.OnChildClickListener() {
+ @Override
+ public void onChildClick(RecyclerView recyclerView, View childView, int position) {
+ MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
+ if (bean !=null){
+ List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
+ urlList.remove(adapter.getItem(position));
+ bean.setUrl(Utils.appendList2String(urlList,","));
+ }
+ adapter.removeItem(position);
+ viewModel.getBeanLiveData().setValue(bean);
+ }
+ });
+// binding.rvImage.setAdapter(adapter);
+ if (type == 1){
+ viewModel.getTypeLiveData().setValue(true);
+ binding.titleBar.setTitle("鏂板瀹跺ぇ浜嬭");
+ binding.ivOperate.setOnClickListener(v -> {
+ viewModel.add();
+ });
+ }else if (type == 0){
+ popupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_delete,null));
+ popupWindow.getContentView().findViewById(R.id.tv_modify).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ viewModel.getTypeLiveData().postValue(true);
+ popupWindow.dismiss();
+ }
+ });
+ viewModel.getTypeLiveData().postValue(false);
+ }else if (type == 2){
+ viewModel.getTypeLiveData().postValue(true);
+
+ }
+
+
+ // 鏄剧ず鏃ユ湡閫夋嫨鍣ㄥ拰鏃堕棿閫夋嫨鍣ㄧ殑鏂规硶
+// public void showDateTimePicker() {
+// DatePickerDialog pickerDialog = new DatePickerDialog(this, (view, year, monthOfYear, dayOfMonth) -> {
+// TimePickerDialog timePickerDialog = new TimePickerDialog(this, (view1, hourOfDay, minute) -> {
+// String date = String.format(Locale.CHINA, "%d-%02d-%02d", year, monthOfYear + 1, dayOfMonth);
+// String time = String.format(Locale.CHINA, "%02d:%02d", hourOfDay, minute);
+// String starttime = date + " " + time;
+// binding.etStartTime.setText(starttime);
+// }, 0, 0, true);
+// timePickerDialog.setTitle("閫夋嫨鏃堕棿");
+// timePickerDialog.show();
+// }, Calendar.getInstance().get(Calendar.YEAR), Calendar.getInstance().get(Calendar.MONTH), Calendar.getInstance().get(Calendar.DAY_OF_MONTH));
+// pickerDialog.setTitle("閫夋嫨鏃ユ湡");
+// pickerDialog.show();
// }
-// binding.etDate1.setOnClickListener(new View.OnClickListener() {
+// binding.etStartTime.setOnClickListener(new View.OnClickListener() {
+// private String datee;
+// private String timee;
+//
// @Override
// public void onClick(View v) {
// DatePicker picker = getDatePicker();
-// picker.setTitle("閫夋嫨鏃堕棿");
+// TimePicker picker2 = getTimePicker();
+// picker.setTitle("閫夋嫨鏃ユ湡");
+// picker2.setTitle("閫夋嫨鏃堕棿");
// picker.setOnDatePickedListener(new OnDatePickedListener() {
// @Override
// public void onDatePicked(int year, int month, int day) {
// String date = String.format(Locale.CHINA, "%d-%02d-%02d", year, month, day);
-// binding.etDate1.setText(date);
+// datee = date;
+//
+// // 鍦ㄦ棩鏈熼�夋嫨鍚庢樉绀烘椂闂撮�夋嫨鍣�
+// picker2.show();
// }
// });
// picker.show();
+// picker2.setOnTimePickedListener(new OnTimePickedListener() {
+// @Override
+// public void onTimePicked(int hour, int minute, int second) {
+// String time = String.format(Locale.CHINA, "%d:%02d:%02d", hour, minute, second);
+// timee = time;
+//
+// // 鍚堝苟鏃ユ湡鍜屾椂闂村苟璁剧疆鍒扮紪杈戞
+// String starttime = datee + " " + timee;
+// binding.etStartTime.setText(starttime);
+// }
+// });
// }
// });
-// binding.etDate2.setOnClickListener(new View.OnClickListener() {
+// binding.etEndTime.setOnClickListener(new View.OnClickListener() {
+// private String datee;
+// private String timee;
+//
// @Override
// public void onClick(View v) {
// DatePicker picker = getDatePicker();
-// picker.setTitle("閫夋嫨鏃堕棿");
+// TimePicker picker2 = getTimePicker();
+// picker.setTitle("閫夋嫨鏃ユ湡");
+// picker2.setTitle("閫夋嫨鏃堕棿");
// picker.setOnDatePickedListener(new OnDatePickedListener() {
// @Override
// public void onDatePicked(int year, int month, int day) {
// String date = String.format(Locale.CHINA, "%d-%02d-%02d", year, month, day);
-// binding.etDate2.setText(date);
-// }
-// });
-// picker.show();
-// }
-// });
-
-// binding.etTime1.setOnClickListener(new View.OnClickListener() {
-// @Override
-// public void onClick(View v) {
-// TimePicker picker = getTimePicker();
-// picker.setTitle("閫夋嫨鏃堕棿");
-// picker.setOnTimePickedListener(new OnTimePickedListener() {
+// datee = date;
//
+// // 鍦ㄦ棩鏈熼�夋嫨鍚庢樉绀烘椂闂撮�夋嫨鍣�
+// picker2.show();
+// }
+// });
+// picker.show();
+// picker2.setOnTimePickedListener(new OnTimePickedListener() {
// @Override
+// public void onTimePicked(int hour, int minute, int second) {
+// String time = String.format(Locale.CHINA, "%d:%02d:%02d", hour, minute, second);
+// timee = time;
//
-// public void onTimePicked(int hour, int Minute,int second) {
-//// second = '0';
-// String date = String.format(Locale.CHINA, "%d:%02d:%02d",hour,Minute,second);
-// binding.etTime1.setText(date);
+// // 鍚堝苟鏃ユ湡鍜屾椂闂村苟璁剧疆鍒扮紪杈戞
+// String endtime = datee + " " + timee;
+// binding.etEndTime.setText(endtime);
// }
// });
-// picker.show();
-// }
-// });
-
-
-
-
-// binding.etTime2.setOnClickListener(new View.OnClickListener() {
-// @Override
-// public void onClick(View v) {
-// TimePicker picker = getTimePicker();
-// picker.setTitle("閫夋嫨鏃堕棿");
-// picker.setOnTimePickedListener(new OnTimePickedListener() {
-// @Override
-// public void onTimePicked(int hour, int Minute, int second) {
-// String date = String.format(Locale.CHINA, "%d:%02d:%02d",hour,Minute,second );
-// binding.etTime2.setText(date);
-// }
-// });
-// picker.show();
// }
// });
@@ -173,51 +263,50 @@
-
-// activityResultLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() {
-// @Override
-// public void onActivityResult(ActivityResult result) {
-// if (result.getResultCode() == Activity.RESULT_OK) {
-// if (result.getData() == null){
-// return;
-// }
-// // 鑾峰彇閫変腑鐨勫涓枃浠剁殑 URI
-// ClipData clipData = result.getData().getClipData();
-// if (clipData != null) {
-// int itemCount = clipData.getItemCount();
-// for (int i = 0; i < itemCount; i++) {
-// Uri uri = clipData.getItemAt(i).getUri();
-// // 浣跨敤閫変腑鐨勬枃浠� URI 杩涜鍚庣画鎿嶄綔锛屾瘮濡傝鍙栨枃浠跺唴瀹圭瓑
-// String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),uri);
-// if (path!=null){
-// viewModel.addUploadFile(path);
-// MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
-// if (bean !=null){
-// List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
-// urlList.add(path);
-// bean.setUrl(Utils.appendList2String(urlList,","));
-// }
-// viewModel.getBeanLiveData().setValue(bean);
-// }
-// }
-// }else {
-// // 鑾峰彇閫変腑鐨勫崟涓枃浠剁殑 URI
-// Uri selectedFileUri = result.getData().getData();
-// String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),selectedFileUri);
-// if (path!=null){
-// viewModel.addUploadFile(path);
-// MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
-// if (bean !=null){
-// List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
-// urlList.add(path);
-// bean.setUrl(Utils.appendList2String(urlList,","));
-// }
-// viewModel.getBeanLiveData().setValue(bean);
-// }
-// }
-// }
-// }
-// });
+ activityResultLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() {
+ @Override
+ public void onActivityResult(ActivityResult result) {
+ if (result.getResultCode() == Activity.RESULT_OK) {
+ if (result.getData() == null){
+ return;
+ }
+ // 鑾峰彇閫変腑鐨勫涓枃浠剁殑 URI
+ ClipData clipData = result.getData().getClipData();
+ if (clipData != null) {
+ int itemCount = clipData.getItemCount();
+ for (int i = 0; i < itemCount; i++) {
+ Uri uri = clipData.getItemAt(i).getUri();
+ // 浣跨敤閫変腑鐨勬枃浠� URI 杩涜鍚庣画鎿嶄綔锛屾瘮濡傝鍙栨枃浠跺唴瀹圭瓑
+ String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),uri);
+ if (path!=null){
+ viewModel.addUploadFile(path);
+ MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
+ if (bean !=null){
+ List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
+ urlList.add(path);
+ bean.setUrl(Utils.appendList2String(urlList,","));
+ }
+ viewModel.getBeanLiveData().setValue(bean);
+ }
+ }
+ }else {
+ // 鑾峰彇閫変腑鐨勫崟涓枃浠剁殑 URI
+ Uri selectedFileUri = result.getData().getData();
+ String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),selectedFileUri);
+ if (path!=null){
+ viewModel.addUploadFile(path);
+ MeetingStaBean bean = viewModel.getBeanLiveData().getValue();
+ if (bean !=null){
+ List<String> urlList = Utils.splitString2List(bean.getUrl(),",");
+ urlList.add(path);
+ bean.setUrl(Utils.appendList2String(urlList,","));
+ }
+ viewModel.getBeanLiveData().setValue(bean);
+ }
+ }
+ }
+ }
+ });
}
@@ -236,25 +325,25 @@
adapter.setData(urlList);
}
});
-// viewModel.getTypeLiveData().observe(this,operateType -> {
-// if (operateType){
-// if (type == 1) {
-// binding.ivOperate.setOnClickListener(v -> {
-// viewModel.add();
-// });
-// }else {
-// binding.ivOperate.setOnClickListener(v -> {
-// viewModel.update();
-// });
-// }
-// setIsEdited(true);
-// }else {
-// binding.ivOperate.setOnClickListener(v -> {
-// popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0);
-// });
-// setIsEdited(false);
-// }
-// });
+ viewModel.getTypeLiveData().observe(this,operateType -> {
+ if (operateType){
+ if (type == 1) {
+ binding.ivOperate.setOnClickListener(v -> {
+ viewModel.add();
+ });
+ }else {
+ binding.ivOperate.setOnClickListener(v -> {
+ viewModel.update();
+ });
+ }
+ setIsEdited(true);
+ }else {
+ binding.ivOperate.setOnClickListener(v -> {
+ popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0);
+ });
+ setIsEdited(false);
+ }
+ });
}
public void setIsEdited(boolean isEdited){
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivityViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivityViewModel.java
index f466432..489ac7c 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivityViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivityViewModel.java
@@ -1,26 +1,43 @@
package com.application.zhangshi_app_android.ui.function;
+import static com.android.app_base.base.BaseConfig.CODE_SUCCESS;
+
import android.app.Application;
import androidx.annotation.NonNull;
import androidx.lifecycle.MutableLiveData;
+import com.android.app_base.base.StateViewEnum;
import com.android.app_base.base.viewmodel.BaseViewModel;
+import com.android.app_base.http.ResultData;
+import com.android.app_base.manager.AppManager;
+import com.android.app_base.utils.RxUtils;
+import com.android.app_base.utils.rxbus.RxBus;
import com.application.zhangshi_app_android.bean.MeetingStaBean;
+import com.application.zhangshi_app_android.bean.MeetingStaBean;
+import com.application.zhangshi_app_android.bean.UploadFileResponseBean;
import com.application.zhangshi_app_android.data.DataRepository;
+import java.io.File;
+import java.util.ArrayList;
import java.util.List;
-/**
- * @author Ljj
- * @date 2023.04.21. 21:16
- * @desc
- */
+import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.Observer;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.functions.Action;
+import io.reactivex.functions.Consumer;
+import io.reactivex.functions.Function;
+import okhttp3.MediaType;
+import okhttp3.MultipartBody;
+import okhttp3.RequestBody;
+
public class MeetingStaDetailActivityViewModel extends BaseViewModel<DataRepository> {
private MutableLiveData<MeetingStaBean> beanLiveData;
- private MutableLiveData<List<MeetingStaBean>> meetingStaListLiveData;
-
+ private MutableLiveData<Boolean> typeLiveData;//true 缂栬緫鐘舵�� false 灞曠ず鐘舵��
+ private final List<String> uploadFileList = new ArrayList<>();//闇�瑕佷笂浼犵殑鏂囦欢鍒楄〃
public MeetingStaDetailActivityViewModel(@NonNull Application application) {
super(application);
}
@@ -31,44 +48,125 @@
}
/**
- * 鑾峰彇澶囧繕褰�
+ * 澧炲姞瀹跺ぇ浜嬭
*/
-// public void getMeetingSta() {
-// if (beanLiveData.getValue() == null) {
-// return;
-// }
-//
-// model.getMeetingSta(getBeanLiveData().getValue().toMap())
-// .compose(RxUtils.schedulersTransformer())
-// .subscribe(new Observer<ResultData<List<MeetingStaBean>>>() {
-// @Override
-// public void onSubscribe(Disposable d) {
-// addSubscribe(d);
-// }
-//
-// @Override
-// public void onNext(ResultData<List<MeetingStaBean>> data) {
-// if (data.getCode() == CODE_SUCCESS){
-// meetingStaListLiveData.postValue(data.getData());
-// }else {
-// messageLiveData.postValue(data.getMsg());
-// }
-// }
-//
-// @Override
-// public void onError(Throwable e) {
-// messageLiveData.postValue(e.getMessage());
-// }
-//
-// @Override
-// public void onComplete() {
-//
-// }
-// });
-// }
+ public void add() {
+ model.addMeetingSta(beanLiveData.getValue())
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> stringResultData) {
+ if (stringResultData.getCode() == CODE_SUCCESS) {
+ AppManager.getAppManager().finishCurrentActivity();
+ RxBus.getInstance().post(beanLiveData.getValue());
+ messageLiveData.postValue("娣诲姞鎴愬姛");
+ } else {
+ messageLiveData.postValue(stringResultData.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+ /**
+ * 鍒犻櫎瀹跺ぇ浜嬭
+ */
+ public void delete() {
+ model.deleteMeetingSta(String.valueOf(beanLiveData.getValue().getId()))
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> stringResultData) {
+ if (stringResultData.getCode() == CODE_SUCCESS){
+ AppManager.getAppManager().finishCurrentActivity();
+ RxBus.getInstance().post(beanLiveData.getValue());
+ messageLiveData.postValue("鍒犻櫎鎴愬姛");
+ }else {
+ messageLiveData.postValue(stringResultData.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+ /**
+ * 缂栬緫瀹跺ぇ浜嬭
+ */
+ public void update() {
+ model.updateMeetingSta(beanLiveData.getValue())
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> stringResultData) {
+ if (stringResultData.getCode() == CODE_SUCCESS){
+ AppManager.getAppManager().finishCurrentActivity();
+ RxBus.getInstance().post(beanLiveData.getValue());
+ messageLiveData.postValue("淇敼鎴愬姛");
+ }else {
+ messageLiveData.postValue(stringResultData.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+
+
+
+
+
+
+
+
+
+
+
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
public MutableLiveData<MeetingStaBean> getBeanLiveData() {
- if (beanLiveData == null) {
+ if (beanLiveData == null){
beanLiveData = new MutableLiveData<>();
+ }
+ if (beanLiveData.getValue() == null){
+ beanLiveData.setValue(new MeetingStaBean());
}
return beanLiveData;
}
@@ -77,14 +175,24 @@
this.beanLiveData = beanLiveData;
}
- public MutableLiveData<List<MeetingStaBean>> getMeetingStaListLiveData() {
- if (meetingStaListLiveData == null){
- meetingStaListLiveData = new MutableLiveData<>();
+ public MutableLiveData<Boolean> getTypeLiveData() {
+ if (typeLiveData == null){
+ typeLiveData = new MutableLiveData<>();
}
- return meetingStaListLiveData;
+ return typeLiveData;
}
- public void setMeetingStaListLiveData(MutableLiveData<List<MeetingStaBean>> meetingStaListLiveData) {
- this.meetingStaListLiveData = meetingStaListLiveData;
+ public void setTypeLiveData(MutableLiveData<Boolean> typeLiveData) {
+ this.typeLiveData = typeLiveData;
}
+
+ public List<String> getUploadFileList() {
+ return uploadFileList;
+ }
+
+ public void addUploadFile(String url) {
+ uploadFileList.add(url);
+ }
+
+
}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveActivity.java
index 1bdb555..7134033 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveActivity.java
@@ -32,7 +32,7 @@
/**
* @author Ljj
* @date 2023.03.18. 10:00
- * @desc 瀹跺ぇ浜嬭 Activity
+ * @desc 浼氳瀹℃壒 Activity
*/
public class MeetingapproveActivity extends DLBaseActivity<ActivityMeetingApproveBinding,MeetingapproveActivityViewModel>{
@@ -80,8 +80,6 @@
//鍙充笂瑙掓搷浣滃脊绐�
mOperatePopupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_read,null));
setOnClickListener(
- mOperatePopupWindow.getContentView().findViewById(R.id.tv_add),
- mOperatePopupWindow.getContentView().findViewById(R.id.tv_select),
mOperatePopupWindow.getContentView().findViewById(R.id.tv_from_new_to_old),
mOperatePopupWindow.getContentView().findViewById(R.id.tv_from_old_to_new),
mOperatePopupWindow.getContentView().findViewById(R.id.tv_own_top)
@@ -114,7 +112,7 @@
binding.tvTitle.setText("鎼滅储缁撴灉");
hideSoftKeyboard();
});
- //鐐瑰嚮娣诲姞鎸夐挳璺宠浆鍒板垱寤哄澶т簨璁伴〉闈�
+ //鐐瑰嚮娣诲姞鎸夐挳璺宠浆鍒板垱寤轰細璁鎵归〉闈�
binding.fabAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -325,7 +323,7 @@
adapter.removeItem(bean);
}
});
- //瑙傚療瀹跺ぇ浜嬭鏁版嵁鐨勫彉鍖栵紝鏈夊彉鍖栧寘鎷坊鍔犮�佷慨鏀广�佸垹闄ら兘浼氬彂閫佹秷鎭紝鎺ユ敹鍒版秷鎭悗閲嶆柊鑾峰彇鏁版嵁
+ //瑙傚療浼氳瀹℃壒鏁版嵁鐨勫彉鍖栵紝鏈夊彉鍖栧寘鎷坊鍔犮�佷慨鏀广�佸垹闄ら兘浼氬彂閫佹秷鎭紝鎺ユ敹鍒版秷鎭悗閲嶆柊鑾峰彇鏁版嵁
RxBus.getInstance().toObservable(this, MeetingBean.class)
.subscribe(bean -> {
viewModel.getMeeting();
@@ -358,12 +356,7 @@
@Override
public void onClick(View v) {
int id = v.getId();
- if (id == R.id.tv_add){
- AppManager.getAppManager().startActivity(new Intent(this, MeetingapproveDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
- }else if (id == R.id.tv_select){
- viewModel.getOperateTypeLiveData().postValue(1);
- mOperatePopupWindow.dismiss();
- } else if (id == R.id.tv_from_new_to_old) {
+ if (id == R.id.tv_from_new_to_old) {
viewModel.changeOrder(true);
mOperatePopupWindow.dismiss();
} else if (id == R.id.tv_from_old_to_new) {
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivity.java
index ccb8c08..a955b66 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivity.java
@@ -69,7 +69,7 @@
@Override
public void initParam() {
type = getIntent().getIntExtra(BaseConfig.EXTRA_TYPE,0);
- if (type == 0 || type == 2){
+ if (type == 0 ){
MeetingBean bean = (MeetingBean) getIntent().getSerializableExtra("bean");
if (bean !=null){
viewModel.getBeanLiveData().setValue(bean);
@@ -151,6 +151,7 @@
});
binding.rvImage.setAdapter(adapter);
+ popupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_approve,null));
if (type == 1){
viewModel.getTypeLiveData().setValue(true);
binding.titleBar.setTitle("鏂板瀹跺ぇ浜嬭");
@@ -158,7 +159,7 @@
viewModel.add();
});
}else if (type == 0){
- popupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_approve,null));
+
popupWindow.getContentView().findViewById(R.id.tv_disagree).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -167,8 +168,10 @@
viewModel.getTypeLiveData().postValue(true);
}
});
- viewModel.getTypeLiveData().postValue(true);
+ viewModel.getTypeLiveData().postValue(false);
+ }
+ else if (type == 2){
popupWindow.getContentView().findViewById(R.id.tv_agreed).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -180,8 +183,6 @@
});
viewModel.getTypeLiveData().postValue(false);
- }else if (type == 2){
- viewModel.getTypeLiveData().postValue(true);
}
@@ -366,17 +367,24 @@
});
viewModel.getTypeLiveData().observe(this,operateType -> {
if (operateType){
- if (type == 1) {
+// if (type == 1) {
+// binding.ivOperate.setOnClickListener(v -> {
+// viewModel.add();
+// });
+// }
+ if(type==0) {
binding.ivOperate.setOnClickListener(v -> {
- viewModel.add();
+ viewModel.agree();
});
- }else {
+ }else if(type==2) {
binding.ivOperate.setOnClickListener(v -> {
- viewModel.update();
+ viewModel.disagree();
});
}
- setIsEdited(true);
- }else {
+
+ setIsEdited(false);
+ }
+ else {
binding.ivOperate.setOnClickListener(v -> {
popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0);
});
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivityViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivityViewModel.java
index 8e15b10..b13467d 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivityViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingapproveDetailActivityViewModel.java
@@ -5,6 +5,7 @@
import android.app.Application;
import androidx.annotation.NonNull;
+import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.android.app_base.base.StateViewEnum;
@@ -35,6 +36,7 @@
public class MeetingapproveDetailActivityViewModel extends BaseViewModel<DataRepository> {
private MutableLiveData<MeetingBean> beanLiveData;
+ private int numb = 1;
private MutableLiveData<Boolean> typeLiveData;//true 缂栬緫鐘舵�� false 灞曠ず鐘舵��
private final List<String> uploadFileList = new ArrayList<>();//闇�瑕佷笂浼犵殑鏂囦欢鍒楄〃
public MeetingapproveDetailActivityViewModel(@NonNull Application application) {
@@ -166,7 +168,7 @@
* 瀹℃壒
*/
public void agree() {
- model.approveMeeting(Integer.valueOf((int) beanLiveData.getValue().getId()),1)
+ model.approveMeeting(Integer.valueOf(beanLiveData.getValue().setStatu("1")))
.compose(RxUtils.schedulersTransformer())
.subscribe(new Observer<ResultData<String>>() {
@Override
@@ -200,7 +202,7 @@
public void disagree() {
- model.approveMeeting(Integer.valueOf((int) beanLiveData.getValue().getId()),0)
+ model.approveMeeting(Integer.valueOf(beanLiveData.getValue().setStatu("0")))
.compose(RxUtils.schedulersTransformer())
.subscribe(new Observer<ResultData<String>>() {
@Override
diff --git a/app/src/main/res/layout/activity_meeting_approve_detail.xml b/app/src/main/res/layout/activity_meeting_approve_detail.xml
index d6a4e30..323cf30 100644
--- a/app/src/main/res/layout/activity_meeting_approve_detail.xml
+++ b/app/src/main/res/layout/activity_meeting_approve_detail.xml
@@ -20,7 +20,7 @@
android:id="@+id/titleBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- app:title="@{viewModel.beanLiveData.id==0?`浼氳鐢宠璇︽儏`:viewModel.beanLiveData.title}"
+ app:title="@{viewModel.beanLiveData.id==0?`浼氳瀹℃壒璇︽儏`:viewModel.beanLiveData.title}"
app:titleGravity="left"
>
@@ -38,8 +38,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
- android:background="@{viewModel.typeLiveData?@drawable/ic_operate_finish:@drawable/ic_operate}"
- />
+ android:background="@{viewModel.typeLiveData?@drawable/ic_operate_finish:@drawable/ic_operate}" />
</FrameLayout>
</com.android.app_base.widget.ExtendTitleBar>
diff --git a/app/src/main/res/layout/activity_meeting_detail.xml b/app/src/main/res/layout/activity_meeting_detail.xml
index 35cf55d..458e706 100644
--- a/app/src/main/res/layout/activity_meeting_detail.xml
+++ b/app/src/main/res/layout/activity_meeting_detail.xml
@@ -4,6 +4,7 @@
xmlns:tools="http://schemas.android.com/tools">
<data>
+ <import type="com.android.app_base.utils.StringStatus"/>
<variable
name="viewModel"
type="com.application.zhangshi_app_android.ui.function.MeetingDetailActivityViewModel" />
@@ -309,7 +310,7 @@
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:text="@={viewModel.beanLiveData.statu}"
+ android:text="@={StringStatus.statusToText(viewModel.beanLiveData.statu)}"
android:enabled="@{viewModel.typeLiveData}"
android:clickable="false"
android:focusable="false"
diff --git a/app/src/main/res/layout/activity_meeting_sta_detail.xml b/app/src/main/res/layout/activity_meeting_sta_detail.xml
index a142235..43aad00 100644
--- a/app/src/main/res/layout/activity_meeting_sta_detail.xml
+++ b/app/src/main/res/layout/activity_meeting_sta_detail.xml
@@ -6,7 +6,7 @@
<data>
<variable
name="viewModel"
- type="com.application.zhangshi_app_android.ui.function.MeetingDetailActivityViewModel" />
+ type="com.application.zhangshi_app_android.ui.function.MeetingStaDetailActivityViewModel" />
</data>
<LinearLayout
@@ -67,13 +67,15 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
- android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ユ爣棰榒:``}"
- android:text="@={viewModel.beanLiveData.title}"
+ android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ュ搴彿`:``}"
+ android:text="@={viewModel.beanLiveData.familyId}"
android:enabled="@{viewModel.typeLiveData}"
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
/>
+
+
<TextView
android:layout_width="wrap_content"
android:layout_marginTop="@dimen/dp_10"
@@ -89,8 +91,8 @@
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ュ湴鐐筦:``}"
- android:text="@={viewModel.beanLiveData.place}"
+ android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ヤ娇鐢ㄦ椂闂碻:``}"
+ android:text="@={viewModel.beanLiveData.useTime}"
android:enabled="@{viewModel.typeLiveData}"
/>
<TextView
@@ -109,8 +111,8 @@
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ュ彲瀹圭撼浜烘暟`:``}"
- android:text="@={viewModel.beanLiveData.conPeople}"
+ android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ヤ細璁鍚嶇О`:``}"
+ android:text="@={viewModel.beanLiveData.conferenceRoom}"
android:enabled="@{viewModel.typeLiveData}"
/>
<TextView
@@ -125,11 +127,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
- android:hint="@{viewModel.typeLiveData ? `璇疯緭鍏ュ弬涓庝汉鏁癭 : ``}"
+ android:hint="@{viewModel.typeLiveData ? `璇疯緭鍏ユ爣棰榒 : ``}"
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:text="@={viewModel.beanLiveData.partPeople}"
+ android:text="@={viewModel.beanLiveData.title}"
android:enabled="@{viewModel.typeLiveData}"
/>
<TextView
@@ -163,11 +165,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
- android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ョ敵璇烽儴闂ㄦ垨瀹跺涵`:``}"
+ android:hint="@{viewModel.typeLiveData?`璇疯緭鍏ョ敵璇蜂汉`:``}"
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:text="@={viewModel.beanLiveData.applyApart}"
+ android:text="@={viewModel.beanLiveData.applyPerson}"
android:enabled="@{viewModel.typeLiveData}"
/>
@@ -190,7 +192,7 @@
android:textColorHint="#6b000000"
android:textColor="#DE000000"
android:textSize="16sp"
- android:text="@={viewModel.beanLiveData.statu}"
+ android:text="@={viewModel.beanLiveData.status}"
android:enabled="@{viewModel.typeLiveData}"
android:clickable="false"
android:focusable="false"
diff --git a/app/src/main/res/layout/item_meeting.xml b/app/src/main/res/layout/item_meeting.xml
index 0667520..db81f72 100644
--- a/app/src/main/res/layout/item_meeting.xml
+++ b/app/src/main/res/layout/item_meeting.xml
@@ -4,6 +4,7 @@
xmlns:tools="http://schemas.android.com/tools">
<data>
+ <import type="com.android.app_base.utils.StringStatus"/>
<variable
name="bean"
type="com.application.zhangshi_app_android.bean.MeetingBean" />
@@ -360,7 +361,7 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="@={bean.statu}"
+ android:text="@={StringStatus.statusToText(bean.statu)}"
android:textColor="@color/black"
android:textSize="12sp"
diff --git a/app/src/main/res/layout/item_meeting_sta.xml b/app/src/main/res/layout/item_meeting_sta.xml
index 942554d..304ef61 100644
--- a/app/src/main/res/layout/item_meeting_sta.xml
+++ b/app/src/main/res/layout/item_meeting_sta.xml
@@ -199,12 +199,14 @@
/>
</LinearLayout>
+
+
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="horizontal"
android:layout_marginBottom="6dp"
- >
+ android:orientation="horizontal">
+
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -213,6 +215,7 @@
android:textSize="12sp"
/>
+
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -222,8 +225,6 @@
/>
</LinearLayout>
-
-
<LinearLayout
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/pop_operate_delete.xml b/app/src/main/res/layout/pop_operate_delete.xml
index 5595d0f..0313527 100644
--- a/app/src/main/res/layout/pop_operate_delete.xml
+++ b/app/src/main/res/layout/pop_operate_delete.xml
@@ -25,8 +25,7 @@
android:text="缂栬緫"
android:textColor="#FF333333"
android:textSize="12sp"
- app:drawableStartCompat="@drawable/ic_modify"
- />
+ app:drawableStartCompat="@drawable/ic_modify" />
<View
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/pop_operate_sta.xml b/app/src/main/res/layout/pop_operate_sta.xml
new file mode 100644
index 0000000..c2151c6
--- /dev/null
+++ b/app/src/main/res/layout/pop_operate_sta.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:orientation="vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:cardBackgroundColor="?attr/popupWindowBackgroundColor"
+ app:cardCornerRadius="10dp"
+ app:cardElevation="0dp"
+ >
+ <LinearLayout
+ android:layout_width="85dp"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:gravity="center_horizontal"
+ >
+ <LinearLayout
+ android:id="@+id/layout_add"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:gravity="center_horizontal"
+ >
+ <TextView
+ android:id="@+id/tv_add"
+ android:layout_width="wrap_content"
+ android:layout_height="32dp"
+ android:gravity="center"
+ android:text="鏂板缓"
+ android:textColor="#FF333333"
+ android:textSize="12sp"
+ app:drawableStartCompat="@drawable/ic_operate_add"
+ android:drawablePadding="5dp"
+ />
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="0.3dp"
+ android:background="#FF939393"
+ />
+ </LinearLayout>
+ <LinearLayout
+ android:id="@+id/layout_select"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:gravity="center_horizontal"
+ >
+ <TextView
+ android:id="@+id/tv_select"
+ android:layout_width="wrap_content"
+ android:layout_height="32dp"
+ android:text="閫夋嫨"
+ android:gravity="center"
+ android:textColor="#FF333333"
+ android:textSize="12sp"
+ app:drawableStartCompat="@drawable/ic_operate_select"
+ android:drawablePadding="5dp"
+ />
+ <View
+ android:id="@+id/view_select_underline"
+ android:layout_width="match_parent"
+ android:layout_height="0.3dp"
+ android:background="#FF939393"
+ />
+ </LinearLayout>
+
+
+ <LinearLayout
+ android:id="@+id/layout_own_top"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:gravity="center_horizontal"
+ >
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="0.3dp"
+ android:background="#FF939393"
+ />
+ <TextView
+ android:id="@+id/tv_own_top"
+ android:layout_width="wrap_content"
+ android:layout_height="32dp"
+ android:text="鏈缃《"
+ android:gravity="center"
+ android:textColor="#FF333333"
+ android:textSize="12sp"
+ app:drawableStartCompat="@drawable/ic_operate_order"
+ android:drawablePadding="3dp"
+ />
+ </LinearLayout>
+
+ </LinearLayout>
+
+</androidx.cardview.widget.CardView>
\ No newline at end of file
--
Gitblit v1.9.1