Browse Source

代码提交

huyuguo 4 years ago
parent
commit
63b52c4d3c

BIN
app/.DS_Store


+ 4 - 0
app/build.gradle

@ -239,4 +239,8 @@ dependencies {
239 239
240 240
    // 使用微信分享、登录、收藏、支付等功能需要的库以及文件
241 241
    implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.6.4'
242
//    implementation 'com.squareup.picasso:picasso:2.71828'
243
244
245
242 246
}

+ 5 - 3
app/src/main/AndroidManifest.xml

@ -71,18 +71,20 @@
71 71
        android:resizeableActivity="true"
72 72
        android:theme="@style/AppTheme"
73 73
        tools:ignore="LockedOrientationActivity">
74
        <activity android:name=".activity.CarOwnerCertificateListActivity"></activity>
74 75
        <activity
75 76
            android:name=".activity.PrivacyAgreementActivity"
76 77
            android:screenOrientation="portrait">
77 78
            <intent-filter>
78 79
                <action android:name="android.intent.action.MAIN" />
80
79 81
                <category android:name="android.intent.category.LAUNCHER" />
80 82
            </intent-filter>
81 83
        </activity>
82 84
        <activity
83 85
            android:name=".activity.CarModelActivity"
84 86
            android:launchMode="singleTop"
85
            android:screenOrientation="portrait"></activity>
87
            android:screenOrientation="portrait" />
86 88
        <activity
87 89
            android:name=".activity.CarBrandActivity"
88 90
            android:launchMode="singleTop"
@ -91,7 +93,7 @@
91 93
            android:name=".activity.CarOwnerCertificateActivity"
92 94
            android:launchMode="singleTask"
93 95
            android:screenOrientation="portrait" />
94
        <activity android:name=".activity.SearchAllActivity"></activity>
96
        <activity android:name=".activity.SearchAllActivity" />
95 97
        <activity android:name=".activity.ShareTwoPictureActivity" />
96 98
        <activity
97 99
            android:name=".activity.RecommendChargingStationActivity"
@ -107,7 +109,7 @@
107 109
            android:label="@string/app_name"
108 110
            android:launchMode="singleTop"
109 111
            android:screenOrientation="portrait"
110
            android:windowSoftInputMode="stateHidden|adjustUnspecified"></activity>
112
            android:windowSoftInputMode="stateHidden|adjustUnspecified" />
111 113
        <activity
112 114
            android:name=".activity.MainActicity"
113 115
            android:configChanges="keyboardHidden|orientation"

+ 58 - 12
app/src/main/java/com/electric/chargingpile/activity/CarOwnerCertificateActivity.java

@ -27,6 +27,7 @@ import android.widget.Toast;
27 27
import com.bumptech.glide.Glide;
28 28
import com.electric.chargingpile.R;
29 29
import com.electric.chargingpile.application.MainApplication;
30
import com.electric.chargingpile.data.CarOwnerCertificateBean;
30 31
import com.electric.chargingpile.entity.CarBrandGroupEntity;
31 32
import com.electric.chargingpile.entity.CarSeriesEntity;
32 33
import com.electric.chargingpile.event.CarBrandEvent;
@ -115,6 +116,8 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
115 116
    private EditText register_date;
116 117
117 118
    private String drivingLicenseBase64Data;
119
    private Boolean edit;
120
    private CarOwnerCertificateBean carOwnerCertificateBean;
118 121
119 122
    @Override
120 123
    protected void onCreate(Bundle savedInstanceState) {
@ -133,6 +136,13 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
133 136
        loadDialog = new LoadingDialog(this);
134 137
        loadDialog.setCanceledOnTouchOutside(false);
135 138
139
        edit = getIntent().getBooleanExtra("edit", false);
140
        if (edit) {
141
            String data = getIntent().getStringExtra("data");
142
            Gson gson = new Gson();
143
            carOwnerCertificateBean = gson.fromJson(data, CarOwnerCertificateBean.class);
144
        }
145
136 146
        insertDialog = new ProgressDialog(this);
137 147
        insertDialog.setMessage("正在插入图片...");
138 148
        insertDialog.setCanceledOnTouchOutside(false);
@ -181,6 +191,28 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
181 191
182 192
        submit_btn = findViewById(R.id.submit_btn);
183 193
        submit_btn.setOnClickListener(this);
194
195
        if (edit) {
196
            Gson gson = new Gson();
197
            CarSerieEvent event = new CarSerieEvent(gson.fromJson(carOwnerCertificateBean.getChexing(), CarSeriesEntity.class));
198
            onCarSeriesMessage(event);
199
            if ("自用".equals(carOwnerCertificateBean.getCartype())) {
200
                drivingLicenseType = "自用";
201
                driving_license_type_first.setCompoundDrawables(selected, null, null, null);
202
                driving_license_type_second.setCompoundDrawables(normal, null, null, null);
203
                driving_license_type_third.setCompoundDrawables(normal, null, null, null);
204
            } else if ("运营".equals(carOwnerCertificateBean.getCartype())) {
205
                drivingLicenseType = "运营";
206
                driving_license_type_first.setCompoundDrawables(normal, null, null, null);
207
                driving_license_type_second.setCompoundDrawables(selected, null, null, null);
208
                driving_license_type_third.setCompoundDrawables(normal, null, null, null);
209
            } else if ("公务".equals(carOwnerCertificateBean.getCartype())) {
210
                drivingLicenseType = "公务";
211
                driving_license_type_first.setCompoundDrawables(normal, null, null, null);
212
                driving_license_type_second.setCompoundDrawables(normal, null, null, null);
213
                driving_license_type_third.setCompoundDrawables(selected, null, null, null);
214
            }
215
        }
184 216
    }
