diff --git a/app/build.gradle b/app/build.gradle index 4d135f9..635338c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -59,7 +59,8 @@ android { buildTypes { debug { signingConfig signingConfigs.release - buildConfigField "String", "DOMAIN", '"http://192.168.18.74:8080"' +// buildConfigField "String", "DOMAIN", '"http://192.168.18.74:8080"' + buildConfigField "String", "DOMAIN", '"http://47.109.205.240:8080"' jniDebuggable false zipAlignEnabled false } diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/base/BaseFragment.java b/app/src/main/java/com/tairui/gov_affairs_cloud/base/BaseFragment.java index 5f64a4b..1d537a2 100644 --- a/app/src/main/java/com/tairui/gov_affairs_cloud/base/BaseFragment.java +++ b/app/src/main/java/com/tairui/gov_affairs_cloud/base/BaseFragment.java @@ -59,11 +59,11 @@ public abstract class BaseFragment extends Fragment { /** * 抽象方法,由子类实现以返回具体的 ViewBinding 类 + * * @return 具体的 ViewBinding 类 */ protected abstract Class getBindingClass(); - @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); @@ -105,7 +105,6 @@ public abstract class BaseFragment extends Fragment { } - protected void showToast(String str) { ToastUtil.showLongToast(str); } @@ -151,6 +150,10 @@ public abstract class BaseFragment extends Fragment { } } + protected int getResColor(int resId) { + return mContext.getResources().getColor(resId); + } + protected void setText(TextView view, String txt, String defaultTxt) { if (view != null) { view.setText(TextUtils.isEmpty(txt) ? defaultTxt : txt); diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/AddInspectionActivity.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/AddInspectionActivity.java new file mode 100644 index 0000000..2b1e67c --- /dev/null +++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/AddInspectionActivity.java @@ -0,0 +1,36 @@ +package com.tairui.gov_affairs_cloud.ui.land; + +import com.tairui.gov_affairs_cloud.base.BaseActivity; +import com.tairui.gov_affairs_cloud.databinding.ActivityAddInspectionBinding; +import com.tairui.gov_affairs_cloud.util.SingleClickListener; + +import android.os.Bundle; +import android.view.View; + +public class AddInspectionActivity extends BaseActivity { + + @Override + protected Class getBindingClass() { + return ActivityAddInspectionBinding.class; + } + + @Override + protected void onQueryArguments() { + } + + @Override + protected void onFindView(Bundle savedInstanceState) { + + } + + @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/land/PlantPlanActivity.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/PlantPlanActivity.java index 57b370c..3b93d9d 100644 --- a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/PlantPlanActivity.java +++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/land/PlantPlanActivity.java @@ -181,7 +181,11 @@ public class PlantPlanActivity extends BaseActivity { .isRestoreItem(true)//切换时是否还原,设置默认选中第一项。 .isCenterLabel(false) //是否只显示中间选中项的label文字,false则每项item全部都带有label。 .setOutSideColor(0x00000000) //设置外部遮罩颜色 - .addOnCancelClickListener(view -> finish()) + .addOnCancelClickListener(view -> { + if (selectRegion == null) { + finish(); + } + }) .build(); landRegionPickerView.setPicker(landAreaRegionData.get(0).getAreaChildVOS(), subLandData);//二级选择器 diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/todo/TodoFragment.java b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/todo/TodoFragment.java index 50a8b4a..ce17452 100644 --- a/app/src/main/java/com/tairui/gov_affairs_cloud/ui/todo/TodoFragment.java +++ b/app/src/main/java/com/tairui/gov_affairs_cloud/ui/todo/TodoFragment.java @@ -1,23 +1,298 @@ package com.tairui.gov_affairs_cloud.ui.todo; -import com.tairui.gov_affairs_cloud.base.BaseFragment; -import com.tairui.gov_affairs_cloud.databinding.FragmentTodoBinding; +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.BaseFragment; +import com.tairui.gov_affairs_cloud.config.AppConfig; +import com.tairui.gov_affairs_cloud.databinding.FragmentTodoBinding; +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.land.InspectionDetailActivity; +import com.tairui.gov_affairs_cloud.ui.land.entity.DictDataEntity; +import com.tairui.gov_affairs_cloud.ui.land.entity.InspectionListEntity; +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.ui.my.entity.UserInfoEntity; +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 com.tairui.gov_affairs_cloud.util.ToastUtil; +import com.tairui.gov_affairs_cloud.widget.RefreshRecyclerView; + +import android.graphics.Color; import android.os.Bundle; +import android.text.TextUtils; import android.view.View; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; +import androidx.recyclerview.widget.LinearLayoutManager; +import rxhttp.RxHttp; +import rxhttp.RxHttpNoBodyParam; public class TodoFragment extends BaseFragment { - @Override - protected Class getBindingClass() { - return FragmentTodoBinding.class; - } + private LandAreaRegionEntity selectRegion; + private LandGridEntity.RecordsEntity selectGrid; + private DictDataEntity selectType; - @Override - public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { - super.onViewCreated(view, savedInstanceState); + private List landAreaRegionData; + private LandGridEntity landGridData; + + private OptionsPickerView landRegionPickerView; + private OptionsPickerView landGridPickerView; + + private TodoListAdapter mAdapter; + private int currentPageIndex = 1; + + @Override + protected Class getBindingClass() { + return FragmentTodoBinding.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 onFindView(View rootView) { + binding.refreshRecycler.setLayoutManager(new LinearLayoutManager(mContext)); + mAdapter = new TodoListAdapter(); + binding.refreshRecycler.setAdapter(mAdapter); + if (selectRegion != null && selectGrid != null) { + setText(binding.tvRegion, selectRegion.getAreaName() + "-" + selectGrid.getGridName()); + } + } + + @Override + protected void onBindListener() { + binding.layoutRegion.setOnClickListener(new SingleClickListener() { + @Override + protected void onSingleClick(View v) { + showRegionDialog(); + } + }); + binding.refreshRecycler.setRefreshRecyclerListener(new RefreshRecyclerView.RefreshRecyclerListener() { + @Override + public void onRefresh() { + currentPageIndex = 1; + requestData(false); + } + + @Override + public void onLoadmore() { + requestData(true); + } + + @Override + public void onBlankClick() { + binding.refreshRecycler.showLoading(); + currentPageIndex = 1; + requestData(false); + } + }); + mAdapter.setOnItemClickListener((baseQuickAdapter, view, i) -> { + InspectionListEntity.RecordsEntity item = mAdapter.getItem(i); + Bundle bundle = new Bundle(); + bundle.putSerializable("data", item); + IntentUtil.startActivity(mContext, InspectionDetailActivity.class, bundle); + }); + } + + @Override + protected void onApplyData() { + getRegionData(); + if (selectRegion != null && selectGrid != null) { + binding.refreshRecycler.showLoading(); + currentPageIndex = 1; + requestData(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 showRegionNoticeMsg() { + MessageDialog.show("选择区域", "请先选择网格区域信息", "确定", "取消") + .setOkButton((baseDialog, v1) -> { + showRegionDialog(); + return false; + }); + } + + 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(mContext, (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) + .setOutSideColor(0x00000000) //设置外部遮罩颜色 + .build(); + + landRegionPickerView.setPicker(landAreaRegionData.get(0).getAreaChildVOS(), subLandData);//二级选择器 + } + landRegionPickerView.show(); + } + + private void showGridNoticeMsg() { + MessageDialog.show("选择网格", "不继续选择网格信息了吗?", "确定", "取消") + .setOkButton((baseDialog, v1) -> { + return false; + }); + } + + private void showLandGridDialog() { + if (landGridPickerView == null) { + landGridPickerView = new OptionsPickerBuilder(mContext, (options1, options2, options3, v) -> { + selectGrid = landGridData.getRecords().get(options1); + Hawk.put(Constant.SELECT_GRID, selectGrid); + setText(binding.tvRegion, selectRegion.getAreaName() + "-" + selectGrid.getGridName()); + binding.refreshRecycler.showLoading(); + currentPageIndex = 1; + requestData(false); + }).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(boolean loadmore) { + UserInfoEntity userInfo = AppConfig.getInstance().getUserInfo(); + RxHttpNoBodyParam http; + if (userInfo.isAdmin()) { + http = RxHttp.get(Api.INSPECTION_LIST_ADMIN); + } else { + http = RxHttp.get(Api.INSPECTION_LIST_GENERAL); + } + if (selectType != null && !TextUtils.isEmpty(selectType.getDictValue())) { + http.add("inspectionTypeCode", selectType.getDictValue()); + } + http.add("gridId", selectGrid.getId()) + .add("current", currentPageIndex) + .add("size", Api.SIZE_PAGE) + .asResponse(InspectionListEntity.class) + .as(RxLife.asOnMain(this)) + .subscribe(data -> { + if (loadmore) { + binding.refreshRecycler.finishLoadMore(); + } + if (!ArrayUtil.isEmpty(data.getRecords())) { + if (loadmore) { + mAdapter.addData(data.getRecords()); + } else { + mAdapter.setNewData(data.getRecords()); + } + currentPageIndex += 1; + if (ArrayUtil.size(data.getRecords()) < Api.SIZE_PAGE) { + binding.refreshRecycler.setNoMoreData(true); + } else { + binding.refreshRecycler.setNoMoreData(false); + } + binding.refreshRecycler.showContent(); + } else { + binding.refreshRecycler.showError(); + binding.refreshRecycler.setNoMoreData(true); + } + }, (OnError) error -> { + binding.refreshRecycler.showError(); + binding.refreshRecycler.setNoMoreData(true); + ToastUtil.showLongToast(error.getErrorMsg()); + }); + } + + private class TodoListAdapter extends BaseQuickAdapter { + + public TodoListAdapter() { + super(R.layout.item_inspection); + } + + @Override + protected void convert(@NonNull BaseViewHolder holder, InspectionListEntity.RecordsEntity entity) { + holder.setText(R.id.tvName, entity.getTaskName()); + holder.setText(R.id.tvType, entity.getInspectionType()); + holder.setText(R.id.tvStatus, entity.getInspectionStatusName()); + holder.setText(R.id.tvTaskCode, "任务编号:" + entity.getTaskCode()); + holder.setText(R.id.tvTaskMembers, entity.getTaskMembers()); + holder.setText(R.id.tvTaskTarget, entity.getInspectionTarget()); + if (entity.getInspectionStatus().equals("-1")) { + holder.setBackgroundRes(R.id.tvStatus, R.drawable.bg_container_light_green_raduis_2); + holder.setTextColor(R.id.tvStatus, getResColor(R.color.color_txt_green)); + } else if (entity.getInspectionStatus().equals("00")) { + holder.setBackgroundRes(R.id.tvStatus, R.drawable.bg_container_light_blue_raduis_2); + holder.setTextColor(R.id.tvStatus, getResColor(R.color.color_txt_blue)); + } else if (entity.getInspectionStatus().equals("01")) { + holder.setBackgroundRes(R.id.tvStatus, R.drawable.bg_container_light_orange_raduis_2); + holder.setTextColor(R.id.tvStatus, getResColor(R.color.color_txt_orange)); + } else if (entity.getInspectionStatus().equals("02")) { + holder.setBackgroundRes(R.id.tvStatus, R.drawable.bg_container_light_gray_raduis_2); + holder.setTextColor(R.id.tvStatus, getResColor(R.color.color_tv_content)); + } + + } + } - } } \ No newline at end of file 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 f049c63..dbe5a14 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 @@ -150,11 +150,11 @@ public class WorkSpaceFragment extends BaseFragment { itemFunc.setIcon(R.mipmap.ic_workspace_func_9); funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(10); - itemFunc.setName("生产抽检"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_10); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(10); + // itemFunc.setName("生产抽检"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_10); + // funcs.add(itemFunc); itemFunc = new WorkSpaceEntity.FuncsEntity(); itemFunc.setId(11); @@ -162,17 +162,17 @@ public class WorkSpaceFragment extends BaseFragment { itemFunc.setIcon(R.mipmap.ic_workspace_func_11); funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(12); - itemFunc.setName("农机租赁"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_12); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(12); + // itemFunc.setName("农机租赁"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_12); + // funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(13); - itemFunc.setName("排行榜"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_13); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(13); + // itemFunc.setName("排行榜"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_13); + // funcs.add(itemFunc); itemFunc = new WorkSpaceEntity.FuncsEntity(); itemFunc.setId(14); @@ -193,23 +193,23 @@ public class WorkSpaceFragment extends BaseFragment { itemFunc.setIcon(R.mipmap.ic_workspace_func_15); funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(16); - itemFunc.setName("农资企业"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_16); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(16); + // itemFunc.setName("农资企业"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_16); + // funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(17); - itemFunc.setName("生产加工"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_17); - funcs.add(itemFunc); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(18); - itemFunc.setName("种源企业"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_18); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(17); + // itemFunc.setName("生产加工"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_17); + // funcs.add(itemFunc); + // + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(18); + // itemFunc.setName("种源企业"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_18); + // funcs.add(itemFunc); itemFunc = new WorkSpaceEntity.FuncsEntity(); itemFunc.setId(19); @@ -217,11 +217,11 @@ public class WorkSpaceFragment extends BaseFragment { itemFunc.setIcon(R.mipmap.ic_workspace_func_19); funcs.add(itemFunc); - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(20); - itemFunc.setName("金融监管"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_20); - funcs.add(itemFunc); + // itemFunc = new WorkSpaceEntity.FuncsEntity(); + // itemFunc.setId(20); + // itemFunc.setName("金融监管"); + // itemFunc.setIcon(R.mipmap.ic_workspace_func_20); + // funcs.add(itemFunc); item.setFuncs(funcs); workSpaceEntities.add(item); @@ -251,42 +251,42 @@ public class WorkSpaceFragment extends BaseFragment { item.setFuncs(funcs); workSpaceEntities.add(item); - item = new WorkSpaceEntity(); - item.setName("农业产品检测"); - funcs = new ArrayList<>(); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(24); - itemFunc.setName("田间监测"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_24); - funcs.add(itemFunc); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(25); - itemFunc.setName("水质监测"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_25); - funcs.add(itemFunc); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(26); - itemFunc.setName("病虫害检测"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_26); - funcs.add(itemFunc); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(27); - itemFunc.setName("环境监测"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_27); - funcs.add(itemFunc); - - itemFunc = new WorkSpaceEntity.FuncsEntity(); - itemFunc.setId(28); - itemFunc.setName("产量预测"); - itemFunc.setIcon(R.mipmap.ic_workspace_func_28); - funcs.add(itemFunc); - - item.setFuncs(funcs); - workSpaceEntities.add(item); +// item = new WorkSpaceEntity(); +// item.setName("农业产品监测"); +// funcs = new ArrayList<>(); +// +// itemFunc = new WorkSpaceEntity.FuncsEntity(); +// itemFunc.setId(24); +// itemFunc.setName("田间监测"); +// itemFunc.setIcon(R.mipmap.ic_workspace_func_24); +// funcs.add(itemFunc); +// +// itemFunc = new WorkSpaceEntity.FuncsEntity(); +// itemFunc.setId(25); +// itemFunc.setName("水质监测"); +// itemFunc.setIcon(R.mipmap.ic_workspace_func_25); +// funcs.add(itemFunc); +// +// itemFunc = new WorkSpaceEntity.FuncsEntity(); +// itemFunc.setId(26); +// itemFunc.setName("病虫害监测"); +// itemFunc.setIcon(R.mipmap.ic_workspace_func_26); +// funcs.add(itemFunc); +// +// itemFunc = new WorkSpaceEntity.FuncsEntity(); +// itemFunc.setId(27); +// itemFunc.setName("环境监测"); +// itemFunc.setIcon(R.mipmap.ic_workspace_func_27); +// funcs.add(itemFunc); +// +// itemFunc = new WorkSpaceEntity.FuncsEntity(); +// itemFunc.setId(28); +// itemFunc.setName("产量预测"); +// itemFunc.setIcon(R.mipmap.ic_workspace_func_28); +// funcs.add(itemFunc); +// +// item.setFuncs(funcs); +// workSpaceEntities.add(item); return workSpaceEntities; } diff --git a/app/src/main/java/com/tairui/gov_affairs_cloud/util/AppUtil.java b/app/src/main/java/com/tairui/gov_affairs_cloud/util/AppUtil.java index add6297..48b06ac 100644 --- a/app/src/main/java/com/tairui/gov_affairs_cloud/util/AppUtil.java +++ b/app/src/main/java/com/tairui/gov_affairs_cloud/util/AppUtil.java @@ -8,6 +8,7 @@ import com.tairui.gov_affairs_cloud.widget.loading.LoadingDialog; import android.content.Context; import android.os.Bundle; +import android.text.TextUtils; public class AppUtil { @@ -28,10 +29,14 @@ public class AppUtil { } public static String getImageUrl(String url) { - return Api.OSS_HOST.concat(url); + if (TextUtils.isEmpty(url)) { + return null; + } else { + return Api.OSS_HOST.concat(url); + } } - public static void startPhotoView(Context context, ArrayList imgs){ + public static void startPhotoView(Context context, ArrayList imgs) { Bundle bundle = new Bundle(); bundle.putInt("index", 0); bundle.putStringArrayList("imgs", imgs); diff --git a/app/src/main/res/drawable/bg_gradient_ai.xml b/app/src/main/res/drawable/bg_gradient_ai.xml new file mode 100644 index 0000000..9c2ee00 --- /dev/null +++ b/app/src/main/res/drawable/bg_gradient_ai.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_add_inspection.xml b/app/src/main/res/layout/activity_add_inspection.xml new file mode 100644 index 0000000..59038d0 --- /dev/null +++ b/app/src/main/res/layout/activity_add_inspection.xml @@ -0,0 +1,254 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_add_land.xml b/app/src/main/res/layout/activity_add_land.xml index 90b0658..a3a6caa 100644 --- a/app/src/main/res/layout/activity_add_land.xml +++ b/app/src/main/res/layout/activity_add_land.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_add_land_product.xml b/app/src/main/res/layout/activity_add_land_product.xml index b9be99d..af82ab6 100644 --- a/app/src/main/res/layout/activity_add_land_product.xml +++ b/app/src/main/res/layout/activity_add_land_product.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_add_plant_plan.xml b/app/src/main/res/layout/activity_add_plant_plan.xml index edbc018..d971281 100644 --- a/app/src/main/res/layout/activity_add_plant_plan.xml +++ b/app/src/main/res/layout/activity_add_plant_plan.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_edit_land_base_info.xml b/app/src/main/res/layout/activity_edit_land_base_info.xml index 2ae0174..bad03be 100644 --- a/app/src/main/res/layout/activity_edit_land_base_info.xml +++ b/app/src/main/res/layout/activity_edit_land_base_info.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_edit_land_product.xml b/app/src/main/res/layout/activity_edit_land_product.xml index 2411a73..fa9460e 100644 --- a/app/src/main/res/layout/activity_edit_land_product.xml +++ b/app/src/main/res/layout/activity_edit_land_product.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_edit_plant_actual.xml b/app/src/main/res/layout/activity_edit_plant_actual.xml index 7ad5feb..c72f9a9 100644 --- a/app/src/main/res/layout/activity_edit_plant_actual.xml +++ b/app/src/main/res/layout/activity_edit_plant_actual.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_edit_plant_plan.xml b/app/src/main/res/layout/activity_edit_plant_plan.xml index d140ccc..684f90d 100644 --- a/app/src/main/res/layout/activity_edit_plant_plan.xml +++ b/app/src/main/res/layout/activity_edit_plant_plan.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/activity_select_land_area.xml b/app/src/main/res/layout/activity_select_land_area.xml index 61ad551..f7bd002 100644 --- a/app/src/main/res/layout/activity_select_land_area.xml +++ b/app/src/main/res/layout/activity_select_land_area.xml @@ -41,7 +41,7 @@ android:layout_height="30dp" android:layout_marginRight="8dp" android:padding="5dp" - android:src="@mipmap/ic_gou" + android:src="@mipmap/ic_submit" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/fragment_ai.xml b/app/src/main/res/layout/fragment_ai.xml index 165f044..86b2158 100644 --- a/app/src/main/res/layout/fragment_ai.xml +++ b/app/src/main/res/layout/fragment_ai.xml @@ -1,15 +1,195 @@ - + android:background="@drawable/bg_gradient_ai"> - + android:layout_height="?attr/actionBarSize" + app:layout_constraintTop_toTopOf="parent"> - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_todo.xml b/app/src/main/res/layout/fragment_todo.xml index 3d42936..4589135 100644 --- a/app/src/main/res/layout/fragment_todo.xml +++ b/app/src/main/res/layout/fragment_todo.xml @@ -1,14 +1,75 @@ - + + + + + + + + + + + + + + + + + + + + + - + android:paddingLeft="16dp" + android:paddingRight="16dp" /> \ No newline at end of file diff --git a/app/src/main/res/layout/item_todo.xml b/app/src/main/res/layout/item_todo.xml new file mode 100644 index 0000000..f143913 --- /dev/null +++ b/app/src/main/res/layout/item_todo.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/mipmap-xxhdpi/ic_add.png b/app/src/main/res/mipmap-xxhdpi/ic_add.png new file mode 100644 index 0000000..b22380f Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_add.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_add_round.png b/app/src/main/res/mipmap-xxhdpi/ic_add_round.png new file mode 100644 index 0000000..88f0e77 Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_add_round.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_ai.png b/app/src/main/res/mipmap-xxhdpi/ic_ai.png new file mode 100644 index 0000000..375d3dc Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_ai.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_message_add.png b/app/src/main/res/mipmap-xxhdpi/ic_message_add.png new file mode 100644 index 0000000..e4dc80e Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_message_add.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_gou.png b/app/src/main/res/mipmap-xxhdpi/ic_submit.png similarity index 100% rename from app/src/main/res/mipmap-xxhdpi/ic_gou.png rename to app/src/main/res/mipmap-xxhdpi/ic_submit.png diff --git a/app/src/main/res/mipmap-xxhdpi/ic_voice.png b/app/src/main/res/mipmap-xxhdpi/ic_voice.png new file mode 100644 index 0000000..5b21f8e Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_voice.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ici_ai_nybkzj.png b/app/src/main/res/mipmap-xxhdpi/ici_ai_nybkzj.png new file mode 100644 index 0000000..54e9db9 Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ici_ai_nybkzj.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ici_ai_zntzs.png b/app/src/main/res/mipmap-xxhdpi/ici_ai_zntzs.png new file mode 100644 index 0000000..c337a75 Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ici_ai_zntzs.png differ