diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c455f09..f4655e1 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -213,6 +213,21 @@
android:configChanges="orientation|screenSize|keyboardHidden"
android:exported="false"
android:screenOrientation="portrait" />
+
+
+
{
+
+ @Override
+ protected Class getBindingClass() {
+ return ActivityInputGoodsDetailBinding.class;
+ }
+
+ @Override
+ protected void onBindListener() {
+ binding.btnBack.setOnClickListener(new SingleClickListener() {
+ @Override
+ protected void onSingleClick(View v) {
+ finish();
+ }
+ });
+ }
+}
diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlActivity.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlActivity.java
new file mode 100644
index 0000000..52a4192
--- /dev/null
+++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlActivity.java
@@ -0,0 +1,261 @@
+package com.tairui.gov_affairs_cloud.ui.input;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
+import com.bigkoo.pickerview.view.OptionsPickerView;
+import com.chad.library.adapter.base.BaseQuickAdapter;
+import com.chad.library.adapter.base.BaseViewHolder;
+import com.kongzue.dialogx.dialogs.MessageDialog;
+import com.orhanobut.hawk.Hawk;
+import com.rxjava.rxlife.RxLife;
+import com.tairui.gov_affairs_cloud.R;
+import com.tairui.gov_affairs_cloud.base.BaseActivity;
+import com.tairui.gov_affairs_cloud.databinding.ActivityUtilizationControlListBinding;
+import com.tairui.gov_affairs_cloud.entity.Api;
+import com.tairui.gov_affairs_cloud.entity.Constant;
+import com.tairui.gov_affairs_cloud.http.OnError;
+import com.tairui.gov_affairs_cloud.ui.input.entity.UtilizationControlEntity;
+import com.tairui.gov_affairs_cloud.ui.land.entity.LandAreaRegionEntity;
+import com.tairui.gov_affairs_cloud.ui.land.entity.LandGridEntity;
+import com.tairui.gov_affairs_cloud.util.ArrayUtil;
+import com.tairui.gov_affairs_cloud.util.IntentUtil;
+import com.tairui.gov_affairs_cloud.util.SingleClickListener;
+
+import android.graphics.Color;
+import android.os.Bundle;
+import android.view.View;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import rxhttp.RxHttp;
+
+public class UtilizationControlActivity extends BaseActivity {
+
+ private LandAreaRegionEntity selectRegion;
+ private LandGridEntity.RecordsEntity selectGrid;
+
+ private List landAreaRegionData;
+ private LandGridEntity landGridData;
+
+ private OptionsPickerView landRegionPickerView;
+ private OptionsPickerView landGridPickerView;
+
+ private List mData;
+ private UtilizationControlAdapter adapter;
+
+ @Override
+ protected Class getBindingClass() {
+ return ActivityUtilizationControlListBinding.class;
+ }
+
+ @Override
+ protected void onQueryArguments() {
+ if (Hawk.contains(Constant.SELECT_REGION)) {
+ selectRegion = Hawk.get(Constant.SELECT_REGION);
+ }
+ if (Hawk.contains(Constant.SELECT_GRID)) {
+ selectGrid = Hawk.get(Constant.SELECT_GRID);
+ }
+ }
+
+ @Override
+ protected void onBindListener() {
+ binding.btnBack.setOnClickListener(new SingleClickListener() {
+ @Override
+ protected void onSingleClick(View v) {
+ finish();
+ }
+ });
+ binding.layoutRegion.setOnClickListener(new SingleClickListener() {
+ @Override
+ protected void onSingleClick(View v) {
+ showRegionDialog();
+ }
+ });
+ }
+
+ @Override
+ protected void onFindView(Bundle savedInstanceState) {
+ setText(binding.tvRegion, selectRegion.getAreaName() + "-" + selectGrid.getGridName());
+ binding.refreshRecycler.setLayoutManager(new LinearLayoutManager(mContext));
+ adapter = new UtilizationControlAdapter();
+ binding.refreshRecycler.setAdapter(adapter);
+ binding.refreshRecycler.setEnableRefresh(false);
+ binding.refreshRecycler.setNoMoreData(true);
+ adapter.setOnItemClickListener((baseQuickAdapter, view, i) -> {
+ IntentUtil.startActivity(mContext, UtilizationControlDetailActivity.class);
+ });
+ }
+
+ @Override
+ protected void onApplyData() {
+ getRegionData();
+ requestData();
+ }
+
+ private void showRegionNoticeMsg() {
+ MessageDialog.show("选择区域", "请先选择网格区域信息", "确定", "取消")
+ .setOkButton((baseDialog, v1) -> {
+ showRegionDialog();
+ return false;
+ }).setCancelButton((dialog, v) -> {
+ finish();
+ return false;
+ });
+ }
+
+ private void getRegionData() {
+ RxHttp.get(Api.LAND_AREA_REGION)
+ .add("areaCode", "530926")
+ .asResponseList(LandAreaRegionEntity.class)
+ .as(RxLife.asOnMain(this))
+ .subscribe(data -> {
+ landAreaRegionData = data;
+ if (selectRegion == null || selectGrid == null) {
+ showRegionNoticeMsg();
+ }
+ }, (OnError) error -> showToast(error.getErrorMsg()));
+ }
+
+ private void getGridData() {
+ RxHttp.get(Api.LAND_GRID_LIST)
+ .add("regionCode", selectRegion.getAreaCode())
+ .asResponse(LandGridEntity.class)
+ .as(RxLife.asOnMain(this))
+ .subscribe(data -> {
+ hideLoading();
+ if (ArrayUtil.isEmpty(data.getRecords())) {
+ showToast("当前区域下没有网格,请重新选择");
+ binding.layoutRegion.postDelayed(() -> showRegionDialog(), 500);
+ } else {
+ landGridData = data;
+ showLandGridDialog();
+ }
+ }, (OnError) error -> showToast(error.getErrorMsg()));
+ }
+
+ private void showRegionDialog() {
+ if (landRegionPickerView == null) {
+ List> subLandData = new ArrayList<>();
+ for (LandAreaRegionEntity itemData : landAreaRegionData.get(0).getAreaChildVOS()) {
+ subLandData.add(itemData.getAreaChildVOS());
+ }
+
+ landRegionPickerView = new OptionsPickerBuilder(this, (options1, options2, options3, v) -> {
+ selectRegion = landAreaRegionData.get(0).getAreaChildVOS().get(options1).getAreaChildVOS().get(options2);
+ Hawk.put(Constant.SELECT_REGION, selectRegion);
+ selectGrid = null;
+ Hawk.delete(Constant.SELECT_GRID);
+ getGridData();
+ }).setTitleText("土地区域选择").setContentTextSize(20)
+ .setSelectOptions(0, 0)
+ .setTitleBgColor(Color.WHITE)
+ .isRestoreItem(true)//切换时是否还原,设置默认选中第一项。
+ .isCenterLabel(false) //是否只显示中间选中项的label文字,false则每项item全部都带有label。
+ .setOutSideColor(0x00000000) //设置外部遮罩颜色
+ .addOnCancelClickListener(view -> {
+ if (selectRegion == null) {
+ finish();
+ }
+ })
+ .build();
+
+ landRegionPickerView.setPicker(landAreaRegionData.get(0).getAreaChildVOS(), subLandData);//二级选择器
+ }
+ landRegionPickerView.show();
+ }
+
+ private void showGridNoticeMsg() {
+ MessageDialog.show("选择网格", "不继续选择网格信息了吗?", "确定", "取消")
+ .setOkButton((baseDialog, v1) -> {
+ finish();
+ return false;
+ });
+ }
+
+ private void showLandGridDialog() {
+ if (landGridPickerView == null) {
+ landGridPickerView = new OptionsPickerBuilder(this, (options1, options2, options3, v) -> {
+ selectGrid = landGridData.getRecords().get(options1);
+ Hawk.put(Constant.SELECT_GRID, selectGrid);
+ }).setTitleText("土地网格选择").setContentTextSize(20)
+ .setSelectOptions(0)
+ .setTitleBgColor(Color.WHITE)
+ .isRestoreItem(true)
+ .isCenterLabel(false)
+ .setOutSideColor(0x00000000)
+ .addOnCancelClickListener(view -> {
+ if (selectGrid == null) {
+ showGridNoticeMsg();
+ }
+ })
+ .build();
+
+ landGridPickerView.setPicker(landGridData.getRecords());
+ }
+ landGridPickerView.show();
+ }
+
+ private void requestData() {
+ mData = new ArrayList<>();
+ UtilizationControlEntity item1 = new UtilizationControlEntity();
+ item1.setImg(R.mipmap.pic_utilization_control_1);
+ item1.setName("生物有机肥");
+ item1.setCategory("化肥");
+ item1.setUserName("赵宇");
+ item1.setUserPhone("13610402035");
+ item1.setAddress("耿马镇新城村388号");
+ item1.setDate("2025-05-13");
+ mData.add(item1);
+
+ UtilizationControlEntity item2 = new UtilizationControlEntity();
+ item2.setImg(R.mipmap.pic_utilization_control_2);
+ item2.setName("精草安磷");
+ item2.setCategory("农药");
+ item2.setUserName("李腾峰");
+ item2.setUserPhone("18454646524");
+ item2.setAddress("贺派乡永平村68号");
+ item2.setDate("2025-05-13");
+ mData.add(item2);
+
+ UtilizationControlEntity item3 = new UtilizationControlEntity();
+ item3.setImg(R.mipmap.pic_utilization_control_3);
+ item3.setName("苯醚甲环唑");
+ item3.setCategory("农药");
+ item3.setUserName("胡一");
+ item3.setUserPhone("19548422562");
+ item3.setAddress("孟定镇河西村154号");
+ item3.setDate("2025-05-13");
+ mData.add(item3);
+
+ UtilizationControlEntity item4 = new UtilizationControlEntity();
+ item4.setImg(R.mipmap.pic_utilization_control_4);
+ item4.setName("通用型菌立清");
+ item4.setCategory("农药");
+ item4.setUserName("胡一");
+ item4.setUserPhone("19548422562");
+ item4.setAddress("孟定镇河西村154号");
+ item4.setDate("2025-05-13");
+ mData.add(item4);
+
+ adapter.setNewData(mData);
+ binding.refreshRecycler.showContent();
+ }
+
+ private class UtilizationControlAdapter extends BaseQuickAdapter {
+
+ public UtilizationControlAdapter() {
+ super(R.layout.item_list_utilization_control);
+ }
+
+ @Override
+ protected void convert(@NonNull BaseViewHolder holder, UtilizationControlEntity entity) {
+ holder.setImageResource(R.id.img, entity.getImg());
+ holder.setText(R.id.title, entity.getName());
+ holder.setText(R.id.user, entity.getUserName() + " " + entity.getUserPhone());
+ holder.setText(R.id.address, entity.getAddress());
+ holder.setText(R.id.date, entity.getDate());
+ }
+ }
+}
diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlDetailActivity.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlDetailActivity.java
new file mode 100644
index 0000000..2dbb882
--- /dev/null
+++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/UtilizationControlDetailActivity.java
@@ -0,0 +1,25 @@
+package com.tairui.gov_affairs_cloud.ui.input;
+
+import com.tairui.gov_affairs_cloud.base.BaseActivity;
+import com.tairui.gov_affairs_cloud.databinding.ActivityUtilizationControlDetailBinding;
+import com.tairui.gov_affairs_cloud.util.SingleClickListener;
+
+import android.view.View;
+
+public class UtilizationControlDetailActivity extends BaseActivity {
+
+ @Override
+ protected Class getBindingClass() {
+ return ActivityUtilizationControlDetailBinding.class;
+ }
+
+ @Override
+ protected void onBindListener() {
+ binding.btnBack.setOnClickListener(new SingleClickListener() {
+ @Override
+ protected void onSingleClick(View v) {
+ finish();
+ }
+ });
+ }
+}
diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/entity/UtilizationControlEntity.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/entity/UtilizationControlEntity.java
new file mode 100644
index 0000000..fa00736
--- /dev/null
+++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/entity/UtilizationControlEntity.java
@@ -0,0 +1,67 @@
+package com.tairui.gov_affairs_cloud.ui.input.entity;
+
+public class UtilizationControlEntity {
+ private int img;
+ private String name;
+ private String category;
+ private String userName;
+ private String userPhone;
+ private String address;
+ private String date;
+
+ public int getImg() {
+ return img;
+ }
+
+ public void setImg(int img) {
+ this.img = img;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public String getUserPhone() {
+ return userPhone;
+ }
+
+ public void setUserPhone(String userPhone) {
+ this.userPhone = userPhone;
+ }
+
+ public String getAddress() {
+ return address;
+ }
+
+ public void setAddress(String address) {
+ this.address = address;
+ }
+
+ public String getDate() {
+ return date;
+ }
+
+ public void setDate(String date) {
+ this.date = date;
+ }
+}
diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/fragment/InputGoodsFragment.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/fragment/InputGoodsFragment.java
index 19cbff3..36b8429 100644
--- a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/fragment/InputGoodsFragment.java
+++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/input/fragment/InputGoodsFragment.java
@@ -14,9 +14,11 @@ import com.tairui.gov_affairs_cloud.entity.Api;
import com.tairui.gov_affairs_cloud.entity.EventConstant;
import com.tairui.gov_affairs_cloud.entity.EventMessage;
import com.tairui.gov_affairs_cloud.http.OnError;
+import com.tairui.gov_affairs_cloud.ui.input.InputGoodsDetailActivity;
import com.tairui.gov_affairs_cloud.ui.input.entity.InputGoodsListEntity;
import com.tairui.gov_affairs_cloud.util.AppUtil;
import com.tairui.gov_affairs_cloud.util.ArrayUtil;
+import com.tairui.gov_affairs_cloud.util.IntentUtil;
import com.tairui.gov_affairs_cloud.util.ToastUtil;
import com.tairui.gov_affairs_cloud.util.glide.GlideLoader;
import com.tairui.gov_affairs_cloud.widget.RefreshRecyclerView;
@@ -108,9 +110,7 @@ public class InputGoodsFragment extends BaseFragment {
- // Bundle bundle = new Bundle();
- // bundle.putSerializable("data", (Serializable) adapter.getItem(i));
- // IntentUtil.startActivity(mContext, LandInfoDetailActivity.class, bundle);
+ IntentUtil.startActivity(mContext, InputGoodsDetailActivity.class);
});
}
diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/workspace/WorkSpaceFragment.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/workspace/WorkSpaceFragment.java
index 4d201b2..5c26467 100644
--- a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/workspace/WorkSpaceFragment.java
+++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/workspace/WorkSpaceFragment.java
@@ -9,6 +9,7 @@ import com.tairui.gov_affairs_cloud.R;
import com.tairui.gov_affairs_cloud.base.BaseFragment;
import com.tairui.gov_affairs_cloud.databinding.FragmentWorkspaceBinding;
import com.tairui.gov_affairs_cloud.ui.input.InputGoodsListActivity;
+import com.tairui.gov_affairs_cloud.ui.input.UtilizationControlActivity;
import com.tairui.gov_affairs_cloud.ui.land.GridInfoActivity;
import com.tairui.gov_affairs_cloud.ui.land.IllegalListActivity;
import com.tairui.gov_affairs_cloud.ui.land.InspectionListActivity;
@@ -78,6 +79,8 @@ public class WorkSpaceFragment extends BaseFragment {
IntentUtil.startActivity(mContext, IllegalListActivity.class);
} else if (_id == 9) {
IntentUtil.startActivity(mContext, InputGoodsListActivity.class);
+ } else if (_id == 11) {
+ IntentUtil.startActivity(mContext, UtilizationControlActivity.class);
}
});
}
@@ -141,7 +144,7 @@ public class WorkSpaceFragment extends BaseFragment {
workSpaceEntities.add(item);
item = new WorkSpaceEntity();
- item.setName("投入品管理");
+ item.setName("农产品种植管理");
funcs = new ArrayList<>();
itemFunc = new WorkSpaceEntity.FuncsEntity();
@@ -174,11 +177,11 @@ public class WorkSpaceFragment extends BaseFragment {
// itemFunc.setIcon(R.mipmap.ic_workspace_func_13);
// funcs.add(itemFunc);
- itemFunc = new WorkSpaceEntity.FuncsEntity();
- itemFunc.setId(14);
- itemFunc.setName("知识库");
- itemFunc.setIcon(R.mipmap.ic_workspace_func_14);
- funcs.add(itemFunc);
+// itemFunc = new WorkSpaceEntity.FuncsEntity();
+// itemFunc.setId(14);
+// itemFunc.setName("知识库");
+// itemFunc.setIcon(R.mipmap.ic_workspace_func_14);
+// funcs.add(itemFunc);
itemFunc = new WorkSpaceEntity.FuncsEntity();
itemFunc.setId(3);
diff --git a/app/src/main/res/layout/activity_input_goods_detail.xml b/app/src/main/res/layout/activity_input_goods_detail.xml
new file mode 100644
index 0000000..6ef1b38
--- /dev/null
+++ b/app/src/main/res/layout/activity_input_goods_detail.xml
@@ -0,0 +1,418 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_plant_plan.xml b/app/src/main/res/layout/activity_plant_plan.xml
index 308a7e0..0a8c94d 100644
--- a/app/src/main/res/layout/activity_plant_plan.xml
+++ b/app/src/main/res/layout/activity_plant_plan.xml
@@ -26,7 +26,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_utilization_control_list.xml b/app/src/main/res/layout/activity_utilization_control_list.xml
new file mode 100644
index 0000000..a3091f6
--- /dev/null
+++ b/app/src/main/res/layout/activity_utilization_control_list.xml
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_list_utilization_control.xml b/app/src/main/res/layout/item_list_utilization_control.xml
new file mode 100644
index 0000000..9afec00
--- /dev/null
+++ b/app/src/main/res/layout/item_list_utilization_control.xml
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_input_1.png b/app/src/main/res/mipmap-xxhdpi/pic_input_1.png
new file mode 100644
index 0000000..27211fb
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_input_1.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_input_2.png b/app/src/main/res/mipmap-xxhdpi/pic_input_2.png
new file mode 100644
index 0000000..bb346c6
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_input_2.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_1.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_1.png
new file mode 100644
index 0000000..90bc2cd
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_1.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_2.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_2.png
new file mode 100644
index 0000000..f41b7ef
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_2.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_3.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_3.png
new file mode 100644
index 0000000..82c7d37
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_3.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_4.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_4.png
new file mode 100644
index 0000000..d871c67
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_4.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_5.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_5.png
new file mode 100644
index 0000000..ee713e8
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_5.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_6.png b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_6.png
new file mode 100644
index 0000000..e33d81c
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/pic_utilization_control_6.png differ