Skip to content

Commit

Permalink
Fixed Review processing and Rating data in PDP
Browse files Browse the repository at this point in the history
  • Loading branch information
aravindanck committed Mar 19, 2015
1 parent 93bed42 commit 170b7ac
Show file tree
Hide file tree
Showing 14 changed files with 197 additions and 636 deletions.
4 changes: 3 additions & 1 deletion TheGimbalStore.iml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<component name="NewModuleRootManager" inherit-compiler-output="false">
<output url="file://$MODULE_DIR$/build/classes/main" />
<output-test url="file://$MODULE_DIR$/build/classes/test" />
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ public class HomeActivity extends Activity
private static int BEACON_SIGHTING_INTERVAL_SECONDS;
private Activity mActivity;

private boolean enteredRegion = false;

private static final int SETTINGS_RESULT = 1;

Expand All @@ -86,7 +87,7 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
mActivity = this;
BEACON_SIGHTING_INTERVAL_SECONDS = getResources().getInteger(R.integer.GIMBAL_BEACON_SIGHTING_INTERVAL);
BEACON_SIGHTING_INTERVAL_SECONDS = getResources().getInteger(R.integer.GIMBAL_BEACON_SIGHTING_DISTANCE);

mNavigationDrawerFragment = (NavigationDrawerFragment)
getFragmentManager().findFragmentById(R.id.navigation_drawer);
Expand Down Expand Up @@ -195,51 +196,61 @@ private void processCategoryListData() {
@Override
public void onBeaconServiceConnect() {
if (beaconManager != null) {
final double DEVICE_CIRCLE_DISTANCE_LIMIT = getResources().getInteger(R.integer.GIMBAL_BEACON_SIGHTING_DISTANCE);
try {
beaconManager.setRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> beacons, Region region) {
try {
if (beaconEncounterSeconds % BEACON_SIGHTING_INTERVAL_SECONDS == 0 &&
beacons.size() > 0) {
Log.d("DEBUG", "beaconEncounterSecond = " + beaconEncounterSeconds);
if (beacons.size() > 0) {
// Log.d("DEBUG", "beaconEncounterSecond = " + beaconEncounterSeconds);
String deviceIdList = "";
for (Beacon beacon : beacons) {
Log.d("GIMBAL", " beacon " + beacon.toString() + " is about " + beacon.getDistance() + " meters away.");
if (!deviceIdList.isEmpty()) {
deviceIdList += ",";
// Log.d("GIMBAL", "Entered region flag : " + enteredRegion + " beacon " + beacon.toString() + " is about " + beacon.getDistance() + " meters away.");

if ((beacon.getDistance() <= DEVICE_CIRCLE_DISTANCE_LIMIT) && !enteredRegion) {
Log.d("GIMBAL", "*********Entered region since the beacon is within 1 meter range : " + beacon.getDistance());
enteredRegion = true;
GimbalPromotionsDataProcessor gpDataProcessor = new GimbalPromotionsDataProcessor(mActivity,
null, null,
null, null,
null);
if (!deviceIdList.isEmpty()) {
deviceIdList += ",";
}
String deviceId = beacon.getId1()
+ GimbalStoreConstants.DELIMITER_HYPHEN
+ beacon.getId2()
+ GimbalStoreConstants.DELIMITER_HYPHEN
+ beacon.getId3();
deviceIdList += deviceId;
Log.d("DEBUG", "Server URL = " + ServerURLUtil.getStoreServletServerURL(getResources()));
Map<String, String> paramsMap = ServerURLUtil.getBasicConfigParamsMap(getResources());


paramsMap.put(StoreParameterKeys.type.toString(),
GimbalStoreConstants.StoreParameterValues.marketing.toString());
paramsMap.put(StoreParameterKeys.beaconId.toString(),
deviceIdList);

String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(),
GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
Log.d("DEBUG", paramsMap.toString());
HttpConnectionAsyncTask handler = new HttpConnectionAsyncTask(HTTP_METHODS.GET,
Arrays.asList(new String[]{ServerURLUtil.getStoreServletServerURL(getResources())}),
Arrays.asList(paramsMap), cookieString,
gpDataProcessor);
handler.execute(new String[]{});
}

if (enteredRegion && (beacon.getDistance() > DEVICE_CIRCLE_DISTANCE_LIMIT)) {
Log.d("GIMBAL", "*********Exited region because the distance is greater than 1 : " + + beacon.getDistance());
enteredRegion = false;
}
String deviceId = beacon.getId1()
+ GimbalStoreConstants.DELIMITER_HYPHEN
+ beacon.getId2()
+ GimbalStoreConstants.DELIMITER_HYPHEN
+ beacon.getId3();
deviceIdList += deviceId;
}
GimbalPromotionsDataProcessor gpDataProcessor = new GimbalPromotionsDataProcessor(mActivity,
null, null,
null, null,
null);
// Log.d("DEBUG", "Server URL = " + ServerURLUtil.getStoreServletServerURL(getResources()));
Map<String, String> paramsMap = ServerURLUtil.getBasicConfigParamsMap(getResources());


paramsMap.put(StoreParameterKeys.type.toString(),
GimbalStoreConstants.StoreParameterValues.marketing.toString());
paramsMap.put(StoreParameterKeys.beaconIds.toString(),
deviceIdList);

String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(),
GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
// Log.d("DEBUG", paramsMap.toString());
HttpConnectionAsyncTask handler = new HttpConnectionAsyncTask(HTTP_METHODS.GET,
Arrays.asList(new String[]{ServerURLUtil.getStoreServletServerURL(getResources())}),
Arrays.asList(paramsMap), cookieString,
gpDataProcessor);
handler.execute(new String[]{});

}
Thread.sleep(1000);
beaconEncounterSeconds++;
//beaconEncounterSeconds++;
} catch (Exception e) {
Log.e("ERROR", e.getMessage(), e);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ protected void onCreate(Bundle savedInstanceState) {

paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
GimbalStoreConstants.StoreParameterValues.marketing.toString());
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.beaconIds.toString(),
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.beaconId.toString(),
selectedBeaconsList);

String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ public boolean doProcess(List<ResponseItemBean> responseItemBeansList) {
}
if (intent != null) {
Log.d("DEBUG", "In review post processor prodId = " + intent.getStringExtra(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_PRODUCT_ID.toString()));
callingActivity.startActivity(intent);
callingActivity.finish();
}
Log.d("DEBUG", "Review submitted successfully!!");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
import com.avnet.gears.codes.gimbal.store.async.response.processor.AsyncResponseProcessor;
import com.avnet.gears.codes.gimbal.store.bean.ProductBean;
import com.avnet.gears.codes.gimbal.store.bean.ResponseItemBean;
import com.avnet.gears.codes.gimbal.store.bean.ReviewBean;
import com.avnet.gears.codes.gimbal.store.bean.ReviewDataBean;
import com.avnet.gears.codes.gimbal.store.bean.response.ProductsResponseBean;
import com.avnet.gears.codes.gimbal.store.constant.GimbalStoreConstants;
import com.avnet.gears.codes.gimbal.store.handler.ImageResponseAsyncTask;
Expand Down Expand Up @@ -74,6 +74,7 @@ public boolean doProcess(List<ResponseItemBean> responseItemBeanList) {
responseString = responseString.trim()
.replace(GimbalStoreConstants.START_COMMENT_STRING, "")
.replace(GimbalStoreConstants.END_COMMENT_STRING, "");
Log.d("DEBUG","responseString = " + responseString);

// get the list of sub categories and populate it to the adapter
Gson gson = new GsonBuilder().disableHtmlEscaping().create();
Expand All @@ -96,28 +97,25 @@ public void run() {
priceView.setText(productBean.getPrice());
}

ReviewBean reviews = productBean.getReviews();
ReviewDataBean reviews = productBean.getReviews();
if (reviews != null) {
if (reviewsListView != null) {

if (reviews.getTotalResults() != null && "0".equals(reviews.getTotalResults())) {
if (reviews != null && reviews.getReviews() != null) {
reviewTitleView.setText(MessageFormat.format(GimbalStoreConstants.MESSAGE_PRODUCT_GOT_REVIEWS,
new Object[]{reviews.getTotalResults()}));
new Object[]{reviews.getReviews().length}));
} else {
reviewTitleView.setText(GimbalStoreConstants.MESSAGE_NO_REVIEWS);
}

}
if (reviews.getResults() != null) {
if (reviews.getAverageRating() != null) {
if (ratingView != null) {
Log.d("DEBUG", "Rating overall = " + reviews.getIncludes());
if (reviews.getIncludes() != null &&
reviews.getIncludes().getReviewStatistics() != null &&
reviews.getIncludes().getReviewStatistics().getAverageOverallRating() != null) {
ratingView.setText(GimbalStoreConstants.LABEL_OVERALL_RATING + reviews.getIncludes().getReviewStatistics().getAverageOverallRating());
}
// Log.d("DEBUG", "Rating overall = " + reviews.getIncludes());
ratingView.setText(GimbalStoreConstants.LABEL_OVERALL_RATING + reviews.getAverageRating());

}
List<String> reviewString = TypeConversionUtil.getReviewTextAsStrings(Arrays.asList(reviews.getResults()));
List<String> reviewString = TypeConversionUtil.getReviewTextAsStrings(Arrays.asList(reviews.getReviews()));
ArrayAdapter<String> reviewsAdapter = new ArrayAdapter<String>(parentActivity,
android.R.layout.simple_list_item_1,
reviewString);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,9 @@ public class ProductBean extends BaseServerDataBean {

private String partNumber;
private String price;
private String rating;


private ReviewBean reviews;
private ReviewDataBean reviews;
private String[] attribute;

public String getPartNumber() {
Expand All @@ -23,11 +22,19 @@ public void setPartNumber(String partNumber) {
this.partNumber = partNumber;
}

public ReviewBean getReviews() {
public String getPrice() {
return price;
}

public void setPrice(String price) {
this.price = price;
}

public ReviewDataBean getReviews() {
return reviews;
}

public void setReviews(ReviewBean reviews) {
public void setReviews(ReviewDataBean reviews) {
this.reviews = reviews;
}

Expand All @@ -39,26 +46,6 @@ public void setAttribute(String[] attribute) {
this.attribute = attribute;
}

public String getRating() {
return rating;
}

public void setRating(String rating) {
this.rating = rating;
}

public String getPrice() {
return price;
}

public void setPrice(String price) {
this.price = price;
}

public void setUniqueId(String[] uniqueId) {
this.uniqueId = uniqueId[0];
}

@Override
public String toString() {
return super.toString() +
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,76 +1,44 @@
package com.avnet.gears.codes.gimbal.store.bean;

import java.util.Arrays;

/**
* Created by 914889 on 3/16/15.
*/
public class ReviewBean extends BaseServerDataBean {
private String TotalResults;
private String Offset;
private String HasErrors;
private ReviewResult[] Results;
private RatingBean Includes;
private String[] errors;

public String getTotalResults() {
return TotalResults;
}

public void setTotalResults(String totalResults) {
TotalResults = totalResults;
}

public String getOffset() {
return Offset;
}

public void setOffset(String offset) {
Offset = offset;
}

public String getHasErrors() {
return HasErrors;
}

public void setHasErrors(String hasErrors) {
HasErrors = hasErrors;
}
private String Review;
private String Rating;
private String Friend;

public ReviewResult[] getResults() {
return Results;
public String getReview() {
return Review;
}

public void setResults(ReviewResult[] results) {
Results = results;
public void setReview(String review) {
Review = review;
}

public RatingBean getIncludes() {
return Includes;
public String getRating() {
return Rating;
}

public void setIncludes(RatingBean includes) {
Includes = includes;
public void setRating(String rating) {
Rating = rating;
}

public String[] getErrors() {
return errors;
public String getFriend() {
return Friend;
}

public void setErrors(String[] errors) {
this.errors = errors;
public void setFriend(String friend) {
Friend = friend;
}

@Override
public String toString() {
return super.toString() +
return super.toString()+
"ReviewBean{" +
"TotalResults='" + TotalResults + '\'' +
", Offset='" + Offset + '\'' +
", HasErrors='" + HasErrors + '\'' +
", Results=" + Arrays.toString(Results) +
", Includes='" + Includes + '\'' +
", errors=" + Arrays.toString(errors) +
"Review='" + Review + '\'' +
", Rating='" + Rating + '\'' +
", Friend='" + Friend + '\'' +
'}';
}
}
Loading

0 comments on commit 170b7ac

Please sign in to comment.