public static interface API_Update_Profile_Data {
@Multipart @POST("updateprofile_api/update_profiledata/")
Call<ResponseBody> Respos(@Part("user_id") RequestBody user_id,
@Part("user_type") RequestBody user_type,
@Part("name_ara") RequestBody name_ara,
@Part("name_eng") RequestBody name_eng,
@Part MultipartBody.Part user_image,
@Part("mobileno") RequestBody mobileno,
@Part("email_id") RequestBody email_id);
private void updateUserData(RequestBody mUserId, RequestBody mUserType, RequestBody name_ara, final RequestBody name_eng,
RequestBody mobileno, RequestBody email) {
ShowProgressDialog();
File file = null;
RequestBody fbody = null;
String file_name = null;
MultipartBody.Part body = null;
try {
file = new File(imageUri.getPath());
file_name = file.getName();
file_name = file_name.replace(" ", "");
fbody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
body = MultipartBody.Part.createFormData("user_image", file_name, fbody);
} catch (Exception e) {
e.printStackTrace();
}
GetResponce.API_Update_Profile_Data service = Final_API_Data.retrofit.create(GetResponce.API_Update_Profile_Data.class);
Call<ResponseBody> result = service.Respos(mUserId, mUserType, name_ara, name_eng, body, mobileno, email);
final File finalFile = file;
final String finalFile_name = file_name;
result.enqueue(new Callback<ResponseBody>() {
@Override public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
Log.e("Sucessfully", "Done");
try {
String res = response.body().string();
String status = "0";
Log.e("Updat Profile Respo", res);
JSONObject jsonObject = new JSONObject(res);
status = jsonObject.getString("status");
String message = jsonObject.getString("message");
if (status.equals("1")) {
((MainActivity) getActivity()).popFragments();
MainActivity.tvUserName.setText(etNameEng.getText().toString());
user_image_url = CONSTANT.Customer_Image_Path + finalFile_name;
Log.e("User Image", user_image_url);
UserData.mUserImage = finalFile_name;
try {
Glide.with(getActivity()).load(user_image_url).diskCacheStrategy(DiskCacheStrategy.SOURCE).dontAnimate().placeholder(R.drawable.place_add_user_image).into(ivProfilePic);
txtAddProfilePhoto.setVisibility(View.GONE);
Glide.with(getActivity()).load(user_image_url).diskCacheStrategy(DiskCacheStrategy.SOURCE).dontAnimate().placeholder(R.drawable.icn_car).into(MainActivity.ivUserImageHead);
} catch (Exception e) {
}
Toast.makeText(activity, getString(R.string.your_profile_has_been_saved_successfully), Toast.LENGTH_SHORT).show();
}
else if(status.equals("0")){
Toast.makeText(activity, "Email Id already registered, Please try another Id", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(activity, getString(R.string.failed_please_try_again), Toast.LENGTH_SHORT).show();
DismissProgressDialog();
return;
}
DismissProgressDialog();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.e("Sucess Fully", t.getMessage());
DismissProgressDialog();
}
});
}
private RequestBody StringToRequestBody(String s) {
return RequestBody.create(MediaType.parse("multipart/form-data"), s);
}
No comments:
Post a Comment