185 217
186 218
    private void brandListRequest(Boolean showLoading) {
@ -278,7 +310,7 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
278 310
            car_model_selected_constraint_layout.setVisibility(View.VISIBLE);
279 311
            car_name.setText(carSeriesEntity.getBrandName());
280 312
            car_series.setText(carSeriesEntity.getSeriesName());
281
            Glide.with(CarOwnerCertificateActivity.this).load(carSeriesEntity.getIcon()).placeholder(android.R.color.white).fitCenter().into(car_icon);
313
            Glide.with(CarOwnerCertificateActivity.this).load(carSeriesEntity.getMasterPic()).placeholder(android.R.color.white).fitCenter().into(car_icon);
282 314
        } else {
283 315
            carSeriesEntity = null;
284 316
            car_model_constraint_layout.setVisibility(View.VISIBLE);
@ -486,22 +518,37 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
486 518
        insertDialog.show();
487 519
488 520
        String url = MainApplication.url + "/zhannew/basic/web/index.php/car/add";
521
        if (edit) {
522
            url = url + "?id=" + carOwnerCertificateBean.getId();
523
        }
489 524
        Map<String, String> map = new HashMap<>();
490
        map.put("brand_id", carSeriesEntity.getBrandId());
491
        map.put("brand_name", carSeriesEntity.getBrandName());
492
        map.put("company_id", carSeriesEntity.getCompanyId());
493
        map.put("icon", carSeriesEntity.getIcon());
494
        map.put("series_id", carSeriesEntity.getSeriesId());
495
        map.put("chexing", carSeriesEntity.getSeriesName());
525
        Gson gson = new Gson();
526
        String chexing = gson.toJson(carSeriesEntity);
527
        map.put("chexing", chexing);
528
496 529
        if (drivingLicenseBase64Data != null) {
497 530
            map.put("license_img1", drivingLicenseBase64Data);
498 531
            map.put("plate_number", plate_num.getText().toString().trim());
499 532
            map.put("engine_number", engine_num.getText().toString().trim());
500 533
            map.put("regdate", register_date.getText().toString().trim());
501 534
        }
502
        map.put("cartype",drivingLicenseType);
535
        map.put("cartype", drivingLicenseType);
503 536
        map.put("userid", MainApplication.userId);
504
        OkHttpUtils.postString().url(url).content(new Gson().toJson(map)).mediaType(MediaType.parse("application/json; charset=utf-8")).build().execute(new StringCallback() {
537
538
        long appTime11 = System.currentTimeMillis() / 1000;
539
        long updatetime1 = appTime11 - MainMapActivity.cha - 5;
540
        String token1 = String.valueOf(updatetime1);
541
        String encode_token = null;
542
        try {
543
            encode_token = DES3.encode(token1);
544
        } catch (Exception e) {
545
            e.printStackTrace();
546
        }
547
        String replace = URLEncoder.encode(encode_token);
548
        map.put("token", replace);
549
550
//        OkHttpUtils.postString().url(url).content(new Gson().toJson(map)).mediaType(MediaType.parse("application/json; charset=utf-8"))
551
        OkHttpUtils.post().params(map).url(url).build().execute(new StringCallback() {
505 552
            @Override
506 553
            public void onError(Call call, Exception e) {
507 554
                insertDialog.dismiss();
@ -518,8 +565,8 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
518 565
                    ToastUtil.showToast(getApplicationContext(), "数据提交成功", Toast.LENGTH_SHORT);
519 566
                    finish();
520 567
                } else {
521
                    String message = JsonUtils.getKeyResult(response, "Message");
522
                    ToastUtil.showToast(getApplicationContext(), message, Toast.LENGTH_SHORT);
568
                    String rtnMsg = JsonUtils.getKeyResult(response, "rtnMsg");
569
                    ToastUtil.showToast(getApplicationContext(), rtnMsg, Toast.LENGTH_SHORT);
523 570
                }
524 571
            }
525 572
        });
@ -527,7 +574,6 @@ public class CarOwnerCertificateActivity extends AppCompatActivity implements Vi
527 574
528 575
    @Override
529 576
    public void onPermissionsGranted(int requestCode, List<String> perms) {
530
531 577
    }
532 578
533 579
    @Override

+ 193 - 0
app/src/main/java/com/electric/chargingpile/activity/CarOwnerCertificateListActivity.java

@ -0,0 +1,193 @@
1
package com.electric.chargingpile.activity;
2
3
import androidx.appcompat.app.AppCompatActivity;
4
import androidx.recyclerview.widget.LinearLayoutManager;
5
import androidx.recyclerview.widget.RecyclerView;
6
7
import android.content.Intent;
8
import android.os.Bundle;
9
import android.util.Log;
10
import android.view.View;
11
import android.widget.ImageView;
12
import android.widget.TextView;
13
import android.widget.Toast;
14
15
import com.electric.chargingpile.R;
16
import com.electric.chargingpile.adapter.CarOwnerCertificateListAdapter;
17
import com.electric.chargingpile.application.MainApplication;
18
import com.electric.chargingpile.data.CarOwnerCertificateBean;
19
import com.electric.chargingpile.iview.RecyclerItemTypeClickListener;
20
import com.electric.chargingpile.util.JsonUtils;
21
import com.electric.chargingpile.util.LoadingDialog;
22
import com.google.gson.Gson;
23
import com.zhy.http.okhttp.OkHttpUtils;
24
import com.zhy.http.okhttp.callback.StringCallback;
25
26
import java.util.List;
27
28
import okhttp3.Call;
29
30
public class CarOwnerCertificateListActivity extends AppCompatActivity {
31
32
    private LoadingDialog loadDialog;
33
    private RecyclerView recycler_view;
34
    private TextView add;
35
    private CarOwnerCertificateListAdapter adapter;
36
    private TextView no_data;
37
38
    private boolean firstTime;
39
40
    @Override
41
    protected void onCreate(Bundle savedInstanceState) {
42
        super.onCreate(savedInstanceState);
43
        setContentView(R.layout.activity_car_owner_certificate_list);
44
        initView();
45
    }
46
47
    private void initView() {
48
        loadDialog = new LoadingDialog(this);
49
        loadDialog.setCanceledOnTouchOutside(false);
50
        firstTime = false;
51
        findViewById(R.id.iv_back).setOnClickListener(new View.OnClickListener() {
52
            @Override
53
            public void onClick(View v) {
54
                finish();
55
            }
56
        });
57
58
        add = findViewById(R.id.add);
59
        add.setOnClickListener(new View.OnClickListener() {
60
            @Override
61
            public void onClick(View v) {
62
                startActivity(new Intent(getApplication(), CarOwnerCertificateActivity.class));
63
            }
64
        });
65
66
        no_data = findViewById(R.id.no_data);
67
68
        String data = getIntent().getStringExtra("data");
69
        List<CarOwnerCertificateBean> list = JsonUtils.parseToObjectList(data, CarOwnerCertificateBean.class);
70
        if (list.size() >= 3) {
71
            add.setVisibility(View.GONE);
72
        }
73
        recycler_view = findViewById(R.id.recycler_view);
74
        adapter = new CarOwnerCertificateListAdapter(this, list);
75
        recycler_view.setLayoutManager(new LinearLayoutManager(this));
76
        recycler_view.setAdapter(adapter);
77
        adapter.setRecyclerItemTypeClickListener(new RecyclerItemTypeClickListener() {
78
            @Override
79
            public void onItemClickListener(int position, int index) { // index 1:删除操作 2:编辑操作 3:设为主车型
80
81
                CarOwnerCertificateBean bean = list.get(position);
82
                if (index == 1) {
83
                    deleteCarOwnerCertificate(bean.getId());
84
                } else if (index == 2) {
85
                    Intent intent = new Intent(CarOwnerCertificateListActivity.this, CarOwnerCertificateActivity.class);
86
                    Gson gson = new Gson();
87
                    String data = gson.toJson(bean);
88
                    intent.putExtra("data", data);
89
                    intent.putExtra("edit", true);
90
                    startActivity(intent);
91
                } else if (index == 3) {
92
                    setCarOwnerCertificateMain(bean.getId());
93
                }
94
            }
95
        });
96
    }
97
98
    @Override
99
    protected void onResume() {
100
        super.onResume();
101
        if (firstTime) {
102
            getCarOwnerCertificateList();
103
        } else {
104
            firstTime = true;
105
        }
106
    }
107
108
    private void deleteCarOwnerCertificate(int id) {
109
        loadDialog.show();
110
        String url = MainApplication.url + "/zhannew/basic/web/index.php/car/del?userid=" + MainApplication.userId + "&id=" + id;
111
        OkHttpUtils.get().url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
112
            @Override
113
            public void onError(Call call, Exception e) {
114
                e.printStackTrace();
115
                loadDialog.dismiss();
116
                Toast.makeText(getApplicationContext(), e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
117
            }
118
119
            @Override
120
            public void onResponse(String response) {
121
                loadDialog.dismiss();
122
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
123
                if ("01".equals(rtnCode)) {
124
                    Toast.makeText(getApplicationContext(), "删除成功", Toast.LENGTH_SHORT).show();
125
                    loadDialog.show();
126
                    getCarOwnerCertificateList();
127
                } else {
128
                    String rtnMsg = JsonUtils.getKeyResult(response, "rtnMsg");
129
                    Toast.makeText(getApplicationContext(), rtnMsg, Toast.LENGTH_SHORT).show();
130
                }
131
            }
132
        });
133
    }
134
135
    private void setCarOwnerCertificateMain(int id) {
136
        loadDialog.show();
137
        String url = MainApplication.url + "/zhannew/basic/web/index.php/car/setmain?userid=" + MainApplication.userId + "&id=" + id;
138
        OkHttpUtils.get().url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
139
            @Override
140
            public void onError(Call call, Exception e) {
141
                e.printStackTrace();
142
                loadDialog.dismiss();
143
                Toast.makeText(getApplicationContext(), e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
144
            }
145
146
            @Override
147
            public void onResponse(String response) {
148
                loadDialog.dismiss();
149
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
150
                if ("01".equals(rtnCode)) {
151
                    loadDialog.show();
152
                    getCarOwnerCertificateList();
153
                } else {
154
                    String rtnMsg = JsonUtils.getKeyResult(response, "rtnMsg");
155
                    Toast.makeText(getApplicationContext(), rtnMsg, Toast.LENGTH_SHORT).show();
156
                }
157
            }
158
        });
159
    }
160
161
    private void getCarOwnerCertificateList() {
162
        String url = MainApplication.url + "/zhannew/basic/web/index.php/car/my?userid=" + MainApplication.userId;
163
        OkHttpUtils.get().url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
164
            @Override
165
            public void onError(Call call, Exception e) {
166
                e.printStackTrace();
167
                loadDialog.dismiss();
168
                Toast.makeText(getApplicationContext(), e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
169
            }
170
171
            @Override
172
            public void onResponse(String response) {
173
                loadDialog.dismiss();
174
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
175
                if ("01".equals(rtnCode)) {
176
                    String data = JsonUtils.getKeyResult(response, "data");
177
                    List<CarOwnerCertificateBean> list = JsonUtils.parseToObjectList(data, CarOwnerCertificateBean.class);
178
                    adapter.setData(list);
179
                    no_data.setVisibility(list.size() == 0 ? View.VISIBLE : View.GONE);
180
181
                    if (list.size() >= 3) {
182
                        add.setVisibility(View.GONE);
183
                    } else {
184
                        add.setVisibility(View.VISIBLE);
185
                    }
186
                } else {
187
                    String rtnMsg = JsonUtils.getKeyResult(response, "rtnMsg");
188
                    Toast.makeText(getApplicationContext(), rtnMsg, Toast.LENGTH_SHORT).show();
189
                }
190
            }
191
        });
192
    }
193
}

+ 40 - 4
app/src/main/java/com/electric/chargingpile/activity/UserCenterActivity.java

@ -47,9 +47,12 @@ import com.blankj.utilcode.util.ActivityUtils;
47 47
import com.blankj.utilcode.util.BarUtils;
48 48
import com.electric.chargingpile.R;
49 49
import com.electric.chargingpile.application.MainApplication;
50
import com.electric.chargingpile.data.Adin;
51
import com.electric.chargingpile.data.CarOwnerCertificateBean;
50 52
import com.electric.chargingpile.manager.ProfileManager;
51 53
import com.electric.chargingpile.util.DES3;
52 54
import com.electric.chargingpile.util.JsonUtils;
55
import com.electric.chargingpile.util.LoadingDialog;
53 56
import com.electric.chargingpile.util.NetUtil;
54 57
import com.electric.chargingpile.util.OkHttpUtil;
55 58
import com.electric.chargingpile.util.PicassoUtil;
@ -130,6 +133,7 @@ public class UserCenterActivity extends Activity implements View.OnClickListener
130 133
    private String now_temperature = "", now_weather = "", temperature = "";
131 134
    //    String imageUrl = MainApplication.userIcon;
132 135
    Bitmap usericonbt;
136
    private LoadingDialog loadDialog;
133 137
    private TextView tv_qaNum, tv_messageNum;
134 138
    private static final int RC_CAMERA_PERM = 123;
135 139
@ -239,6 +243,8 @@ public class UserCenterActivity extends Activity implements View.OnClickListener
239 243
    };
240 244
241 245
    private void initView() {
246
        loadDialog = new LoadingDialog(this);
247
        loadDialog.setCanceledOnTouchOutside(false);
242 248
        mquery = new WeatherSearchQuery(MainMapActivity.location_city, WeatherSearchQuery.WEATHER_TYPE_FORECAST);
243 249
        mweathersearch = new WeatherSearch(this);
244 250
        mweathersearch.setOnWeatherSearchListener(this);
@ -781,10 +787,7 @@ public class UserCenterActivity extends Activity implements View.OnClickListener
781 787
                    Toast.makeText(getApplication(), "请先登录", Toast.LENGTH_SHORT).show();
782 788
                    startActivity(new Intent(getApplication(), LoginActivity.class));
783 789
                } else {
784
                    // 列表接口
785
                    // 1.无认证记录
786
                    startActivity(new Intent(getApplication(), CarOwnerCertificateActivity.class));
787
//                    MobclickAgent.onEvent(getApplicationContext(), "0810"); // TODO
790
                    getCarOwnerCertificateList();
788 791
                }
789 792
                break;
790 793
            case R.id.rl_publish_price: // 发表成交价
@ -1055,6 +1058,39 @@ public class UserCenterActivity extends Activity implements View.OnClickListener
1055 1058
        });
1056 1059
    }
1057 1060
1061
    private void getCarOwnerCertificateList() {
1062
        loadDialog.show();
1063
        String url = MainApplication.url + "/zhannew/basic/web/index.php/car/my?userid=" + MainApplication.userId ;
1064
        OkHttpUtils.get().url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
1065
            @Override
1066
            public void onError(Call call, Exception e) {
1067
                e.printStackTrace();
1068
                loadDialog.dismiss();
1069
                Toast.makeText(getApplicationContext(), e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
1070
            }
1071
1072
            @Override
1073
            public void onResponse(String response) {
1074
                loadDialog.dismiss();
1075
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
1076
                if ("01".equals(rtnCode)) {
1077
                    String data = JsonUtils.getKeyResult(response, "data");
1078
                    List<CarOwnerCertificateBean> list = JsonUtils.parseToObjectList(data, CarOwnerCertificateBean.class);
1079
                    if (list.size() == 0) {
1080
                        startActivity(new Intent(getApplication(), CarOwnerCertificateActivity.class));
1081
                    } else {
1082
                        Intent intent = new Intent(getApplication(), CarOwnerCertificateListActivity.class);
1083
                        intent.putExtra("data", data);
1084
                        startActivity(intent);
1085
                    }
1086
                } else {
1087
                    String rtnMsg = JsonUtils.getKeyResult(response, "rtnMsg");
1088
                    Toast.makeText(getApplicationContext(), rtnMsg, Toast.LENGTH_SHORT).show();
1089
                }
1090
            }
1091
        });
1092
    }
1093
1058 1094
    @Override
1059 1095
    protected void onResume() {
1060 1096
        if (FindActivity.haveFindMessage == true) {

+ 2 - 1
app/src/main/java/com/electric/chargingpile/adapter/CarBrandGroupedListAdapter.java

@ -92,6 +92,7 @@ public class CarBrandGroupedListAdapter extends GroupedRecyclerViewAdapter {
92 92
            holder.setVisible(R.id.line, View.VISIBLE);
93 93
        }
94 94
        ImageView icon = holder.getImageView(R.id.icon);
95
        Glide.with(mContext).load(entity.getIcon()).placeholder(android.R.color.white).fitCenter().into(icon);
95
        final float scale = mContext.getResources().getDisplayMetrics().density;
96
        Glide.with(mContext).load(entity.getIcon()).placeholder(android.R.color.white).dontAnimate().override((int)(40*scale), (int)(40*scale)).fitCenter().into(icon);
96 97
    }
97 98
}

+ 5 - 2
app/src/main/java/com/electric/chargingpile/adapter/CarModelGroupedListAdapter.java

@ -3,6 +3,7 @@ package com.electric.chargingpile.adapter;
3 3
import android.content.Context;
4 4
import android.view.View;
5 5
import android.widget.ImageView;
6
import android.widget.TextView;
6 7
7 8
import com.bumptech.glide.Glide;
8 9
import com.bumptech.glide.load.engine.DiskCacheStrategy;
@ -88,8 +89,10 @@ public class CarModelGroupedListAdapter extends GroupedRecyclerViewAdapter {
88 89
        } else {
89 90
            holder.setVisible(R.id.line, View.VISIBLE);
90 91
        }
91
        ImageView ster_picon = holder.getImageView(R.id.ster_picon);
92
        Glide.with(mContext).load(entity.getIcon()).placeholder(android.R.color.white).diskCacheStrategy(DiskCacheStrategy.RESOURCE).fitCenter().into(icon);
92
        ImageView master_pster_pic = holder.getImageView(R.id.master_pster_pic);
93
        final float scale = mContext.getResources().getDisplayMetrics().density;
94
        Glide.with(mContext).load(entity.getMasterPic()).placeholder(android.R.color.white).dontAnimate().override((int)(scale*120), (int)(scale*80)).diskCacheStrategy(DiskCacheStrategy.RESOURCE).fitCenter().into(master_pic);
95
        holder.setText(R.id.sale_price, entity.getSalePrice());
93 96
    }
94 97
95 98
}

+ 218 - 0
app/src/main/java/com/electric/chargingpile/adapter/CarOwnerCertificateListAdapter.java

