/** @Description: 初始化闲置物品信息 */
  private void initSecondHandInfo() {
    titleET.setText(secondHandInfo.getTitle());
    typeSp.setText(secondHandInfo.getType());
    priceET.setText(secondHandInfo.getPrice());
    describeET.setText(secondHandInfo.getDescribe());
    picFileList = secondHandInfo.getPicFileList();
    if (null == picFileList || 1 > picFileList.size()) {

    } else {
      for (BmobFile bmobFile : picFileList) {
        if (null != bmobFile) {
          ImageItem item = new ImageItem();
          item.setIsLocalPic(false);
          item.setFileName(bmobFile.getFilename());
          item.setImagePath(bmobFile.getFileUrl(AddSecondHandActivity.this));
          picList.add(item);
        }
      }
      editGridAdapter.notifyDataSetChanged();
    }
    if (secondHandInfo.getBargain()) {
      bargainSp.setText("可议价");
    } else {
      bargainSp.setText("不可议价");
    }
    qqET.setText(secondHandInfo.getQq());
    phoneET.setText(secondHandInfo.getPhone());
  }
 /** @Description: 删除图片 */
 private void deletePic(int position) {
   ImageItem item = picList.get(position);
   if (item.getIsLocalPic()) {
     picList.remove(position);
   } else {
     picFileList.remove(position);
     picList.remove(position);
   }
 }
  @Override
  protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == Activity.RESULT_OK) {
      // 访问相册
      if (requestCode == CommonConstant.REQUESTCODE_PHOTO_ALBUM) {
        String fileName = null;
        if (data != null) {
          // 得到图片的全路径
          Uri uri = data.getData();
          ContentResolver cr = getContentResolver();
          Cursor cursor = cr.query(uri, null, null, null, null);
          if (cursor.moveToFirst()) {
            do {
              fileName = cursor.getString(cursor.getColumnIndex("_data"));
            } while (cursor.moveToNext());
          }
          tempFile = new File(fileName);
          if (tempFile.exists() && tempFile.length() > 0) {
            ImageItem albumPic = new ImageItem();
            albumPic.setIsLocalPic(true);
            albumPic.setImagePath(fileName);
            picList.add(albumPic);
            editGridAdapter.notifyDataSetChanged();
          }
        }
      }
      // 访问相机
      if (requestCode == CommonConstant.REQUESTCODE_PHOTO_CAMERA) {
        if (FileUtils.hasSdcard()) {
          Bitmap bitmap = ImageUtils.scale(BitmapFactory.decodeFile(imagePath), 0.7F, 0.7F);
          if (null == imagePath || "".equals(imagePath)) {

          } else {
            tempFile = new File(imagePath);
            if (tempFile.exists() && tempFile.length() > 0) {
              // 判断照片是否被旋转,如果旋转则旋转回0°
              int degree = ImageUtils.getBitmapDegree(imagePath);
              if (degree != 0) {
                bitmap = ImageUtils.rotateBitmapByDegree(bitmap, degree);
              }
              ImageUtils.toFile(bitmap, tempFile);
              ImageItem takePhoto = new ImageItem();
              takePhoto.setIsLocalPic(true);
              takePhoto.setImagePath(imagePath);
              picList.add(takePhoto);
              editGridAdapter.notifyDataSetChanged();
            } else {
            }
          }

        } else {
          ToastUtils.showToast("未找到存储卡,无法存储照片!");
        }
      }
    }
    super.onActivityResult(requestCode, resultCode, data);
  }
  /** @Description: 发布 */
  private void send() {
    dialog.show();
    secondHandInfo.setTitle(title);
    secondHandInfo.setType(type);
    secondHandInfo.setPrice(price);
    secondHandInfo.setDescribe(describe);
    if ("可议价".equals(bargain)) {
      secondHandInfo.setBargain(true);
    } else if ("不可议价".equals(bargain)) {
      secondHandInfo.setBargain(false);
    }
    secondHandInfo.setQq(qq);
    secondHandInfo.setPhone(phone);
    secondHandInfo.setUsername(GlobalParams.userInfo.getUsername()); // 发布人信息
    secondHandInfo.setUser(GlobalParams.userInfo);
    // 要上传的图片文件路径
    List<String> filePathList = new ArrayList<String>();
    for (ImageItem item : picList) {
      if ("".equals(item.getImagePath()) || null == item.getImagePath() || !item.getIsLocalPic()) {

      } else {
        filePathList.add(item.getImagePath());
      }
    }
    // List转换成数组
    String[] filePaths = (String[]) filePathList.toArray(new String[0]);
    if (null == filePaths || 1 > filePaths.length) {
      secondHandInfo.setPicFileList(picFileList);
      if (isNew) {
        secondHandInfo.save(
            this,
            new SaveListener() {

              @Override
              public void onSuccess() { // 新增发布成功
                LogcatUtils.i("新增闲置物品成功");
                dialog.dismiss();
                setResult(CommonConstant.RESULTCODE_ADD_SECOND_HAND_OK);
                finish();
              }

              @Override
              public void onFailure(int code, String message) { // 发布失败
                LogcatUtils.e("新增闲置物品失败:" + code + " " + message);
                dialog.dismiss();
                switch (code) {
                  case 9010:
                    { // 网络超时
                      ToastUtils.showToast("网络超时,请检查您的手机网络~");
                      break;
                    }
                  case 9016:
                    { // 无网络连接,请检查您的手机网络
                      ToastUtils.showToast("无网络连接,请检查您的手机网络~");
                      break;
                    }
                  default:
                    {
                      ToastUtils.showToast("新增闲置物品失败,请重试~");
                      break;
                    }
                }
              }
            });
      } else {
        secondHandInfo.update(
            this,
            new UpdateListener() {

              @Override
              public void onSuccess() { // 修改发布成功
                LogcatUtils.i("修改闲置物品成功");
                dialog.dismiss();
                setResult(CommonConstant.RESULTCODE_MODIFY_SECOND_HAND_OK);
                finish();
              }

              @Override
              public void onFailure(int code, String message) { // 发布失败
                LogcatUtils.e("修改闲置物品失败:" + code + " " + message);
                dialog.dismiss();
                switch (code) {
                  case 9010:
                    { // 网络超时
                      ToastUtils.showToast("网络超时,请检查您的手机网络~");
                      break;
                    }
                  case 9016:
                    { // 无网络连接,请检查您的手机网络
                      ToastUtils.showToast("无网络连接,请检查您的手机网络~");
                      break;
                    }
                  default:
                    {
                      ToastUtils.showToast("修改失物信息失败,请重试~");
                      break;
                    }
                }
              }
            });
      }
    } else {
      // 批量上传
      BmobProFile.getInstance(this)
          .uploadBatch(
              filePaths,
              new UploadBatchListener() {

                @Override
                public void onError(int code, String message) {
                  LogcatUtils.e("批量上传图片失败:" + code + " " + message);
                  dialog.dismiss();
                  switch (code) {
                    case 9010:
                      { // 网络超时
                        ToastUtils.showToast("网络超时,请检查您的手机网络~");
                        break;
                      }
                    case 9016:
                      { // 无网络连接,请检查您的手机网络
                        ToastUtils.showToast("无网络连接,请检查您的手机网络~");
                        break;
                      }
                    default:
                      {
                        ToastUtils.showToast("批量上传图片失败,请重试~");
                        break;
                      }
                  }
                }

                @Override
                public void onSuccess(
                    boolean isFinish, String[] fileNames, String[] urls, BmobFile[] files) {
                  if (isFinish) {
                    LogcatUtils.i("批量上传图片成功");
                    for (int i = 0; i < files.length; i++) {
                      picFileList.add(files[i]);
                    }
                    secondHandInfo.setPicFileList(picFileList);
                    if (isNew) {
                      secondHandInfo.save(
                          AddSecondHandActivity.this,
                          new SaveListener() {

                            @Override
                            public void onSuccess() { // 新增发布成功
                              LogcatUtils.i("新增闲置物品成功");
                              dialog.dismiss();
                              setResult(CommonConstant.RESULTCODE_ADD_SECOND_HAND_OK);
                              finish();
                            }

                            @Override
                            public void onFailure(int code, String message) { // 发布失败
                              LogcatUtils.e("新增闲置物品失败:" + code + " " + message);
                              dialog.dismiss();
                              switch (code) {
                                case 9010:
                                  { // 网络超时
                                    ToastUtils.showToast("网络超时,请检查您的手机网络~");
                                    break;
                                  }
                                case 9016:
                                  { // 无网络连接,请检查您的手机网络
                                    ToastUtils.showToast("无网络连接,请检查您的手机网络~");
                                    break;
                                  }
                                default:
                                  {
                                    ToastUtils.showToast("新增失物信息失败,请重试~");
                                    break;
                                  }
                              }
                            }
                          });
                    } else {
                      secondHandInfo.update(
                          AddSecondHandActivity.this,
                          new UpdateListener() {

                            @Override
                            public void onSuccess() { // 修改发布成功
                              LogcatUtils.i("修改闲置物品成功");
                              dialog.dismiss();
                              setResult(CommonConstant.RESULTCODE_MODIFY_SECOND_HAND_OK);
                              finish();
                            }

                            @Override
                            public void onFailure(int code, String message) { // 发布失败
                              LogcatUtils.e("修改闲置物品失败:" + code + " " + message);
                              dialog.dismiss();
                              switch (code) {
                                case 9010:
                                  { // 网络超时
                                    ToastUtils.showToast("网络超时,请检查您的手机网络~");
                                    break;
                                  }
                                case 9016:
                                  { // 无网络连接,请检查您的手机网络
                                    ToastUtils.showToast("无网络连接,请检查您的手机网络~");
                                    break;
                                  }
                                default:
                                  {
                                    ToastUtils.showToast("修改失物信息失败,请重试~");
                                    break;
                                  }
                              }
                            }
                          });
                    }
                  }
                }

                @Override
                public void onProgress(int curIndex, int curPercent, int total, int totalPercent) {}
              });
    }
  }