瀏覽代碼

人口标签接口;选择框样式修改

lichao 1 月之前
父節點
當前提交
b329963562
共有 41 個文件被更改,包括 1619 次插入376 次删除
  1. 3 3
      app/build.gradle
  2. 4 2
      app/src/main/AndroidManifest.xml
  3. 208 0
      app/src/main/java/com/zkjc/policedemo/app/service/UpdateLocationService.java
  4. 41 0
      app/src/main/java/com/zkjc/policedemo/di/component/KqHistoryComponent.java
  5. 30 0
      app/src/main/java/com/zkjc/policedemo/di/module/KqHistoryModule.java
  6. 2 0
      app/src/main/java/com/zkjc/policedemo/mvp/contract/AddTjBRkbqContract.java
  7. 29 0
      app/src/main/java/com/zkjc/policedemo/mvp/contract/KqHistoryContract.java
  8. 5 0
      app/src/main/java/com/zkjc/policedemo/mvp/contract/RkbqContract.java
  9. 46 0
      app/src/main/java/com/zkjc/policedemo/mvp/model/KqHistoryModel.java
  10. 35 50
      app/src/main/java/com/zkjc/policedemo/mvp/model/entity/RkbqEntity.java
  11. 41 0
      app/src/main/java/com/zkjc/policedemo/mvp/presenter/AddTjBRkbqPresenter.java
  12. 53 0
      app/src/main/java/com/zkjc/policedemo/mvp/presenter/KqHistoryPresenter.java
  13. 41 0
      app/src/main/java/com/zkjc/policedemo/mvp/presenter/RkbqPresenter.java
  14. 19 22
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddChryActivity.java
  15. 0 1
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddMyQahyActivity.java
  16. 24 31
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddMzjmhActivity.java
  17. 23 23
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddSqmyActivity.java
  18. 26 4
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddTjBRkbqActivity.java
  19. 83 0
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/KqHistoryActivity.java
  20. 3 5
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/RhzfDetailActivity.java
  21. 48 23
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/RkbqActivity.java
  22. 4 2
      app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/StHomeActivity.java
  23. 4 4
      app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/EjbqAdapter.java
  24. 21 0
      app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/FwtdWheelAdapter.java
  25. 4 4
      app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/SjbqAdapter.java
  26. 1 1
      app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/YjbqAdapter.java
  27. 2 2
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/QsMyFragment.java
  28. 105 0
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectFwtdDialog.java
  29. 100 0
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectSssqDialog.java
  30. 100 0
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectStringDialog.java
  31. 84 57
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SydwLeftFragment.java
  32. 57 47
      app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SydwRightFragment.java
  33. 23 7
      app/src/main/res/layout/activity_add_chry.xml
  34. 18 7
      app/src/main/res/layout/activity_add_mzjmh.xml
  35. 18 7
      app/src/main/res/layout/activity_add_sqmy.xml
  36. 8 0
      app/src/main/res/layout/activity_kq_history.xml
  37. 118 1
      app/src/main/res/layout/fragment_my.xml
  38. 90 42
      app/src/main/res/layout/fragment_sydw_left.xml
  39. 36 30
      app/src/main/res/layout/fragment_sydw_right.xml
  40. 1 1
      app/src/main/res/layout/pop_cyry_zy.xml
  41. 61 0
      app/src/main/res/layout/pop_wheel.xml

+ 3 - 3
app/build.gradle