@ -0,0 +1,218 @@
1
package com.electric.chargingpile.adapter;
2
3
import android.content.Context;
4
import android.graphics.Color;
5
import android.text.TextUtils;
6
import android.view.LayoutInflater;
7
import android.view.View;
8
import android.view.ViewGroup;
9
import android.widget.ImageView;
10
import android.widget.TextView;
11
import android.widget.Toast;
12
13
import androidx.annotation.NonNull;
14
import androidx.recyclerview.widget.RecyclerView;
15
16
import com.bumptech.glide.Glide;
17
import com.electric.chargingpile.R;
18
import com.electric.chargingpile.data.CarOwnerCertificateBean;
19
import com.electric.chargingpile.entity.CarSeriesEntity;
20
import com.electric.chargingpile.iview.RecyclerItemTypeClickListener;
21
import com.electric.chargingpile.util.DateUtils;
22
import com.electric.chargingpile.util.ToastUtil;
23
import com.electric.chargingpile.view.AlertDialogTwo;
24
import com.google.gson.Gson;
25
26
import java.text.SimpleDateFormat;
27
import java.util.ArrayList;
28
import java.util.Date;
29
import java.util.List;
30
31
public class CarOwnerCertificateListAdapter extends RecyclerView.Adapter<CarOwnerCertificateListAdapter.CarOwnerCertificateListHolder> {
32
    private Context mContext;
33
    private List<CarOwnerCertificateBean> mList = new ArrayList<>();
34
35
    public CarOwnerCertificateListAdapter(Context c, List<CarOwnerCertificateBean> list) {
36
        mContext = c;
37
        mList.addAll(list);
38
    }
39
40
    @NonNull
41
    @Override
42
    public CarOwnerCertificateListHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
43
        View view = LayoutInflater.from(mContext).inflate(R.layout.item_car_owner_certificate, null);
44
        return new CarOwnerCertificateListAdapter.CarOwnerCertificateListHolder(view);
45
    }
46
47
    @Override
48
    public void onBindViewHolder(@NonNull CarOwnerCertificateListHolder holder, int position) {
49
        CarOwnerCertificateBean bean = mList.get(position);
50
        Gson gson = new Gson();
51
        CarSeriesEntity carSeriesEntity = gson.fromJson(bean.getChexing(), CarSeriesEntity.class);
52
//        Glide.with(mContext).load(carSeriesEntity.getIcon()).into(holder.master_pic);
53
//        Picasso.with(mContext).load(carSeriesEntity.getMasterPic()).into(holder.master_pic);
54
        holder.name.setText(carSeriesEntity.getCompanyName());
55
        holder.detail_name.setText(carSeriesEntity.getSeriesName());
56
57
        holder.main.setVisibility(View.GONE);
58
        holder.set_main.setVisibility(View.GONE);
59
        holder.left_line.setVisibility(View.GONE);
60
        holder.right_line.setVisibility(View.GONE);
61
        holder.delete.setVisibility(View.GONE);
62
        holder.edit.setVisibility(View.GONE);
63
64
        if (bean.getStatus() == 0) {
65
            holder.status.setText("审核中");
66
            holder.status.setTextColor(Color.parseColor("#9393A5"));
67
            holder.failure_reason.setVisibility(View.GONE);
68
69
        } else if (bean.getStatus() == 1) {
70
            holder.status.setText("认证成功");
71
            holder.status.setTextColor(Color.parseColor("#08A73C"));
72
            if (bean.getMain() == 1) {
73
                holder.main.setVisibility(View.VISIBLE);
74
            } else {
75
                holder.set_main.setVisibility(View.VISIBLE);
76
                holder.delete.setVisibility(View.VISIBLE);
77
                holder.edit.setVisibility(View.VISIBLE);
78
                holder.left_line.setVisibility(View.VISIBLE);
79
                holder.right_line.setVisibility(View.VISIBLE);
80
            }
81
            holder.failure_reason.setVisibility(View.GONE);
82
        } else if (bean.getStatus() == -1) {
83
            holder.status.setText("认证失败");
84
            holder.status.setTextColor(Color.parseColor("#E02020"));
85
            if (TextUtils.isEmpty(bean.getErrmsg())) {
86
                holder.failure_reason.setVisibility(View.GONE);
87
            } else {
88
                holder.failure_reason.setVisibility(View.VISIBLE);
89
                holder.failure_reason.setText("失败原因:" + bean.getErrmsg());
90
            }
91
            holder.delete.setVisibility(View.VISIBLE);
92
            holder.edit.setVisibility(View.VISIBLE);
93
            holder.left_line.setVisibility(View.VISIBLE);
94
        } else {
95
            holder.status.setText("");
96
            holder.failure_reason.setVisibility(View.GONE);
97
        }
98
99
        long addTime = DateUtils.getStringToDate(bean.getAddTime());
100
        Date d = new Date(addTime);
101
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd");
102
        holder.add_time.setText(simpleDateFormat.format(d));
103
104
        holder.set_main.setOnClickListener(new View.OnClickListener() {
105
            @Override
106
            public void onClick(View v) {
107
                new AlertDialogTwo(mContext).builder()
108
                        .setMsg("是否设置为主车型" + carSeriesEntity.getSeriesName() + "?")
109
                        .setPositiveButton("是", new View.OnClickListener() {
110
                            @Override
111
                            public void onClick(View v) {
112
                                recyclerItemTypeClickListener.onItemClickListener(position, 3);
113
                            }
114
                        }).setNegativeButton("否", new View.OnClickListener() {
115
                    @Override
116
                    public void onClick(View v) {
117
                    }
118
                }).show();
119
            }
120
        });
121
122
        holder.delete.setOnClickListener(new View.OnClickListener() {
123
            @Override
124
            public void onClick(View v) {
125
                new AlertDialogTwo(mContext).builder()
126
                        .setMsg("是否删除" + carSeriesEntity.getSeriesName() + "?")
127
                        .setPositiveButton("是", new View.OnClickListener() {
128
                            @Override
129
                            public void onClick(View v) {
130
                                recyclerItemTypeClickListener.onItemClickListener(position, 1);
131
                            }
132
                        }).setNegativeButton("否", new View.OnClickListener() {
133
                    @Override
134
                    public void onClick(View v) {
135
                    }
136
                }).show();
137
            }
138
        });
139
140
        holder.edit.setOnClickListener(new View.OnClickListener() {
141
            @Override
142
            public void onClick(View v) {
143
                new AlertDialogTwo(mContext).builder()
144
                        .setMsg("是否编辑" + carSeriesEntity.getSeriesName() + "?")
145
                        .setPositiveButton("是", new View.OnClickListener() {
146
                            @Override
147
                            public void onClick(View v) {
148
                                recyclerItemTypeClickListener.onItemClickListener(position, 2);
149
                            }
150
                        }).setNegativeButton("否", new View.OnClickListener() {
151
                    @Override
152
                    public void onClick(View v) {
153
154
                    }
155
                }).show();
156
            }
157
        });
158
    }
