Browse Source

文件更新

huyuguo 4 years ago
parent
commit
c28066b694

+ 35 - 33
app/src/main/java/com/electric/chargingpile/activity/ChargingCommentActivity.java

53
import com.electric.chargingpile.util.BarColorUtil;
53
import com.electric.chargingpile.util.BarColorUtil;
54
import com.electric.chargingpile.util.Bimp;
54
import com.electric.chargingpile.util.Bimp;
55
import com.electric.chargingpile.util.DES3;
55
import com.electric.chargingpile.util.DES3;
56
import com.electric.chargingpile.util.FileUtils;
57
import com.electric.chargingpile.util.ImageItem;
56
import com.electric.chargingpile.util.ImageItem;
58
import com.electric.chargingpile.util.ImageUtils;
57
import com.electric.chargingpile.util.ImageUtils;
59
import com.electric.chargingpile.util.JsonUtils;
58
import com.electric.chargingpile.util.JsonUtils;
69
import com.electric.chargingpile.view.REditText;
68
import com.electric.chargingpile.view.REditText;
70
import com.electric.chargingpile.view.RatingBarView;
69
import com.electric.chargingpile.view.RatingBarView;
71
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
70
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
72
import com.zhihu.matisse.Matisse;
73
import com.zhihu.matisse.MimeType;
74
import com.zhihu.matisse.engine.impl.GlideEngine;
75
import com.zhihu.matisse.internal.entity.CaptureStrategy;
76
import com.zhy.http.okhttp.OkHttpUtils;
71
import com.zhy.http.okhttp.OkHttpUtils;
77
import com.zhy.http.okhttp.callback.StringCallback;
72
import com.zhy.http.okhttp.callback.StringCallback;
78
import com.zhy.view.flowlayout.FlowLayout;
73
import com.zhy.view.flowlayout.FlowLayout;
108
import io.reactivex.android.schedulers.AndroidSchedulers;
103
import io.reactivex.android.schedulers.AndroidSchedulers;
109
import io.reactivex.disposables.Disposable;
104
import io.reactivex.disposables.Disposable;
110
import io.reactivex.schedulers.Schedulers;
105
import io.reactivex.schedulers.Schedulers;
106
import me.iwf.photopicker.PhotoPicker;
111
import okhttp3.Call;
107
import okhttp3.Call;
112
import pub.devrel.easypermissions.AfterPermissionGranted;
108
import pub.devrel.easypermissions.AfterPermissionGranted;
113
import pub.devrel.easypermissions.EasyPermissions;
109
import pub.devrel.easypermissions.EasyPermissions;
159
    private String isShow = "0";
155
    private String isShow = "0";
160
    private HongBaoDialog hongBaoDialog;
156
    private HongBaoDialog hongBaoDialog;
161
    private static final int RC_ALBUM_PERM = 123;
157
    private static final int RC_ALBUM_PERM = 123;
162
    public static final int REQUEST_CODE_CHOOSE = 335;
163
    //输入表情前EditText中的文本
158
    //输入表情前EditText中的文本
