Commit 105e0366cf5a02fc8d6b6b4650aa7335c95e3d25

Authored by 姚旭斌
1 parent 426dfc9c

no message

app/libs/processor.jar
No preview for this file type
app/src/main/AndroidManifest.xml
... ... @@ -207,10 +207,16 @@
207 207 android:name=".ui.activity.ActivationActivity"
208 208 android:launchMode="singleInstance"
209 209 android:windowSoftInputMode="adjustPan|stateAlwaysHidden"/>
  210 + <activity
  211 + android:name=".ui.activity.BankActivity"
  212 + android:launchMode="singleInstance"
  213 + android:windowSoftInputMode="adjustPan|stateAlwaysHidden"/>
210 214  
211 215 <activity
212 216 android:name=".ui.activity.apply.ApplyReplaceCardActivity"
213   - android:launchMode="singleInstance" />
  217 + android:launchMode="singleInstance"
  218 + android:windowSoftInputMode="adjustPan|stateAlwaysHidden"
  219 + />
214 220  
215 221 <activity
216 222 android:name=".ui.activity.apply.ApplySigninActivity"
... ...
app/src/main/java/com/shunzhi/parent/ui/activity/BankActivity.java 0 → 100644
... ... @@ -0,0 +1,53 @@
  1 +package com.shunzhi.parent.ui.activity;
  2 +
  3 +import android.content.Context;
  4 +import android.content.Intent;
  5 +import android.os.Bundle;
  6 +import android.text.TextUtils;
  7 +import android.view.View;
  8 +import android.widget.ImageView;
  9 +import android.widget.TextView;
  10 +
  11 +import com.share.mvpsdk.base.activity.BaseCompatActivity;
  12 +import com.shunzhi.parent.R;
  13 +
  14 +/**
  15 + * Created by lenovo on 2018/4/19.
  16 + */
  17 +
  18 +public class BankActivity extends BaseCompatActivity {
  19 +
  20 +
  21 + public static void newInstance(Context context, String info) {
  22 + Intent intent = new Intent(context, BankActivity.class);
  23 + intent.putExtra("info", info);
  24 + context.startActivity(intent);
  25 + }
  26 +
  27 +
  28 + TextView tv_info, center_title;
  29 + ImageView back_top;
  30 +
  31 + @Override
  32 + protected void initView(Bundle savedInstanceState) {
  33 + tv_info = findViewById(R.id.tv_info);
  34 + center_title = findViewById(R.id.center_title);
  35 + center_title.setText("");
  36 + back_top = findViewById(R.id.back_top);
  37 + back_top.setOnClickListener(new View.OnClickListener() {
  38 + @Override
  39 + public void onClick(View v) {
  40 + finish();
  41 + }
  42 + });
  43 + String info = getIntent().getStringExtra("info");
  44 + if (TextUtils.isEmpty(info))
  45 + tv_info.setText(info);
  46 +
  47 + }
  48 +
  49 + @Override
  50 + protected int getLayoutId() {
  51 + return R.layout.activity_bank;
  52 + }
  53 +}