159
160
    @Override
161
    public int getItemCount() {
162
        return mList.size();
163
    }
164
165
    public void setData(List<CarOwnerCertificateBean> list) {
166
        mList.clear();
167
        mList.addAll(list);
168
        notifyDataSetChanged();
169
    }
170
171
    public class CarOwnerCertificateListHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
172
173
        private final ImageView master_pic;
174
        private final TextView name;
175
        private final TextView detail_name;
176
        private final TextView add_time;
177
        private final TextView status;
178
        private final TextView main;
179
        private final TextView set_main;
180
        private final TextView failure_reason;
181
        private final TextView delete;
182
        private final TextView edit;
183
        private final View left_line;
184
        private final View right_line;
185
186
        public CarOwnerCertificateListHolder(View itemView) {
187
            super(itemView);
188
            master_pic = itemView.findViewById(R.id.master_pic);
189
            name = itemView.findViewById(R.id.name);
190
            detail_name = itemView.findViewById(R.id.detail_name);
191
            status = itemView.findViewById(R.id.status);
192
            add_time = itemView.findViewById(R.id.add_time);
193
            main = itemView.findViewById(R.id.main);
194
            set_main = itemView.findViewById(R.id.set_main);
195
            failure_reason = itemView.findViewById(R.id.failure_reason);
196
            delete = itemView.findViewById(R.id.delete);
197
            edit = itemView.findViewById(R.id.edit);
198
            left_line = itemView.findViewById(R.id.left_line);
199
            right_line = itemView.findViewById(R.id.right_line);
200
        }
201
202
        @Override
203
        public void onClick(View view) {
204
            if (recyclerItemTypeClickListener != null) {
205
                recyclerItemTypeClickListener.onItemClickListener(getLayoutPosition(), 1);
206
            }
207
        }
208
    }
209
210
    RecyclerItemTypeClickListener recyclerItemTypeClickListener;
211
212
    public void setRecyclerItemTypeClickListener(RecyclerItemTypeClickListener recyclerItemTypeClickListener) {
213
        this.recyclerItemTypeClickListener = recyclerItemTypeClickListener;
214
    }
215
}
216
217
218

+ 0 - 1
app/src/main/java/com/electric/chargingpile/adapter/TopicAdapter.java

@ -100,7 +100,6 @@ public class TopicAdapter extends RecyclerView.Adapter<TopicAdapter.ItemViewHold
100 100
            mItemTopicName = (TextView) itemView.findViewById(R.id.item_topic_name);
101 101
            mItemTopicRl = (RelativeLayout) itemView.findViewById(R.id.item_topic_rl);
102 102
            mItemTopicRl.setOnClickListener(this);
103
104 103
        }
105 104
106 105
        @Override

+ 122 - 0
app/src/main/java/com/electric/chargingpile/data/CarOwnerCertificateBean.java

@ -0,0 +1,122 @@
1
package com.electric.chargingpile.data;
2
3
import java.io.Serializable;
4
5
public class CarOwnerCertificateBean implements Serializable {
6
    private int id;
7
    private String plate_number;
8
    private String engine_number;
9
    private String license_img1;
10
    private String chexing;
11
    private String regdate;
12
    private String cartype;
13
    private int status;
14
    private int main;
15
    private String addTime;
16
    private String errmsg;
17
18
    public int getId() {
19
        return id;
20
    }
21
22
    public void setId(int id) {
23
        this.id = id;
24
    }
25
26
    public String getPlate_number() {
27
        return plate_number;
28
    }
29
30
    public void setPlate_number(String plate_number) {
31
        this.plate_number = plate_number;
32
    }
33
34
    public String getEngine_number() {
35
        return engine_number;
36
    }
37
38
    public void setEngine_number(String engine_number) {
39
        this.engine_number = engine_number;
40
    }
41
42
    public String getLicense_img1() {
43
        return license_img1;
44
    }
45
46
    public void setLicense_img1(String license_img1) {
47
        this.license_img1 = license_img1;
48
    }
49
50
    public String getChexing() {
51
        return chexing;
52
    }
53
54
    public void setChexing(String chexing) {
55
        this.chexing = chexing;
56
    }
57
58
    public String getRegdate() {
59
        return regdate;
60
    }
61
62
    public void setRegdate(String regdate) {
63
        this.regdate = regdate;
64
    }
65
66
    public String getCartype() {
67
        return cartype;
68
    }
69
70
    public void setCartype(String cartype) {
71
        this.cartype = cartype;
72
    }
73
74
    public int getStatus() {
75
        return status;
76
    }
77
78
    public void setStatus(int status) {
79
        this.status = status;
80
    }
81
82
    public int getMain() {
83
        return main;
84
    }
85
86
    public void setMain(int main) {
87
        this.main = main;
88
    }
89
90
    public String getAddTime() {
91
        return addTime;
92
    }
93
94
    public void setAddTime(String addTime) {
95
        this.addTime = addTime;
96
    }
97
98
    public String getErrmsg() {
99
        return errmsg;
100
    }
101
102
    public void setErrmsg(String errmsg) {
103
        this.errmsg = errmsg;
104
    }
105
106
    @Override
107
    public String toString() {
108
        return "CarOwnerCertificateBean{" +
109
                "id=" + id +
110
                ", plate_number='" + plate_number + '\'' +
111
                ", engine_number='" + engine_number + '\'' +
112
                ", license_img1='" + license_img1 + '\'' +
113
                ", chexing='" + chexing + '\'' +
114
                ", regdate='" + regdate + '\'' +
115
                ", cartype='" + cartype + '\'' +
116
                ", status=" + status +
117
                ", main=" + main +
118
                ", addTime='" + addTime + '\'' +
119
                ", errmsg='" + errmsg + '\'' +
120
                '}';
121
    }
122
}

+ 55 - 8
app/src/main/java/com/electric/chargingpile/entity/CarSeriesEntity.java

