Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.77 KB | None | 0 0
  1. package id.co.uciTech.dodolan.Product;
  2.  
  3. import android.app.Activity;
  4. import android.app.Dialog;
  5. import android.app.ProgressDialog;
  6. import android.content.Context;
  7. import android.content.Intent;
  8. import android.graphics.Color;
  9. import android.graphics.drawable.ColorDrawable;
  10. import android.os.Bundle;
  11. import android.provider.Settings;
  12. import android.support.v4.app.Fragment;
  13. import android.support.v7.app.AppCompatActivity;
  14. import android.support.v7.widget.CardView;
  15. import android.support.v7.widget.RecyclerView;
  16. import android.util.Log;
  17. import android.view.Gravity;
  18. import android.view.LayoutInflater;
  19. import android.view.View;
  20. import android.view.ViewGroup;
  21. import android.view.Window;
  22. import android.view.WindowManager;
  23. import android.widget.Button;
  24. import android.widget.ListView;
  25. import android.widget.PopupWindow;
  26. import android.widget.TextView;
  27. import android.widget.Toast;
  28.  
  29. import com.android.volley.AuthFailureError;
  30. import com.android.volley.NetworkError;
  31. import com.android.volley.ParseError;
  32. import com.android.volley.Request;
  33. import com.android.volley.RequestQueue;
  34. import com.android.volley.Response;
  35. import com.android.volley.ServerError;
  36. import com.android.volley.TimeoutError;
  37. import com.android.volley.VolleyError;
  38. import com.android.volley.toolbox.ImageLoader;
  39. import com.android.volley.toolbox.JsonArrayRequest;
  40. import com.android.volley.toolbox.NetworkImageView;
  41. import com.android.volley.toolbox.StringRequest;
  42. import com.android.volley.toolbox.Volley;
  43.  
  44. import org.json.JSONArray;
  45. import org.json.JSONException;
  46. import org.json.JSONObject;
  47. import org.w3c.dom.Text;
  48.  
  49. import java.text.NumberFormat;
  50. import java.util.ArrayList;
  51. import java.util.HashMap;
  52. import java.util.List;
  53. import java.util.Locale;
  54. import java.util.Map;
  55.  
  56. import es.dmoral.toasty.Toasty;
  57. import id.co.uciTech.dodolan.CategoryTerlaris.ServerImageParseAdapter;
  58. import id.co.uciTech.dodolan.Config;
  59. import id.co.uciTech.dodolan.MainActivity;
  60. import id.co.uciTech.dodolan.R;
  61. import id.co.uciTech.dodolan.beliProduk;
  62. import id.co.uciTech.dodolan.detilProduct.detilProduct;
  63. import id.co.uciTech.dodolan.viewKeranjang.ItemCart;
  64. import id.co.uciTech.dodolan.viewKeranjang.cartAdapter;
  65. import id.co.uciTech.dodolan.viewKeranjang.cartController;
  66. import id.co.uciTech.dodolan.viewKeranjang.orderProsesAdapter;
  67. import me.himanshusoni.quantityview.QuantityView;
  68.  
  69. import static com.arlib.floatingsearchview.util.Util.dpToPx;
  70. import static java.lang.Integer.parseInt;
  71.  
  72.  
  73. /**
  74. * Created by uciTech on 30/03/2017.
  75. */
  76.  
  77. public class RVProductAdapter extends RecyclerView.Adapter<RVProductAdapter.ViewHolder> {
  78.  
  79. public static final String ADD_TO_CART_URL = "http://cintakasih.id/webservices/simpan/index.jsp?q=KERANJANG-V2";
  80.  
  81.  
  82. public static final String KEY_PRODUCT_ID = "product_id";
  83. public static final String KEY_NAME = "nama";
  84. public static final String KEY_DEVICE_ID = "device_id";
  85. public static final String KEY_PRODUCT_PRICE = "product_price";
  86. public static final String KEY_TOTAL = "subtotal";
  87. public static final String KEY_QTY = "quantity";
  88. public static final String KEY_TOKO = "toko";
  89.  
  90.  
  91.  
  92. Context context;
  93. Activity activity;
  94. List<GetProductAdapter> getProductAdapter;
  95. ImageLoader imageLoader1;
  96. NumberFormat rupiahFormat;
  97. String Rupiah = "Rp.";
  98. private cartAdapter adapter;
  99. private orderProsesAdapter orderProses;
  100. private PopupWindow pwindo;
  101. private TextView xclose, countCart, updateCart;
  102. private List<ItemCart> array = new ArrayList<ItemCart>();
  103. private ProgressDialog or_dialog;
  104. RequestQueue requestQueue ;
  105. Button update,blonjo,updateOrd;
  106.  
  107.  
  108.  
  109. public RVProductAdapter(List<GetProductAdapter> getProductAdapter, Context context) {
  110. super();
  111. this.getProductAdapter = getProductAdapter;
  112. this.context = context;
  113. }
  114.  
  115. @Override
  116. public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
  117.  
  118. View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycleview_items_product, parent, false);
  119. ViewHolder viewHolder = new ViewHolder(v);
  120.  
  121. return viewHolder;
  122. }
  123.  
  124. @Override
  125. public void onBindViewHolder(final ViewHolder Viewholder, int position) {
  126.  
  127. GetProductAdapter getProductAdapter1 = getProductAdapter.get(position);
  128.  
  129. imageLoader1 = ServerImageParseAdapter.getInstance(context).getImageLoader();
  130.  
  131. imageLoader1.get(getProductAdapter1.getProductImage(),
  132. ImageLoader.getImageListener(
  133. Viewholder.networkImageView,//Server Image
  134. R.mipmap.image_blank,//Before loading server image the default showing image.
  135. android.R.drawable.ic_dialog_alert //Error image if requested image dose not found on server.
  136. )
  137. );
  138.  
  139. rupiahFormat = NumberFormat.getInstance(Locale.GERMANY);
  140. String rupiah = rupiahFormat.format(Double.parseDouble(getProductAdapter1.getProductPrice()));
  141. String Result = Rupiah + " " + rupiah ;
  142.  
  143. Viewholder.networkImageView.setImageUrl(getProductAdapter1.getProductImage(), imageLoader1);
  144.  
  145.  
  146. Viewholder.namaProduk.setText(getProductAdapter1.getProductName());
  147. Viewholder.hargaProduk.setText(Result);
  148. Viewholder.hargaProdukInv.setText(getProductAdapter1.getProductPrice());
  149. Viewholder.idToko.setText(getProductAdapter1.getId_toko());
  150. Viewholder.NamaToko.setText("Outlet : "+getProductAdapter1.getToko());
  151. Viewholder.idProduk.setText(getProductAdapter1.getProductId());
  152. Viewholder.idProduk.setVisibility(View.INVISIBLE);
  153.  
  154. Viewholder.cardViewProduk.setOnClickListener(new View.OnClickListener() {
  155. @Override
  156. public void onClick(View view) {
  157.  
  158. String prodID = Viewholder.idProduk.getText().toString();
  159. String hrgProd = Viewholder.hargaProdukInv.getText().toString();
  160. String namaProd= Viewholder.namaProduk.getText().toString();
  161. String namaToko= Viewholder.NamaToko.getText().toString();
  162. String idtoko = Viewholder.idToko.getText().toString();
  163.  
  164. // Toast.makeText(context, prodID, Toast.LENGTH_SHORT).show();
  165.  
  166. Fragment detilproduk = detilProduct.newInstance();
  167. Bundle bundle = new Bundle();
  168. bundle.putString("Product_ID",prodID);
  169. bundle.putString("Product_PRICE",hrgProd);
  170. bundle.putString("Product_NAME",namaProd);
  171. bundle.putString("Product_OUTLET_NAME",namaToko);
  172. bundle.putString("Product_OUTLET_ID",idtoko);
  173.  
  174. detilproduk.setArguments(bundle);
  175. Log.d("", String.valueOf(bundle));
  176.  
  177. AppCompatActivity activity = (AppCompatActivity) view.getContext();
  178.  
  179. activity.getSupportFragmentManager().beginTransaction()
  180. .replace(R.id.content_frame, detilproduk)
  181. .addToBackStack(null).commit();
  182.  
  183. }
  184. });
  185.  
  186. Viewholder.TbBeli.setOnClickListener(new View.OnClickListener() {
  187. @Override
  188. public void onClick(View view) {
  189. final String productId = Viewholder.idProduk.getText().toString().trim();
  190. final String product_price = Viewholder.hargaProdukInv.getText().toString().trim();
  191. final String nama = Viewholder.namaProduk.getText().toString().trim();
  192. final String toko = Viewholder.idToko.getText().toString();
  193. final String device_id = Settings.Secure.getString(context.getContentResolver(),
  194. Settings.Secure.ANDROID_ID);
  195. // Toast.makeText(context, product_price , Toast.LENGTH_SHORT).show();
  196.  
  197. // Toast.makeText(context, device_id, Toast.LENGTH_SHORT).show();
  198. addToCart(productId, product_price, device_id, view, nama, toko);
  199.  
  200. //Intent tumbas = new Intent(context,beliProduk.class);
  201. //tumbas.putExtra("device_id",device_id);
  202. //context.startActivity(tumbas);
  203. }
  204. });
  205.  
  206. }
  207.  
  208. private void showOrderPopup2(final View view, final String device_id){
  209. final Dialog dialog = new Dialog(context);
  210. dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
  211. dialog.setContentView(R.layout.frame_popup);
  212. // dialog.setTitle("This is my custom dialog box");
  213.  
  214. dialog.setCancelable(true);
  215.  
  216.  
  217. //list item di keranjang belanja
  218. final ListView lview = (ListView) dialog.findViewById(R.id.list_item);
  219. // idItem = (TextView)layout.findViewById(R.id.idListItem);
  220.  
  221. //adapter ListView Item Keranjang Belanja
  222. orderProses=new orderProsesAdapter((Activity)context,array);
  223. lview.setAdapter(orderProses);
  224.  
  225. or_dialog=new ProgressDialog(context);
  226. or_dialog.setMessage("mohon tunggu...");
  227. or_dialog.show();
  228.  
  229.  
  230. updateOrd = (Button)dialog.findViewById(R.id.UpdateOrder);
  231. updateOrd.setOnClickListener(new View.OnClickListener() {
  232. @Override
  233. public void onClick(View v) {
  234.  
  235. TextView harga = (TextView) dialog.findViewById(R.id.priceHit);
  236. QuantityView qty = (QuantityView)dialog.findViewById(R.id.jqty);
  237. TextView stotalHit = (TextView)dialog.findViewById(R.id.stotalHit);
  238. TextView idItem = (TextView)dialog.findViewById(R.id.idListItem);
  239.  
  240.  
  241. String rego = harga.getText().toString();
  242. String jml = String.valueOf(qty.getQuantity());
  243. String total = stotalHit.getText().toString();
  244. String produk_id = idItem.getText().toString();
  245.  
  246. //Toast.makeText(context, device_id+'-'+rego+'-'+jml+'-'+total+'-'+produk_id, Toast.LENGTH_SHORT).show();
  247.  
  248. if (parseInt(jml)>1){
  249. // Toast.makeText(context, "update", Toast.LENGTH_SHORT).show();
  250. updateQuantity(device_id,produk_id, rego, jml, total);
  251. }else{
  252. Toast.makeText(context, "anda belum melakukan perubahan quantity", Toast.LENGTH_SHORT).show();
  253. }
  254. //
  255. }
  256. });
  257.  
  258.  
  259.  
  260. blonjo = (Button)dialog.findViewById(R.id.belanjaLagi);
  261. blonjo.setOnClickListener(new View.OnClickListener() {
  262. @Override
  263. public void onClick(View v) {
  264. dialog.dismiss();
  265. TextView harga = (TextView) dialog.findViewById(R.id.priceHit);
  266. QuantityView qty = (QuantityView)dialog.findViewById(R.id.jqty);
  267. TextView stotalHit = (TextView)dialog.findViewById(R.id.stotalHit);
  268. TextView idItem = (TextView)dialog.findViewById(R.id.idListItem);
  269.  
  270.  
  271. String rego = harga.getText().toString();
  272. String jml = String.valueOf(qty.getQuantity());
  273. String total = stotalHit.getText().toString();
  274. String produk_id = idItem.getText().toString();
  275.  
  276. //Toast.makeText(context, device_id+'-'+rego+'-'+jml+'-'+total+'-'+produk_id, Toast.LENGTH_SHORT).show();
  277.  
  278. if (parseInt(jml)>1){
  279. // Toast.makeText(context, "update", Toast.LENGTH_SHORT).show();
  280. updateQuantity(device_id,produk_id, rego, jml, total);
  281. }else{
  282. // Toast.makeText(context, "anda belum melakukan perubahan quantity", Toast.LENGTH_SHORT).show();
  283. }
  284. }
  285. });
  286.  
  287. //Creat volley request obj
  288. JsonArrayRequest jsonArrayRequest=new JsonArrayRequest(Config.GET_LAST_ITEM+device_id,
  289. new Response.Listener<JSONArray>() {
  290.  
  291. @Override
  292. public void onResponse(JSONArray response) {
  293. hideDialog();
  294. //parsing json
  295. array.clear();
  296. if(response.length()==0){
  297. Toasty.info(context, "Keranjang Belanja Anda Kosong...", Toast.LENGTH_SHORT).show();
  298. }else{
  299. for(int x=0;x<response.length();x++){
  300. try{
  301. JSONObject obj=response.getJSONObject(x);
  302.  
  303. ItemCart icart = new ItemCart();
  304. icart.setId(obj.getString("product_id"));
  305. icart.setName(obj.getString("nama"));
  306. icart.setImage(obj.getString("image"));
  307. icart.setPrice(obj.getString("product_price"));
  308. icart.setSubtotal(obj.getString("subtotal"));
  309. icart.setQuantity(obj.getString("quantity"));
  310. //add to array
  311. array.add(icart);
  312.  
  313. }catch(JSONException ex){
  314. ex.printStackTrace();
  315. }
  316. }
  317. orderProses.notifyDataSetChanged();
  318. dialog.show();
  319.  
  320. }
  321. }
  322. }, new Response.ErrorListener() {
  323. @Override
  324. public void onErrorResponse(VolleyError volleyError) {
  325. String message = null;
  326. if (volleyError instanceof NetworkError) {
  327. message = "Tidak ada koneksi Internet...";
  328. } else if (volleyError instanceof ServerError) {
  329. message = "Server tidak ditemukan...";
  330. } else if (volleyError instanceof AuthFailureError) {
  331. message = "Tidak ada koneksi Internet...";
  332. } else if (volleyError instanceof ParseError) {
  333. message = "Parsing data Error...";
  334. } else if (volleyError instanceof TimeoutError) {
  335. message = "Connection TimeOut...";
  336. }
  337. Toasty.error(context,message, Toast.LENGTH_LONG).show();
  338. hideDialog();
  339. }
  340. });
  341. cartController.getmInstance().addToRequesQueue(jsonArrayRequest);
  342. countCart = (TextView)((Activity) context).findViewById(R.id.countCart);
  343.  
  344. //close popup pojok kanan atas
  345. xclose = (TextView) dialog.findViewById(R.id.close_cart);
  346. xclose.setOnClickListener(new View.OnClickListener() {
  347. @Override
  348. public void onClick(View view) {
  349. // lview.setAdapter(null);
  350. dialog.dismiss();
  351. TextView harga = (TextView) dialog.findViewById(R.id.priceHit);
  352. QuantityView qty = (QuantityView)dialog.findViewById(R.id.jqty);
  353. TextView stotalHit = (TextView)dialog.findViewById(R.id.stotalHit);
  354. TextView idItem = (TextView)dialog.findViewById(R.id.idListItem);
  355.  
  356.  
  357. String rego = harga.getText().toString();
  358. String jml = String.valueOf(qty.getQuantity());
  359. String total = stotalHit.getText().toString();
  360. String produk_id = idItem.getText().toString();
  361.  
  362. //Toast.makeText(context, device_id+'-'+rego+'-'+jml+'-'+total+'-'+produk_id, Toast.LENGTH_SHORT).show();
  363.  
  364. if (parseInt(jml)>1){
  365. // Toast.makeText(context, "update", Toast.LENGTH_SHORT).show();
  366. updateQuantity(device_id,produk_id, rego, jml, total);
  367. }else{
  368. // Toast.makeText(context, "anda belum melakukan perubahan quantity", Toast.LENGTH_SHORT).show();
  369. }
  370.  
  371. }
  372.  
  373. });
  374.  
  375.  
  376. }
  377.  
  378. public void updateQuantity(final String device_id, final String productId, final String rego, final String jumlah, final String total){
  379. final ProgressDialog loading = ProgressDialog.show(context, "Please Wait...","Update Item...",false,false);
  380. StringRequest stringRequest = new StringRequest(Request.Method.POST, Config.UPDATE_CART_URL,
  381. new Response.Listener<String>() {
  382. @Override
  383. public void onResponse(String response) {
  384. loading.dismiss();
  385. response=response.trim();
  386. if(response.equalsIgnoreCase("SUKSES")){
  387. String res = "item telah di update";
  388. Toasty.success(context,res, Toast.LENGTH_LONG).show();
  389. }
  390. jumlahItem(device_id);
  391. }
  392. },
  393. new Response.ErrorListener() {
  394. @Override
  395. public void onErrorResponse(VolleyError error) {
  396. // Toast.makeText(context,error.toString(),Toast.LENGTH_LONG).show();
  397. Toasty.error(activity,error.toString(), Toast.LENGTH_LONG).show();
  398. hideDialog();
  399. }
  400. }){
  401. @Override
  402. protected Map<String,String> getParams(){
  403. Map<String,String> params = new HashMap<String, String>();
  404. params.put(KEY_PRODUCT_ID,productId);
  405. params.put(KEY_PRODUCT_PRICE,String.valueOf(rego));
  406. params.put(KEY_DEVICE_ID,device_id);
  407. params.put(KEY_QTY,jumlah);
  408. params.put(KEY_TOTAL,String.valueOf(total));
  409.  
  410. return params;
  411. }
  412.  
  413. };
  414. RequestQueue requestQueue = Volley.newRequestQueue(context);
  415. requestQueue.add(stringRequest);
  416. }
  417.  
  418.  
  419. private void showOrderPopup(View v, final String device_id){
  420. try {
  421.  
  422. LayoutInflater inflater = (LayoutInflater) context
  423. .getSystemService(context.LAYOUT_INFLATER_SERVICE);
  424. final View layout = inflater.inflate(R.layout.frame_popup,
  425. (ViewGroup) v.findViewById(R.id.popup_container));
  426.  
  427. pwindo = new PopupWindow(context);
  428. pwindo.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
  429. // layout.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
  430. pwindo.setWidth(layout.getMeasuredWidth());
  431. pwindo.setFocusable(true);
  432. pwindo.setOutsideTouchable(true);
  433. pwindo.setBackgroundDrawable(new ColorDrawable(Color.alpha(2)));
  434. pwindo.setContentView(layout);
  435. pwindo.showAtLocation(layout, Gravity.CENTER, 0, 0);
  436.  
  437. //list item di keranjang belanja
  438. final ListView lview = (ListView) layout.findViewById(R.id.list_item);
  439. // idItem = (TextView)layout.findViewById(R.id.idListItem);
  440.  
  441. update = (Button)layout.findViewById(R.id.updateOrder);
  442. update.setOnClickListener(new View.OnClickListener() {
  443. @Override
  444. public void onClick(View v) {
  445. TextView harga = (TextView)layout.findViewById(R.id.priceHit);
  446. QuantityView qty = (QuantityView)layout.findViewById(R.id.jqty);
  447. TextView stotalHit = (TextView)layout.findViewById(R.id.stotalHit);
  448. TextView idItem = (TextView)layout.findViewById(R.id.idListItem);
  449.  
  450. double rego =Double.parseDouble(harga.getText().toString());
  451. String jml = String.valueOf(qty.getQuantity());
  452. double total =Double.parseDouble(stotalHit.getText().toString());
  453. String produk_id = idItem.getText().toString();
  454.  
  455. //Toast.makeText(context, device_id+'-'+rego+'-'+jml+'-'+total+'-'+produk_id, Toast.LENGTH_SHORT).show();
  456. // updateQuantity(device_id,produk_id, rego, jml, total);
  457.  
  458. }
  459. });
  460.  
  461. blonjo = (Button)layout.findViewById(R.id.belanjaLagi);
  462. blonjo.setOnClickListener(new View.OnClickListener() {
  463. @Override
  464. public void onClick(View v) {
  465. pwindo.dismiss();
  466. }
  467. });
  468.  
  469. //adapter ListView Item Keranjang Belanja
  470. orderProses=new orderProsesAdapter((Activity)context,array);
  471. lview.setAdapter(orderProses);
  472.  
  473.  
  474. /* dialog=new ProgressDialog(context);
  475. dialog.setMessage("mohon tunggu...");
  476. dialog.show();
  477. */
  478. //Creat volley request obj
  479. JsonArrayRequest jsonArrayRequest=new JsonArrayRequest(Config.GET_CART_ITEM+device_id,
  480. new Response.Listener<JSONArray>() {
  481.  
  482. @Override
  483. public void onResponse(JSONArray response) {
  484. hideDialog();
  485. //parsing json
  486. array.clear();
  487. if(response.length()==0){
  488. Toasty.info(context, "Keranjang Belanja Anda Kosong...", Toast.LENGTH_SHORT).show();
  489. }else{
  490. for(int x=0;x<response.length();x++){
  491. try{
  492. JSONObject obj=response.getJSONObject(x);
  493.  
  494. ItemCart icart = new ItemCart();
  495. icart.setId(obj.getString("product_id"));
  496. icart.setName(obj.getString("nama"));
  497. icart.setImage(obj.getString("image"));
  498. icart.setPrice(obj.getString("product_price"));
  499. icart.setSubtotal(obj.getString("subtotal"));
  500. icart.setQuantity(obj.getString("quantity"));
  501. //add to array
  502. array.add(icart);
  503.  
  504. }catch(JSONException ex){
  505. ex.printStackTrace();
  506. }
  507. }
  508. orderProses.notifyDataSetChanged();
  509.  
  510. }
  511. }
  512. }, new Response.ErrorListener() {
  513. @Override
  514. public void onErrorResponse(VolleyError volleyError) {
  515. String message = null;
  516. if (volleyError instanceof NetworkError) {
  517. message = "Tidak ada koneksi Internet...";
  518. } else if (volleyError instanceof ServerError) {
  519. message = "Server tidak ditemukan...";
  520. } else if (volleyError instanceof AuthFailureError) {
  521. message = "Tidak ada koneksi Internet...";
  522. } else if (volleyError instanceof ParseError) {
  523. message = "Parsing data Error...";
  524. } else if (volleyError instanceof TimeoutError) {
  525. message = "Connection TimeOut...";
  526. }
  527. Toasty.error(context,message, Toast.LENGTH_LONG).show();
  528. hideDialog();
  529. }
  530. });
  531. cartController.getmInstance().addToRequesQueue(jsonArrayRequest);
  532. //close popup pojok kanan atas
  533. /* xclose = (TextView) layout.findViewById(R.id.close_cart);
  534. xclose.setOnClickListener(new View.OnClickListener() {
  535. @Override
  536. public void onClick(View view) {
  537. lview.setAdapter(null);
  538. pwindo.dismiss();
  539.  
  540. }
  541.  
  542. });*/
  543.  
  544. countCart = (TextView)((Activity) context).findViewById(R.id.countCart);
  545.  
  546. } catch (Exception e) {
  547. e.printStackTrace();
  548. }
  549.  
  550. }
  551.  
  552. public void hideDialog(){
  553. if(or_dialog !=null){
  554. or_dialog.dismiss();
  555. or_dialog=null;
  556. }
  557. }
  558.  
  559. public void jumlahItem(final String devId){
  560. JsonArrayRequest jsonArrayRequest=new JsonArrayRequest(Config.CEK_CART_URL+devId,
  561. new Response.Listener<JSONArray>() {
  562.  
  563. @Override
  564. public void onResponse(JSONArray response) {
  565. //parsing json
  566. if(response.length()==0){
  567. //Toasty.info(getApplication(), "Keranjang Belanja Anda Kosong..."+response, Toast.LENGTH_SHORT).show();
  568. countCart.setVisibility(View.INVISIBLE);
  569. }else{
  570. for(int x=0;x<response.length();x++){
  571. try{
  572. JSONObject obj=response.getJSONObject(x);
  573. // Toast.makeText(MainActivity.this, obj.getString("jml"), Toast.LENGTH_SHORT).show();
  574. countCart.setVisibility(View.VISIBLE);
  575. countCart.setText(obj.getString("jml"));
  576. }catch(JSONException ex){
  577. ex.printStackTrace();
  578. }
  579. }
  580.  
  581. }
  582. }
  583. }, new Response.ErrorListener() {
  584. @Override
  585. public void onErrorResponse(VolleyError volleyError) {
  586. String message = null;
  587. if (volleyError instanceof NetworkError) {
  588. message = "Tidak ada koneksi Internet...";
  589. } else if (volleyError instanceof ServerError) {
  590. message = "Server tidak ditemukan...";
  591. } else if (volleyError instanceof AuthFailureError) {
  592. message = "Tidak ada koneksi Internet...";
  593. } else if (volleyError instanceof ParseError) {
  594. message = "Parsing data Error...";
  595. } else if (volleyError instanceof TimeoutError) {
  596. message = "Connection TimeOut...";
  597. }
  598. Toasty.error(context,message, Toast.LENGTH_LONG).show();
  599. }
  600. });
  601. requestQueue = Volley.newRequestQueue(context);
  602. requestQueue.add(jsonArrayRequest);
  603. }
  604.  
  605.  
  606.  
  607.  
  608. public void addToCart(final String productId, final String product_price, final String device_id, final View view, final String nama, final String toko){
  609. final ProgressDialog loading = ProgressDialog.show(context, "Please Wait...","Memasukan ke Keranjang Belanja...",false,false);
  610. StringRequest stringRequest = new StringRequest(Request.Method.POST, ADD_TO_CART_URL,
  611. new Response.Listener<String>() {
  612. @Override
  613. public void onResponse(String response) {
  614. loading.dismiss();
  615. // Toast.makeText(context,response,Toast.LENGTH_LONG).show();
  616. // response=response.trim();
  617. // Toasty.success(context,response, Toast.LENGTH_LONG).show();
  618. jumlahItem(device_id);
  619. showOrderPopup2(view, device_id);
  620. }
  621. },
  622. new Response.ErrorListener() {
  623. @Override
  624. public void onErrorResponse(VolleyError error) {
  625. // Toast.makeText(context,error.toString(),Toast.LENGTH_LONG).show();
  626. Toasty.error(context,error.toString(), Toast.LENGTH_LONG).show();
  627. hideDialog();
  628. }
  629. }){
  630. @Override
  631. protected Map<String,String> getParams(){
  632. Map<String,String> params = new HashMap<String, String>();
  633. params.put(KEY_PRODUCT_ID,productId);
  634. params.put(KEY_PRODUCT_PRICE,product_price);
  635. params.put(KEY_DEVICE_ID,device_id);
  636. params.put(KEY_NAME, nama);
  637. params.put(KEY_TOKO,toko);
  638.  
  639. return params;
  640. }
  641.  
  642. };
  643. RequestQueue requestQueue = Volley.newRequestQueue(context);
  644. requestQueue.add(stringRequest);
  645. }
  646.  
  647. @Override
  648. public int getItemCount() {
  649.  
  650. return getProductAdapter.size();
  651. }
  652. class ViewHolder extends RecyclerView.ViewHolder{
  653.  
  654. public TextView namaProduk;
  655. public TextView idProduk;
  656. public TextView hargaProduk, stothit;
  657. public TextView hargaProdukInv;
  658. public TextView idToko;
  659. public TextView NamaToko;
  660. public NetworkImageView networkImageView ;
  661. public CardView cardViewProduk;
  662. public Button TbBeli;
  663.  
  664. public ViewHolder(View itemView) {
  665.  
  666. super(itemView);
  667.  
  668. namaProduk = (TextView) itemView.findViewById(R.id.namaProduk) ;
  669. idProduk = (TextView) itemView.findViewById(R.id.IdProduct);
  670. hargaProduk = (TextView)itemView.findViewById(R.id.price);
  671. hargaProdukInv = (TextView) itemView.findViewById(R.id.priceInv);
  672. stothit = (TextView)itemView.findViewById(R.id.stotalHit);
  673. cardViewProduk = (CardView) itemView.findViewById(R.id.cardviewProduct);
  674. TbBeli = (Button) itemView.findViewById(R.id.addToCart);
  675. idToko = (TextView)itemView.findViewById(R.id.idToko);
  676. NamaToko = (TextView)itemView.findViewById(R.id.namaToko);
  677.  
  678.  
  679. networkImageView = (NetworkImageView) itemView.findViewById(R.id.VollyNetworkImageView1) ;
  680. //networkImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
  681.  
  682. }
  683. }
  684.  
  685. @Override
  686. public int getItemViewType(int position) {
  687. return position;
  688. }
  689. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement