Просмотр исходного кода

Merge branch 'developer' of https://gitlab.com/Arisono/SkWeiChat-Baidu into feature_raomeng

RaoMeng 7 лет назад
Родитель
Сommit
bce75074f4

+ 13 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/JoinCharitActivity.java

@@ -20,6 +20,7 @@ import com.core.base.BaseActivity;
 import com.core.net.utils.NetUtils;
 import com.core.utils.IntentUtils;
 import com.core.utils.ToastUtil;
+import com.core.widget.EmptyLayout;
 import com.handmark.pulltorefresh.library.PullToRefreshListView;
 import com.me.network.app.http.HttpClient;
 import com.me.network.app.http.Method;
@@ -38,6 +39,7 @@ public class JoinCharitActivity extends BaseActivity {
     private PullToRefreshListView refreshListView;
     private TextView numTv;
     private TextView charitTv;
+    private EmptyLayout emptyLayout;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -65,6 +67,11 @@ public class JoinCharitActivity extends BaseActivity {
             }
         }
         refreshListView = (PullToRefreshListView) findViewById(R.id.refreshListView);
+        emptyLayout = new EmptyLayout(ct, refreshListView.getRefreshableView());
+        emptyLayout.setShowLoadingButton(false);
+        emptyLayout.setShowEmptyButton(false);
+        emptyLayout.setShowErrorButton(false);
+        emptyLayout.setEmptyViewRes(com.core.app.R.layout.view_empty);
         if (type == 2) {
             refreshListView.getRefreshableView().addHeaderView(getActivityHeadler(num));
         } else {
@@ -120,7 +127,7 @@ public class JoinCharitActivity extends BaseActivity {
         progressDialog.show();
         HttpClient httpClient = new HttpClient.Builder(Constants.charitBaseUrl()).isDebug(true).build();
         HttpClient builder = new HttpClient.Builder()
-                .url( (type == 2 ? "joinActivity" : "donateDetail") + "/" + MyApplication.getInstance().getLoginUserId())
+                .url((type == 2 ? "joinActivity" : "donateDetail") + "/" + MyApplication.getInstance().getLoginUserId())
                 .method(Method.GET)
                 .build();
         httpClient.Api().send(builder, new ResultSubscriber<>(new ResultListener<Object>() {
@@ -176,6 +183,8 @@ public class JoinCharitActivity extends BaseActivity {
                 models.add(model);
             }
             setAdapter(models);
+        } else {
+            emptyLayout.showEmpty();
         }
     }
 
@@ -201,5 +210,8 @@ public class JoinCharitActivity extends BaseActivity {
             mAdapter.setModels(models);
             mAdapter.notifyDataSetChanged();
         }
+        if (ListUtils.isEmpty(models)) {
+            emptyLayout.showEmpty();
+        }
     }
 }

+ 35 - 8
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/CharitableAdapter.java

@@ -2,22 +2,18 @@ package com.uas.appworks.OA.platform.adapter;
 
 import android.content.Context;
 import android.graphics.Bitmap;
-import android.graphics.Color;
-import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
-import android.widget.Button;
 import android.widget.ImageView;
+import android.widget.SeekBar;
 import android.widget.TextView;
-import android.widget.Toast;
 
 import com.common.LogUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
 import com.common.data.TextUtil;
-import com.core.app.MyApplication;
 import com.nostra13.universalimageloader.core.ImageLoader;
 import com.nostra13.universalimageloader.core.assist.FailReason;
 import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
@@ -25,6 +21,7 @@ import com.uas.appworks.OA.platform.config.ImageConfig;
 import com.uas.appworks.OA.platform.model.CharitModel;
 import com.uas.appworks.R;
 
+import java.text.DecimalFormat;
 import java.util.List;
 
 /**
@@ -32,7 +29,7 @@ import java.util.List;
  */
 
 public class CharitableAdapter extends BaseAdapter {
-
+    private DecimalFormat df = new DecimalFormat(".##");
     private Context ct;
     private List<CharitModel> models;
     private MyClickListener onClickListener;
@@ -83,13 +80,19 @@ public class CharitableAdapter extends BaseAdapter {
         CharitModel model = models.get(i);
         if (view == null) {
             holder = new ViewHolder();
-            view = getLayoutInflater().inflate(R.layout.item_charitable_list, null);
+            view = getLayoutInflater().inflate(R.layout.item_charitable_project, null);
             holder.contantImg = (ImageView) view.findViewById(R.id.contantImg);
             holder.titleTv = (TextView) view.findViewById(R.id.titleTv);
             holder.subTv = (TextView) view.findViewById(R.id.subTv);
             holder.targetTv = (TextView) view.findViewById(R.id.targetTv);
             holder.typeTv = (TextView) view.findViewById(R.id.typeTv);
             holder.giftBtn = (TextView) view.findViewById(R.id.giftBtn);
+            holder.progressSb = view.findViewById(R.id.progressSb);
+            holder.defTv = view.findViewById(R.id.defTv);
+            holder.progressSb.setClickable(false);
+            holder.progressSb.setEnabled(false);
+            holder.progressSb.setFocusable(false);
+            holder.progressSb.setPadding(0,0,0,0);
             view.setTag(holder);
         } else {
             holder = (ViewHolder) view.getTag();
@@ -117,6 +120,28 @@ public class CharitableAdapter extends BaseAdapter {
                     .showIn(holder.subTv);
         }
 
+        try {
+            float mTarget = Float.valueOf(model.getTarget());
+            float mTotalAmount = Float.valueOf(model.getTotalAmount());
+            holder.progressSb.setMax((int) mTarget);
+            holder.progressSb.setProgress((int) mTotalAmount);
+            String defStr = "";
+            if (mTotalAmount >= mTarget) {
+                defStr = "筹款已完成";
+            } else {
+                float defAmount = mTarget - mTotalAmount;
+
+                if (defAmount > 10000) {
+                    float defRMB = defAmount / 10000;
+                    defStr = "还差" + df.format(defRMB) + "万元";
+                } else {
+                    defStr = "还差" + df.format(defAmount) + "元";
+                }
+            }
+            holder.defTv.setText(defStr);
+        } catch (Exception e) {
+
+        }
 
 
         final ViewHolder finalHoder = holder;
@@ -167,6 +192,8 @@ public class CharitableAdapter extends BaseAdapter {
         TextView targetTv;
         TextView typeTv;
         TextView giftBtn;
+        TextView defTv;
+        SeekBar progressSb;
 
     }
 
@@ -175,7 +202,7 @@ public class CharitableAdapter extends BaseAdapter {
      * 用于回调的抽象类
      *
      * @author Ivan Xu
-     *         2014-11-26
+     * 2014-11-26
      */
     public static abstract class MyClickListener implements View.OnClickListener {
 

+ 35 - 4
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/CharitableListFragment.java

@@ -46,6 +46,7 @@ import com.modular.apputils.listener.OnPlayListener;
 import com.modular.apputils.utils.playsdk.AliPlay;
 import com.modular.apputils.utils.playsdk.WxPlay;
 import com.modular.apputils.widget.CustomerBanner;
+import com.modular.apputils.widget.VeriftyDialog;
 import com.uas.appworks.OA.platform.activity.CharitSearchActivity;
 import com.uas.appworks.OA.platform.adapter.AutoPlayPagerAdapter;
 import com.uas.appworks.OA.platform.adapter.CharitableAdapter;
@@ -78,6 +79,8 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
     private boolean playing = false;
     private LinearLayout moneyAmountLL;
 
+    private VeriftyDialog mVeriftyDialog;
+
     @Override
     public void onAttach(Context context) {
         super.onAttach(context);
@@ -86,12 +89,39 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         }
     }
 
+    @Override
+    public void onPause() {
+        if (mVeriftyDialog != null) {
+            mVeriftyDialog.dismiss();
+            mVeriftyDialog = null;
+        }
+        super.onPause();
+
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+
+    }
+
+    private void showPlyEnd() {
+        mVeriftyDialog = new VeriftyDialog.Builder(getActivity())
+                .setCanceledOnTouchOutside(false)
+                .setContent("感谢您的爱心!")
+                .setShowCancel(false)
+                .build(new VeriftyDialog.OnDialogClickListener() {
+                    @Override
+                    public void result(boolean clickSure) {
+                    }
+                });
+    }
 
     @Override
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         inflater.inflate(R.menu.search, menu);
         MenuItem item = menu.getItem(0);
-        if (item!=null){
+        if (item != null) {
             LogUtil.i("item!=null");
             item.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
                 @Override
@@ -284,7 +314,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
     }
 
     private void handlerProjects(String area, String message) throws Exception {
-
+        LogUtil.prinlnLongMsg("gong", "message=" + message);
         JSONObject object = JSON.parseObject(message);
         JSONArray projectList = JSONUtil.getJSONArray(object, "projectList");
         String projectJSON = projectList.toJSONString();
@@ -371,6 +401,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
     }
 
     private CharitableAdapter charitableAdapter;
+
     private void setContantData(List<CharitModel> models) {
 //        if (charitableAdapter == null) {
         charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
@@ -425,7 +456,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
 
     @Override
     public void onSuccess(String resultStatus, String resultInfo) {
-        ToastUtil.showToast(ct, "支付成功");
+//        ToastUtil.showToast(ct, "支付成功");
         playing = false;
     }
 
@@ -466,7 +497,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
 
         String json = JSON.toJSONString(map);
         LogUtil.i("json=" + json);
-        String url="http://lj.ubtob.com/";
+        String url = "http://lj.ubtob.com/";
         new HttpClient.Builder(url)
                 .isDebug(BaseConfig.isDebug())
                 .build()

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/model/CharitModel.java

@@ -11,7 +11,7 @@ public class CharitModel {
     private String area;
     private String proSummary;
     private String target;
-    private String totalAmount;
+    private String totalAmount;//捐款总额
     private String name;
     private String logo;
     private String mobileImg;

+ 27 - 0
app_modular/appworks/src/main/res/drawable/bg_seek_bar_progree.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:id="@android:id/background">
+        <shape>
+            <corners android:radius="5dp"/>
+            <solid android:color="#D8D8D8"/>
+        </shape>
+    </item>
+
+    <item android:id="@android:id/secondaryProgress">
+        <clip>
+            <shape>
+                <corners android:radius="5dp"/>
+                <solid android:color="#D8D8D8"/>
+            </shape>
+        </clip>
+    </item>
+
+    <item android:id="@android:id/progress">
+        <clip>
+            <shape>
+                <corners android:radius="5dp"/>
+                <solid android:color="#EF613B" />
+            </shape>
+        </clip>
+    </item>
+</layer-list>

+ 25 - 2
app_modular/appworks/src/main/res/layout/item_charitable_list.xml

@@ -50,7 +50,7 @@
         android:layout_toRightOf="@id/contantImg"
         android:text="目标筹款 :"
         android:textColor="@color/hintColor"
-        android:textSize="@dimen/text_hine" />
+        android:textSize="@dimen/text_min" />
 
     <TextView
         android:id="@+id/targetTv"
@@ -65,8 +65,9 @@
         android:textSize="@dimen/text_hine" />
 
 
+
     <TextView
-        android:id="@+id/giftBtn"
+        android:id="@+id/defProgress"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentRight="true"
@@ -74,6 +75,28 @@
         android:layout_marginBottom="@dimen/padding"
         android:layout_marginRight="@dimen/padding"
         android:layout_marginTop="@dimen/padding"
+        android:padding="4dp"
+        android:text="我要捐款"
+        android:textColor="@color/white"
+        android:textSize="@dimen/text_hine" />
+    <SeekBar
+        android:id="@+id/progressSb"
+        android:layout_below="@id/targetTag"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_toRightOf="@id/contantImg"/>
+
+
+
+    <TextView
+        android:id="@+id/giftBtn"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentRight="true"
+        android:layout_below="@id/progressSb"
+        android:layout_marginBottom="@dimen/padding"
+        android:layout_marginRight="@dimen/padding"
+        android:layout_marginTop="@dimen/padding"
         android:background="@color/indianred"
         android:padding="4dp"
         android:text="我要捐款"

+ 134 - 0
app_modular/appworks/src/main/res/layout/item_charitable_project.xml

@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@color/white">
+
+    <ImageView
+        android:id="@+id/contantImg"
+        android:layout_width="100dp"
+        android:layout_height="80dp"
+        android:layout_marginLeft="20dp"
+        android:layout_marginRight="@dimen/padding"
+        android:layout_marginTop="10dp"
+        android:scaleType="centerCrop"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+
+    <TextView
+        android:id="@+id/titleTv"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_marginLeft="@dimen/padding"
+        android:ellipsize="end"
+        android:maxLines="2"
+        android:layout_marginRight="@dimen/padding"
+        android:text="titleTv"
+        app:layout_constraintRight_toRightOf="parent"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_main"
+        app:layout_constraintLeft_toRightOf="@id/contantImg"
+        app:layout_constraintTop_toTopOf="@id/contantImg" />
+
+    <TextView
+        android:id="@+id/subTv"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="@dimen/padding"
+        android:ellipsize="end"
+        android:maxLines="2"
+        android:text="subTv"
+        android:layout_marginRight="@dimen/padding"
+        app:layout_constraintRight_toRightOf="parent"
+        android:textColor="@color/hintColor"
+        android:textSize="@dimen/text_hine"
+        app:layout_constraintLeft_toLeftOf="@id/titleTv"
+        app:layout_constraintTop_toBottomOf="@id/titleTv" />
+
+    <TextView
+        android:id="@+id/targetTag"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="@dimen/padding"
+        android:text="目标筹款 :"
+        android:textColor="@color/hintColor"
+        android:textSize="@dimen/text_min"
+        app:layout_constraintLeft_toLeftOf="@id/titleTv"
+        app:layout_constraintTop_toBottomOf="@id/subTv" />
+
+    <TextView
+        android:id="@+id/targetTv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:ellipsize="end"
+        android:maxLines="1"
+        android:text="targetTv"
+        android:textColor="@color/indianred"
+        android:textSize="@dimen/text_hine"
+        app:layout_constraintBottom_toBottomOf="@id/targetTag"
+        app:layout_constraintLeft_toRightOf="@id/targetTag"
+        app:layout_constraintTop_toTopOf="@id/targetTag" />
+
+
+    <TextView
+        android:id="@+id/defTv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginRight="@dimen/padding"
+        android:layout_marginTop="@dimen/padding"
+        android:text="还差13.3万元"
+        android:textColor="#FF414141"
+        android:textSize="9sp"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toBottomOf="@id/targetTag" />
+
+    <SeekBar
+        android:id="@+id/progressSb"
+        android:layout_width="0dp"
+        android:layout_height="3dp"
+        android:layout_marginRight="@dimen/paddingMin"
+        android:thumb="@null"
+        android:progressDrawable="@drawable/bg_seek_bar_progree"
+        app:layout_constraintBottom_toBottomOf="@id/defTv"
+        app:layout_constraintLeft_toLeftOf="@id/titleTv"
+        app:layout_constraintRight_toLeftOf="@id/defTv"
+        app:layout_constraintTop_toTopOf="@id/defTv" />
+
+
+
+
+    <TextView
+        android:id="@+id/giftBtn"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        app:layout_constraintRight_toRightOf="@id/defTv"
+        app:layout_constraintTop_toBottomOf="@id/defTv"
+        app:layout_constraintBottom_toBottomOf="parent"
+        android:layout_marginBottom="@dimen/padding"
+        android:layout_marginTop="@dimen/padding"
+        android:background="@color/indianred"
+        android:padding="4dp"
+        android:text="我要捐款"
+        android:textColor="@color/white"
+        android:textSize="@dimen/text_hine" />
+
+    <TextView
+        android:id="@+id/typeTv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        app:layout_constraintTop_toTopOf="@id/giftBtn"
+        app:layout_constraintBottom_toBottomOf="@id/giftBtn"
+        app:layout_constraintLeft_toLeftOf="@id/titleTv"
+        android:background="@drawable/text_frame_bg"
+        android:ellipsize="end"
+        android:maxLines="1"
+        android:paddingBottom="2dp"
+        android:paddingLeft="5dp"
+        android:paddingRight="5dp"
+        android:paddingTop="2dp"
+        android:text="疾病救助"
+        android:textColor="@color/hintColor"
+        android:textSize="@dimen/text_hine" />
+</android.support.constraint.ConstraintLayout>