164
//    private String inputAfterText;
159
//    private String inputAfterText;
165
    Handler handler = new Handler() {
160
    Handler handler = new Handler() {
558
     * 调用图库选择
553
     * 调用图库选择
559
     */
554
     */
560
    private void callGallery() {
555
    private void callGallery() {
561
        Matisse.from(ChargingCommentActivity.this)
562
                .choose(MimeType.of(MimeType.JPEG, MimeType.PNG, MimeType.GIF))
563
                .showSingleMediaType(true)
564
                .countable(true)
565
                .maxSelectable(PIC_NUM - Bimp.tempSelectBitmap.size())
566
                .capture(true)
567
                .captureStrategy(new CaptureStrategy(true, "com.electric.chargingpile.provider"))
568
                .imageEngine(new GlideEngine())
569
                .forResult(REQUEST_CODE_CHOOSE);
556
        Log.e(TAG, "callGallery: " + (Bimp.max - Bimp.tempSelectBitmap.size()));
557
        //调用第三方图库选择
558
        PhotoPicker.builder()
559
                .setPhotoCount(PIC_NUM - Bimp.tempSelectBitmap.size())//可选择图片数量
560
                .setShowCamera(true)//是否显示拍照按钮
561
                .setShowGif(true)//是否显示动态图
562
                .setPreviewEnabled(true)//是否可以预览
563
                .start(this, PhotoPicker.REQUEST_CODE);
564
565
570
    }
566
    }
571
567
572
    @Override
568
    @Override
576
            if (data != null) {
572
            if (data != null) {
577
                if (requestCode == 1) {
573
                if (requestCode == 1) {
578
                    //处理调用系统图库
574
                    //处理调用系统图库
579
                } else if (requestCode == REQUEST_CODE_CHOOSE) {
575
                } else if (requestCode == PhotoPicker.REQUEST_CODE) {
580
                    //异步方式插入图片
576
                    //异步方式插入图片
581
                    insertImagesSync(data);
577
                    insertImagesSync(data);
582
                }
578
                }
596
            public void subscribe(ObservableEmitter<String> subscriber) throws Exception {
592
            public void subscribe(ObservableEmitter<String> subscriber) throws Exception {
597
593
598
                try {
594
                try {
599
                    List<Uri> uriList = Matisse.obtainResult(data);
600
                    for (Uri uri : uriList) {
601
                        Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));
602
                        File file = FileUtils.from(ChargingCommentActivity.this, uri);
603
604
                        bitmap = FileUtils.rotateIfRequired(file, bitmap);
605
                        bitmap = imageZoom(bitmap);
595
                    ArrayList<String> photos = data.getStringArrayListExtra(PhotoPicker.KEY_SELECTED_PHOTOS);
596
                    //可以同时插入多张图片
597
                    for (String imagePath : photos) {
598
599
                        Log.e(TAG, "call: imagePath " + imagePath);
600
                        Bitmap bitmap = BitmapFactory.decodeFile(imagePath);//压缩图片
601
                        if (ImageUtils.readPictureDegree(imagePath) != 0) {
602
                            bitmap = imageZoom(ImageUtils.toturn(bitmap));
603
                        } else {
604
                            bitmap = imageZoom(bitmap);
605
                        }
606
                        ImageItem takePhoto = new ImageItem();
606
                        ImageItem takePhoto = new ImageItem();
607
                        takePhoto.setBitmap(bitmap);
607
                        takePhoto.setBitmap(bitmap);
608
                        takePhoto.setImagePath(imagePath);
608
                        Bimp.tempSelectBitmap.add(takePhoto);
609
                        Bimp.tempSelectBitmap.add(takePhoto);
609
                        subscriber.onNext("");
610
                        subscriber.onNext(imagePath);
610
                    }
611
                    }
611
                    subscriber.onComplete();
612
                    subscriber.onComplete();
612
                } catch (Exception e) {
613
                } catch (Exception e) {
1045
    public void permissionTask() {
1046
    public void permissionTask() {
1046
        if (isPermissionOK()) {
1047
        if (isPermissionOK()) {
1047
            callGallery();
1048
            callGallery();
1049
            // Have permission, do the thing!
1050
//            Toast.makeText(this, "TODO: Camera things", Toast.LENGTH_LONG).show();
1051
//            ifTimeout();
1048
        } else {
1052
        } else {
1053
            // Ask for one permission
1049
            EasyPermissions.requestPermissions(
1054
            EasyPermissions.requestPermissions(
1050
                    this, "充电桩想要获取您的图片读取权限,是否允许?",
1055
                    this, "充电桩想要获取您的图片读取权限,是否允许?",
1051
                    RC_ALBUM_PERM,
1056
                    RC_ALBUM_PERM,
1052
                    Manifest.permission.WRITE_EXTERNAL_STORAGE,
1057
                    Manifest.permission.WRITE_EXTERNAL_STORAGE,
1053
                    Manifest.permission.READ_EXTERNAL_STORAGE,
1054
                    Manifest.permission.CAMERA);
1058
                    Manifest.permission.READ_EXTERNAL_STORAGE);
1055
        }
1059
        }
1056
    }
1060
    }
1057
1061
1058
    private boolean isPermissionOK() {
1062
    private boolean isPermissionOK() {
1059
        return EasyPermissions.hasPermissions(this,
1063
        return EasyPermissions.hasPermissions(this,
1060
                Manifest.permission.WRITE_EXTERNAL_STORAGE,
1064
                Manifest.permission.WRITE_EXTERNAL_STORAGE,
1061
                Manifest.permission.READ_EXTERNAL_STORAGE,
1062
                Manifest.permission.CAMERA
1065
                Manifest.permission.READ_EXTERNAL_STORAGE
1063
        );
1066
        );
1064
    }
1067
    }
1065
1068
1447
                && (codePoint <= 0x10FFFF));
1450
                && (codePoint <= 0x10FFFF));
1448
    }
1451
    }
1449
1452
1453
1450
    private void getShareIntegral() {
1454
    private void getShareIntegral() {
1451
        String url = MainApplication.url + "/zhannew/basic/web/index.php/member/insert-task?userid=" + MainApplication.userId + "&order_id=" + order_id;
1455
        String url = MainApplication.url + "/zhannew/basic/web/index.php/member/insert-task?userid=" + MainApplication.userId + "&order_id=" + order_id;
1452
        OkHttpUtils.get().url(url).build().execute(new StringCallback() {
1456
        OkHttpUtils.get().url(url).build().execute(new StringCallback() {
1460
                LogUtils.e(response);
1464
                LogUtils.e(response);
1461
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
1465
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
1462
                String red_money = JsonUtils.getKeyResult(response, "red_money");
1466
                String red_money = JsonUtils.getKeyResult(response, "red_money");
1463
                try {
1464
                    int redMoney = Integer.parseInt(red_money);
1465
                    new HongBaoResultDialog(ChargingCommentActivity.this).builder().setCancelable(true).show(red_money);
1466
                } catch (Exception e) {
1467
                    e.printStackTrace();
1467
                int redMoney = Integer.valueOf(red_money);
1468
                if (redMoney > 0) {
1469
                    new HongBaoResultDialog(ChargingCommentActivity.this).builder().setCancelable(true).show(redMoney);
1468
                }
1470
                }
1469
1471
1470
                if ("01".equals(rtnCode)) { // 成功
1472
                if ("01".equals(rtnCode)) { // 成功

+ 4 - 2
app/src/main/java/com/electric/chargingpile/view/HongBaoResultDialog.java

11
import android.widget.TextView;
11
import android.widget.TextView;
12
12
13
import com.electric.chargingpile.R;
13
import com.electric.chargingpile.R;
14
import com.electric.chargingpile.util.ScreenUtils;
15
14
16
/**
15
/**
17
 * Created by demon on 2017/5/25.
16
 * Created by demon on 2017/5/25.
20
public class HongBaoResultDialog {
19
public class HongBaoResultDialog {
21
    private Context context;
20
    private Context context;
22
    private android.app.Dialog dialog;
21
    private android.app.Dialog dialog;
22
    private Display display;
23
    private ImageView dialog_close;
23
    private ImageView dialog_close;
24
    private LinearLayout dialog_bg;
24
    private LinearLayout dialog_bg;
25
25
27
        this.context = context;
27
        this.context = context;
28
        WindowManager windowManager = (WindowManager) context
28
        WindowManager windowManager = (WindowManager) context
29
                .getSystemService(Context.WINDOW_SERVICE);
29
                .getSystemService(Context.WINDOW_SERVICE);
30
        display = windowManager.getDefaultDisplay();
30
    }
31
    }
31
32
32
    public HongBaoResultDialog builder() {
33
    public HongBaoResultDialog builder() {
43
        dialog.setContentView(view);
44
        dialog.setContentView(view);
44
45
45
        // 调整dialog背景大小
46
        // 调整dialog背景大小
46
        dialog_bg.setLayoutParams(new FrameLayout.LayoutParams((int) (ScreenUtils.getScreenWidth(context) * 0.85), LinearLayout.LayoutParams.WRAP_CONTENT));
47
        dialog_bg.setLayoutParams(new FrameLayout.LayoutParams((int) (display
48
                .getWidth() * 0.85), LinearLayout.LayoutParams.WRAP_CONTENT));
47
49
48
        return this;
50
        return this;
49
    }
51
    }