... ...
app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java
... ... @@ -102,10 +102,9 @@ public class MyChildActivity extends BaseMVPCompatActivity&lt;MyChildContract.MyChi
102 102 @Override
103 103 public void updateChildList(CurrentBean currentBean) {
104 104 currlist.clear();
105   - DBControl.childInfoDao.deleteAll();
106 105 List<ChildBean> list = currentBean.getStudentClass();
107 106 for(int i=0;i<list.size();i++){
108   - DBControl.childInfoDao.onCreate(list.get(i));
  107 + DBControl.childInfoDao.createOrUpdate(list.get(i));
109 108 }
110 109  
111 110 currlist.addAll(list);
... ...
app/src/main/java/com/shunzhi/parent/ui/activity/apply/ApplyReplaceCardActivity.java
... ... @@ -23,15 +23,17 @@ import com.shunzhi.parent.ui.fragment.apply.ApplySigninFragment;
23 23 * 补卡界面
24 24 */
25 25  
26   -public class ApplyReplaceCardActivity extends BaseMVPCompatActivity implements View.OnClickListener{
  26 +public class ApplyReplaceCardActivity extends BaseMVPCompatActivity implements View.OnClickListener {
27 27 ApplyReplaceCardFragment applyReplaceCardFragment = null;
28 28 ImageView ivBack;
29 29 TextView center_title;
30 30 FrameLayout frame_replacecard;
31   - FragmentTransaction fragmentTransaction=null;
  31 + FragmentTransaction fragmentTransaction = null;
  32 + String childJson;
32 33  
33   - public static void getInstance(Context context) {
  34 + public static void getInstance(Context context, String jsonStr) {
34 35 Intent intent = new Intent(context, ApplyReplaceCardActivity.class);
  36 + intent.putExtra("jsonStr", jsonStr);
35 37 context.startActivity(intent);
36 38 }
37 39  
... ... @@ -47,19 +49,25 @@ public class ApplyReplaceCardActivity extends BaseMVPCompatActivity implements V
47 49 frame_replacecard = findViewById(R.id.frame_replacecard);
48 50 center_title.setText("补卡");
49 51 ivBack.setOnClickListener(this);
  52 + childJson = getIntent().getStringExtra("jsonStr");
  53 + Bundle bundle = new Bundle();
  54 + bundle.putString("childJson", childJson);
  55 + applyReplaceCardFragment.setArguments(bundle);
50 56  
51 57 fragmentTransaction = getSupportFragmentManager().beginTransaction();
52   - fragmentTransaction.add(R.id.frame_replacecard,applyReplaceCardFragment).show(applyReplaceCardFragment).commit();
  58 + fragmentTransaction.add(R.id.frame_replacecard, applyReplaceCardFragment).show(applyReplaceCardFragment).commit();
53 59 }
54 60  
55 61 @Override
56 62 protected int getLayoutId() {
57 63 return R.layout.activity_apply_replacecard;
58 64 }
  65 +
59 66 @Override
60 67 public void onClick(View view) {
61 68 finish();
62 69 }
  70 +
63 71 @NonNull
64 72 @Override
65 73 public BasePresenter initPresenter() {
... ...
app/src/main/java/com/shunzhi/parent/ui/activity/apply/ApplySigninActivity.java
... ... @@ -35,16 +35,17 @@ import java.util.List;
35 35  
36 36 public class ApplySigninActivity extends BaseMVPCompatActivity implements View.OnClickListener{
37 37  
38   - public static void getInstance(Context context,ChildBean childBean) {
  38 + public static void getInstance(Context context,String jsonStr) {
39 39 Intent intent = new Intent(context, ApplySigninActivity.class);
  40 + intent.putExtra("childStr",jsonStr);
40 41 context.startActivity(intent);
41 42 }
42   - List<ChildBean> childBeanList = new ArrayList<>();
43 43 FragmentTransaction fragmentTransaction = null;
44 44 ApplySigninFragment applySigninFragment = null;
45 45 ImageView ivBack;
46 46 FrameLayout frame_signin;
47 47 TextView center_title;
  48 + String childStr;
48 49  
49 50 @Override
50 51 protected void initView(Bundle savedInstanceState) {
... ... @@ -60,8 +61,12 @@ public class ApplySigninActivity extends BaseMVPCompatActivity implements View.O
60 61 center_title.setText("考勤");
61 62  
62 63 ivBack.setOnClickListener(this);
63   -// Bundle bundle = new Bundle();
  64 + childStr=getIntent().getStringExtra("childStr");
  65 +
  66 + Bundle bundle = new Bundle();
  67 + bundle.putString("childStr",childStr);
64 68 // bundle.putString("studentId",childBeanList.listIterator("studentId"));
  69 + applySigninFragment.setArguments(bundle);
65 70 fragmentTransaction = getSupportFragmentManager().beginTransaction();
66 71 fragmentTransaction.add(R.id.frame_signin,applySigninFragment).show(applySigninFragment).commit();
67 72  
... ...
app/src/main/java/com/shunzhi/parent/ui/fragment/ReportFragment.java
... ... @@ -16,9 +16,11 @@ import android.view.Menu;
16 16 import android.view.MenuItem;
17 17 import android.view.View;
18 18 import android.widget.TextView;
  19 +import android.widget.Toast;
19 20  
20 21 import com.google.gson.Gson;
21 22 import com.share.mvpsdk.base.fragment.BaseCompatFragment;
  23 +import com.share.mvpsdk.utils.ToastUtils;
22 24 import com.shunzhi.parent.AppConfig;
23 25 import com.shunzhi.parent.AppContext;
24 26 import com.shunzhi.parent.R;
... ... @@ -61,8 +63,7 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
61 63 tvNoData = view.findViewById(R.id.tvNoData);
62 64 tabLayout = view.findViewById(R.id.tabLayout);
63 65 tvName.setOnClickListener(this);
64   - registerForContextMenu(tvName);
65   -
  66 + tvName.setEllipsize(TextUtils.TruncateAt.END);
66 67 tvShaiXuan.setOnClickListener(this);
67 68  
68 69 myFragmentAdapter = new MyFragmentAdapter(getChildFragmentManager());
... ... @@ -71,8 +72,10 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
71 72 createSchoolMenu();
72 73 String currChildStr = AppConfig.getAppConfig(AppContext.getInstance()).get(AppConfig.CURRCHILDJSONSTR);
73 74 if (TextUtils.isEmpty(currChildStr)) {
74   - tvName.setText(childlist.get(0).getStudentName());
75   - jsonStr = g.toJson(childlist.get(0), ChildBean.class);
  75 + if (childlist != null && childlist.size() > 0) {
  76 + tvName.setText(childlist.get(0).getStudentName());
  77 + jsonStr = g.toJson(childlist.get(0), ChildBean.class);
  78 + }
76 79 } else {
77 80 ChildBean childBean = g.fromJson(currChildStr, ChildBean.class);
78 81 tvName.setText(childBean.getStudentName());
... ... @@ -117,26 +120,28 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
117 120 }
118 121  
119 122 private void showChildName() {
120   - schoolMenu.show();
  123 + childMenu.show();
121 124 }
122 125  
123   - private PopupMenu schoolMenu = null;
  126 + private PopupMenu childMenu = null;
124 127  
125 128 private void createSchoolMenu() {
126   - if (schoolMenu != null) return;
127   - schoolMenu = new PopupMenu(getActivity(), tvName);
128   - Menu menu = schoolMenu.getMenu();
129   - for (int i = 0; i < childlist.size(); i++) {
130   - final int finalI = i;
131   - menu.add(0, i, 10, childlist.get(i).getStudentName()).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
132   - @Override
133   - public boolean onMenuItemClick(MenuItem item) {
134   - tvName.setText(item.getTitle());
135   - jsonStr = g.toJson(childlist.get(finalI), ChildBean.class);
136   - AppConfig.getAppConfig(AppContext.getInstance()).set(AppConfig.CURRCHILDJSONSTR, jsonStr);
137   - return false;
138   - }
139   - });
  129 + if (childMenu != null) return;
  130 + childMenu = new PopupMenu(getActivity(), tvName);
  131 + Menu menu = childMenu.getMenu();
  132 + if (childlist != null && childlist.size() > 0) {
  133 + for (int i = 0; i < childlist.size(); i++) {
  134 + final int finalI = i;
  135 + menu.add(0, i, 10, childlist.get(i).getStudentName()).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
  136 + @Override
  137 + public boolean onMenuItemClick(MenuItem item) {
  138 + tvName.setText(item.getTitle());
  139 + jsonStr = g.toJson(childlist.get(finalI), ChildBean.class);
  140 + AppConfig.getAppConfig(AppContext.getInstance()).set(AppConfig.CURRCHILDJSONSTR, jsonStr);
  141 + return false;
  142 + }
  143 + });
  144 + }
140 145 }
141 146 }
142 147  
... ... @@ -164,7 +169,7 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
164 169 @Override
165 170 public Fragment getItem(int position) {
166 171 if (position == 0) {
167   - chengZhangFragment1 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_CHENGZHANG);
  172 + chengZhangFragment1 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_CHENGZHANG, jsonStr);
168 173 return chengZhangFragment1;
169 174 } else if (position == 1) {
170 175 chengZhangFragment2 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_REPORT);
... ...
app/src/main/java/com/shunzhi/parent/ui/fragment/apply/ApplyReplaceCardFragment.java
... ... @@ -11,10 +11,12 @@ import android.widget.Button;
11 11 import android.widget.EditText;
12 12 import android.widget.Toast;
13 13  
  14 +import com.google.gson.Gson;
14 15 import com.share.mvpsdk.base.BasePresenter;
15 16 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
16 17 import com.share.mvpsdk.utils.ToastUtils;
17 18 import com.shunzhi.parent.R;
  19 +import com.shunzhi.parent.bean.ChildBean;
18 20 import com.shunzhi.parent.contract.apply.ApplyReplaceCardContract;
19 21 import com.shunzhi.parent.presenter.apply.ApplyReplaceCardPresenter;
20 22 import com.shunzhi.parent.views.ReplaceCardDialog;
... ... @@ -30,6 +32,7 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
30 32 ReplaceCardDialog replaceCardDialog = null;
31 33 private EditText et_cardnum;
32 34 private String cardnum = "";
  35 + private ChildBean currChildBean = new ChildBean();
33 36  
34 37 @NonNull
35 38 @Override
... ... @@ -48,8 +51,14 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
48 51 bt_sure = view.findViewById(R.id.bt_sure);
49 52 bt_cancel = view.findViewById(R.id.bt_cancle);
50 53 et_cardnum = view.findViewById(R.id.et_cardnum);
51   -
52 54 bt_sure.setOnClickListener(this);
  55 + Gson g = new Gson();
  56 + String jsonStr = getArguments().getString("childJson");
  57 + if (!TextUtils.isEmpty(jsonStr)) {
  58 + currChildBean = g.fromJson(jsonStr, ChildBean.class);
  59 + et_cardnum.setText(currChildBean.getCardNumber());
  60 + }
  61 +
53 62  
54 63 }
55 64  
... ... @@ -65,7 +74,7 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
65 74 ToastUtils.showToast("卡号不能为空,请重新输入!");
66 75 } else {
67 76 //studentid 从成长界面获取 此处设置为“123”
68   - mPresenter.ReplaceCardDetail(12, cardnum);
  77 + mPresenter.ReplaceCardDetail(currChildBean.getStudentId(), cardnum);
69 78 }
70 79 break;
71 80 default:
... ...
app/src/main/java/com/shunzhi/parent/ui/fragment/apply/ApplySigninFragment.java
... ... @@ -20,14 +20,17 @@ import android.widget.Toast;
20 20  
21 21 import com.bigkoo.pickerview.builder.TimePickerBuilder;
22 22 import com.bigkoo.pickerview.listener.CustomListener;
  23 +import com.bigkoo.pickerview.listener.OnTimeSelectChangeListener;
23 24 import com.bigkoo.pickerview.listener.OnTimeSelectListener;
24 25 import com.bigkoo.pickerview.view.TimePickerView;
  26 +import com.google.gson.Gson;
25 27 import com.share.mvpsdk.base.BasePresenter;
26 28 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
27 29 import com.share.mvpsdk.utils.ToastUtils;
28 30 import com.shunzhi.parent.AppContext;
29 31 import com.shunzhi.parent.R;
30 32 import com.shunzhi.parent.adapter.AttendanceAdapter;
  33 +import com.shunzhi.parent.bean.ChildBean;
31 34 import com.shunzhi.parent.bean.ToolBean;
32 35 import com.shunzhi.parent.bean.apply.AttendanceBean;
33 36 import com.shunzhi.parent.contract.apply.ApplySigninContract;
... ... @@ -44,16 +47,17 @@ import java.util.List;
44 47 * Created by Administrator on 2018/4/10 0010.
45 48 */
46 49  
47   -public class ApplySigninFragment extends BaseMVPCompatFragment<ApplySigninContract.ApplySigninPresenter, ApplySigninContract.IApplySigninModel> implements View.OnClickListener, ApplySigninContract.IApplySigninView{
  50 +public class ApplySigninFragment extends BaseMVPCompatFragment<ApplySigninContract.ApplySigninPresenter, ApplySigninContract.IApplySigninModel> implements View.OnClickListener, ApplySigninContract.IApplySigninView {
48 51 private RecyclerView recycle_attendance;
49 52 private AttendanceAdapter attendanceAdapter;
50   - List<AttendanceBean> list=new ArrayList<>();
51   - private TextView tv_tips,tv_kaoqin_num,tv_kaoqin_user,tv_kaoqin_date;
  53 + List<AttendanceBean> list = new ArrayList<>();
  54 + private TextView tv_tips, tv_kaoqin_num, tv_kaoqin_user, tv_kaoqin_date;
52 55 private LinearLayout layout_tv;
53 56 private ImageView iv_calendar;
54 57 private TimePickerView pvCustomLunar;
55   - private String date="";
  58 + private String currdate = "";
56 59 List<AttendanceBean> signinlist = new ArrayList<>();
  60 + private ChildBean currChildBean = new ChildBean();
57 61  
58 62  
59 63 public BasePresenter initPresenter() {
... ... @@ -73,27 +77,35 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
73 77 tv_kaoqin_date = view.findViewById(R.id.tv_kaoqin_date);
74 78 tv_kaoqin_num = view.findViewById(R.id.tv_kaoqin_num);
75 79 iv_calendar = view.findViewById(R.id.iv_calendar);
  80 + Gson g = new Gson();
  81 + String jsonStr = getArguments().getString("childStr");
  82 + if (!TextUtils.isEmpty(jsonStr))
  83 + currChildBean = g.fromJson(jsonStr, ChildBean.class);
76 84  
77 85 initLunarPicker();
78   - iv_calendar .setOnClickListener(this);
  86 + iv_calendar.setOnClickListener(this);
79 87  
80   - date = "2017-07-19";//date = getNowTime();
  88 + currdate = getNowTime();
81 89 tv_kaoqin_date.setText(getNowTime());
82 90 recycle_attendance = view.findViewById(R.id.recycle_attendance);
83 91  
84 92 recycle_attendance.setLayoutManager(new LinearLayoutManager(getActivity()));
85 93 attendanceAdapter = new AttendanceAdapter(getActivity());
86 94 recycle_attendance.setAdapter(attendanceAdapter);
  95 + getData();
87 96  
88   - mPresenter.SigninDetail(185,1,date);
  97 + }
89 98  
  99 + private void getData() {
  100 + mPresenter.SigninDetail(currChildBean.getStudentId(), currChildBean.getSchoolId(), currdate);
90 101 }
91 102  
92 103 /**
93 104 * 获取当前时间
  105 + *
94 106 * @return
95 107 */
96   - public static String getNowTime(){
  108 + public static String getNowTime() {
97 109 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
98 110 Date date = new Date(System.currentTimeMillis());
99 111 return simpleDateFormat.format(date);
... ... @@ -102,7 +114,7 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
102 114 @RequiresApi(api = Build.VERSION_CODES.N)
103 115 @Override
104 116 public void onClick(View v) {
105   - switch (v.getId()){
  117 + switch (v.getId()) {
106 118 case R.id.iv_calendar:
107 119 pvCustomLunar.show();
108 120 break;
... ... @@ -121,32 +133,42 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
121 133 @Override
122 134 public void onTimeSelect(Date date, View v) {
123 135 ToastUtils.showToast(getTime(date));
124   - Log.i("getTime:",getTime(date));
125   - tv_kaoqin_date.setText(getTime(date));
  136 + Log.i("getTime:", getTime(date));
  137 + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  138 + tv_kaoqin_date.setText(simpleDateFormat.format(date));
  139 + currdate = simpleDateFormat.format(date);
  140 + getData();
  141 +
  142 + }
  143 + }).setTimeSelectChangeListener(new OnTimeSelectChangeListener() {
  144 + @Override
  145 + public void onTimeSelectChanged(Date date) {
  146 + Log.i("pvTime", date.toString());
126 147 }
127   - })
128   - .setDate(selectedDate)
129   - .setRangDate(startDate, endDate)
130   - .setLayoutRes(R.layout.pickerview_custom_lunar, new CustomListener() {
131   - @Override
132   - public void customLayout(View v) {
133   - final TextView tvSubmit = (TextView) v.findViewById(R.id.tv_finish);
134   - ImageView ivCancel = (ImageView) v.findViewById(R.id.iv_cancel);
135   - tvSubmit.setOnClickListener(new View.OnClickListener() {
136   - @Override
137   - public void onClick(View v) {
138   - pvCustomLunar.returnData();
139   - pvCustomLunar.dismiss();
140   - }
141   - });
142   - ivCancel.setOnClickListener(new View.OnClickListener() {
143   - @Override
144   - public void onClick(View v) {
145   - pvCustomLunar.dismiss();
146   - }
147   - });
148   - }
149   - }).build();
  148 + }).build();
  149 +// .setDate(selectedDate)
  150 +// .setRangDate(startDate, endDate)
  151 +// .setLayoutRes(R.layout.pickerview_custom_lunar, new CustomListener() {
  152 +// @Override
  153 +// public void customLayout(View v) {
  154 +// final TextView tvSubmit = (TextView) v.findViewById(R.id.tv_finish);
  155 +// ImageView ivCancel = (ImageView) v.findViewById(R.id.iv_cancel);
  156 +// tvSubmit.setOnClickListener(new View.OnClickListener() {
  157 +// @Override
  158 +// public void onClick(View v) {
  159 +// pvCustomLunar.dismiss();
  160 +// pvCustomLunar.returnData();
  161 +// initData();
  162 +// }
  163 +// });
  164 +// ivCancel.setOnClickListener(new View.OnClickListener() {
  165 +// @Override
  166 +// public void onClick(View v) {
  167 +// pvCustomLunar.dismiss();
  168 +// }
  169 +// });
  170 +// }
  171 +// }).build();
150 172 }
151 173  
152 174  
... ... @@ -159,9 +181,9 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
159 181 @Override
160 182 public void showDetialList(List<AttendanceBean> list) {
161 183  
162   - if (list.size() == 0){
  184 + if (list.size() == 0) {
163 185 layout_tv.setVisibility(View.VISIBLE);
164   - }else {
  186 + } else {
165 187 recycle_attendance.setVisibility(View.VISIBLE);
166 188 signinlist.clear();
167 189 signinlist.addAll(list);
... ...
app/src/main/java/com/shunzhi/parent/ui/fragment/report/ChengZhangFragment.java
... ... @@ -7,24 +7,38 @@ import android.os.Message;
7 7 import android.support.annotation.NonNull;
8 8 import android.support.annotation.Nullable;
9 9 import android.support.v7.widget.RecyclerView;
  10 +import android.text.TextUtils;
  11 +import android.util.Log;
  12 +import android.view.Gravity;
  13 +import android.view.LayoutInflater;
10 14 import android.view.View;
  15 +import android.view.ViewGroup;
  16 +import android.view.WindowManager;
11 17 import android.widget.LinearLayout;
  18 +import android.widget.PopupWindow;
  19 +import android.widget.TextView;
12 20  
13 21 import com.amy.monthweek.materialcalendarview.MonthWeekMaterialCalendarView;
  22 +import com.google.gson.Gson;
14 23 import com.prolificinteractive.materialcalendarview.CalendarDay;
15 24 import com.prolificinteractive.materialcalendarview.MaterialCalendarView;
16 25 import com.share.mvpsdk.base.BasePresenter;
17 26 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
  27 +import com.share.mvpsdk.utils.ToastUtils;
  28 +import com.shunzhi.parent.AppConfig;
18 29 import com.shunzhi.parent.R;
19 30 import com.shunzhi.parent.adapter.ReportAdapter;
  31 +import com.shunzhi.parent.bean.ChildBean;
20 32 import com.shunzhi.parent.bean.ReportBean;
21 33 import com.shunzhi.parent.contract.report.ReportContract;
22 34 import com.shunzhi.parent.presenter.report.ReportPresenter;
  35 +import com.shunzhi.parent.ui.activity.BankActivity;
  36 +import com.shunzhi.parent.ui.activity.MyChildActivity;
23 37 import com.shunzhi.parent.ui.activity.apply.ApplyReplaceCardActivity;
24 38 import com.shunzhi.parent.ui.activity.apply.ApplySigninActivity;
25   -import com.shunzhi.parent.ui.activity.report.ReportDetialActivity;
26   -import com.shunzhi.parent.ui.activity.report.ReportSceneActivity;
27   -import com.shunzhi.parent.ui.fragment.apply.ApplyReplaceCardFragment;
  39 +import com.shunzhi.parent.ui.activity.binding.CheckInfoActivity;
  40 +import com.shunzhi.parent.ui.activity.mywebview.WebViewActivity;
  41 +
28 42  
29 43 import java.util.List;
30 44  
... ... @@ -35,6 +49,8 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
35 49  
36 50 public static String TYPE_CHENGZHANG = "chengzhang", TYPE_REPORT = "report";
37 51  
  52 + public ChildBean childBean = new ChildBean();
  53 +
38 54 public static ChengZhangFragment newInstance(String type) {
39 55 Bundle bundle = new Bundle();
40 56 bundle.putString("type", type);
... ... @@ -43,6 +59,15 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
43 59 return chengZhangFragment;
44 60 }
45 61  
  62 + public static ChengZhangFragment newInstance(String type, String jsonStr) {
  63 + Bundle bundle = new Bundle();
  64 + bundle.putString("type", type);
  65 + bundle.putString("jsonStr", jsonStr);
  66 + ChengZhangFragment chengZhangFragment = new ChengZhangFragment();
  67 + chengZhangFragment.setArguments(bundle);
  68 + return chengZhangFragment;
  69 + }
  70 +
46 71 RecyclerView recyclerView;
47 72  
48 73 ReportAdapter reportAdapter;
... ... @@ -53,7 +78,7 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
53 78  
54 79 MaterialCalendarView calendarView_month_mode;
55 80  
56   - private String type = "";
  81 + private String type = "", jsonStr = "";
57 82  
58 83 LinearLayout layout_chengzhang, layout_report, layout_kaoqin, layout_buka, layout_qingjia;
59 84  
... ... @@ -79,9 +104,14 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
79 104 layout_qingjia.setOnClickListener(this);
80 105  
81 106 type = getArguments().getString("type");
  107 + jsonStr = getArguments().getString("jsonStr");
  108 + Gson g = new Gson();
  109 +
  110 +
82 111 if (type.equals(TYPE_CHENGZHANG)) {
83 112 layout_chengzhang.setVisibility(View.VISIBLE);
84 113 layout_report.setVisibility(View.GONE);
  114 + childBean = g.fromJson(jsonStr, ChildBean.class);
85 115  
86 116 } else {
87 117 layout_chengzhang.setVisibility(View.GONE);
... ... @@ -148,14 +178,61 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
148 178  
149 179 @Override
150 180 public void onClick(View view) {
  181 + if (childBean.getCount() == 0) {
  182 + final PopupWindow popupWindow = new PopupWindow();
  183 + popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
  184 + popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
  185 + backgroundAlpha(0.5f);
  186 + View view1 = LayoutInflater.from(getActivity()).inflate(R.layout.dialog_view, null);
  187 + TextView dialog_info = view1.findViewById(R.id.dialog_info);
  188 + dialog_info.setText("请前往订购中心\n订购“智能校卫”\n才能够使用相关应用功能");
  189 + dialog_info.setGravity(Gravity.CENTER);
  190 + TextView right_btn = view1.findViewById(R.id.right_btn);
  191 + right_btn.setText("前往订购");
  192 + right_btn.setOnClickListener(new View.OnClickListener() {
  193 + @Override
  194 + public void onClick(View v) {
  195 + popupWindow.dismiss();
  196 + backgroundAlpha(1f);
  197 + Bundle bundle = new Bundle();
  198 + bundle.putString("url", AppConfig.BASE_URL_ORDER + "ParentOrderCenter.aspx?userid=" +
  199 + AppConfig.getAppConfig(getContext()).get(AppConfig.USER_ID));
  200 + bundle.putInt("type", AppConfig.ORDER_CENTER);
  201 + startNewActivity(WebViewActivity.class, bundle);
  202 +
  203 + }
  204 + });
  205 + TextView cancel_btn = view1.findViewById(R.id.cancel_btn);
  206 + cancel_btn.setOnClickListener(new View.OnClickListener() {
  207 + @Override
  208 + public void onClick(View v) {
  209 + popupWindow.dismiss();
  210 + backgroundAlpha(1f);
  211 + }
  212 + });
  213 +
  214 + popupWindow.setContentView(view1);
  215 + popupWindow.showAtLocation(recyclerView, Gravity.CENTER, 0, 0);
  216 + return;
  217 + }
  218 +
  219 + if (TextUtils.isEmpty(childBean.getCardNumber())) {
  220 +
  221 + BankActivity.newInstance(getActivity(), "如果使用该应用,请前往激活孩子校园卡");
  222 +
  223 + }
  224 +
151 225 switch (view.getId()) {
  226 +
152 227 case R.id.layout_kaoqin:
153   - //ApplySigninActivity.getInstance(getActivity());
  228 +
  229 + ApplySigninActivity.getInstance(getActivity(), jsonStr);
154 230 break;
155 231 case R.id.layout_buka:
156   - //ApplyReplaceCardActivity.getInstance(getActivity());
  232 + ApplyReplaceCardActivity.getInstance(getActivity(), jsonStr);
157 233 break;
158 234 case R.id.layout_qingjia:
  235 + ToastUtils.showToast("正在努力开发中,敬请期待");
159 236 break;
160 237 }
161 238 }
... ... @@ -172,4 +249,10 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
172 249 this.handler = handler;
173 250 mPresenter.getReports();
174 251 }
  252 +
  253 + public void backgroundAlpha(float bgAlpha) {
  254 + WindowManager.LayoutParams lp = getActivity().getWindow().getAttributes();
  255 + lp.alpha = bgAlpha; //0.0-1.0
  256 + getActivity().getWindow().setAttributes(lp);
  257 + }
175 258 }
... ...
app/src/main/res/layout/activity_bank.xml 0 → 100644
... ... @@ -0,0 +1,19 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + xmlns:tools="http://schemas.android.com/tools"
  4 + android:layout_width="match_parent"
  5 + android:layout_height="match_parent"
  6 + android:background="@color/white"
  7 + android:orientation="vertical"
  8 + tools:context="com.shunzhi.parent.ui.activity.BankActivity">
  9 +
  10 + <include layout="@layout/top" />
  11 +
  12 + <TextView
  13 + android:id="@+id/tv_info"
  14 + android:layout_width="match_parent"
  15 + android:layout_height="wrap_content"
  16 + android:text="" />
  17 +
  18 +
  19 +</LinearLayout>
... ...
app/src/main/res/layout/fragment_apply_replacecard.xml
... ... @@ -86,8 +86,7 @@
86 86 android:layout_margin="@dimen/dp_8"
87 87 android:gravity="center"
88 88 android:background="@null"
89   - android:inputType="number"
90   - android:text="1317410119"
  89 + android:text=""
91 90 android:textColor="@color/hintTextColor"
92 91 android:textSize="@dimen/textSize16" />
93 92  
... ...
app/src/main/res/layout/fragment_report.xml
... ... @@ -22,8 +22,9 @@
22 22 android:layout_gravity="center_vertical"
23 23 android:drawablePadding="10dp"
24 24 android:drawableRight="@drawable/pull"
25   - android:text=""
26   - android:textColor="@color/textColor"
  25 + android:maxEms="6"
  26 + android:maxLines="1"
  27 + android:textColor="@color/white"
27 28 android:textSize="@dimen/textSize16" />
28 29  
29 30 <TextView
... ...
gradle.properties
... ... @@ -9,7 +9,7 @@
9 9  
10 10 # Specifies the JVM arguments used for the daemon process.
11 11 # The setting is particularly useful for tweaking memory settings.
12   -org.gradle.jvmargs=-Xmx1536m
  12 +org.gradle.jvmargs=-Xmx512m
13 13  
14 14 # When configured, Gradle will run in incubating parallel mode.
15 15 # This option should only be used with decoupled projects. More details, visit
... ...