@@ -72,13 +72,13 @@ android {
     }
     productFlavors {
         //应用商店版本
-        appstore {
-            resValue "string", "app_name", "警地融合"
+        sqjw {
+            resValue "string", "app_name", "社区警务"
             signingConfig signingConfigs.release
             manifestPlaceholders = [UMENG_CHANNEL: "appstore", CATEGORY: "android.intent.category.DEFAULT", APP_ICON: "@mipmap/ic_launcher"]
         }
         //非应用商店版本
-        unappstore {
+        jdrh {
 
             resValue "string", "app_name", "警地融合"
             signingConfig signingConfigs.release

+ 4 - 2
app/src/main/AndroidManifest.xml

@@ -95,8 +95,9 @@
         android:networkSecurityConfig="@xml/network_security_config"
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
+        <activity android:name=".mvp.ui.activity.KqHistoryActivity" />
         <activity android:name=".mvp.ui.activity.AddTjBRkbqActivity" />
-        <activity android:name=".mvp.ui.activity.RkbqActivity"></activity>
+        <activity android:name=".mvp.ui.activity.RkbqActivity" />
         <activity android:name=".mvp.ui.activity.NbdwJcActivity" />
         <activity android:name=".mvp.ui.activity.AddNbdwActivity" />
         <activity android:name=".mvp.ui.activity.NbdwActivity" />
@@ -112,7 +113,7 @@
         <activity android:name=".mvp.ui.activity.XzZatbActivity" />
         <activity android:name=".mvp.ui.activity.ZatblbActivity" />
         <activity android:name=".mvp.ui.activity.RhzfJlActivity" />
-        <activity android:name=".mvp.ui.activity.SqmyActivity"></activity>
+        <activity android:name=".mvp.ui.activity.SqmyActivity" />
         <activity android:name=".mvp.ui.activity.SelectSydwFwActivity" />
         <activity android:name=".mvp.ui.activity.AqffxcActivity" />
         <activity android:name=".mvp.ui.activity.SqmyActivity" />
@@ -416,6 +417,7 @@
         <service android:name="com.amap.api.location.APSService" />
         <service android:name=".app.service.LocationService" />
         <service android:name=".app.service.XlfkService" />
+        <service android:name=".app.service.UpdateLocationService" />
 
         <provider
             android:name="androidx.core.content.FileProvider"

+ 208 - 0
app/src/main/java/com/zkjc/policedemo/app/service/UpdateLocationService.java

@@ -0,0 +1,208 @@
+package com.zkjc.policedemo.app.service;
+
+import android.app.Notification;
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.app.Service;
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Message;
+import android.os.PowerManager;
+import android.util.Log;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
+import com.amap.api.location.AMapLocation;
+import com.amap.api.location.AMapLocationClient;
+import com.amap.api.location.AMapLocationClientOption;
+import com.amap.api.location.AMapLocationListener;
+import com.amap.api.maps.MapsInitializer;
+import com.google.gson.Gson;
+import com.hjq.toast.ToastUtils;
+import com.zkjc.common.utils.ApkUtils;
+import com.zkjc.common.utils.Utils;
+import com.zkjc.policedemo.R;
+import com.zkjc.policedemo.app.utils.CommonInterFace;
+import com.zkjc.policedemo.app.utils.Location;
+import com.zkjc.policedemo.app.utils.ReqToBus;
+import com.zkjc.policedemo.mvp.model.entity.RhzfRoomEntity;
+import com.zkjc.policedemo.mvp.ui.activity.XlfkActivity;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+import timber.log.Timber;
+
+public class UpdateLocationService extends Service {
+
+
+    public static final String CHANNEL_ID_STRING = "location_update";
+    public static final int NOTICE_ID = 2000;
+    public static final int INTERVAL = 15 * 60 * 1000;
+
+    private PowerManager.WakeLock wakeLock;
+    private Handler handler = new Handler() {
+        @Override
+        public void handleMessage(@NonNull Message msg) {
+            super.handleMessage(msg);
+            Log.e("eee", "handleMessage is run !!!!!!!! ");
+            getLocation();
+        }
+    };
+
+    @Nullable
+    @Override
+    public IBinder onBind(Intent intent) {
+        return null;
+    }
+
+    @Override
+    public void onCreate() {
+        super.onCreate();
+        //增加电源控制
+        PowerManager pm= (PowerManager) getSystemService(Context.POWER_SERVICE);
+        wakeLock =pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, XlfkActivity.class.getName());
+        wakeLock.acquire();
+        //适配8.0service  //开启服务兼容
+        NotificationManager notificationManager = (NotificationManager)getApplicationContext().getSystemService(Context.NOTIFICATION_SERVICE);
+        NotificationChannel mChannel = null;
+
+        //如果API大于18,需要弹出一个可见通知
+        if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O){
+            Notification.Builder builder = new Notification.Builder(getApplicationContext(), CHANNEL_ID_STRING);
+            builder.setSmallIcon(R.mipmap.ic_launcher);
+            builder.setContentTitle(ApkUtils.getAppName(this));
+            builder.setContentText("后台定位中...");
+
+            mChannel = new NotificationChannel(CHANNEL_ID_STRING, ApkUtils.getAppName(this), NotificationManager.IMPORTANCE_HIGH);
+            notificationManager.createNotificationChannel(mChannel);
+
+            startForeground(1, builder.build());
+
+        }else{
+            startForeground(NOTICE_ID,new Notification());
+        }
+
+        SharedPreferences preferences = getSharedPreferences("loaction", MODE_PRIVATE);
+        long lastTime = preferences.getLong("lastTime", 0);
+        if (lastTime <= 0) {
+            Log.e("eee", "lastTime <= 0");
+            getLocation();
+        } else {
+            long currentTimeMillis = System.currentTimeMillis();
+            long mills = currentTimeMillis - lastTime;
+            if (mills > INTERVAL) {
+                Log.e("eee", "mills > INTERVAL   mills ===== " + mills);
+                getLocation();
+            } else {
+                Log.e("eee", "mills <= INTERVAL   mills ===== " + mills);
+                handler.sendEmptyMessageDelayed(1, INTERVAL - mills);
+            }
+        }
+    }
+    public AMapLocationClient mlocationClient;
+    private void getLocation() {
+        if (mlocationClient == null) {
+            AMapLocationClientOption mLocationOption = null;
+
+            MapsInitializer.updatePrivacyShow(this, true, true);
+            MapsInitializer.updatePrivacyAgree(this, true);
+            try {
+                mlocationClient = new AMapLocationClient(this);
+                //初始化定位参数
+                mLocationOption = new AMapLocationClientOption();
+
+                //设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式
+                mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
+                //设置定位间隔,单位毫秒,默认为2000ms
+                mLocationOption.setOnceLocation(true);
+                // 高精度模式可以通过GPS获取海拔等信息
+                mLocationOption.setSensorEnable(true);
+
+                //设置定位回调监听
+                mlocationClient.setLocationListener(new AMapLocationListener() {
+                    @Override
+                    public void onLocationChanged(AMapLocation amapLocation) {
+                        if (amapLocation != null) {
+                            if (amapLocation.getErrorCode() == 0) {
+                                //定位成功回调信息,设置相关消息
+                                mlocationClient.stopLocation();
+                                String address = amapLocation.getAddress();
+                                Log.e("eee", "获取位置成功 address ====== "  + address);
+                                //  System.out.println("address = " + address);
+                                amapLocation.getLocationType();//获取当前定位结果来源,如网络定位结果,详见定位类型表
+                                double latitude = amapLocation.getLatitude();
+                                double longitude = amapLocation.getLongitude();
+                                update(latitude, longitude);
+                            } else {
+                                //显示错误信息ErrCode是错误码,errInfo是错误信息,详见错误码表。
+                                Timber.e("location Error, ErrCode:"
+                                        + amapLocation.getErrorCode() + ", errInfo:"
+                                        + amapLocation.getErrorInfo());
+                            }
+                        }
+                    }
+                });
+                //设置定位参数
+                mlocationClient.setLocationOption(mLocationOption);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        mlocationClient.stopLocation();
+        mlocationClient.startLocation();
+
+    }
+    @Override
+    public void onDestroy() {
+        if (wakeLock != null){
+            wakeLock.release();
+            wakeLock = null;
+        }
+        super.onDestroy();
+    }
+
+    private void update(double latitude, double longitude) {
+        Map<String, String> map = new HashMap<>();
+        map.put("jd", longitude + "");
+        map.put("wd", latitude + "");
+        Map<String, Object> map1 = new HashMap<>();
+        map1.put("className", "userJwdController");
+        map1.put("methodName", "save");
+        map1.put("params", map);
+        ReqToBus.getInstance().init(this).getRequest(map1, new CommonInterFace() {
+            @Override
+            public void onSuccess(String result) {
+                Utils.getInstances().dismissDialog();
+                RhzfRoomEntity entity = new Gson().fromJson(result, RhzfRoomEntity.class);
+                int code = entity.getCode();
+                if (code == 200) {
+                    SharedPreferences preferences = getSharedPreferences("loaction", MODE_PRIVATE);
+                    preferences.edit().putLong("lastTime", System.currentTimeMillis()).commit();
+
+                    handler.sendEmptyMessageDelayed(1, INTERVAL);
+                } else {
+//                    ToastUtils.show(entity.getMsg());
+                    handler.sendEmptyMessageDelayed(1, 30 * 1000);
+                }
+            }
+
+            @Override
+            public void onError(Throwable throwable) {
+                Utils.getInstances().dismissDialog();
+                ToastUtils.show("获取数据失败,请重试!");
+            }
+
+            @Override
+            public void onFinsh() {
+
+            }
+        });
+    }
+}

+ 41 - 0
app/src/main/java/com/zkjc/policedemo/di/component/KqHistoryComponent.java

@@ -0,0 +1,41 @@
+package com.zkjc.policedemo.di.component;
+
+import dagger.BindsInstance;
+import dagger.Component;
+
+import com.jess.arms.di.component.AppComponent;
+
+import com.zkjc.policedemo.di.module.KqHistoryModule;
+import com.zkjc.policedemo.mvp.contract.KqHistoryContract;
+
+import com.jess.arms.di.scope.ActivityScope;
+import com.zkjc.policedemo.mvp.ui.activity.KqHistoryActivity;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+@ActivityScope
+@Component(modules = KqHistoryModule.class, dependencies = AppComponent.class)
+public interface KqHistoryComponent {
+    void inject(KqHistoryActivity activity);
+
+    @Component.Builder
+    interface Builder {
+        @BindsInstance
+        KqHistoryComponent.Builder view(KqHistoryContract.View view);
+
+        KqHistoryComponent.Builder appComponent(AppComponent appComponent);
+
+        KqHistoryComponent build();
+    }
+}

+ 30 - 0
app/src/main/java/com/zkjc/policedemo/di/module/KqHistoryModule.java

@@ -0,0 +1,30 @@
+package com.zkjc.policedemo.di.module;
+
+import com.jess.arms.di.scope.ActivityScope;
+
+import dagger.Binds;
+import dagger.Module;
+import dagger.Provides;
+
+import com.zkjc.policedemo.mvp.contract.KqHistoryContract;
+import com.zkjc.policedemo.mvp.model.KqHistoryModel;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+@Module
+public abstract class KqHistoryModule {
+
+    @Binds
+    abstract KqHistoryContract.Model bindKqHistoryModel(KqHistoryModel model);
+}

+ 2 - 0
app/src/main/java/com/zkjc/policedemo/mvp/contract/AddTjBRkbqContract.java

@@ -20,6 +20,8 @@ public interface AddTjBRkbqContract {
     //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
     interface View extends IView {
 
+        void onAddSuccess();
+
     }
 
     //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存

+ 29 - 0
app/src/main/java/com/zkjc/policedemo/mvp/contract/KqHistoryContract.java

@@ -0,0 +1,29 @@
+package com.zkjc.policedemo.mvp.contract;
+
+import com.jess.arms.mvp.IView;
+import com.jess.arms.mvp.IModel;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+public interface KqHistoryContract {
+    //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
+    interface View extends IView {
+
+    }
+
+    //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
+    interface Model extends IModel {
+
+    }
+}

+ 5 - 0
app/src/main/java/com/zkjc/policedemo/mvp/contract/RkbqContract.java

@@ -2,6 +2,9 @@ package com.zkjc.policedemo.mvp.contract;
 
 import com.jess.arms.mvp.IView;
 import com.jess.arms.mvp.IModel;
+import com.zkjc.policedemo.mvp.model.entity.RkbqEntity;
+
+import java.util.List;
 
 
 /**
@@ -20,6 +23,8 @@ public interface RkbqContract {
     //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
     interface View extends IView {
 
+        void onDataSuccess(List<RkbqEntity.YjListBean> data);
+
     }
 
     //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存

+ 46 - 0
app/src/main/java/com/zkjc/policedemo/mvp/model/KqHistoryModel.java

@@ -0,0 +1,46 @@
+package com.zkjc.policedemo.mvp.model;
+
+import android.app.Application;
+
+import com.google.gson.Gson;
+import com.jess.arms.integration.IRepositoryManager;
+import com.jess.arms.mvp.BaseModel;
+
+import com.jess.arms.di.scope.ActivityScope;
+
+import javax.inject.Inject;
+
+import com.zkjc.policedemo.mvp.contract.KqHistoryContract;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+@ActivityScope
+public class KqHistoryModel extends BaseModel implements KqHistoryContract.Model {
+    @Inject
+    Gson mGson;
+    @Inject
+    Application mApplication;
+
+    @Inject
+    public KqHistoryModel(IRepositoryManager repositoryManager) {
+        super(repositoryManager);
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        this.mGson = null;
+        this.mApplication = null;
+    }
+}

+ 35 - 50
app/src/main/java/com/zkjc/policedemo/mvp/model/entity/RkbqEntity.java

@@ -14,7 +14,7 @@ public class RkbqEntity {
     private int code;
     private boolean success;
     private String msg;
-    private List<YjListBean> yjList;
+    private List<YjListBean> data;
 
     public int getCode() {
         return code;
@@ -40,12 +40,12 @@ public class RkbqEntity {
         this.msg = msg;
     }
 
-    public List<YjListBean> getYjList() {
-        return yjList;
+    public List<YjListBean> getData() {
+        return data;
     }
 
-    public void setYjList(List<YjListBean> yjList) {
-        this.yjList = yjList;
+    public void setData(List<YjListBean> data) {
+        this.data = data;
     }
 
     public static class YjListBean {
@@ -54,65 +54,50 @@ public class RkbqEntity {
          * erList : [{"ejbq":"年龄标签","sjList":[{"sjbq":"青年组"},{"sjbq":"中青年组"},{"sjbq":"中年组"},{"sjbq":"中老年组"}]},{"ejbq":"性别标签","sjList":[{"sjbq":"男"},{"sjbq":"女"}]},{"ejbq":"文化程度标签","sjList":[{"sjbq":"识字"},{"sjbq":"小学未毕业"},{"sjbq":"小学毕业"},{"sjbq":"初中毕业"},{"sjbq":"高中"},{"sjbq":"职高"},{"sjbq":"中专"},{"sjbq":"技校"},{"sjbq":"大专"},{"sjbq":"大学本科及以上"}]},{"ejbq":"经济来源标签","sjList":[{"sjbq":"机关事业单位"},{"sjbq":"工人"},{"sjbq":"公司职员"},{"sjbq":"自营企业"},{"sjbq":"个体工商户"},{"sjbq":"小商贩"},{"sjbq":"低保"},{"sjbq":"退休金"},{"sjbq":"无经济来源"},{"sjbq":"其他来源"}]},{"ejbq":"家庭标签","sjList":[{"sjbq":"同家人共同居住"},{"sjbq":"离家独居"},{"sjbq":"离婚\\丧偶独居"},{"sjbq":"未婚独居"},{"sjbq":"单亲家庭"},{"sjbq":"独自赡养老人"},{"sjbq":"寄居亲友家"},{"sjbq":"居住宿舍\\工棚"},{"sjbq":"居住群租房"}]},{"ejbq":"特殊职业标签","sjList":[{"sjbq":"民爆从业人员"},{"sjbq":"武装押运员"},{"sjbq":"加油站工作人员"},{"sjbq":"保安员"},{"sjbq":"校园工作人员"},{"sjbq":"出租车\\网约车司机"},{"sjbq":"公交车司机"},{"sjbq":"卡车司机"},{"sjbq":"屠宰人员\\肉品售卖员"},{"sjbq":"外卖\\快递员"},{"sjbq":"机械加工\\维修人员"},{"sjbq":"餐饮服务人员"},{"sjbq":"矿工"},{"sjbq":"社会闲散人员"}]}]
          */
 
-        private String yjbq;
-        private List<ErListBean> erList;
+        private String id;
+        private String bqdj;
+        private String parentId;
+        private String name;
+        private List<YjListBean> children;
 
-        public String getYjbq() {
-            return yjbq;
+        public String getId() {
+            return id;
         }
 
-        public void setYjbq(String yjbq) {
-            this.yjbq = yjbq;
+        public void setId(String id) {
+            this.id = id;
         }
 
-        public List<ErListBean> getErList() {
-            return erList;
+        public String getBqdj() {
+            return bqdj;
         }
 
-        public void setErList(List<ErListBean> erList) {
-            this.erList = erList;
+        public void setBqdj(String bqdj) {
+            this.bqdj = bqdj;
         }
 
-        public static class ErListBean {
-            /**
-             * ejbq : 年龄标签
-             * sjList : [{"sjbq":"青年组"},{"sjbq":"中青年组"},{"sjbq":"中年组"},{"sjbq":"中老年组"}]
-             */
-
-            private String ejbq;
-            private List<SjListBean> sjList;
-
-            public String getEjbq() {
-                return ejbq;
-            }
-
-            public void setEjbq(String ejbq) {
-                this.ejbq = ejbq;
-            }
-
-            public List<SjListBean> getSjList() {
-                return sjList;
-            }
+        public String getParentId() {
+            return parentId;
+        }
 
-            public void setSjList(List<SjListBean> sjList) {
-                this.sjList = sjList;
-            }
+        public void setParentId(String parentId) {
+            this.parentId = parentId;
+        }
 
-            public static class SjListBean {
-                /**
-                 * sjbq : 青年组
-                 */
+        public String getName() {
+            return name;
+        }
 
-                private String sjbq;
+        public void setName(String name) {
+            this.name = name;
+        }
 
-                public String getSjbq() {
-                    return sjbq;
-                }
+        public List<YjListBean> getChildren() {
+            return children;
+        }
 
-                public void setSjbq(String sjbq) {
-                    this.sjbq = sjbq;
-                }
-            }
+        public void setChildren(List<YjListBean> children) {
+            this.children = children;
         }
     }
 }

+ 41 - 0
app/src/main/java/com/zkjc/policedemo/mvp/presenter/AddTjBRkbqPresenter.java

@@ -2,6 +2,8 @@ package com.zkjc.policedemo.mvp.presenter;
 
 import android.app.Application;
 
+import com.google.gson.Gson;
+import com.hjq.toast.ToastUtils;
 import com.jess.arms.integration.AppManager;
 import com.jess.arms.di.scope.ActivityScope;
 import com.jess.arms.mvp.BasePresenter;
@@ -11,7 +13,14 @@ import me.jessyan.rxerrorhandler.core.RxErrorHandler;
 
 import javax.inject.Inject;
 
+import com.zkjc.common.utils.Utils;
+import com.zkjc.policedemo.app.utils.CommonInterFace;
+import com.zkjc.policedemo.app.utils.ReqToBus;
 import com.zkjc.policedemo.mvp.contract.AddTjBRkbqContract;
+import com.zkjc.policedemo.mvp.model.entity.NormalEntity;
+
+import java.util.HashMap;
+import java.util.Map;
 
 
 /**
@@ -50,4 +59,36 @@ public class AddTjBRkbqPresenter extends BasePresenter<AddTjBRkbqContract.Model,
         this.mImageLoader = null;
         this.mApplication = null;
     }
+    public void addRkbq(Map<String, Object> map) {
+        Map<String, Object> map1 = new HashMap<>();
+        map1.put("className", "bqInfoController");
+        map1.put("methodName", "save");
+        map1.put("params", map);
+        ReqToBus.getInstance().init(mApplication).getRequest(map1, new CommonInterFace() {
+            @Override
+            public void onSuccess(String result) {
+                Utils.getInstances().dismissDialog();
+                NormalEntity entity = new Gson().fromJson(result, NormalEntity.class);
+                int code = entity.getCode();
+                if (code == 200) {
+                    if (mRootView != null) {
+                        mRootView.onAddSuccess();
+                    }
+                } else {
+                    ToastUtils.show(entity.getMsg());
+                }
+            }
+
+            @Override
+            public void onError(Throwable throwable) {
+                Utils.getInstances().dismissDialog();
+                ToastUtils.show("获取数据失败,请重试!");
+            }
+
+            @Override
+            public void onFinsh() {
+
+            }
+        });
+    }
 }

+ 53 - 0
app/src/main/java/com/zkjc/policedemo/mvp/presenter/KqHistoryPresenter.java

@@ -0,0 +1,53 @@
+package com.zkjc.policedemo.mvp.presenter;
+
+import android.app.Application;
+
+import com.jess.arms.integration.AppManager;
+import com.jess.arms.di.scope.ActivityScope;
+import com.jess.arms.mvp.BasePresenter;
+import com.jess.arms.http.imageloader.ImageLoader;
+
+import me.jessyan.rxerrorhandler.core.RxErrorHandler;
+
+import javax.inject.Inject;
+
+import com.zkjc.policedemo.mvp.contract.KqHistoryContract;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+@ActivityScope
+public class KqHistoryPresenter extends BasePresenter<KqHistoryContract.Model, KqHistoryContract.View> {
+    @Inject
+    RxErrorHandler mErrorHandler;
+    @Inject
+    Application mApplication;
+    @Inject
+    ImageLoader mImageLoader;
+    @Inject
+    AppManager mAppManager;
+
+    @Inject
+    public KqHistoryPresenter(KqHistoryContract.Model model, KqHistoryContract.View rootView) {
+        super(model, rootView);
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        this.mErrorHandler = null;
+        this.mAppManager = null;
+        this.mImageLoader = null;
+        this.mApplication = null;
+    }
+}

+ 41 - 0
app/src/main/java/com/zkjc/policedemo/mvp/presenter/RkbqPresenter.java

@@ -2,6 +2,8 @@ package com.zkjc.policedemo.mvp.presenter;
 
 import android.app.Application;
 
+import com.google.gson.Gson;
+import com.hjq.toast.ToastUtils;
 import com.jess.arms.integration.AppManager;
 import com.jess.arms.di.scope.ActivityScope;
 import com.jess.arms.mvp.BasePresenter;
@@ -11,7 +13,14 @@ import me.jessyan.rxerrorhandler.core.RxErrorHandler;
 
 import javax.inject.Inject;
 
+import com.zkjc.policedemo.app.utils.CommonInterFace;
+import com.zkjc.policedemo.app.utils.ReqToBus;
 import com.zkjc.policedemo.mvp.contract.RkbqContract;
+import com.zkjc.policedemo.mvp.model.entity.RhzfRoomEntity;
+import com.zkjc.policedemo.mvp.model.entity.RkbqEntity;
+
+import java.util.HashMap;
+import java.util.Map;
 
 
 /**
@@ -50,4 +59,36 @@ public class RkbqPresenter extends BasePresenter<RkbqContract.Model, RkbqContrac
         this.mImageLoader = null;
         this.mApplication = null;
     }
+
+    public void getRkbq(Map<String, String> map) {
+        Map<String, Object> map1 = new HashMap<>();
+        map1.put("className", "bqInfoController");
+        map1.put("methodName", "page");
+        map1.put("params", map);
+        ReqToBus.getInstance().init(mApplication).getRequest(map1, new CommonInterFace() {
+            @Override
+            public void onSuccess(String result) {
+                RkbqEntity entity = new Gson().fromJson(result, RkbqEntity.class);
+                int code = entity.getCode();
+                if (code == 200) {
+                    if (mRootView != null) {
+                        mRootView.onDataSuccess(entity.getData());
+                    }
+                } else {
+                    ToastUtils.show(entity.getMsg());
+                }
+            }
+
+            @Override
+            public void onError(Throwable throwable) {
+                ToastUtils.show("获取数据失败,请重试!");
+            }
+
+            @Override
+            public void onFinsh() {
+
+            }
+        });
+    }
+
 }

+ 19 - 22
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddChryActivity.java

@@ -22,10 +22,13 @@ import com.zkjc.common.view.CommonTitleBarV3;
 import com.zkjc.policedemo.di.component.DaggerAddChryComponent;
 import com.zkjc.policedemo.mvp.contract.AddChryContract;
 import com.zkjc.policedemo.mvp.model.entity.JmhEntity;
+import com.zkjc.policedemo.mvp.model.entity.JwsJgEntity;
 import com.zkjc.policedemo.mvp.presenter.AddChryPresenter;
 
 import com.zkjc.policedemo.R;
 import com.zkjc.policedemo.mvp.ui.adapter.StringAdapter;
+import com.zkjc.policedemo.mvp.ui.fragment.SelectSssqDialog;
+import com.zkjc.policedemo.mvp.ui.fragment.SelectStringDialog;
 
 
 import java.io.Serializable;
@@ -35,7 +38,6 @@ import java.util.List;
 import butterknife.BindView;
 
 import static com.jess.arms.utils.Preconditions.checkNotNull;
-import static com.zkjc.policedemo.mvp.ui.fragment.SydwLeftFragment.QXZ;
 
 
 /**
@@ -55,8 +57,8 @@ public class AddChryActivity extends ZkjcBaseActivity<AddChryPresenter> implemen
     EditText etName;
     @BindView(R.id.et_phone)
     EditText etPhone;
-    @BindView(R.id.sp_zw)
-    Spinner spZw;
+    @BindView(R.id.tv_ryzw)
+    TextView tvRyzw;
     @BindView(R.id.tv_confirm)
     TextView tvSave;
     @BindView(R.id.title_bar)
@@ -87,30 +89,25 @@ public class AddChryActivity extends ZkjcBaseActivity<AddChryPresenter> implemen
         } else {
             titleBar.setTitle("修改见面会人员");
         }
-        List<String> list = new ArrayList<>();
-        list.add(QXZ);
+        ArrayList<String> list = new ArrayList<>();
         list.add("社区书记");
         list.add("治保会主任");
-        spZw.setAdapter(new StringAdapter(list, this));
-        spZw.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-            @Override
-            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                mSelectZw = list.get(position);
-            }
-
-            @Override
-            public void onNothingSelected(AdapterView<?> parent) {
-
-            }
+        tvRyzw.setOnClickListener(v -> {
+            SelectStringDialog dialog = SelectStringDialog.newInstance("请选择人员职务", list, mSelectZw);
+            dialog.setDialogListener(new SelectStringDialog.DialogListener() {
+                @Override
+                public void onDialogClick(String string) {
+                    mSelectZw = string;
+                    tvRyzw.setText(mSelectZw);
+                }
+            });
+            dialog.show(getSupportFragmentManager(), "xslx");
         });
         if (mData != null) {
             etName.setText(mData.getXm());
             etPhone.setText(mData.getLxdh());
-            for (int i = 0; i < list.size(); i++) {
-                if (list.get(i).equals(mData.getZw())) {
-                    spZw.setSelection(i);
-                }
-            }
+            mSelectZw = mData.getZw();
+            tvRyzw.setText(mSelectZw);
         }
         tvSave.setOnClickListener(v -> {
             if (TextUtils.isEmpty(etName.getText().toString().trim())) {
@@ -121,7 +118,7 @@ public class AddChryActivity extends ZkjcBaseActivity<AddChryPresenter> implemen
                 ToastUtils.show("请填写人员电话");
                 return;
             }
-            if (TextUtils.isEmpty(mSelectZw) || QXZ.equals(mSelectZw)) {
+            if (TextUtils.isEmpty(mSelectZw)) {
                 ToastUtils.show("请选择人员职务");
                 return;
             }

+ 0 - 1
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddMyQahyActivity.java

@@ -54,7 +54,6 @@ import butterknife.BindView;
 import butterknife.ButterKnife;
 
 import static com.jess.arms.utils.Preconditions.checkNotNull;
-import static com.zkjc.policedemo.mvp.ui.fragment.SydwLeftFragment.QXZ;
 
 
 /**

+ 24 - 31
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddMzjmhActivity.java

@@ -43,6 +43,7 @@ import com.zkjc.policedemo.app.utils.GlideImageLoader;
 import com.zkjc.policedemo.app.utils.UploadUtil;
 import com.zkjc.policedemo.di.component.DaggerAddMzjmhComponent;
 import com.zkjc.policedemo.mvp.contract.AddMzjmhContract;
+import com.zkjc.policedemo.mvp.model.entity.Fwtd;
 import com.zkjc.policedemo.mvp.model.entity.JmhEntity;
 import com.zkjc.policedemo.mvp.model.entity.JwsJgEntity;
 import com.zkjc.policedemo.mvp.model.entity.SqmyEntity;
@@ -51,6 +52,8 @@ import com.zkjc.policedemo.mvp.ui.adapter.AddPicAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.BaseRecycleAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.JgAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.MzchryAdapter;
+import com.zkjc.policedemo.mvp.ui.fragment.SelectFwtdDialog;
+import com.zkjc.policedemo.mvp.ui.fragment.SelectSssqDialog;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -59,9 +62,7 @@ import java.util.Map;
 
 import butterknife.BindView;
 
-import static com.alibaba.fastjson.JSONPatch.OperationType.remove;
 import static com.jess.arms.utils.Preconditions.checkNotNull;
-import static com.zkjc.policedemo.mvp.ui.fragment.SydwLeftFragment.QXZ;
 
 
 /**
@@ -96,8 +97,8 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
     RelativeLayout rlHysj;
     @BindView(R.id.sssq)
     TextView sssq;
-    @BindView(R.id.sp_sssq)
-    Spinner spSssq;
+    @BindView(R.id.tv_sssq)
+    TextView tvSssq;
     @BindView(R.id.rl_sssq)
     RelativeLayout rlSssq;
     @BindView(R.id.et_xsnr)
@@ -122,11 +123,11 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
     public static final int REQUEST_CODE_PREVIEW = 101;
     private MzchryAdapter mzchryAdapter;
     private Map<String, String> urlMap = new HashMap<>();
-    private String sqId;
     private ArrayList<JmhEntity.JmhRy> list;
     private ArrayList<JmhEntity.JmhRy> listRemove;
     private String mId;
-    private List<JwsJgEntity.DataBean> sqList;
+    private ArrayList<JwsJgEntity.DataBean> sqList;
+    private JwsJgEntity.DataBean mSelectSssq;
 
     @Override
     public void setupActivityComponent(@NonNull AppComponent appComponent) {
@@ -225,6 +226,10 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
 
     private void setNetData(JmhEntity.Jmh jmh) {
         etHysz.setText(jmh.getHyzt());
+        mSelectSssq = new JwsJgEntity.DataBean();
+        mSelectSssq.setId(jmh.getSssqBm());
+        mSelectSssq.setDeptName(jmh.getSssqName());
+        tvSssq.setText(jmh.getSssqName());
         tvHysjx.setText(jmh.getHysj());
         etXsnr.setText(jmh.getHynr());
         String fj = jmh.getFj();
@@ -259,7 +264,7 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
             ToastUtils.show("请填写会议内容");
             return;
         }
-        if (TextUtils.isEmpty(sqId) || QXZ.equals(sqId)) {
+        if (mSelectSssq == null) {
             ToastUtils.show("请选择社区");
             return;
         }
@@ -272,7 +277,7 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
         map.put("hyzt", etHysz.getText().toString());
         map.put("hynr", etXsnr.getText().toString());
         map.put("hysj", tvHysjx.getText().toString());
-        map.put("sssqBm", sqId);
+        map.put("sssqBm", mSelectSssq.getId());
         StringBuilder builder = new StringBuilder();
         for (Map.Entry<String, String> entry : urlMap.entrySet()) {
             String key = entry.getKey();
@@ -487,24 +492,17 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
     public void onDit(String result) {
         try {
             JwsJgEntity entity = new Gson().fromJson(result, JwsJgEntity.class);
-            sqList = entity.getData();
-            JwsJgEntity.DataBean dataBean = new JwsJgEntity.DataBean();
-            dataBean.setDeptName(QXZ);
-            dataBean.setId(QXZ);
-            sqList.add(0, dataBean);
-            spSssq.setAdapter(new JgAdapter(sqList, this));
-            spSssq.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-                @Override
-                public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                    JwsJgEntity.DataBean dataBean = sqList.get(position);
-                    sqId = dataBean.getId();
-
-                }
-
-                @Override
-                public void onNothingSelected(AdapterView<?> parent) {
-
-                }
+            sqList = (ArrayList<JwsJgEntity.DataBean>) entity.getData();
+            tvSssq.setOnClickListener(v -> {
+                SelectSssqDialog dialog = SelectSssqDialog.newInstance("请选择所属社区", sqList, mSelectSssq);
+                dialog.setDialogListener(new SelectSssqDialog.DialogListener() {
+                    @Override
+                    public void onDialogClick(JwsJgEntity.DataBean sssq) {
+                        mSelectSssq = sssq;
+                        tvSssq.setText(mSelectSssq.getDeptName());
+                    }
+                });
+                dialog.show(getSupportFragmentManager(), "xslx");
             });
             if (!TextUtils.isEmpty(mId)) {
                 Map<String, String> map = new HashMap<>();
@@ -521,10 +519,5 @@ public class AddMzjmhActivity extends ZkjcBaseActivity<AddMzjmhPresenter> implem
     @Override
     public void onGetDetailSuccess(JmhEntity.Jmh data) {
         setNetData(data);
-        for (int i = 0; i < sqList.size(); i++) {
-            if (sqList.get(i).getId().equals(data.getSssqBm())) {
-                spSssq.setSelection(i);
-            }
-        }
     }
 }

+ 23 - 23
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddSqmyActivity.java

@@ -49,6 +49,7 @@ import com.zkjc.policedemo.mvp.ui.adapter.AddPicAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.BaseRecycleAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.SpFwtdAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.XstgrAdapter;
+import com.zkjc.policedemo.mvp.ui.fragment.SelectFwtdDialog;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -57,7 +58,6 @@ import java.util.Map;
 import butterknife.BindView;
 
 import static com.jess.arms.utils.Preconditions.checkNotNull;
-import static com.zkjc.policedemo.mvp.ui.fragment.SydwLeftFragment.QXZ;
 
 
 /**
@@ -80,8 +80,8 @@ public class AddSqmyActivity extends ZkjcBaseActivity<AddSqmyPresenter> implemen
     TextView fxpcLeftTvName;
     @BindView(R.id.xslx)
     TextView xslx;
-    @BindView(R.id.sp_xslx)
-    Spinner spXslx;
+    @BindView(R.id.tv_xslx)
+    TextView tvXslx;
     @BindView(R.id.rl_xslx)
     RelativeLayout rlXslx;
     @BindView(R.id.fxsj)
@@ -215,6 +215,7 @@ public class AddSqmyActivity extends ZkjcBaseActivity<AddSqmyPresenter> implemen
 
     private void setNetData(SqmyEntity.Sqmy data) {
         tvFxsj.setText(data.getFxsj());
+        tvXslx.setText(data.getXslx());
         etFxdd.setText(data.getFxdd());
         etXsnr.setText(data.getXsnr());
         if (data.getRyList() != null) {
@@ -239,7 +240,7 @@ public class AddSqmyActivity extends ZkjcBaseActivity<AddSqmyPresenter> implemen
     }
 
     private void save() {
-        if (mSelectXslx == null || QXZ.equals(mSelectXslx.getLabel())) {
+        if (mSelectXslx == null) {
             ToastUtils.show("请选择线索类型");
             return;
         }
@@ -415,23 +416,24 @@ public class AddSqmyActivity extends ZkjcBaseActivity<AddSqmyPresenter> implemen
     @Override
     public void onGetZdSuccess(ZdAllEntity.DataBean data) {
         listXslx = new ArrayList<>();
-        Fwtd qxz = new Fwtd();
-        qxz.setLabel(QXZ);
-        qxz.setValue(QXZ);
-        qxz.setId(QXZ);
-        listXslx.add(qxz);
+//        Fwtd qxz = new Fwtd();
+//        qxz.setLabel(QXZ);
+//        qxz.setValue(QXZ);
+//        qxz.setId(QXZ);
+//        listXslx.add(qxz);
         listXslx.addAll(data.getXslx());
-        spXslx.setAdapter(new SpFwtdAdapter(listXslx, this));
-        spXslx.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-            @Override
-            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                mSelectXslx = listXslx.get(position);
-            }
 
-            @Override
-            public void onNothingSelected(AdapterView<?> parent) {
 
-            }
+        tvXslx.setOnClickListener(v -> {
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择线索类型", listXslx, mSelectXslx);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectXslx = fwtd;
+                    tvXslx.setText(mSelectXslx.getLabel());
+                }
+            });
+            dialog.show(getSupportFragmentManager(), "xslx");
         });
         if (TextUtils.isEmpty(mId)) {
             Utils.getInstances().dismissDialog();
@@ -450,11 +452,9 @@ public class AddSqmyActivity extends ZkjcBaseActivity<AddSqmyPresenter> implemen
 
     @Override
     public void onGetDetailSuccess(SqmyEntity.Sqmy data) {
-        for (int i = 0; i < listXslx.size(); i++) {
-            if (listXslx.get(i).getLabel().equals(data.getXslx())) {
-                spXslx.setSelection(i);
-            }
-        }
+        Fwtd fwtd = new Fwtd();
+        fwtd.setLabel(data.getXslx());
+        mSelectXslx = fwtd;
         setNetData(data);
     }
 

+ 26 - 4
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/AddTjBRkbqActivity.java

@@ -13,12 +13,16 @@ import com.hjq.toast.ToastUtils;
 import com.jess.arms.di.component.AppComponent;
 import com.jess.arms.utils.ArmsUtils;
 import com.zkjc.common.base.ZkjcBaseActivity;
+import com.zkjc.common.utils.Utils;
 import com.zkjc.common.view.CommonTitleBarV3;
 import com.zkjc.policedemo.R;
 import com.zkjc.policedemo.di.component.DaggerAddTjBRkbqComponent;
 import com.zkjc.policedemo.mvp.contract.AddTjBRkbqContract;
 import com.zkjc.policedemo.mvp.presenter.AddTjBRkbqPresenter;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import butterknife.BindView;
 import butterknife.ButterKnife;
 
@@ -71,10 +75,22 @@ public class AddTjBRkbqActivity extends ZkjcBaseActivity<AddTjBRkbqPresenter> im
                 ToastUtils.show("标签名称不能为空");
                 return;
             }
-            Intent intent = new Intent();
-            intent.putExtra("bqmc", bqmc);
-            setResult(RESULT_OK, intent);
-            finish();
+            //bqlx 固定传1
+            //parentId 上级标签的id
+            //name 标签名称
+            //bqdj 标签等级 1=1级标签 2=2级标签 3=3级标签
+            Map<String, Object> map = new HashMap<>();
+            map.put("bqlx", 1);
+            map.put("parentId", getIntent().getStringExtra("parentId"));
+            map.put("name", etBqmc.getText().toString());
+            map.put("bqdj", getIntent().getIntExtra("bqdj", 0));
+            mPresenter.addRkbq(map);
+            Utils.getInstances().showDialog(AddTjBRkbqActivity.this, "正在提交");
+//            Intent intent = new Intent();
+//            intent.putExtra("bqmc", bqmc);
+//            setResult(RESULT_OK, intent);
+
+//            finish();
         });
     }
 
@@ -104,4 +120,10 @@ public class AddTjBRkbqActivity extends ZkjcBaseActivity<AddTjBRkbqPresenter> im
     public void killMyself() {
         finish();
     }
+
+    @Override
+    public void onAddSuccess() {
+        ToastUtils.show("你提交的标签正在审核");
+        finish();
+    }
 }

+ 83 - 0
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/KqHistoryActivity.java

@@ -0,0 +1,83 @@
+package com.zkjc.policedemo.mvp.ui.activity;
+
+import android.content.Intent;
+import android.os.Bundle;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
+import com.jess.arms.base.BaseActivity;
+import com.jess.arms.di.component.AppComponent;
+import com.jess.arms.utils.ArmsUtils;
+
+import com.zkjc.policedemo.di.component.DaggerKqHistoryComponent;
+import com.zkjc.policedemo.mvp.contract.KqHistoryContract;
+import com.zkjc.policedemo.mvp.presenter.KqHistoryPresenter;
+
+import com.zkjc.policedemo.R;
+
+
+import static com.jess.arms.utils.Preconditions.checkNotNull;
+
+
+/**
+ * ================================================
+ * Description:
+ * <p>
+ * Created by MVPArmsTemplate on 11/29/2024 09:48
+ * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
+ * <a href="https://github.com/JessYanCoding">Follow me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
+ * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
+ * ================================================
+ */
+public class KqHistoryActivity extends BaseActivity<KqHistoryPresenter> implements KqHistoryContract.View {
+
+    @Override
+    public void setupActivityComponent(@NonNull AppComponent appComponent) {
+        DaggerKqHistoryComponent //如找不到该类,请编译一下项目
+                .builder()
+                .appComponent(appComponent)
+                .view(this)
+                .build()
+                .inject(this);
+    }
+
+    @Override
+    public int initView(@Nullable Bundle savedInstanceState) {
+        return R.layout.activity_kq_history; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
+    }
+
+    @Override
+    public void initData(@Nullable Bundle savedInstanceState) {
+
+    }
+
+    @Override
+    public void showLoading() {
+
+    }
+
+    @Override
+    public void hideLoading() {
+
+    }
+
+    @Override
+    public void showMessage(@NonNull String message) {
+        checkNotNull(message);
+        ArmsUtils.snackbarText(message);
+    }
+
+    @Override
+    public void launchActivity(@NonNull Intent intent) {
+        checkNotNull(intent);
+        ArmsUtils.startActivity(intent);
+    }
+
+    @Override
+    public void killMyself() {
+        finish();
+    }
+}

+ 3 - 5
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/RhzfDetailActivity.java

@@ -159,7 +159,6 @@ public class RhzfDetailActivity extends ZkjcBaseActivity<RhzfDetailPresenter> im
 
         appBarLayout.addOnOffsetChangedListener(offsetChangedListener);
         layoutFw.setOnClickListener(v -> {
-            Log.e("eee", "onclick is run !!!!!");
             if (mNetData == null) {
                 ToastUtils.show("正在初始化数据");
                 return;
@@ -255,8 +254,8 @@ public class RhzfDetailActivity extends ZkjcBaseActivity<RhzfDetailPresenter> im
         }
         fragments.add(SyrkFragment.newInstance(list));
         titles.add("实有人口(" + list.size() + ")");
-        fragments.add(RhzfTdrkgkFragment.newInstance(list));
-        titles.add("特定人口管控(" + list.size() + ")");
+//        fragments.add(RhzfTdrkgkFragment.newInstance(list));
+//        titles.add("特定人口管控(" + list.size() + ")");
         fragments.add(RhzfSydwFragment.newInstance(mNetData.getSydw()));
         titles.add("实有单位");
         fragments.add(RhzfMdFragment.newInstance(mNetData.getMdId()));
@@ -290,7 +289,6 @@ public class RhzfDetailActivity extends ZkjcBaseActivity<RhzfDetailPresenter> im
         new TabLayoutMediator(tabLayout, viewPager, new TabLayoutMediator.TabConfigurationStrategy() {
             @Override
             public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) {
-                Log.e("eee", "onConfigureTab is run !!!!!");
                 tab.setText(titles.get(position));
 
             }
@@ -298,7 +296,7 @@ public class RhzfDetailActivity extends ZkjcBaseActivity<RhzfDetailPresenter> im
         viewPager.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
             @Override
             public void onPageSelected(int position) {
-                if (position <= 2 || position == titles.size() - 1) {
+                if (position <= 1 || position == titles.size() - 1) {
                     floatButton.setVisibility(View.GONE);
                 } else {
                     floatButton.setVisibility(View.VISIBLE);

+ 48 - 23
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/RkbqActivity.java

@@ -30,10 +30,10 @@ import com.zkjc.policedemo.mvp.ui.adapter.SjbqAdapter;
 import com.zkjc.policedemo.mvp.ui.adapter.YjbqAdapter;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import butterknife.BindView;
-import butterknife.ButterKnife;
 
 import static com.jess.arms.utils.Preconditions.checkNotNull;
 
@@ -119,9 +119,9 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
             titleBar.setRightTextAndColor("管理", Color.parseColor("#111111"));
         }
 
-        String json = JsonUtils.getJson(this, "rkbq.json");
-        RkbqEntity entity = new Gson().fromJson(json, RkbqEntity.class);
-        yjList = entity.getYjList();
+//        String json = JsonUtils.getJson(this, "rkbq.json");
+//        RkbqEntity entity = new Gson().fromJson(json, RkbqEntity.class);
+        yjList = new ArrayList<>();
         yjbqAdapter = new YjbqAdapter(yjList);
         recyclerView.setLayoutManager(new LinearLayoutManager(this));
         recyclerView.setAdapter(yjbqAdapter);
@@ -130,7 +130,7 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
             public void onItemClick(int position) {
                 yjPos = position;
                 RkbqEntity.YjListBean yjbqBean = yjList.get(position);
-                List<RkbqEntity.YjListBean.ErListBean> erList = yjbqBean.getErList();
+                List<RkbqEntity.YjListBean> erList = yjbqBean.getChildren();
                 ejbqAdapter = new EjbqAdapter(erList);
                 recyclerView.setAdapter(ejbqAdapter);
                 mCurrenPos = 2;
@@ -138,10 +138,11 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
                 sy.setTextColor(Color.parseColor("#106DFF"));
                 llEj.setOnClickListener(view -> {
                     llSj.setVisibility(View.GONE);
+                    mCurrenPos = 2;
                     ejbq.setTextColor(Color.parseColor("#999999"));
                     recyclerView.setAdapter(ejbqAdapter);
                 });
-                ejbq.setText(yjbqBean.getYjbq());
+                ejbq.setText(yjbqBean.getName());
                 ejbqAdapter.setOnRecyclerViewListener(new BaseRecycleAdapter.OnRecyclerViewListener() {
                     @Override
                     public void onItemClick(int position) {
@@ -150,11 +151,11 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
                         sy.setTextColor(Color.parseColor("#106DFF"));
                         ejbq.setTextColor(Color.parseColor("#106DFF"));
                         mCurrenPos = 3;
-                        RkbqEntity.YjListBean.ErListBean ejbqBean = erList.get(position);
-                        List<RkbqEntity.YjListBean.ErListBean.SjListBean> sjList = ejbqBean.getSjList();
+                        RkbqEntity.YjListBean ejbqBean = erList.get(position);
+                        List<RkbqEntity.YjListBean> sjList = ejbqBean.getChildren();
                         adapter = new SjbqAdapter(sjList);
                         recyclerView.setAdapter(adapter);
-                        sjbq.setText(ejbqBean.getEjbq());
+                        sjbq.setText(ejbqBean.getName());
                     }
 
                     @Override
@@ -179,9 +180,28 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
             mCurrenPos = 1;
         });
         llAdd.setOnClickListener(view -> {
-            startActivityForResult(new Intent(RkbqActivity.this, AddTjBRkbqActivity.class), 100);
+            Intent intent = new Intent(RkbqActivity.this, AddTjBRkbqActivity.class);
+            String parentId = null;
+            switch (mCurrenPos) {
+                case 1:
+                    parentId = "0";
+                    break;
+                case 2:
+                    parentId = yjList.get(yjPos).getId();
+                    break;
+                case 3:
+                    parentId = yjList.get(yjPos).getChildren().get(ejPos).getId();
+                    break;
+                default:
+                    parentId = "0";
+                    break;
+            }
+            intent.putExtra("parentId", parentId);
+            intent.putExtra("bqdj", mCurrenPos);
+            startActivityForResult(intent, 100);
 
         });
+        mPresenter.getRkbq(new HashMap<>());
     }
 
     @Override
@@ -192,19 +212,19 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
             String bqmc = data.getStringExtra("bqmc");
             if (mCurrenPos == 1) {
                 RkbqEntity.YjListBean yjbean = new RkbqEntity.YjListBean();
-                yjbean.setYjbq(bqmc);
-                ArrayList<RkbqEntity.YjListBean.ErListBean> erList = new ArrayList<>();
-                yjbean.setErList(erList);
+                yjbean.setName(bqmc);
+                ArrayList<RkbqEntity.YjListBean> erList = new ArrayList<>();
+                yjbean.setChildren(erList);
 
                 yjList.add(yjbean);
                 yjbqAdapter.notifyDataSetChanged();
             } else if (mCurrenPos == 2) {
                 if (ejbqAdapter != null) {
-                    List<RkbqEntity.YjListBean.ErListBean> erList = yjList.get(yjPos).getErList();
-                    RkbqEntity.YjListBean.ErListBean e = new RkbqEntity.YjListBean.ErListBean();
-                    List<RkbqEntity.YjListBean.ErListBean.SjListBean> sjList = new ArrayList<>();
-                    e.setEjbq(bqmc);
-                    e.setSjList(sjList);
+                    List<RkbqEntity.YjListBean> erList = yjList.get(yjPos).getChildren();
+                    RkbqEntity.YjListBean e = new RkbqEntity.YjListBean();
+                    List<RkbqEntity.YjListBean> sjList = new ArrayList<>();
+                    e.setName(bqmc);
+                    e.setChildren(sjList);
                     erList.add(e);
                     ejbqAdapter.notifyDataSetChanged();
                 }
@@ -212,11 +232,11 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
 
             } else if (mCurrenPos == 3) {
                 if (adapter!=null){
-                List<RkbqEntity.YjListBean.ErListBean.SjListBean> sjList = yjList.get(yjPos).getErList().get(ejPos).getSjList();
-                RkbqEntity.YjListBean.ErListBean.SjListBean e = new RkbqEntity.YjListBean.ErListBean.SjListBean();
-                e.setSjbq(bqmc);
-                sjList.add(e);
-                adapter.notifyDataSetChanged();
+                    List<RkbqEntity.YjListBean> sjList = yjList.get(yjPos).getChildren().get(ejPos).getChildren();
+                    RkbqEntity.YjListBean e = new RkbqEntity.YjListBean();
+                    e.setName(bqmc);
+                    sjList.add(e);
+                    adapter.notifyDataSetChanged();
                 }
             }
         }
@@ -250,4 +270,9 @@ public class RkbqActivity extends ZkjcBaseActivity<RkbqPresenter> implements Rkb
     }
 
 
+    @Override
+    public void onDataSuccess(List<RkbqEntity.YjListBean> data) {
+        yjList.addAll(data);
+        yjbqAdapter.notifyDataSetChanged();
+    }
 }

+ 4 - 2
app/src/main/java/com/zkjc/policedemo/mvp/ui/activity/StHomeActivity.java

@@ -38,6 +38,7 @@ import com.zkjc.common.base.ZkjcBaseActivity;
 import com.zkjc.common.utils.AesEncryptUtil;
 import com.zkjc.common.utils.ApkUtils;
 import com.zkjc.policedemo.R;
+import com.zkjc.policedemo.app.service.UpdateLocationService;
 import com.zkjc.policedemo.app.utils.ShareInfo;
 import com.zkjc.policedemo.di.component.DaggerStHomeComponent;
 import com.zkjc.policedemo.mvp.contract.StHomeContract;
@@ -97,7 +98,7 @@ public class StHomeActivity extends ZkjcBaseActivity<StHomePresenter> implements
     @BindView(R.id.ll_main_tab)
     LinearLayout ll_main_tab;
     private HomeFragment homeFragment;
-    private MyFragment myFragment;
+    private QsMyFragment myFragment;
     private XmPermissions xmPermissions;
 
     @Override
@@ -124,6 +125,7 @@ public class StHomeActivity extends ZkjcBaseActivity<StHomePresenter> implements
         xmPermissions.setOnRequestPermissionsCallback(this);
         xmPermissions.requestPermissions(Manifest.permission.RECORD_AUDIO, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION);
 
+        startService(new Intent(this, UpdateLocationService.class));
     }
 
 
@@ -189,7 +191,7 @@ public class StHomeActivity extends ZkjcBaseActivity<StHomePresenter> implements
                 break;
             case 1:
                 if (myFragment == null) {
-                    myFragment = new MyFragment();
+                    myFragment = new QsMyFragment();
                     transaction.add(R.id.fl_container, myFragment);
                 } else {
                     transaction.show(myFragment);

+ 4 - 4
app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/EjbqAdapter.java

@@ -7,9 +7,9 @@ import com.zkjc.policedemo.mvp.model.entity.RkbqEntity;
 
 import java.util.List;
 
-public class EjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean.ErListBean> {
+public class EjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean> {
 
-    public EjbqAdapter(List<RkbqEntity.YjListBean.ErListBean> datas) {
+    public EjbqAdapter(List<RkbqEntity.YjListBean> datas) {
         super(datas);
     }
 
@@ -18,8 +18,8 @@ public class EjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean.ErList
         if (holder != null) {
             holder.setOnItemClickListener(R.id.rl_item, position, onRecyclerViewListener);
             holder.setOnItemLongClickListener(R.id.rl_item, position, onRecyclerViewListener);
-            RkbqEntity.YjListBean.ErListBean bean = datas.get(position);
-            setItemText(holder.getView(R.id.item_bq), bean.getEjbq() + "(" + bean.getSjList().size() + ")");
+            RkbqEntity.YjListBean bean = datas.get(position);
+            setItemText(holder.getView(R.id.item_bq), bean.getName() + "(" + bean.getChildren().size() + ")");
             View view = holder.getView(R.id.item_view);
             if (position == datas.size() - 1) {
                 view.setVisibility(View.GONE);

+ 21 - 0
app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/FwtdWheelAdapter.java

@@ -0,0 +1,21 @@
+package com.zkjc.policedemo.mvp.ui.adapter;
+
+import com.contrarywind.adapter.WheelAdapter;
+import com.zkjc.policedemo.mvp.model.entity.Fwtd;
+
+public class FwtdWheelAdapter implements WheelAdapter<Fwtd> {
+    @Override
+    public int getItemsCount() {
+        return 0;
+    }
+
+    @Override
+    public Fwtd getItem(int index) {
+        return null;
+    }
+
+    @Override
+    public int indexOf(Fwtd o) {
+        return 0;
+    }
+}

+ 4 - 4
app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/SjbqAdapter.java

@@ -8,9 +8,9 @@ import com.zkjc.policedemo.mvp.model.entity.RkbqEntity;
 
 import java.util.List;
 
-public class SjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean.ErListBean.SjListBean> {
+public class SjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean> {
 
-    public SjbqAdapter(List<RkbqEntity.YjListBean.ErListBean.SjListBean> datas) {
+    public SjbqAdapter(List<RkbqEntity.YjListBean> datas) {
         super(datas);
     }
 
@@ -19,8 +19,8 @@ public class SjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean.ErList
         if (holder != null) {
           /*  holder.setOnItemClickListener(R.id.rl_item, position, onRecyclerViewListener);
             holder.setOnItemLongClickListener(R.id.rl_item, position, onRecyclerViewListener);*/
-            RkbqEntity.YjListBean.ErListBean.SjListBean bean = datas.get(position);
-            setItemText(holder.getView(R.id.item_bq), bean.getSjbq());
+            RkbqEntity.YjListBean bean = datas.get(position);
+            setItemText(holder.getView(R.id.item_bq), bean.getName());
             View view = holder.getView(R.id.item_view);
             ImageView next = (ImageView) holder.getView(R.id.next);
             next.setVisibility(View.GONE);

+ 1 - 1
app/src/main/java/com/zkjc/policedemo/mvp/ui/adapter/YjbqAdapter.java

@@ -19,7 +19,7 @@ public class YjbqAdapter extends BaseRecycleAdapter<RkbqEntity.YjListBean> {
             holder.setOnItemClickListener(R.id.rl_item, position, onRecyclerViewListener);
             holder.setOnItemLongClickListener(R.id.rl_item, position, onRecyclerViewListener);
             RkbqEntity.YjListBean bean = datas.get(position);
-            setItemText(holder.getView(R.id.item_bq), bean.getYjbq() + "(" + bean.getErList().size() + ")");
+            setItemText(holder.getView(R.id.item_bq), bean.getName() + "(" + bean.getChildren().size() + ")");
             View view = holder.getView(R.id.item_view);
             if (position == datas.size() - 1) {
                 view.setVisibility(View.GONE);

+ 2 - 2
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/QsMyFragment.java

@@ -348,13 +348,13 @@ public class QsMyFragment extends BaseFragment<QsMyPresenter> implements QsMyCon
             if (!isInDkfw()) {
 
                 ToastUtils.show("不在打卡范围");
-                return;
+//                return;
 
             }
             int sjbj = getCurrentTime().compareTo("12:00:00");
             if (sjbj > 0) {
                 ToastUtils.show("该段时间不允许上班打卡");
-                return;
+//                return;
             }
             String sbdk = sharedPreferences.getString("sbdk", "");
             String tips = "";

+ 105 - 0
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectFwtdDialog.java

@@ -0,0 +1,105 @@
+package com.zkjc.policedemo.mvp.ui.fragment;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.contrarywind.adapter.WheelAdapter;
+import com.contrarywind.listener.OnItemSelectedListener;
+import com.contrarywind.view.WheelView;
+import com.zkjc.common.base.BaseBottomSheetDialogFragment;
+import com.zkjc.common.utils.ScreenUtils;
+import com.zkjc.policedemo.R;
+import com.zkjc.policedemo.mvp.model.entity.Fwtd;
+import com.zkjc.policedemo.mvp.ui.adapter.FwtdAdapter;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class SelectFwtdDialog extends BaseBottomSheetDialogFragment {
+    private TextView mTvTilte;
+    private DialogListener dialogListener;
+
+    public interface DialogListener {
+        void onDialogClick(Fwtd fwtd);
+    }
+
+    @Override
+    protected int getLayoutRes() {
+        return R.layout.pop_wheel;
+    }
+
+    public static SelectFwtdDialog newInstance(String title, ArrayList<Fwtd> list, Fwtd select) {
+        SelectFwtdDialog fragment = new SelectFwtdDialog();
+        Bundle bundle = new Bundle();
+        bundle.putString("title", title);
+        bundle.putSerializable("list", list);
+        bundle.putSerializable("select", select);
+        fragment.setArguments(bundle);
+        return fragment;
+    }
+
+    @Override
+    protected void initData(Bundle savedInstanceState) {
+        mTvTilte = mRootView.findViewById(R.id.tv_title);
+        ImageView ivClose = mRootView.findViewById(R.id.iv_close);
+        WheelView wheelView = mRootView.findViewById(R.id.wheel_view);
+        View tvConfirm = mRootView.findViewById(R.id.tv_confirm);
+
+        String title = getArguments().getString("title");
+        mTvTilte.setText(title);
+        List<Fwtd> list = (List<Fwtd>) getArguments().getSerializable("list");
+        wheelView.setCyclic(false);
+
+        wheelView.setAdapter(new WheelAdapter() {
+            @Override
+            public int getItemsCount() {
+                return list.size();
+            }
+
+            @Override
+            public Object getItem(int index) {
+                return list.get(index).getLabel();
+            }
+
+            @Override
+            public int indexOf(Object o) {
+                return -1;
+            }
+        });
+        Fwtd select = (Fwtd) getArguments().getSerializable("select");
+        if (select != null) {
+            for (int i = 0; i < list.size(); i++) {
+                if (select.getLabel().equals(list.get(i).getLabel())) {
+                    wheelView.setCurrentItem(i);
+                }
+            }
+        } else {
+            wheelView.setCurrentItem(0);
+        }
+        setCancelable(false);
+        ivClose.setOnClickListener(v -> {
+            dismiss();
+        });
+        tvConfirm.setOnClickListener(v -> {
+            dismiss();
+            if (dialogListener != null) {
+                dialogListener.onDialogClick(list.get(wheelView.getCurrentItem()));
+            }
+        });
+    }
+
+    @Override
+    protected int getPeekHeight() {
+        return ScreenUtils.dip2px(getContext(), 400);
+    }
+
+    public void setDialogListener(DialogListener myDialogListener) {
+        this.dialogListener = myDialogListener;
+    }
+}

+ 100 - 0
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectSssqDialog.java

@@ -0,0 +1,100 @@
+package com.zkjc.policedemo.mvp.ui.fragment;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.contrarywind.adapter.WheelAdapter;
+import com.contrarywind.listener.OnItemSelectedListener;
+import com.contrarywind.view.WheelView;
+import com.zkjc.common.base.BaseBottomSheetDialogFragment;
+import com.zkjc.common.utils.ScreenUtils;
+import com.zkjc.policedemo.R;
+import com.zkjc.policedemo.mvp.model.entity.JwsJgEntity;
+import com.zkjc.policedemo.mvp.model.entity.JwsJgEntity.DataBean;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class SelectSssqDialog extends BaseBottomSheetDialogFragment {
+    private TextView mTvTilte;
+    private DialogListener dialogListener;
+
+    public interface DialogListener {
+        void onDialogClick(JwsJgEntity.DataBean sssq);
+    }
+
+    @Override
+    protected int getLayoutRes() {
+        return R.layout.pop_wheel;
+    }
+
+    public static SelectSssqDialog newInstance(String title, ArrayList<JwsJgEntity.DataBean> list, JwsJgEntity.DataBean select) {
+        SelectSssqDialog fragment = new SelectSssqDialog();
+        Bundle bundle = new Bundle();
+        bundle.putString("title", title);
+        bundle.putSerializable("list", list);
+        bundle.putSerializable("select", select);
+        fragment.setArguments(bundle);
+        return fragment;
+    }
+
+    @Override
+    protected void initData(Bundle savedInstanceState) {
+        mTvTilte = mRootView.findViewById(R.id.tv_title);
+        ImageView ivClose = mRootView.findViewById(R.id.iv_close);
+        WheelView wheelView = mRootView.findViewById(R.id.wheel_view);
+        View tvConfirm = mRootView.findViewById(R.id.tv_confirm);
+
+        String title = getArguments().getString("title");
+        mTvTilte.setText(title);
+        List<JwsJgEntity.DataBean> list = (List<JwsJgEntity.DataBean>) getArguments().getSerializable("list");
+        wheelView.setCyclic(false);
+        wheelView.setAdapter(new WheelAdapter() {
+            @Override
+            public int getItemsCount() {
+                return list.size();
+            }
+
+            @Override
+            public Object getItem(int index) {
+                return list.get(index).getDeptName();
+            }
+
+            @Override
+            public int indexOf(Object o) {
+                return -1;
+            }
+        });
+        JwsJgEntity.DataBean select = (JwsJgEntity.DataBean) getArguments().getSerializable("select");
+        if (select != null) {
+            for (int i = 0; i < list.size(); i++) {
+                if (select.getDeptName().equals(list.get(i).getDeptName())) {
+                    wheelView.setCurrentItem(i);
+                }
+            }
+        } else {
+            wheelView.setCurrentItem(0);
+        }
+        setCancelable(false);
+        ivClose.setOnClickListener(v -> {
+            dismiss();
+        });
+        tvConfirm.setOnClickListener(v -> {
+            dismiss();
+            if (dialogListener != null) {
+                dialogListener.onDialogClick(list.get(wheelView.getCurrentItem()));
+            }
+        });
+    }
+
+    @Override
+    protected int getPeekHeight() {
+        return ScreenUtils.dip2px(getContext(), 400);
+    }
+
+    public void setDialogListener(DialogListener myDialogListener) {
+        this.dialogListener = myDialogListener;
+    }
+}

+ 100 - 0
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SelectStringDialog.java

@@ -0,0 +1,100 @@
+package com.zkjc.policedemo.mvp.ui.fragment;
+
+import android.os.Bundle;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.contrarywind.adapter.WheelAdapter;
+import com.contrarywind.listener.OnItemSelectedListener;
+import com.contrarywind.view.WheelView;
+import com.zkjc.common.base.BaseBottomSheetDialogFragment;
+import com.zkjc.common.utils.ScreenUtils;
+import com.zkjc.policedemo.R;
+import com.zkjc.policedemo.mvp.model.entity.JwsJgEntity.DataBean;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class SelectStringDialog extends BaseBottomSheetDialogFragment {
+    private TextView mTvTilte;
+    private DialogListener dialogListener;
+
+    public interface DialogListener {
+        void onDialogClick(String string);
+    }
+
+    @Override
+    protected int getLayoutRes() {
+        return R.layout.pop_wheel;
+    }
+
+    public static SelectStringDialog newInstance(String title, ArrayList<String> list, String select) {
+        SelectStringDialog fragment = new SelectStringDialog();
+        Bundle bundle = new Bundle();
+        bundle.putString("title", title);
+        bundle.putSerializable("list", list);
+        bundle.putSerializable("select", select);
+        fragment.setArguments(bundle);
+        return fragment;
+    }
+
+    @Override
+    protected void initData(Bundle savedInstanceState) {
+        mTvTilte = mRootView.findViewById(R.id.tv_title);
+        ImageView ivClose = mRootView.findViewById(R.id.iv_close);
+        WheelView wheelView = mRootView.findViewById(R.id.wheel_view);
+        View tvConfirm = mRootView.findViewById(R.id.tv_confirm);
+
+        String title = getArguments().getString("title");
+        mTvTilte.setText(title);
+        List<String> list = (List<String>) getArguments().getSerializable("list");
+        wheelView.setCyclic(false);
+        wheelView.setAdapter(new WheelAdapter() {
+            @Override
+            public int getItemsCount() {
+                return list.size();
+            }
+
+            @Override
+            public Object getItem(int index) {
+                return list.get(index);
+            }
+
+            @Override
+            public int indexOf(Object o) {
+                return -1;
+            }
+        });
+        String select = (String) getArguments().getSerializable("select");
+        if (!TextUtils.isEmpty(select)) {
+            for (int i = 0; i < list.size(); i++) {
+                if (select.equals(list.get(i))) {
+                    wheelView.setCurrentItem(i);
+                }
+            }
+        } else {
+            wheelView.setCurrentItem(0);
+        }
+        setCancelable(false);
+        ivClose.setOnClickListener(v -> {
+            dismiss();
+        });
+        tvConfirm.setOnClickListener(v -> {
+            dismiss();
+            if (dialogListener != null) {
+                dialogListener.onDialogClick(list.get(wheelView.getCurrentItem()));
+            }
+        });
+    }
+
+    @Override
+    protected int getPeekHeight() {
+        return ScreenUtils.dip2px(getContext(), 400);
+    }
+
+    public void setDialogListener(DialogListener myDialogListener) {
+        this.dialogListener = myDialogListener;
+    }
+}

+ 84 - 57
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SydwLeftFragment.java

@@ -64,7 +64,6 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
 public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements SydwLeftContract.View {
 
     private static final int REQUEST_CODE_DZ = 100;
-    public static final String QXZ = "请选择";
 
     @BindView(R.id.fxpc_left_tv_name)
     TextView fxpcLeftTvName;
@@ -130,19 +129,18 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
     RelativeLayout rlBzdz;
     @BindView(R.id.sq)
     TextView sq;
-    @BindView(R.id.sp_sssq)
-    Spinner spSssq;
-    @BindView(R.id.sp_jyfs)
-    Spinner spJyfs;
-    @BindView(R.id.sp_dwlx)
-    Spinner spDwlx;
-    @BindView(R.id.sp_sshy)
-    Spinner spSshy;
+    @BindView(R.id.tv_sssq)
+    TextView tvSssq;
+    @BindView(R.id.tv_jyfs)
+    TextView tvJyfs;
+    @BindView(R.id.tv_dwlx)
+    TextView tvDwlx;
+    @BindView(R.id.tv_sshy)
+    TextView tvSshy;
     @BindView(R.id.rl_sssq)
     RelativeLayout rlSssq;
     @BindView(R.id.fxpc_left_tv_next)
     TextView fxpcLeftTvNext;
-    private String sqId;
     private String dzmc;
     private String dzbm;
     private Fwtd mSelectJyfs;
@@ -152,7 +150,7 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
     private ZdAllEntity.DataBean mZd;
     private ArrayList<Fwtd> listHylx;
     private ArrayList<Fwtd> listJyfs;
-    private boolean isFirst = true;
+    private JwsJgEntity.DataBean mSelectSssq;
 
     public static SydwLeftFragment newInstance(ZdAllEntity.DataBean zd, SydwEntity.Sydw sydw, String dzbm, String dzmc) {
         SydwLeftFragment fragment = new SydwLeftFragment();
@@ -197,30 +195,52 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
         mPresenter.getSq();
         initEndDatePicker();
         initStartDatePicker();
-        Fwtd qxz = new Fwtd();
-        qxz.setLabel(QXZ);
-        qxz.setValue(QXZ);
-        qxz.setId(QXZ);
         listJyfs = new ArrayList<>();
-        listJyfs.add(qxz);
         listJyfs.addAll(mZd.getJyfs());
-        spJyfs.setAdapter(new SpFwtdAdapter(listJyfs, getActivity()));
-        spJyfs.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-            @Override
-            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                mSelectJyfs = listJyfs.get(position);
-            }
-
-            @Override
-            public void onNothingSelected(AdapterView<?> parent) {
-
-            }
+        tvJyfs.setOnClickListener(v -> {
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择经营方式", listJyfs, mSelectJyfs);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectJyfs = fwtd;
+                    tvJyfs.setText(mSelectJyfs.getLabel());
+                }
+            });
+            dialog.show(getChildFragmentManager(), "jyfs");
         });
 
         listHylx = new ArrayList<>();
-        listHylx.add(qxz);
         listHylx.addAll(mZd.getHylx());
-        spSshy.setAdapter(new SpFwtdAdapter(listHylx, getActivity()));
+
+        tvSshy.setOnClickListener(v -> {
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择所属行业", listHylx, mSelectSshy);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectSshy = fwtd;
+                    tvSshy.setText(mSelectSshy.getLabel());
+                    mSelectDwlx = null;
+                    tvDwlx.setText("");
+                }
+            });
+            dialog.show(getChildFragmentManager(), "sshy");
+        });
+        tvDwlx.setOnClickListener(v -> {
+            if (mSelectSshy == null) {
+                ToastUtils.show("请先选择所属行业");
+                return;
+            }
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择单位类型", (ArrayList<Fwtd>) mSelectSshy.getDwlxList(), mSelectDwlx);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectDwlx = fwtd;
+                    tvDwlx.setText(mSelectDwlx.getLabel());
+                }
+            });
+            dialog.show(getChildFragmentManager(), "dwlx");
+        });
+        /*spSshy.setAdapter(new SpFwtdAdapter(listHylx, getActivity()));
         spSshy.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
             @Override
             public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
@@ -262,7 +282,7 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
             public void onNothingSelected(AdapterView<?> parent) {
 
             }
-        });
+        });*/
         if (!TextUtils.isEmpty(dzmc)) {
             tvBzdz.setText(dzmc);
         }
@@ -273,18 +293,32 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
     }
 
     private void setNetData(SydwEntity.Sydw sydw) {
+        tvJyfs.setText(sydw.getJyfs());
+
         for (int i = 0; i < listJyfs.size(); i++) {
             Fwtd fwtd = listJyfs.get(i);
             if (fwtd.getLabel().equals(sydw.getJyfs())) {
-                spJyfs.setSelection(i);
+                mSelectJyfs = fwtd;
             }
         }
+        tvSshy.setText(sydw.getHylb());
         for (int i = 0; i < listHylx.size(); i++) {
             Fwtd fwtd = listHylx.get(i);
             if (fwtd.getId().equals(sydw.getHylbDm())) {
-                spSshy.setSelection(i);
+                mSelectSshy = fwtd;
             } 
         }
+        tvDwlx.setText(sydw.getDwlx());
+        if (mSelectSshy != null) {
+            for (int i = 0; i < mSelectSshy.getDwlxList().size(); i++) {
+                Fwtd fwtd = mSelectSshy.getDwlxList().get(i);
+                if (fwtd.getId().equals(sydw.getDwlxDm())) {
+                    mSelectDwlx = fwtd;
+                }
+            }
+        }
+
+
         etName.setText(sydw.getDwmc());
         etId.setText(sydw.getTyshxydm());
         etJyfw.setText(sydw.getZyjyfw());
@@ -419,11 +453,11 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
                 return;
             }
         }
-        if (mSelectSshy == null || QXZ.equals(mSelectSshy.getLabel())) {
+        if (mSelectSshy == null) {
             ToastUtils.show("请选择所属行业");
             return;
         }
-        if (mSelectDwlx == null || QXZ.equals(mSelectDwlx.getLabel())) {
+        if (mSelectDwlx == null) {
             ToastUtils.show("请选择单位类型");
             return;
         }
@@ -431,7 +465,7 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
             ToastUtils.show("请选择标准地址");
             return;
         }
-        if (TextUtils.isEmpty(sqId)) {
+        if (mSelectSssq == null) {
             ToastUtils.show("请选择所属社区");
             return;
         }
@@ -466,7 +500,7 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
         map.put("dwlxDm", mSelectDwlx.getId());
         map.put("zyjyfw", etJyfw.getText().toString().trim());
         map.put("jymj", etJymj.getText().toString().trim());
-        if (mSelectJyfs != null && !QXZ.equals(mSelectJyfs.getLabel())) {
+        if (mSelectJyfs != null) {
             map.put("jyfs", mSelectJyfs.getLabel());
         }
         map.put("yyzzqsrq", tvKssj.getText().toString().trim());
@@ -477,7 +511,7 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
         map.put("zddwbs", swXfbs.isChecked() ? "是" : "否");
         map.put("dzbm", dzbm);
         map.put("dzmc", dzmc);
-        map.put("sssqBm", sqId);
+        map.put("sssqBm", mSelectSssq.getId());
         return map;
     }
 
@@ -486,34 +520,27 @@ public class SydwLeftFragment extends BaseFragment<SydwLeftPresenter> implements
         try {
             JwsJgEntity entity = new Gson().fromJson(result, JwsJgEntity.class);
             List<JwsJgEntity.DataBean> data = entity.getData();
-            JwsJgEntity.DataBean dataBean = new JwsJgEntity.DataBean();
-            dataBean.setDeptName("请选择");
-            dataBean.setId("1");
-            data.add(0, dataBean);
-            spSssq.setAdapter(new JgAdapter(data, getContext()));
+            tvSssq.setOnClickListener(v -> {
+                SelectSssqDialog dialog = SelectSssqDialog.newInstance("请选择所属社区", (ArrayList<JwsJgEntity.DataBean>) data, mSelectSssq);
+                dialog.setDialogListener(new SelectSssqDialog.DialogListener() {
+                    @Override
+                    public void onDialogClick(JwsJgEntity.DataBean sssq) {
+                        mSelectSssq = sssq;
+                        tvSssq.setText(mSelectSssq.getDeptName());
+                    }
+                });
+                dialog.show(getChildFragmentManager(), "sssq");
+            });
             if (mData != null) {
                 for (int i = 0; i < data.size(); i++) {
                     if (data.get(i).getId().equals(mData.getSssqBm())) {
-                        spSssq.setSelection(i);
+                        mSelectSssq = data.get(i);
+                        tvSssq.setText(mSelectSssq.getDeptName());
                     }
                 }
             }
 
 
-            spSssq.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-
-
-                @Override
-                public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                    JwsJgEntity.DataBean dataBean = data.get(position);
-                    sqId = dataBean.getId();
-                }
-
-                @Override
-                public void onNothingSelected(AdapterView<?> parent) {
-
-                }
-            });
 
         } catch (Exception e) {
 

+ 57 - 47
app/src/main/java/com/zkjc/policedemo/mvp/ui/fragment/SydwRightFragment.java

@@ -56,7 +56,6 @@ import butterknife.OnClick;
 import static android.app.Activity.RESULT_OK;
 import static com.jess.arms.utils.Preconditions.checkNotNull;
 import static com.zkjc.policedemo.mvp.ui.activity.RhzfActivity.SFZ;
-import static com.zkjc.policedemo.mvp.ui.fragment.SydwLeftFragment.QXZ;
 
 
 /**
@@ -83,8 +82,8 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
     EditText etFrxm;
     @BindView(R.id.zjlx)
     TextView zjlx;
-    @BindView(R.id.sp_sfzj_type)
-    Spinner spFrZjlx;
+    @BindView(R.id.tv_fr_zjlx)
+    TextView tvFrZjlx;
     @BindView(R.id.rl_zjlx)
     RelativeLayout rlZjlx;
     @BindView(R.id.fr_et_zjhm)
@@ -113,8 +112,8 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
     TextView tv_ls;
     @BindView(R.id.et_bwdh)
     EditText etBwdh;
-    @BindView(R.id.sp_bw_sfzj_type)
-    Spinner spBwZjlx;
+    @BindView(R.id.tv_bw_zjlx)
+    TextView tvBwZjlx;
     @BindView(R.id.tv_one)
     TextView tvOne;
     @BindView(R.id.recyclerView)
@@ -183,53 +182,48 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
         ZdAllEntity.DataBean zd = (ZdAllEntity.DataBean) getArguments().getSerializable("zd");
         mData = (SydwEntity.Sydw) getArguments().getSerializable("sydw");
         listZjzl = new ArrayList<>();
-        Fwtd qxz = new Fwtd();
-        qxz.setLabel(QXZ);
-        qxz.setValue(QXZ);
         Fwtd fwtd = new Fwtd();
         fwtd.setLabel(SFZ);
         fwtd.setValue(SFZ);
 
-        listZjzl.add(qxz);
         listZjzl.add(fwtd);
         listZjzl.addAll(zd.getSfzjzl());
-        spFrZjlx.setAdapter(new SpFwtdAdapter(listZjzl, getContext()));
-        spFrZjlx.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-            @Override
-            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                mSelectFrSfzjzl = listZjzl.get(position);
-                if (!SFZ.equals(mSelectFrSfzjzl.getLabel())) {
-                    layoutFrSfhm.setVisibility(View.GONE);
-                    layoutFrZjhm.setVisibility(View.VISIBLE);
-                } else {
-                    layoutFrZjhm.setVisibility(View.GONE);
-                    layoutFrSfhm.setVisibility(View.VISIBLE);
-                }
-            }
-
-            @Override
-            public void onNothingSelected(AdapterView<?> parent) {
 
-            }
+        tvFrZjlx.setOnClickListener(v -> {
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择证件类型", listZjzl, mSelectFrSfzjzl);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectFrSfzjzl = fwtd;
+                    tvFrZjlx.setText(mSelectFrSfzjzl.getLabel());
+                    if (!SFZ.equals(mSelectFrSfzjzl.getLabel())) {
+                        layoutFrSfhm.setVisibility(View.GONE);
+                        layoutFrZjhm.setVisibility(View.VISIBLE);
+                    } else {
+                        layoutFrZjhm.setVisibility(View.GONE);
+                        layoutFrSfhm.setVisibility(View.VISIBLE);
+                    }
+                }
+            });
+            dialog.show(getChildFragmentManager(), "frzjlx");
         });
-        spBwZjlx.setAdapter(new SpFwtdAdapter(listZjzl, getContext()));
-        spBwZjlx.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
-            @Override
-            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-                mSelectBwSfzjzl = listZjzl.get(position);
-                if (SFZ.equals(mSelectBwSfzjzl.getLabel())) {
-                    layoutBwZjhm.setVisibility(View.GONE);
-                    layoutBwSfhm.setVisibility(View.VISIBLE);
-                } else {
-                    layoutBwSfhm.setVisibility(View.GONE);
-                    layoutBwZjhm.setVisibility(View.VISIBLE);
+        tvBwZjlx.setOnClickListener(v -> {
+            SelectFwtdDialog dialog = SelectFwtdDialog.newInstance("请选择证件类型", listZjzl, mSelectBwSfzjzl);
+            dialog.setDialogListener(new SelectFwtdDialog.DialogListener() {
+                @Override
+                public void onDialogClick(Fwtd fwtd) {
+                    mSelectBwSfzjzl = fwtd;
+                    tvBwZjlx.setText(mSelectBwSfzjzl.getLabel());
+                    if (SFZ.equals(mSelectBwSfzjzl.getLabel())) {
+                        layoutBwZjhm.setVisibility(View.GONE);
+                        layoutBwSfhm.setVisibility(View.VISIBLE);
+                    } else {
+                        layoutBwSfhm.setVisibility(View.GONE);
+                        layoutBwZjhm.setVisibility(View.VISIBLE);
+                    }
                 }
-            }
-
-            @Override
-            public void onNothingSelected(AdapterView<?> parent) {
-
-            }
+            });
+            dialog.show(getChildFragmentManager(), "frzjlx");
         });
         keyboardUtil = new KeyboardUtil(getActivity());
         //身份证键盘
@@ -361,10 +355,26 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
         for (int i = 0; i < listZjzl.size(); i++) {
             Fwtd fwtd = listZjzl.get(i);
             if (fwtd.getLabel().equals(sydw.getFrzjlx())) {
-                spFrZjlx.setSelection(i);
+                mSelectFrSfzjzl = fwtd;
+                tvFrZjlx.setText(mSelectFrSfzjzl.getLabel());
+                if (!SFZ.equals(mSelectFrSfzjzl.getLabel())) {
+                    layoutFrSfhm.setVisibility(View.GONE);
+                    layoutFrZjhm.setVisibility(View.VISIBLE);
+                } else {
+                    layoutFrZjhm.setVisibility(View.GONE);
+                    layoutFrSfhm.setVisibility(View.VISIBLE);
+                }
             }
             if (fwtd.getLabel().equals(sydw.getBwfzrzjlx())) {
-                spBwZjlx.setSelection(i);
+                mSelectBwSfzjzl = fwtd;
+                tvBwZjlx.setText(mSelectBwSfzjzl.getLabel());
+                if (SFZ.equals(mSelectBwSfzjzl.getLabel())) {
+                    layoutBwZjhm.setVisibility(View.GONE);
+                    layoutBwSfhm.setVisibility(View.VISIBLE);
+                } else {
+                    layoutBwSfhm.setVisibility(View.GONE);
+                    layoutBwZjhm.setVisibility(View.VISIBLE);
+                }
             }
         }
         etFrxm.setText(sydw.getFrxm());
@@ -479,7 +489,7 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
             ToastUtils.show("请填写法人姓名");
             return;
         }
-        if (mSelectFrSfzjzl == null || QXZ.equals(mSelectFrSfzjzl.getLabel())) {
+        if (mSelectFrSfzjzl == null) {
             ToastUtils.show("请选择法人证件类型");
             return;
         }
@@ -500,7 +510,7 @@ public class SydwRightFragment extends BaseFragment<SydwRightPresenter> implemen
             ToastUtils.show("请填写保卫负责人姓名");
             return;
         }
-        if (mSelectBwSfzjzl == null || QXZ.equals(mSelectBwSfzjzl.getLabel())) {
+        if (mSelectBwSfzjzl == null) {
             ToastUtils.show("请选择保卫负责人证件类型");
             return;
         }

+ 23 - 7
app/src/main/res/layout/activity_add_chry.xml

@@ -86,6 +86,11 @@
                         android:textColorHint="#999999"
                         android:textSize="14sp" />
 
+                    <View
+                        android:layout_width="match_parent"
+                        android:layout_height="1dp"
+                        android:layout_alignParentBottom="true"
+                        android:background="#e7e7e7" />
 
                 </RelativeLayout>
 
@@ -105,18 +110,29 @@
                         android:textColor="#666666"
                         android:textSize="14sp" />
 
-                    <Spinner
-                        android:id="@+id/sp_zw"
+                    <TextView
+                        android:id="@+id/tv_ryzw"
                         android:layout_width="match_parent"
                         android:layout_height="match_parent"
-                        android:layout_marginLeft="10dp"
-                        android:layout_marginTop="2dp"
+                        android:layout_centerVertical="true"
+                        android:layout_marginRight="8dp"
+                        android:layout_toLeftOf="@id/jt1"
                         android:layout_toRightOf="@id/xslx"
-                        android:layout_marginBottom="2dp"
-                        android:background="@drawable/jx"
-                        android:textColor="#000"
+                        android:background="@null"
+                        android:gravity="right|center_vertical"
+                        android:hint="请选择人员职务"
+                        android:textColor="#111111"
+                        android:textColorHint="#999999"
                         android:textSize="14sp" />
 
+                    <ImageView
+                        android:id="@+id/jt1"
+                        android:layout_width="14dp"
+                        android:layout_height="14dp"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerVertical="true"
+                        android:src="@drawable/right_jt" />
+
                     <View
                         android:layout_width="match_parent"
                         android:layout_height="1dp"

+ 18 - 7
app/src/main/res/layout/activity_add_mzjmh.xml

@@ -156,18 +156,29 @@
                         android:textColor="#666666"
                         android:textSize="14sp" />
 
-                    <Spinner
-                        android:id="@+id/sp_sssq"
+                    <TextView
+                        android:id="@+id/tv_sssq"
                         android:layout_width="match_parent"
                         android:layout_height="match_parent"
-                        android:layout_marginLeft="10dp"
-                        android:layout_marginTop="2dp"
+                        android:layout_centerVertical="true"
+                        android:layout_marginRight="8dp"
+                        android:layout_toLeftOf="@id/jt2"
                         android:layout_toRightOf="@id/sssq"
-                        android:layout_marginBottom="2dp"
-                        android:background="@drawable/jx"
-                        android:textColor="#000"
+                        android:background="@null"
+                        android:gravity="right|center_vertical"
+                        android:hint="请选择所属社区"
+                        android:textColor="#111111"
+                        android:textColorHint="#999999"
                         android:textSize="14sp" />
 
+                    <ImageView
+                        android:id="@+id/jt2"
+                        android:layout_width="14dp"
+                        android:layout_height="14dp"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerVertical="true"
+                        android:src="@drawable/right_jt" />
+
                     <View
                         android:layout_width="match_parent"
                         android:layout_height="1dp"

+ 18 - 7
app/src/main/res/layout/activity_add_sqmy.xml

@@ -73,18 +73,29 @@
                         android:textColor="#666666"
                         android:textSize="14sp" />
 
-                    <Spinner
-                        android:id="@+id/sp_xslx"
+                    <TextView
+                        android:id="@+id/tv_xslx"
                         android:layout_width="match_parent"
                         android:layout_height="match_parent"
-                        android:layout_marginLeft="10dp"
-                        android:layout_marginTop="2dp"
+                        android:layout_centerVertical="true"
+                        android:layout_marginRight="8dp"
+                        android:layout_toLeftOf="@id/jt1"
                         android:layout_toRightOf="@id/xslx"
-                        android:layout_marginBottom="2dp"
-                        android:background="@drawable/jx"
-                        android:textColor="#000"
+                        android:background="@null"
+                        android:gravity="right|center_vertical"
+                        android:hint="请选择线索类型"
+                        android:textColor="#111111"
+                        android:textColorHint="#999999"
                         android:textSize="14sp" />
 
+                    <ImageView
+                        android:id="@+id/jt1"
+                        android:layout_width="14dp"
+                        android:layout_height="14dp"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerVertical="true"
+                        android:src="@drawable/right_jt" />
+
                     <View
                         android:layout_width="match_parent"
                         android:layout_height="1dp"

+ 8 - 0
app/src/main/res/layout/activity_kq_history.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+</LinearLayout>

+ 118 - 1
app/src/main/res/layout/fragment_my.xml

@@ -69,11 +69,128 @@
     </RelativeLayout>
 
     <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:layout_marginLeft="12dp"
+        android:layout_marginTop="6dp"
+        android:layout_below="@id/tv_ssmj"
+        android:layout_marginRight="12dp"
+        android:layout_marginBottom="12dp"
+        android:orientation="horizontal">
+
+        <RelativeLayout
+            android:id="@+id/rl_sbdk"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_weight="1"
+            android:background="@drawable/shape_sbdk">
+
+            <ImageView
+                android:layout_width="70dp"
+                android:layout_height="48dp"
+                android:layout_alignParentBottom="true"
+                android:background="@drawable/pic_my_day" />
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="22dp"
+                android:layout_centerInParent="true"
+                android:text="上班打卡"
+                android:textColor="#fff7a723"
+                android:textSize="16sp" />
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_alignParentBottom="true"
+                android:layout_centerHorizontal="true"
+                android:layout_marginTop="5dp"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:id="@+id/tv_sbwdk"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:layout_marginLeft="8dp"
+                    android:text="未打卡"
+                    android:textColor="#fff7a723"
+                    android:textSize="14sp" />
+
+                <TextView
+                    android:id="@+id/tv_sbydk"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:layout_marginLeft="8dp"
+                    android:text=""
+                    android:textColor="#fff7a723"
+                    android:textSize="14sp"
+                    android:visibility="gone" />
+            </LinearLayout>
+        </RelativeLayout>
+
+        <RelativeLayout
+            android:id="@+id/rl_xbdk"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_marginLeft="11dp"
+            android:layout_weight="1"
+            android:background="@drawable/shape_xbdk">
+
+            <ImageView
+                android:layout_width="70dp"
+                android:layout_height="48dp"
+                android:layout_alignParentBottom="true"
+                android:background="@drawable/pic_my_night" />
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="22dp"
+                android:layout_centerInParent="true"
+                android:text="下班打卡"
+                android:textColor="#ff106dff"
+                android:textSize="16sp" />
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_alignParentBottom="true"
+                android:layout_centerHorizontal="true"
+                android:layout_marginTop="5dp"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:id="@+id/tv_xbwdk"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:layout_marginLeft="8dp"
+                    android:text="未打卡"
+                    android:textColor="#ff106dff"
+                    android:textSize="14sp" />
+
+                <TextView
+                    android:id="@+id/tv_xbydk"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:layout_marginLeft="8dp"
+                    android:text=""
+                    android:textColor="#ff106dff"
+                    android:textSize="14sp"
+                    android:visibility="gone" />
+            </LinearLayout>
+        </RelativeLayout>
+
+    </LinearLayout>
+
+    <LinearLayout
         android:id="@+id/cardview_help"
         android:layout_width="match_parent"
         android:layout_height="41dp"
         android:layout_marginLeft="14dp"
-        android:layout_marginTop="44dp"
+        android:layout_marginTop="24dp"
         android:layout_marginRight="14dp"
         android:background="@drawable/bg_shape_white"
         android:orientation="vertical">

+ 90 - 42
app/src/main/res/layout/fragment_sydw_left.xml

@@ -40,12 +40,12 @@
                 <EditText
                     android:id="@+id/fxpc_left_et_name"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
                     android:layout_centerVertical="true"
                     android:layout_marginRight="5dp"
                     android:layout_toRightOf="@id/fxpc_left_tv_name"
                     android:background="@null"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入单位名称"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -80,11 +80,11 @@
                 <EditText
                     android:id="@+id/fxpc_left_et_id"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/fxpc_left_tv_id"
                     android:background="@null"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入社会统一代码"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -116,17 +116,29 @@
                     android:textColor="#666666"
                     android:textSize="14sp" />
 
-                <Spinner
-                    android:id="@+id/sp_sshy"
+                <TextView
+                    android:id="@+id/tv_sshy"
                     android:layout_width="match_parent"
                     android:layout_height="match_parent"
+                    android:layout_centerVertical="true"
+                    android:layout_marginRight="8dp"
+                    android:layout_toLeftOf="@id/jt_sshy"
                     android:layout_toRightOf="@id/sshy"
-                    android:layout_marginLeft="10dp"
-                    android:layout_marginTop="2dp"
-                    android:layout_marginBottom="2dp"
-                    android:textColor="#000"
+                    android:background="@null"
+                    android:gravity="right|center_vertical"
+                    android:hint="请选择所属行业"
+                    android:textColor="#111111"
+                    android:textColorHint="#999999"
                     android:textSize="14sp" />
 
+                <ImageView
+                    android:id="@+id/jt_sshy"
+                    android:layout_width="14dp"
+                    android:layout_height="14dp"
+                    android:layout_alignParentRight="true"
+                    android:layout_centerVertical="true"
+                    android:src="@drawable/right_jt" />
+
                 <View
                     android:layout_width="match_parent"
                     android:layout_height="1dp"
@@ -154,17 +166,29 @@
                     android:textSize="14sp" />
 
 
-                <Spinner
-                    android:id="@+id/sp_dwlx"
+                <TextView
+                    android:id="@+id/tv_dwlx"
                     android:layout_width="match_parent"
                     android:layout_height="match_parent"
+                    android:layout_centerVertical="true"
+                    android:layout_marginRight="8dp"
+                    android:layout_toLeftOf="@id/jt_dwlx"
                     android:layout_toRightOf="@id/dwlx"
-                    android:layout_marginLeft="10dp"
-                    android:layout_marginTop="2dp"
-                    android:layout_marginBottom="2dp"
-                    android:textColor="#000"
+                    android:background="@null"
+                    android:gravity="right|center_vertical"
+                    android:hint="请选择单位类型"
+                    android:textColor="#111111"
+                    android:textColorHint="#999999"
                     android:textSize="14sp" />
 
+                <ImageView
+                    android:id="@+id/jt_dwlx"
+                    android:layout_width="14dp"
+                    android:layout_height="14dp"
+                    android:layout_alignParentRight="true"
+                    android:layout_centerVertical="true"
+                    android:src="@drawable/right_jt" />
+
                 <View
                     android:layout_width="match_parent"
                     android:layout_height="1dp"
@@ -192,11 +216,12 @@
                 <EditText
                     android:id="@+id/et_jyfw"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
+                    android:minHeight="50dp"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/jyfw"
                     android:background="@null"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入经营范围"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -212,7 +237,7 @@
 
             <RelativeLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+                android:layout_height="50dp"
                 android:minHeight="50dp"
                 android:paddingLeft="12dp"
                 android:paddingRight="12dp">
@@ -229,12 +254,12 @@
                 <EditText
                     android:id="@+id/et_jymj"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/jymj"
                     android:background="@null"
                     android:inputType="numberDecimal"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入经营面积(㎡)"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -263,18 +288,29 @@
                     android:textColor="#666666"
                     android:textSize="14sp" />
 
-                <Spinner
-                    android:id="@+id/sp_jyfs"
+                <TextView
+                    android:id="@+id/tv_jyfs"
                     android:layout_width="match_parent"
                     android:layout_height="match_parent"
+                    android:layout_centerVertical="true"
+                    android:layout_marginRight="8dp"
+                    android:layout_toLeftOf="@id/jt_jjfs"
                     android:layout_toRightOf="@id/jyfs"
-                    android:layout_marginLeft="10dp"
-                    android:layout_marginTop="2dp"
-                    android:layout_marginBottom="2dp"
-                    android:background="@drawable/jx"
-                    android:textColor="#000"
+                    android:background="@null"
+                    android:gravity="right|center_vertical"
+                    android:hint="请选择经营方式"
+                    android:textColor="#111111"
+                    android:textColorHint="#999999"
                     android:textSize="14sp" />
 
+                <ImageView
+                    android:id="@+id/jt_jjfs"
+                    android:layout_width="14dp"
+                    android:layout_height="14dp"
+                    android:layout_alignParentRight="true"
+                    android:layout_centerVertical="true"
+                    android:src="@drawable/right_jt" />
+
 
                 <View
                     android:layout_width="match_parent"
@@ -380,7 +416,7 @@
 
             <RelativeLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+                android:layout_height="50dp"
                 android:minHeight="50dp"
                 android:paddingLeft="12dp"
                 android:paddingRight="12dp">
@@ -397,11 +433,11 @@
                 <EditText
                     android:id="@+id/et_zczj"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/zj"
                     android:background="@null"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入注册资金"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -417,7 +453,7 @@
 
             <RelativeLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+                android:layout_height="50dp"
                 android:minHeight="50dp"
                 android:paddingLeft="12dp"
                 android:paddingRight="12dp">
@@ -434,12 +470,12 @@
                 <EditText
                     android:id="@+id/et_lxdh"
                     android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
+                    android:layout_height="match_parent"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/dh"
                     android:background="@null"
                     android:inputType="phone"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入联系电话"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -473,10 +509,11 @@
                     android:id="@+id/et_wz"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
+                    android:minHeight="50dp"
                     android:layout_centerVertical="true"
                     android:layout_toRightOf="@id/wz"
                     android:background="@null"
-                    android:gravity="right"
+                    android:gravity="right|center_vertical"
                     android:hint="请输入网址"
                     android:textColor="#111111"
                     android:textColorHint="#999999"
@@ -590,17 +627,28 @@
                     android:textColor="#666666"
                     android:textSize="14sp" />
 
-                <Spinner
-                    android:id="@+id/sp_sssq"
+                <TextView
+                    android:id="@+id/tv_sssq"
                     android:layout_width="match_parent"
                     android:layout_height="match_parent"
+                    android:layout_centerVertical="true"
+                    android:layout_marginRight="8dp"
+                    android:layout_toLeftOf="@id/jt_sssq"
                     android:layout_toRightOf="@id/sq"
-                    android:layout_marginLeft="10dp"
-                    android:layout_marginTop="2dp"
-                    android:layout_marginBottom="2dp"
-                    android:background="@drawable/jx"
-                    android:textColor="#000"
+                    android:background="@null"
+                    android:gravity="right|center_vertical"
+                    android:hint="请选择所属社区"
+                    android:textColor="#111111"
+                    android:textColorHint="#999999"
                     android:textSize="14sp" />
+
+                <ImageView
+                    android:id="@+id/jt_sssq"
+                    android:layout_width="14dp"
+                    android:layout_height="14dp"
+                    android:layout_alignParentRight="true"
+                    android:layout_centerVertical="true"
+                    android:src="@drawable/right_jt" />
                 <View
                     android:layout_width="match_parent"
                     android:layout_height="1dp"

+ 36 - 30
app/src/main/res/layout/fragment_sydw_right.xml

@@ -102,25 +102,28 @@
                         android:textColor="#666666"
                         android:textSize="14sp" />
 
-                    <RelativeLayout
+                    <TextView
+                        android:id="@+id/tv_fr_zjlx"
                         android:layout_width="match_parent"
-                        android:layout_centerVertical="true"
                         android:layout_height="match_parent"
-                        android:layout_marginTop="2dp"
-                        android:layout_marginBottom="2dp"
-                        android:layout_marginLeft="20dp"
+                        android:layout_centerVertical="true"
+                        android:layout_marginRight="8dp"
+                        android:layout_toLeftOf="@id/jt1"
                         android:layout_toRightOf="@id/zjlx"
-                        android:background="@drawable/jx">
-
-                        <Spinner
-                            android:id="@+id/sp_sfzj_type"
-                            android:layout_width="match_parent"
-                            android:layout_height="match_parent"
-                            android:layout_gravity="center"
-                            android:textColor="#000"
-                            android:textSize="12sp" />
+                        android:background="@null"
+                        android:gravity="right|center_vertical"
+                        android:hint="请选择人员证件类型"
+                        android:textColor="#111111"
+                        android:textColorHint="#999999"
+                        android:textSize="14sp" />
 
-                    </RelativeLayout>
+                    <ImageView
+                        android:id="@+id/jt1"
+                        android:layout_width="14dp"
+                        android:layout_height="14dp"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerVertical="true"
+                        android:src="@drawable/right_jt" />
                     <View
                         android:layout_width="match_parent"
                         android:layout_height="1dp"
@@ -328,25 +331,28 @@
                         android:textColor="#666666"
                         android:textSize="14sp" />
 
-                    <RelativeLayout
+                    <TextView
+                        android:id="@+id/tv_bw_zjlx"
                         android:layout_width="match_parent"
-                        android:layout_centerVertical="true"
                         android:layout_height="match_parent"
-                        android:layout_marginTop="2dp"
-                        android:layout_marginBottom="2dp"
-                        android:layout_marginLeft="20dp"
+                        android:layout_centerVertical="true"
+                        android:layout_marginRight="8dp"
+                        android:layout_toLeftOf="@id/jt2"
                         android:layout_toRightOf="@id/bw_zjlx"
-                        android:background="@drawable/jx">
-
-                        <Spinner
-                            android:id="@+id/sp_bw_sfzj_type"
-                            android:layout_width="match_parent"
-                            android:layout_height="match_parent"
-                            android:layout_gravity="center"
-                            android:textColor="#000"
-                            android:textSize="12sp" />
+                        android:background="@null"
+                        android:gravity="right|center_vertical"
+                        android:hint="请选择人员证件类型"
+                        android:textColor="#111111"
+                        android:textColorHint="#999999"
+                        android:textSize="14sp" />
 
-                    </RelativeLayout>
+                    <ImageView
+                        android:id="@+id/jt2"
+                        android:layout_width="14dp"
+                        android:layout_height="14dp"
+                        android:layout_alignParentRight="true"
+                        android:layout_centerVertical="true"
+                        android:src="@drawable/right_jt" />
 
 
                     <View

+ 1 - 1
app/src/main/res/layout/pop_cyry_zy.xml

@@ -20,7 +20,7 @@
             android:gravity="center"
             android:layout_marginTop="8dp"
             android:textSize="16sp"
-            android:text="请选择当前场所状态"
+            android:text="请选择此人职业"
             android:textColor="#000" />
 
         <LinearLayout

+ 61 - 0
app/src/main/res/layout/pop_wheel.xml

@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@drawable/dialog_white"
+    android:orientation="vertical">
+
+    <RelativeLayout
+        android:layout_width="match_parent"
+        android:layout_height="65dp">
+
+        <TextView
+            android:id="@+id/tv_title"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerVertical="true"
+            android:layout_marginLeft="20dp"
+            android:text="请选择"
+            android:textColor="#ff111111"
+            android:textSize="18sp" />
+
+        <ImageView
+            android:id="@+id/iv_close"
+            android:layout_width="18dp"
+            android:layout_height="18dp"
+            android:layout_alignParentRight="true"
+            android:layout_centerVertical="true"
+            android:layout_marginRight="20dp"
+            android:background="@drawable/icon_closed" />
+
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="1dp"
+            android:layout_alignParentBottom="true"
+            android:background="#F8F8F8" />
+    </RelativeLayout>
+
+
+    <com.contrarywind.view.WheelView
+        android:id="@+id/wheel_view"
+        android:layout_width="match_parent"
+        android:layout_height="220dp"
+        android:layout_margin="12dp"
+        android:layout_marginBottom="20dp" />
+
+    <TextView
+        android:id="@+id/tv_confirm"
+        android:layout_width="match_parent"
+        android:layout_height="44dp"
+        android:layout_marginLeft="12dp"
+        android:layout_marginRight="12dp"
+        android:layout_marginBottom="20dp"
+        android:background="@drawable/bg_selector_fxpc_next"
+        android:enabled="true"
+        android:gravity="center"
+        android:text="确定"
+        android:textColor="@color/white"
+        android:textSize="18sp" />
+
+</LinearLayout>