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,10 +207,16 @@
207 android:name=".ui.activity.ActivationActivity" 207 android:name=".ui.activity.ActivationActivity"
208 android:launchMode="singleInstance" 208 android:launchMode="singleInstance"
209 android:windowSoftInputMode="adjustPan|stateAlwaysHidden"/> 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 <activity 215 <activity
212 android:name=".ui.activity.apply.ApplyReplaceCardActivity" 216 android:name=".ui.activity.apply.ApplyReplaceCardActivity"
213 - android:launchMode="singleInstance" /> 217 + android:launchMode="singleInstance"
  218 + android:windowSoftInputMode="adjustPan|stateAlwaysHidden"
  219 + />
214 220
215 <activity 221 <activity
216 android:name=".ui.activity.apply.ApplySigninActivity" 222 android:name=".ui.activity.apply.ApplySigninActivity"
app/src/main/java/com/shunzhi/parent/ui/activity/BankActivity.java 0 → 100644
@@ -0,0 +1,53 @@ @@ -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,10 +102,9 @@ public class MyChildActivity extends BaseMVPCompatActivity&lt;MyChildContract.MyChi
102 @Override 102 @Override
103 public void updateChildList(CurrentBean currentBean) { 103 public void updateChildList(CurrentBean currentBean) {
104 currlist.clear(); 104 currlist.clear();
105 - DBControl.childInfoDao.deleteAll();  
106 List<ChildBean> list = currentBean.getStudentClass(); 105 List<ChildBean> list = currentBean.getStudentClass();
107 for(int i=0;i<list.size();i++){ 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 currlist.addAll(list); 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,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 ApplyReplaceCardFragment applyReplaceCardFragment = null; 27 ApplyReplaceCardFragment applyReplaceCardFragment = null;
28 ImageView ivBack; 28 ImageView ivBack;
29 TextView center_title; 29 TextView center_title;
30 FrameLayout frame_replacecard; 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 Intent intent = new Intent(context, ApplyReplaceCardActivity.class); 35 Intent intent = new Intent(context, ApplyReplaceCardActivity.class);
  36 + intent.putExtra("jsonStr", jsonStr);
35 context.startActivity(intent); 37 context.startActivity(intent);
36 } 38 }
37 39
@@ -47,19 +49,25 @@ public class ApplyReplaceCardActivity extends BaseMVPCompatActivity implements V @@ -47,19 +49,25 @@ public class ApplyReplaceCardActivity extends BaseMVPCompatActivity implements V
47 frame_replacecard = findViewById(R.id.frame_replacecard); 49 frame_replacecard = findViewById(R.id.frame_replacecard);
48 center_title.setText("补卡"); 50 center_title.setText("补卡");
49 ivBack.setOnClickListener(this); 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 fragmentTransaction = getSupportFragmentManager().beginTransaction(); 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 @Override 61 @Override
56 protected int getLayoutId() { 62 protected int getLayoutId() {
57 return R.layout.activity_apply_replacecard; 63 return R.layout.activity_apply_replacecard;
58 } 64 }
  65 +
59 @Override 66 @Override
60 public void onClick(View view) { 67 public void onClick(View view) {
61 finish(); 68 finish();
62 } 69 }
  70 +
63 @NonNull 71 @NonNull
64 @Override 72 @Override
65 public BasePresenter initPresenter() { 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,16 +35,17 @@ import java.util.List;
35 35
36 public class ApplySigninActivity extends BaseMVPCompatActivity implements View.OnClickListener{ 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 Intent intent = new Intent(context, ApplySigninActivity.class); 39 Intent intent = new Intent(context, ApplySigninActivity.class);
  40 + intent.putExtra("childStr",jsonStr);
40 context.startActivity(intent); 41 context.startActivity(intent);
41 } 42 }
42 - List<ChildBean> childBeanList = new ArrayList<>();  
43 FragmentTransaction fragmentTransaction = null; 43 FragmentTransaction fragmentTransaction = null;
44 ApplySigninFragment applySigninFragment = null; 44 ApplySigninFragment applySigninFragment = null;
45 ImageView ivBack; 45 ImageView ivBack;
46 FrameLayout frame_signin; 46 FrameLayout frame_signin;
47 TextView center_title; 47 TextView center_title;
  48 + String childStr;
48 49
49 @Override 50 @Override
50 protected void initView(Bundle savedInstanceState) { 51 protected void initView(Bundle savedInstanceState) {
@@ -60,8 +61,12 @@ public class ApplySigninActivity extends BaseMVPCompatActivity implements View.O @@ -60,8 +61,12 @@ public class ApplySigninActivity extends BaseMVPCompatActivity implements View.O
60 center_title.setText("考勤"); 61 center_title.setText("考勤");
61 62
62 ivBack.setOnClickListener(this); 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 // bundle.putString("studentId",childBeanList.listIterator("studentId")); 68 // bundle.putString("studentId",childBeanList.listIterator("studentId"));
  69 + applySigninFragment.setArguments(bundle);
65 fragmentTransaction = getSupportFragmentManager().beginTransaction(); 70 fragmentTransaction = getSupportFragmentManager().beginTransaction();
66 fragmentTransaction.add(R.id.frame_signin,applySigninFragment).show(applySigninFragment).commit(); 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,9 +16,11 @@ import android.view.Menu;
16 import android.view.MenuItem; 16 import android.view.MenuItem;
17 import android.view.View; 17 import android.view.View;
18 import android.widget.TextView; 18 import android.widget.TextView;
  19 +import android.widget.Toast;
19 20
20 import com.google.gson.Gson; 21 import com.google.gson.Gson;
21 import com.share.mvpsdk.base.fragment.BaseCompatFragment; 22 import com.share.mvpsdk.base.fragment.BaseCompatFragment;
  23 +import com.share.mvpsdk.utils.ToastUtils;
22 import com.shunzhi.parent.AppConfig; 24 import com.shunzhi.parent.AppConfig;
23 import com.shunzhi.parent.AppContext; 25 import com.shunzhi.parent.AppContext;
24 import com.shunzhi.parent.R; 26 import com.shunzhi.parent.R;
@@ -61,8 +63,7 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi @@ -61,8 +63,7 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
61 tvNoData = view.findViewById(R.id.tvNoData); 63 tvNoData = view.findViewById(R.id.tvNoData);
62 tabLayout = view.findViewById(R.id.tabLayout); 64 tabLayout = view.findViewById(R.id.tabLayout);
63 tvName.setOnClickListener(this); 65 tvName.setOnClickListener(this);
64 - registerForContextMenu(tvName);  
65 - 66 + tvName.setEllipsize(TextUtils.TruncateAt.END);
66 tvShaiXuan.setOnClickListener(this); 67 tvShaiXuan.setOnClickListener(this);
67 68
68 myFragmentAdapter = new MyFragmentAdapter(getChildFragmentManager()); 69 myFragmentAdapter = new MyFragmentAdapter(getChildFragmentManager());
@@ -71,8 +72,10 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi @@ -71,8 +72,10 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
71 createSchoolMenu(); 72 createSchoolMenu();
72 String currChildStr = AppConfig.getAppConfig(AppContext.getInstance()).get(AppConfig.CURRCHILDJSONSTR); 73 String currChildStr = AppConfig.getAppConfig(AppContext.getInstance()).get(AppConfig.CURRCHILDJSONSTR);
73 if (TextUtils.isEmpty(currChildStr)) { 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 } else { 79 } else {
77 ChildBean childBean = g.fromJson(currChildStr, ChildBean.class); 80 ChildBean childBean = g.fromJson(currChildStr, ChildBean.class);
78 tvName.setText(childBean.getStudentName()); 81 tvName.setText(childBean.getStudentName());
@@ -117,26 +120,28 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi @@ -117,26 +120,28 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
117 } 120 }
118 121
119 private void showChildName() { 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 private void createSchoolMenu() { 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,7 +169,7 @@ public class ReportFragment extends BaseCompatFragment implements View.OnClickLi
164 @Override 169 @Override
165 public Fragment getItem(int position) { 170 public Fragment getItem(int position) {
166 if (position == 0) { 171 if (position == 0) {
167 - chengZhangFragment1 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_CHENGZHANG); 172 + chengZhangFragment1 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_CHENGZHANG, jsonStr);
168 return chengZhangFragment1; 173 return chengZhangFragment1;
169 } else if (position == 1) { 174 } else if (position == 1) {
170 chengZhangFragment2 = ChengZhangFragment.newInstance(ChengZhangFragment.TYPE_REPORT); 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,10 +11,12 @@ import android.widget.Button;
11 import android.widget.EditText; 11 import android.widget.EditText;
12 import android.widget.Toast; 12 import android.widget.Toast;
13 13
  14 +import com.google.gson.Gson;
14 import com.share.mvpsdk.base.BasePresenter; 15 import com.share.mvpsdk.base.BasePresenter;
15 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; 16 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
16 import com.share.mvpsdk.utils.ToastUtils; 17 import com.share.mvpsdk.utils.ToastUtils;
17 import com.shunzhi.parent.R; 18 import com.shunzhi.parent.R;
  19 +import com.shunzhi.parent.bean.ChildBean;
18 import com.shunzhi.parent.contract.apply.ApplyReplaceCardContract; 20 import com.shunzhi.parent.contract.apply.ApplyReplaceCardContract;
19 import com.shunzhi.parent.presenter.apply.ApplyReplaceCardPresenter; 21 import com.shunzhi.parent.presenter.apply.ApplyReplaceCardPresenter;
20 import com.shunzhi.parent.views.ReplaceCardDialog; 22 import com.shunzhi.parent.views.ReplaceCardDialog;
@@ -30,6 +32,7 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace @@ -30,6 +32,7 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
30 ReplaceCardDialog replaceCardDialog = null; 32 ReplaceCardDialog replaceCardDialog = null;
31 private EditText et_cardnum; 33 private EditText et_cardnum;
32 private String cardnum = ""; 34 private String cardnum = "";
  35 + private ChildBean currChildBean = new ChildBean();
33 36
34 @NonNull 37 @NonNull
35 @Override 38 @Override
@@ -48,8 +51,14 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace @@ -48,8 +51,14 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
48 bt_sure = view.findViewById(R.id.bt_sure); 51 bt_sure = view.findViewById(R.id.bt_sure);
49 bt_cancel = view.findViewById(R.id.bt_cancle); 52 bt_cancel = view.findViewById(R.id.bt_cancle);
50 et_cardnum = view.findViewById(R.id.et_cardnum); 53 et_cardnum = view.findViewById(R.id.et_cardnum);
51 -  
52 bt_sure.setOnClickListener(this); 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,7 +74,7 @@ public class ApplyReplaceCardFragment extends BaseMVPCompatFragment&lt;ApplyReplace
65 ToastUtils.showToast("卡号不能为空,请重新输入!"); 74 ToastUtils.showToast("卡号不能为空,请重新输入!");
66 } else { 75 } else {
67 //studentid 从成长界面获取 此处设置为“123” 76 //studentid 从成长界面获取 此处设置为“123”
68 - mPresenter.ReplaceCardDetail(12, cardnum); 77 + mPresenter.ReplaceCardDetail(currChildBean.getStudentId(), cardnum);
69 } 78 }
70 break; 79 break;
71 default: 80 default:
app/src/main/java/com/shunzhi/parent/ui/fragment/apply/ApplySigninFragment.java
@@ -20,14 +20,17 @@ import android.widget.Toast; @@ -20,14 +20,17 @@ import android.widget.Toast;
20 20
21 import com.bigkoo.pickerview.builder.TimePickerBuilder; 21 import com.bigkoo.pickerview.builder.TimePickerBuilder;
22 import com.bigkoo.pickerview.listener.CustomListener; 22 import com.bigkoo.pickerview.listener.CustomListener;
  23 +import com.bigkoo.pickerview.listener.OnTimeSelectChangeListener;
23 import com.bigkoo.pickerview.listener.OnTimeSelectListener; 24 import com.bigkoo.pickerview.listener.OnTimeSelectListener;
24 import com.bigkoo.pickerview.view.TimePickerView; 25 import com.bigkoo.pickerview.view.TimePickerView;
  26 +import com.google.gson.Gson;
25 import com.share.mvpsdk.base.BasePresenter; 27 import com.share.mvpsdk.base.BasePresenter;
26 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; 28 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
27 import com.share.mvpsdk.utils.ToastUtils; 29 import com.share.mvpsdk.utils.ToastUtils;
28 import com.shunzhi.parent.AppContext; 30 import com.shunzhi.parent.AppContext;
29 import com.shunzhi.parent.R; 31 import com.shunzhi.parent.R;
30 import com.shunzhi.parent.adapter.AttendanceAdapter; 32 import com.shunzhi.parent.adapter.AttendanceAdapter;
  33 +import com.shunzhi.parent.bean.ChildBean;
31 import com.shunzhi.parent.bean.ToolBean; 34 import com.shunzhi.parent.bean.ToolBean;
32 import com.shunzhi.parent.bean.apply.AttendanceBean; 35 import com.shunzhi.parent.bean.apply.AttendanceBean;
33 import com.shunzhi.parent.contract.apply.ApplySigninContract; 36 import com.shunzhi.parent.contract.apply.ApplySigninContract;
@@ -44,16 +47,17 @@ import java.util.List; @@ -44,16 +47,17 @@ import java.util.List;
44 * Created by Administrator on 2018/4/10 0010. 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 private RecyclerView recycle_attendance; 51 private RecyclerView recycle_attendance;
49 private AttendanceAdapter attendanceAdapter; 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 private LinearLayout layout_tv; 55 private LinearLayout layout_tv;
53 private ImageView iv_calendar; 56 private ImageView iv_calendar;
54 private TimePickerView pvCustomLunar; 57 private TimePickerView pvCustomLunar;
55 - private String date=""; 58 + private String currdate = "";
56 List<AttendanceBean> signinlist = new ArrayList<>(); 59 List<AttendanceBean> signinlist = new ArrayList<>();
  60 + private ChildBean currChildBean = new ChildBean();
57 61
58 62
59 public BasePresenter initPresenter() { 63 public BasePresenter initPresenter() {
@@ -73,27 +77,35 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra @@ -73,27 +77,35 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
73 tv_kaoqin_date = view.findViewById(R.id.tv_kaoqin_date); 77 tv_kaoqin_date = view.findViewById(R.id.tv_kaoqin_date);
74 tv_kaoqin_num = view.findViewById(R.id.tv_kaoqin_num); 78 tv_kaoqin_num = view.findViewById(R.id.tv_kaoqin_num);
75 iv_calendar = view.findViewById(R.id.iv_calendar); 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 initLunarPicker(); 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 tv_kaoqin_date.setText(getNowTime()); 89 tv_kaoqin_date.setText(getNowTime());
82 recycle_attendance = view.findViewById(R.id.recycle_attendance); 90 recycle_attendance = view.findViewById(R.id.recycle_attendance);
83 91
84 recycle_attendance.setLayoutManager(new LinearLayoutManager(getActivity())); 92 recycle_attendance.setLayoutManager(new LinearLayoutManager(getActivity()));
85 attendanceAdapter = new AttendanceAdapter(getActivity()); 93 attendanceAdapter = new AttendanceAdapter(getActivity());
86 recycle_attendance.setAdapter(attendanceAdapter); 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 * @return 106 * @return
95 */ 107 */
96 - public static String getNowTime(){ 108 + public static String getNowTime() {
97 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); 109 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
98 Date date = new Date(System.currentTimeMillis()); 110 Date date = new Date(System.currentTimeMillis());
99 return simpleDateFormat.format(date); 111 return simpleDateFormat.format(date);
@@ -102,7 +114,7 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra @@ -102,7 +114,7 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
102 @RequiresApi(api = Build.VERSION_CODES.N) 114 @RequiresApi(api = Build.VERSION_CODES.N)
103 @Override 115 @Override
104 public void onClick(View v) { 116 public void onClick(View v) {
105 - switch (v.getId()){ 117 + switch (v.getId()) {
106 case R.id.iv_calendar: 118 case R.id.iv_calendar:
107 pvCustomLunar.show(); 119 pvCustomLunar.show();
108 break; 120 break;
@@ -121,32 +133,42 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra @@ -121,32 +133,42 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
121 @Override 133 @Override
122 public void onTimeSelect(Date date, View v) { 134 public void onTimeSelect(Date date, View v) {
123 ToastUtils.showToast(getTime(date)); 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,9 +181,9 @@ public class ApplySigninFragment extends BaseMVPCompatFragment&lt;ApplySigninContra
159 @Override 181 @Override
160 public void showDetialList(List<AttendanceBean> list) { 182 public void showDetialList(List<AttendanceBean> list) {
161 183
162 - if (list.size() == 0){ 184 + if (list.size() == 0) {
163 layout_tv.setVisibility(View.VISIBLE); 185 layout_tv.setVisibility(View.VISIBLE);
164 - }else { 186 + } else {
165 recycle_attendance.setVisibility(View.VISIBLE); 187 recycle_attendance.setVisibility(View.VISIBLE);
166 signinlist.clear(); 188 signinlist.clear();
167 signinlist.addAll(list); 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,24 +7,38 @@ import android.os.Message;
7 import android.support.annotation.NonNull; 7 import android.support.annotation.NonNull;
8 import android.support.annotation.Nullable; 8 import android.support.annotation.Nullable;
9 import android.support.v7.widget.RecyclerView; 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 import android.view.View; 14 import android.view.View;
  15 +import android.view.ViewGroup;
  16 +import android.view.WindowManager;
11 import android.widget.LinearLayout; 17 import android.widget.LinearLayout;
  18 +import android.widget.PopupWindow;
  19 +import android.widget.TextView;
12 20
13 import com.amy.monthweek.materialcalendarview.MonthWeekMaterialCalendarView; 21 import com.amy.monthweek.materialcalendarview.MonthWeekMaterialCalendarView;
  22 +import com.google.gson.Gson;
14 import com.prolificinteractive.materialcalendarview.CalendarDay; 23 import com.prolificinteractive.materialcalendarview.CalendarDay;
15 import com.prolificinteractive.materialcalendarview.MaterialCalendarView; 24 import com.prolificinteractive.materialcalendarview.MaterialCalendarView;
16 import com.share.mvpsdk.base.BasePresenter; 25 import com.share.mvpsdk.base.BasePresenter;
17 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; 26 import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment;
  27 +import com.share.mvpsdk.utils.ToastUtils;
  28 +import com.shunzhi.parent.AppConfig;
18 import com.shunzhi.parent.R; 29 import com.shunzhi.parent.R;
19 import com.shunzhi.parent.adapter.ReportAdapter; 30 import com.shunzhi.parent.adapter.ReportAdapter;
  31 +import com.shunzhi.parent.bean.ChildBean;
20 import com.shunzhi.parent.bean.ReportBean; 32 import com.shunzhi.parent.bean.ReportBean;
21 import com.shunzhi.parent.contract.report.ReportContract; 33 import com.shunzhi.parent.contract.report.ReportContract;
22 import com.shunzhi.parent.presenter.report.ReportPresenter; 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 import com.shunzhi.parent.ui.activity.apply.ApplyReplaceCardActivity; 37 import com.shunzhi.parent.ui.activity.apply.ApplyReplaceCardActivity;
24 import com.shunzhi.parent.ui.activity.apply.ApplySigninActivity; 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 import java.util.List; 43 import java.util.List;
30 44
@@ -35,6 +49,8 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep @@ -35,6 +49,8 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
35 49
36 public static String TYPE_CHENGZHANG = "chengzhang", TYPE_REPORT = "report"; 50 public static String TYPE_CHENGZHANG = "chengzhang", TYPE_REPORT = "report";
37 51
  52 + public ChildBean childBean = new ChildBean();
  53 +
38 public static ChengZhangFragment newInstance(String type) { 54 public static ChengZhangFragment newInstance(String type) {
39 Bundle bundle = new Bundle(); 55 Bundle bundle = new Bundle();
40 bundle.putString("type", type); 56 bundle.putString("type", type);
@@ -43,6 +59,15 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep @@ -43,6 +59,15 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
43 return chengZhangFragment; 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 RecyclerView recyclerView; 71 RecyclerView recyclerView;
47 72
48 ReportAdapter reportAdapter; 73 ReportAdapter reportAdapter;
@@ -53,7 +78,7 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep @@ -53,7 +78,7 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
53 78
54 MaterialCalendarView calendarView_month_mode; 79 MaterialCalendarView calendarView_month_mode;
55 80
56 - private String type = ""; 81 + private String type = "", jsonStr = "";
57 82
58 LinearLayout layout_chengzhang, layout_report, layout_kaoqin, layout_buka, layout_qingjia; 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,9 +104,14 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
79 layout_qingjia.setOnClickListener(this); 104 layout_qingjia.setOnClickListener(this);
80 105
81 type = getArguments().getString("type"); 106 type = getArguments().getString("type");
  107 + jsonStr = getArguments().getString("jsonStr");
  108 + Gson g = new Gson();
  109 +
  110 +
82 if (type.equals(TYPE_CHENGZHANG)) { 111 if (type.equals(TYPE_CHENGZHANG)) {
83 layout_chengzhang.setVisibility(View.VISIBLE); 112 layout_chengzhang.setVisibility(View.VISIBLE);
84 layout_report.setVisibility(View.GONE); 113 layout_report.setVisibility(View.GONE);
  114 + childBean = g.fromJson(jsonStr, ChildBean.class);
85 115
86 } else { 116 } else {
87 layout_chengzhang.setVisibility(View.GONE); 117 layout_chengzhang.setVisibility(View.GONE);
@@ -148,14 +178,61 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep @@ -148,14 +178,61 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
148 178
149 @Override 179 @Override
150 public void onClick(View view) { 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 switch (view.getId()) { 225 switch (view.getId()) {
  226 +
152 case R.id.layout_kaoqin: 227 case R.id.layout_kaoqin:
153 - //ApplySigninActivity.getInstance(getActivity()); 228 +
  229 + ApplySigninActivity.getInstance(getActivity(), jsonStr);
154 break; 230 break;
155 case R.id.layout_buka: 231 case R.id.layout_buka:
156 - //ApplyReplaceCardActivity.getInstance(getActivity()); 232 + ApplyReplaceCardActivity.getInstance(getActivity(), jsonStr);
157 break; 233 break;
158 case R.id.layout_qingjia: 234 case R.id.layout_qingjia:
  235 + ToastUtils.showToast("正在努力开发中,敬请期待");
159 break; 236 break;
160 } 237 }
161 } 238 }
@@ -172,4 +249,10 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep @@ -172,4 +249,10 @@ public class ChengZhangFragment extends BaseMVPCompatFragment&lt;ReportContract.Rep
172 this.handler = handler; 249 this.handler = handler;
173 mPresenter.getReports(); 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 @@ @@ -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,8 +86,7 @@
86 android:layout_margin="@dimen/dp_8" 86 android:layout_margin="@dimen/dp_8"
87 android:gravity="center" 87 android:gravity="center"
88 android:background="@null" 88 android:background="@null"
89 - android:inputType="number"  
90 - android:text="1317410119" 89 + android:text=""
91 android:textColor="@color/hintTextColor" 90 android:textColor="@color/hintTextColor"
92 android:textSize="@dimen/textSize16" /> 91 android:textSize="@dimen/textSize16" />
93 92
app/src/main/res/layout/fragment_report.xml
@@ -22,8 +22,9 @@ @@ -22,8 +22,9 @@
22 android:layout_gravity="center_vertical" 22 android:layout_gravity="center_vertical"
23 android:drawablePadding="10dp" 23 android:drawablePadding="10dp"
24 android:drawableRight="@drawable/pull" 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 android:textSize="@dimen/textSize16" /> 28 android:textSize="@dimen/textSize16" />
28 29
29 <TextView 30 <TextView
gradle.properties
@@ -9,7 +9,7 @@ @@ -9,7 +9,7 @@
9 9
10 # Specifies the JVM arguments used for the daemon process. 10 # Specifies the JVM arguments used for the daemon process.
11 # The setting is particularly useful for tweaking memory settings. 11 # The setting is particularly useful for tweaking memory settings.
12 -org.gradle.jvmargs=-Xmx1536m 12 +org.gradle.jvmargs=-Xmx512m
13 13
14 # When configured, Gradle will run in incubating parallel mode. 14 # When configured, Gradle will run in incubating parallel mode.
15 # This option should only be used with decoupled projects. More details, visit 15 # This option should only be used with decoupled projects. More details, visit