@ -4,18 +4,25 @@ public class CarSeriesEntity {
4 4
    private String brandId;
5 5
    private String brandName;
6 6
    private String companyId;
7
    private String companyName;
7 8
    private String seriesId;
8 9
    private String seriesName;
10
    private String salePrice;
9 11
    private String icon;
12
    private String masterPic;
13
    private String maxSalePrice;
14
    private String minSalePrice;
10 15
11
    public CarSeriesEntity(String brandId, String brandName, String companyId, String seriesId, String seriesName, String icon) {
12
        this.brandId = brandId;
13
        this.brandName = brandName;
14
        this.companyId = companyId;
15
        this.seriesId = seriesId;
16
        this.seriesName = seriesName;
17
        this.icon = icon;
18
    }
16
//    public CarSeriesEntity(String brandId, String brandName, String companyId, String companyName, String seriesId, String seriesName, String salePrice, String icon) {
17
//        this.brandId = brandId;
18
//        this.brandName = brandName;
19
//        this.companyId = companyId;
20
//        this.companyName = companyName;
21
//        this.seriesId = seriesId;
22
//        this.seriesName = seriesName;
23
//        this.salePrice = salePrice;
24
//        this.icon = icon;
25
//    }
19 26
20 27
    public String getBrandId() {
21 28
        return brandId;
@ -41,6 +48,14 @@ public class CarSeriesEntity {
41 48
        this.companyId = companyId;
42 49
    }
43 50
51
    public String getCompanyName() {
52
        return companyName;
53
    }
54
55
    public void setCompanyName(String companyName) {
56
        this.companyName = companyName;
57
    }
58
44 59
    public String getSeriesId() {
45 60
        return seriesId;
46 61
    }
@ -57,6 +72,14 @@ public class CarSeriesEntity {
57 72
        this.seriesName = seriesName;
58 73
    }
59 74
75
    public String getSalePrice() {
76
        return salePrice;
77
    }
78
79
    public void setSalePrice(String salePrice) {
80
        this.salePrice = salePrice;
81
    }
82
60 83
    public String getIcon() {
61 84
        return icon;
62 85
    }
@ -64,4 +87,28 @@ public class CarSeriesEntity {
64 87
    public void setIcon(String icon) {
65 88
        this.icon = icon;
66 89
    }
90
91
    public String getMasterPic() {
92
        return masterPic;
93
    }
94
95
    public void setMasterPic(String masterPic) {
96
        this.masterPic = masterPic;
97
    }
98
99
    public String getMaxSalePrice() {
100
        return maxSalePrice;
101
    }
102
103
    public void setMaxSalePrice(String maxSalePrice) {
104
        this.maxSalePrice = maxSalePrice;
105
    }
106
107
    public String getMinSalePrice() {
108
        return minSalePrice;
109
    }
110
111
    public void setMinSalePrice(String minSalePrice) {
112
        this.minSalePrice = minSalePrice;
113
    }
67 114
}

+ 74 - 0
app/src/main/res/layout/activity_car_owner_certificate_list.xml

@ -0,0 +1,74 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    xmlns:app="http://schemas.android.com/apk/res-auto"
4
    xmlns:tools="http://schemas.android.com/tools"
5
    android:layout_width="match_parent"
6
    android:layout_height="match_parent"
7
    android:background="#F2F6F9"
8
    tools:context=".activity.CarOwnerCertificateListActivity">
9
10
    <androidx.constraintlayout.widget.ConstraintLayout
11
        android:id="@+id/nav_bar"
12
        android:layout_width="match_parent"
13
        android:layout_height="44dp"
14
        android:background="@color/white"
15
        app:layout_constraintTop_toTopOf="parent">
16
17
        <TextView
18
            android:id="@+id/nav_title"
19
            android:layout_width="match_parent"
20
            android:layout_height="match_parent"
21
            android:gravity="center"
22
            android:text="车主认证列表"
23
            android:textColor="#444444"
24
            android:textSize="16sp" />
25
26
        <ImageView
27
            android:id="@+id/iv_back"
28
            android:layout_width="wrap_content"
29
            android:layout_height="match_parent"
30
            android:layout_alignParentLeft="true"
31
            android:layout_centerVertical="true"
32
            android:contentDescription="@null"
33
            android:paddingLeft="15dp"
34
            android:paddingRight="15dp"
35
            android:src="@drawable/icon_lvback1119"
36
            app:layout_constraintLeft_toLeftOf="parent" />
37
38
        <TextView
39
            android:id="@+id/add"
40
            android:layout_width="60dp"
41
            android:layout_height="match_parent"
42
            android:gravity="center"
43
            android:text="添加"
44
            android:textColor="#030303"
45
            android:textSize="15sp"
46
            app:layout_constraintRight_toRightOf="parent" />
47
48
        <View
49
            android:layout_width="match_parent"
50
            android:layout_height="0.5dp"
51
            android:background="@color/ui_titleline"
52
            app:layout_constraintBottom_toBottomOf="parent" />
53
54
    </androidx.constraintlayout.widget.ConstraintLayout>
55
56
    <androidx.recyclerview.widget.RecyclerView
57
        android:id="@+id/recycler_view"
58
        android:layout_width="match_parent"
59
        android:layout_height="0dp"
60
        app:layout_constraintBottom_toBottomOf="parent"
61
        app:layout_constraintTop_toBottomOf="@+id/nav_bar" />
62
63
    <TextView
64
        android:id="@+id/no_data"
65
        android:layout_width="match_parent"
66
        android:layout_height="match_parent"
67
        android:gravity="center"
68
        android:text="暂无认证信息"
69
        android:textColor="#cccccc"
70
        android:textSize="15sp"
71
        android:visibility="gone"
72
        tools:visibility="visible" />
73
74
</androidx.constraintlayout.widget.ConstraintLayout>

+ 4 - 3
app/src/main/res/layout/adapter_child_car_model.xml

@ -16,7 +16,7 @@
16 16
        app:layout_constraintTop_toTopOf="parent" />
17 17
18 18
    <ImageView
19
        android:id="@+id/ster_picon"
19
        android:id="@+id/master_pster_pic"
20 20
        android:layout_width="120dp"
21 21
        android:layout_height="80dp"
22 22
        android:scaleType="fitCenter"
@ -34,7 +34,7 @@
34 34
        android:layout_marginTop="27dp"
35 35
        android:textColor="#FF222222"
36 36
        android:textSize="14sp"
37
        app:layout_constraintLeft_toRightOf="@+id/ster_picon"
37
        app:layout_constraintLeft_toRightOf="@+id/master_pster_pic"
38 38
        app:layout_constraintTop_toTopOf="parent"
39 39
        tools:text="奥迪" />
40 40
@ -45,9 +45,10 @@
45 45
        android:layout_marginBottom="28dp"
46 46
        android:orientation="horizontal"
47 47
        app:layout_constraintBottom_toBottomOf="parent"
48
        app:layout_constraintLeft_toRightOf="@+id/ster_picon">
48
        app:layout_constraintLeft_toRightOf="@+id/master_pster_pic">
49 49
50 50
        <TextView
51
            android:id="@+id/sale_price"
51 52
            android:layout_width="wrap_content"
52 53
            android:layout_height="wrap_content"
53 54
            android:textColor="#FFE02020"

+ 167 - 0
app/src/main/res/layout/item_car_owner_certificate.xml

@ -0,0 +1,167 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    xmlns:tools="http://schemas.android.com/tools"
4
    android:layout_width="match_parent"
5
    android:layout_height="wrap_content"
6
    android:background="@color/white"
7
    android:orientation="vertical">
8
9
    <LinearLayout
10
        android:layout_width="match_parent"
11
        android:layout_height="wrap_content"
12
        android:paddingLeft="10dp"
13
        android:paddingTop="20dp"
14
        android:paddingRight="15dp"
15
        android:paddingBottom="5dp">
16
17
        <ImageView
18
            android:id="@+id/master_pic"
19
            android:layout_width="120dp"
20
            android:layout_height="80dp"
21
            android:layout_marginBottom="15dp"
22
            tools:background="@color/red" />
23
24
        <LinearLayout
25
            android:layout_width="match_parent"
26
            android:layout_height="wrap_content"
27
            android:orientation="vertical">
28
29
            <LinearLayout
30
                android:layout_width="match_parent"
31
                android:layout_height="wrap_content">
32
33
                <TextView
34
                    android:id="@+id/name"
35
                    android:layout_width="wrap_content"
36
                    android:layout_height="wrap_content"
37
                    android:textColor="#222222"
38
                    android:textSize="14sp"
39
                    tools:text="阿尔法·罗密欧" />
40
41
                <TextView
42
                    android:layout_width="wrap_content"
43
                    android:layout_height="wrap_content"
44
                    android:layout_weight="1" />
45
46
                <TextView
47
                    android:id="@+id/status"
48
                    android:layout_width="wrap_content"
49
                    android:layout_height="match_parent"
50
                    android:gravity="center"
51
                    android:textSize="12sp"
52
                    tools:text="审核中" />
53
            </LinearLayout>
54
55
            <TextView
56
                android:id="@+id/detail_name"
57
                android:layout_width="match_parent"
58
                android:layout_height="match_parent"
59
                android:layout_marginTop="5dp"
60
                android:textColor="#0D1120"
61
                android:textSize="14sp"
62
                tools:text="2020款 420KM 运动版" />
63
64
            <LinearLayout
65
                android:layout_width="match_parent"
66
                android:layout_height="37dp"
67
                android:orientation="horizontal"
68
                tools:background="#ff0099">
69
70
                <TextView
71
                    android:id="@+id/add_time"
72
                    android:layout_width="wrap_content"
73
                    android:layout_height="match_parent"
74
                    android:gravity="center_vertical"
75
                    android:textColor="#9393A5"
76
                    android:textSize="12sp"
77
                    tools:text="2020.10.20" />
78
79
                <TextView
80
                    android:layout_width="wrap_content"
81
                    android:layout_height="wrap_content"
82
                    android:layout_weight="1" />
83
84
                <TextView
85
                    android:id="@+id/main"
86
                    android:layout_width="wrap_content"
87
                    android:layout_height="match_parent"
88
                    android:gravity="center_vertical"
89
                    android:text="主车型"
90
                    android:textColor="#0D1120"
91
                    android:textSize="12sp"
92
                    android:visibility="gone"
93
                    tools:visibility="visible" />
94
95
                <TextView
96
                    android:id="@+id/delete"
97
                    android:layout_width="wrap_content"
98
                    android:layout_height="match_parent"
99
                    android:gravity="center_vertical"
100
                    android:paddingRight="5dp"
101
                    android:text="删除"
102
                    android:textColor="#0D1120"
103
                    android:textSize="12sp"
104
                    android:visibility="gone"
105
                    tools:visibility="visible" />
106
107
                <View
108
                    android:id="@+id/left_line"
109
                    android:layout_width="1dp"
110
                    android:layout_height="match_parent"
111
                    android:layout_marginTop="12dp"
112
                    android:layout_marginBottom="12dp"
113
                    android:background="#979797" />
114
115
                <TextView
116
                    android:id="@+id/edit"
117
                    android:layout_width="wrap_content"
118
                    android:layout_height="match_parent"
119
                    android:gravity="center_vertical"
120
                    android:paddingRight="5dp"
121
                    android:paddingLeft="5dp"
122
                    android:text="编辑"
123
                    android:textColor="#0D1120"
124
                    android:textSize="12sp"
125
                    android:visibility="gone"
126
                    tools:visibility="visible" />
127
128
                <View
129
                    android:id="@+id/right_line"
130
                    android:layout_width="1dp"
131
                    android:layout_height="match_parent"
132
                    android:layout_marginTop="12dp"
133
                    android:layout_marginBottom="12dp"
134
                    android:background="#979797" />
135
136
                <TextView
137
                    android:id="@+id/set_main"
138
                    android:layout_width="wrap_content"
139
                    android:layout_height="match_parent"
140
                    android:gravity="center_vertical"
141
                    android:paddingLeft="5dp"
142
                    android:text="设为主车型"
143
                    android:textColor="#0D1120"
144
                    android:textSize="12sp"
145
                    android:visibility="gone"
146
                    tools:visibility="visible" />
147
148
            </LinearLayout>
149
150
            <TextView
151
                android:id="@+id/failure_reason"
152
                android:layout_width="match_parent"
153
                android:layout_height="wrap_content"
154
                android:layout_marginBottom="5dp"
155
                android:text="失败原因:不拉不拉"
156
                android:textColor="#E02020"
157
                android:textSize="12sp"
158
                android:visibility="gone"
159
                tools:visibility="visible" />
160
        </LinearLayout>
161
    </LinearLayout>
162
163
    <View
164
        android:layout_width="match_parent"
165
        android:layout_height="1dp"
166
        android:background="@color/lineColor" />
167
</LinearLayout>