diff --git a/app/src/main/java/com/example/stlink/LaunchActivity.java b/app/src/main/java/com/example/stlink/LaunchActivity.java index 01af684..db52c36 100644 --- a/app/src/main/java/com/example/stlink/LaunchActivity.java +++ b/app/src/main/java/com/example/stlink/LaunchActivity.java @@ -22,10 +22,6 @@ public class LaunchActivity extends AppCompatActivity { super.onCreate(savedInstanceState); setContentView(R.layout.activity_launch); - -// //去除当前活动标题栏 -// Objects.requireNonNull(getSupportActionBar()).hide(); - mClipLeftLoadingImageView = findViewById(R.id.iv_login_loading); mClipLeftLoadingImageView.setImageLevel(0); @@ -37,13 +33,10 @@ public class LaunchActivity extends AppCompatActivity { //延时加载 Handler handler = new Handler(); - handler.postDelayed(new Runnable() { - @Override - public void run() { - Intent intent = new Intent(LaunchActivity.this, IdChooseActivity.class); - intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); - } + handler.postDelayed(() -> { + Intent intent = new Intent(LaunchActivity.this, IdChooseActivity.class); + intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(intent); }, 1000);//3秒后执行Runnable中的run方法 } diff --git a/app/src/main/java/com/example/stlink/activitys/IdChooseActivity.java b/app/src/main/java/com/example/stlink/activitys/IdChooseActivity.java index bfa0988..0686d0b 100644 --- a/app/src/main/java/com/example/stlink/activitys/IdChooseActivity.java +++ b/app/src/main/java/com/example/stlink/activitys/IdChooseActivity.java @@ -7,7 +7,6 @@ import android.os.Looper; import android.os.Message; import android.view.Gravity; import android.view.KeyEvent; -import android.view.View; import android.widget.Button; import android.widget.Toast; @@ -69,25 +68,19 @@ public class IdChooseActivity extends AppCompatActivity { */ public void setOnclickListener(){ // 选择学生端登录 - stuLoginCho.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - intentIdCho = new Intent(IdChooseActivity.this, LoginActivity.class); - bundle.putInt(ModelFieldConstants.ROLE_ID, 0); - intentIdCho.putExtras(bundle); - startActivity(intentIdCho); - } + stuLoginCho.setOnClickListener(v -> { + intentIdCho = new Intent(IdChooseActivity.this, LoginActivity.class); + bundle.putInt(ModelFieldConstants.ROLE_ID, 0); + intentIdCho.putExtras(bundle); + startActivity(intentIdCho); }); // 选择教师端登录 - teaLoginCho.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - intentIdCho = new Intent(IdChooseActivity.this, LoginActivity.class); - bundle.putInt(ModelFieldConstants.ROLE_ID, 1); - intentIdCho.putExtras(bundle); - startActivity(intentIdCho); - } + teaLoginCho.setOnClickListener(v -> { + intentIdCho = new Intent(IdChooseActivity.this, LoginActivity.class); + bundle.putInt(ModelFieldConstants.ROLE_ID, 1); + intentIdCho.putExtras(bundle); + startActivity(intentIdCho); }); } @@ -126,9 +119,6 @@ public class IdChooseActivity extends AppCompatActivity { Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); startActivity(intent); - //退出程序代码 -// finish(); //结束程序 -// System.exit(0); //退出程序 } } } diff --git a/app/src/main/java/com/example/stlink/activitys/LoginActivity.java b/app/src/main/java/com/example/stlink/activitys/LoginActivity.java index aa93154..10df78f 100644 --- a/app/src/main/java/com/example/stlink/activitys/LoginActivity.java +++ b/app/src/main/java/com/example/stlink/activitys/LoginActivity.java @@ -80,21 +80,18 @@ public class LoginActivity extends AppCompatActivity { /** * 添加按钮点击监听事件 */ + @SuppressLint("ResourceAsColor") private void setOnclickListener(){ LoginUtil.userLogin(LoginActivity.this, btLogin, etAccount, etPwd, cbRememberPwd ); //用户注册 - lgRegister.setOnClickListener(new View.OnClickListener() { - @SuppressLint("ResourceAsColor") - @Override - public void onClick(View v) { - lgRegister.setTextColor(R.color.crimson); - lgRegister.getPaint().setUnderlineText(true); - Intent intent = new Intent(LoginActivity.this, RegisterActivity.class); - intent.putExtras(bundle); - startActivity(intent); - } + lgRegister.setOnClickListener(v -> { + lgRegister.setTextColor(R.color.crimson); + lgRegister.getPaint().setUnderlineText(true); + Intent intent = new Intent(LoginActivity.this, RegisterActivity.class); + intent.putExtras(bundle); + startActivity(intent); }); } @@ -122,7 +119,7 @@ public class LoginActivity extends AppCompatActivity { String account = spFile.getString(accountKey, null); String password = spFile.getString(passwordKey, null); - Boolean rememberPassword = spFile.getBoolean(rememberPasswordKey, false); + boolean rememberPassword = spFile.getBoolean(rememberPasswordKey, false); if(account != null && !TextUtils.isEmpty(account)){ etAccount.setText(account); etAccount.setSelection(account.length()); diff --git a/app/src/main/java/com/example/stlink/activitys/MapActivity.java b/app/src/main/java/com/example/stlink/activitys/MapActivity.java index 4772286..d713de8 100644 --- a/app/src/main/java/com/example/stlink/activitys/MapActivity.java +++ b/app/src/main/java/com/example/stlink/activitys/MapActivity.java @@ -5,7 +5,6 @@ import android.content.DialogInterface; import android.content.Intent; import android.os.Bundle; import android.os.Handler; -import android.os.Looper; import android.os.Message; import android.view.View; import android.widget.ImageButton; @@ -27,7 +26,6 @@ import com.baidu.mapapi.map.BaiduMap; import com.baidu.mapapi.map.BitmapDescriptor; import com.baidu.mapapi.map.BitmapDescriptorFactory; import com.baidu.mapapi.map.MapStatus; -import com.baidu.mapapi.map.MapStatusUpdate; import com.baidu.mapapi.map.MapStatusUpdateFactory; import com.baidu.mapapi.map.MapView; import com.baidu.mapapi.model.LatLng; @@ -41,7 +39,6 @@ import com.baidu.mapapi.search.geocode.ReverseGeoCodeResult; import com.example.stlink.R; import com.example.stlink.configs.adapter.LocationPoiAdapter; import com.example.stlink.configs.onRecyclerViewItemClickListener; -import com.example.stlink.fragments.StuHomeFragment; import com.example.stlink.model.constants.ModelFieldConstants; import com.example.stlink.utils.MyLocationListener; @@ -106,6 +103,7 @@ public class MapActivity extends AppCompatActivity { /** * 初始化地图相关 */ + @SuppressLint("NotifyDataSetChanged") private void initView(){ //获取布局相关控件 mMapView = findViewById(R.id.b_map_view); @@ -116,40 +114,33 @@ public class MapActivity extends AppCompatActivity { mRecyclerView= findViewById(R.id.rv_msg); mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); - locationPoiHandler = new Handler(new Handler.Callback() { - @SuppressLint("NotifyDataSetChanged") - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == 1){ - adapter=new LocationPoiAdapter(MapActivity.this,mList); - mRecyclerView.setAdapter(adapter); - adapter.notifyDataSetChanged(); - adapter.setOnItemClickListener(recyclerViewItemClickListener); - } - return false; + locationPoiHandler = new Handler(msg -> { + if(msg.arg1 == 1){ + adapter=new LocationPoiAdapter(MapActivity.this,mList); + mRecyclerView.setAdapter(adapter); + adapter.notifyDataSetChanged(); + adapter.setOnItemClickListener(recyclerViewItemClickListener); } + return false; }); - myLocationListenerHandler = new Handler(new Handler.Callback() { - @Override - public boolean handleMessage(@NonNull Message msg) { - nowLocation = myLocationListener.getLocation(); - if(msg.arg1 == 200 && nowLocation != null){ - LatLng point = new LatLng(nowLocation.getLatitude(), nowLocation.getLongitude()); - System.out.println("reverseGeocoding: start!!!!!!!!!!!!"); - //单次定位结束,销毁定位 - System.out.println("mBaiduMap:closing................"); - mLocationClient.stop(); - //关闭定位图层 + myLocationListenerHandler = new Handler(msg -> { + nowLocation = myLocationListener.getLocation(); + if(msg.arg1 == 200 && nowLocation != null){ + LatLng point = new LatLng(nowLocation.getLatitude(), nowLocation.getLongitude()); + System.out.println("reverseGeocoding: start!!!!!!!!!!!!"); + //单次定位结束,销毁定位 + System.out.println("mBaiduMap:closing................"); + mLocationClient.stop(); + //关闭定位图层 // mBaiduMap.setMyLocationEnabled(false); - //开始地理反编码 - reverseGeocoding(point); - }else{ - System.out.println("mLocationClient : " + mLocationClient.toString()); - System.out.println("nowLocation : " + nowLocation); - } - return false; + //开始地理反编码 + reverseGeocoding(point); + }else{ + System.out.println("mLocationClient : " + mLocationClient.toString()); + System.out.println("nowLocation : " + nowLocation); } + return false; }); // 得到地图 @@ -248,19 +239,16 @@ public class MapActivity extends AppCompatActivity { */ private void setOtherListener(){ //重定位 - ivRelocation.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - //点击重定位按钮,启动定位 - System.out.println("mBaiduMap:starting................"); - mLocationClient.start(); - //开启定位图层 + ivRelocation.setOnClickListener(v -> { + //点击重定位按钮,启动定位 + System.out.println("mBaiduMap:starting................"); + mLocationClient.start(); + //开启定位图层 // mBaiduMap.setMyLocationEnabled(true); // BDLocation nowLocation = myLocationListener.getLocation(); // LatLng ll = new LatLng(nowLocation.getLatitude(), nowLocation.getLongitude()); // MapStatusUpdate msu = MapStatusUpdateFactory.newLatLng(ll); // mBaiduMap.animateMapStatus(msu); - } }); abBtReturn.setOnClickListener(new View.OnClickListener() { @Override @@ -269,40 +257,33 @@ public class MapActivity extends AppCompatActivity { } }); //保存 - abBtSave.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - nowLocation = myLocationListener.getLocation(); - String ll = "(" + nowLocation.getLatitude() + "," + nowLocation.getLongitude() + ")"; - Intent intent = new Intent(); - Bundle bundle = getIntent().getExtras(); - bundle.putString(ModelFieldConstants.LOCATION, ll); - intent.putExtras(bundle); - setResult(100,intent); - finish(); - } + abBtSave.setOnClickListener(v -> { + nowLocation = myLocationListener.getLocation(); + String ll = "(" + nowLocation.getLatitude() + "," + nowLocation.getLongitude() + ")"; + Intent intent = new Intent(); + Bundle bundle = getIntent().getExtras(); + bundle.putString(ModelFieldConstants.LOCATION, ll); + intent.putExtras(bundle); + setResult(100,intent); + finish(); }); recyclerViewItemClickListener = new onRecyclerViewItemClickListener() { @Override public void onItemClick(RecyclerView parent, View view, int position) { PoiInfo poiInfo = mList.get(position); + //添加"Yes"按钮 + //添加取消 AlertDialog alertDialog2 = new AlertDialog.Builder(MapActivity.this) .setMessage("签到地点【" + poiInfo.name + "】") - .setPositiveButton("确定", new DialogInterface.OnClickListener() {//添加"Yes"按钮 - @Override - public void onClick(DialogInterface dialogInterface, int i) { - Intent intent = new Intent(); - Bundle bundle = getIntent().getExtras(); - bundle.putString(ModelFieldConstants.LOCATION, poiInfo.name); - intent.putExtras(bundle); - setResult(100,intent); - finish(); - } + .setPositiveButton("确定", (dialogInterface, i) -> { + Intent intent = new Intent(); + Bundle bundle = getIntent().getExtras(); + bundle.putString(ModelFieldConstants.LOCATION, poiInfo.name); + intent.putExtras(bundle); + setResult(100,intent); + finish(); }) - .setNegativeButton("取消", new DialogInterface.OnClickListener() {//添加取消 - @Override - public void onClick(DialogInterface dialogInterface, int i) { - } + .setNegativeButton("取消", (dialogInterface, i) -> { }) .create(); alertDialog2.show(); diff --git a/app/src/main/java/com/example/stlink/activitys/ScanQRCodeActivity.java b/app/src/main/java/com/example/stlink/activitys/ScanQRCodeActivity.java index 57bc99b..3b59832 100644 --- a/app/src/main/java/com/example/stlink/activitys/ScanQRCodeActivity.java +++ b/app/src/main/java/com/example/stlink/activitys/ScanQRCodeActivity.java @@ -14,9 +14,5 @@ public class ScanQRCodeActivity extends AppCompatActivity { setContentView(R.layout.activity_scan_code); } - private void initView(){ - - } - } diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuClassList/CourseSignIn.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuClassList/CourseSignIn.java index 3320f94..8ac318a 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuClassList/CourseSignIn.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuClassList/CourseSignIn.java @@ -1,7 +1,6 @@ package com.example.stlink.activitys.fragmentChild.activityStuClassList; import android.annotation.SuppressLint; -import android.content.DialogInterface; import android.content.Intent; import android.os.Bundle; import android.os.Handler; @@ -57,6 +56,7 @@ public class CourseSignIn extends AppCompatActivity { private TextInputEditText etCodeInput; private static List courseHasSignedList; + @SuppressLint("StaticFieldLeak") private static StuCourseSignedAdapter adapter; private Handler signHandler; @@ -121,90 +121,69 @@ public class CourseSignIn extends AppCompatActivity { } private void setClickListener(){ - abIvTitle.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - } - }); + abIvTitle.setOnClickListener(v -> finish()); //点击签到后的事件 - btSign.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - @SuppressLint("InflateParams") - View view = LayoutInflater.from(CourseSignIn.this).inflate(R.layout.dialog_input, null); - AlertDialog.Builder builder = new AlertDialog.Builder(CourseSignIn.this) - .setMessage("请输入签到口令") - .setView(view) - .setPositiveButton("确定", new DialogInterface.OnClickListener() {//添加"Yes"按钮 - @Override - public void onClick(DialogInterface dialogInterface, int i) { - etCodeInput = view.findViewById(R.id.et_code_input); - Editable etSignCode = etCodeInput.getText(); - if(etSignCode == null){ - Toast.makeText(CourseSignIn.this, "口令为空", Toast.LENGTH_SHORT).show(); - }else{ - signCodeStr = etSignCode.toString(); - int signCode; - StuSignRequest stuSignRequest = new StuSignRequest(); - stuSignRequest.setUserSignId(courseSignId); - stuSignRequest.setUserId(bundle.getLong(ModelFieldConstants.ID)); - try{ - signCode = Integer.parseInt(signCodeStr); - stuSignRequest.setSignCode(signCode); - signHandler = new Handler(new Handler.Callback() { - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == -1){ - String errorMsg = (String) msg.obj; - Toast.makeText(CourseSignIn.this, errorMsg, Toast.LENGTH_SHORT).show(); - }else if(msg.arg1 == 1){ - Toast.makeText(CourseSignIn.this, "签到成功", Toast.LENGTH_SHORT).show(); - tvSignRecord.setVisibility(View.VISIBLE); - getSignedHandler = new Handler(new Handler.Callback() { - @SuppressLint("NotifyDataSetChanged") - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == 1){ - adapter.notifyDataSetChanged(); - } - return false; - } - }); - getHasSignedList(); - } - return false; + btSign.setOnClickListener(v -> { + @SuppressLint("InflateParams") + View view = LayoutInflater.from(CourseSignIn.this).inflate(R.layout.dialog_input, null); + //添加取消 + //添加"Yes"按钮 + @SuppressLint("NotifyDataSetChanged") + AlertDialog.Builder builder = new AlertDialog.Builder(CourseSignIn.this) + .setMessage("请输入签到口令") + .setView(view) + .setPositiveButton("确定", (dialogInterface, i) -> { + etCodeInput = view.findViewById(R.id.et_code_input); + Editable etSignCode = etCodeInput.getText(); + if(etSignCode == null){ + Toast.makeText(CourseSignIn.this, "口令为空", Toast.LENGTH_SHORT).show(); + }else{ + signCodeStr = etSignCode.toString(); + int signCode; + StuSignRequest stuSignRequest = new StuSignRequest(); + stuSignRequest.setUserSignId(courseSignId); + stuSignRequest.setUserId(bundle.getLong(ModelFieldConstants.ID)); + try{ + signCode = Integer.parseInt(signCodeStr); + stuSignRequest.setSignCode(signCode); + signHandler = new Handler(msg -> { + if(msg.arg1 == -1){ + String errorMsg = (String) msg.obj; + Toast.makeText(CourseSignIn.this, errorMsg, Toast.LENGTH_SHORT).show(); + }else if(msg.arg1 == 1){ + Toast.makeText(CourseSignIn.this, "签到成功", Toast.LENGTH_SHORT).show(); + tvSignRecord.setVisibility(View.VISIBLE); + getSignedHandler = new Handler(msg1 -> { + if(msg1.arg1 == 1){ + adapter.notifyDataSetChanged(); } + return false; }); - signIn(stuSignRequest); - }catch ( NumberFormatException numberFormatException){ - Toast.makeText(CourseSignIn.this, "口令输入错误", Toast.LENGTH_SHORT).show(); + getHasSignedList(); } - } - } - }) - .setNegativeButton("取消", new DialogInterface.OnClickListener() {//添加取消 - @Override - public void onClick(DialogInterface dialogInterface, int i) { - } - }) - .setNeutralButton("扫码", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - // 创建IntentIntegrator对象 - IntentIntegrator intentIntegrator = new IntentIntegrator(CourseSignIn.this) - .setBeepEnabled(true) //扫描提示音 - .setPrompt("这是个扫码签到界面") - //.setCaptureActivity(MyCaptureActivity.class) //修改扫码活动 - .setDesiredBarcodeFormats(IntentIntegrator.QR_CODE)// 扫码的类型,可选:一维码,二维码,一/二维码 - .setTimeout(10000);//15秒未扫描,则将自动关闭扫码界面 - // 开始扫描 - intentIntegrator.initiateScan(); + return false; + }); + signIn(stuSignRequest); + }catch ( NumberFormatException numberFormatException){ + Toast.makeText(CourseSignIn.this, "口令输入错误", Toast.LENGTH_SHORT).show(); } - }); - AlertDialog alertDialog2 = builder.create(); - alertDialog2.show(); - } + } + }) + .setNegativeButton("取消", (dialogInterface, i) -> { + }) + .setNeutralButton("扫码", (dialog, which) -> { + // 创建IntentIntegrator对象 + IntentIntegrator intentIntegrator = new IntentIntegrator(CourseSignIn.this) + .setBeepEnabled(true) //扫描提示音 + .setPrompt("这是个扫码签到界面") + //.setCaptureActivity(MyCaptureActivity.class) //修改扫码活动 + .setDesiredBarcodeFormats(IntentIntegrator.QR_CODE)// 扫码的类型,可选:一维码,二维码,一/二维码 + .setTimeout(10000);//15秒未扫描,则将自动关闭扫码界面 + // 开始扫描 + intentIntegrator.initiateScan(); + }); + AlertDialog alertDialog2 = builder.create(); + alertDialog2.show(); }); } @@ -212,46 +191,43 @@ public class CourseSignIn extends AppCompatActivity { * 获取已选课程待签到内容 */ private void getHasSignedList(){ - new Thread(new Runnable() { - @Override - public void run() { - bundle = getIntent().getExtras(); - String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + - ModelFieldConstants.USER_ID + "=" + bundle.getLong(ModelFieldConstants.ID) + "&" + - ModelFieldConstants.COURSE_SIGN_STATUS + "=" + 1 + "&" + - "current=1&size=10"; - String url = UrlConstants.STUDENT_SIGN_LIST + "?" + urlParam; - new GetUrlParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - if(baseResponse.getData() != null){ - System.out.println("StuClassListFragment:courseDataBaseResponse.getData() = " + baseResponse.getData() + "..............."); + new Thread(() -> { + bundle = getIntent().getExtras(); + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + bundle.getLong(ModelFieldConstants.ID) + "&" + + ModelFieldConstants.COURSE_SIGN_STATUS + "=" + 1 + "&" + + "current=1&size=10"; + String url = UrlConstants.STUDENT_SIGN_LIST + "?" + urlParam; + new GetUrlParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + if(baseResponse.getData() != null){ + System.out.println("StuClassListFragment:courseDataBaseResponse.getData() = " + baseResponse.getData() + "..............."); - //解析数据 - Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); - Object obj = baseResponse.getData(); - LinkedTreeMap courseDataMap = null; - if(obj instanceof LinkedTreeMap){ - courseDataMap = (LinkedTreeMap) obj; - } - //将LinkedTreeMap中字段映射到CourseData类中 - //array:学生获取所选课程签到列表返回实体 - String jsonString = gson.toJson(courseDataMap); - CourseData courseData = gson.fromJson(jsonString, new TypeToken>() {}.getType()); + //解析数据 + Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); + Object obj = baseResponse.getData(); + LinkedTreeMap courseDataMap = null; + if(obj instanceof LinkedTreeMap){ + courseDataMap = (LinkedTreeMap) obj; + } + //将LinkedTreeMap中字段映射到CourseData类中 + //array:学生获取所选课程签到列表返回实体 + String jsonString = gson.toJson(courseDataMap); + CourseData courseData = gson.fromJson(jsonString, new TypeToken>() {}.getType()); - if(courseData.getRecords().size() != 0){ - courseHasSignedList.addAll(courseData.getRecords()); - System.out.println("Here............................."); - Message message = new Message(); - message.arg1 = 1; - getSignedHandler.sendMessage(message); - } + if(courseData.getRecords().size() != 0){ + courseHasSignedList.addAll(courseData.getRecords()); + System.out.println("Here............................."); + Message message = new Message(); + message.arg1 = 1; + getSignedHandler.sendMessage(message); } } - @Override - public void failedMethod(BaseResponse baseResponse) { } - }.getConnect(url); - } + } + @Override + public void failedMethod(BaseResponse baseResponse) { } + }.getConnect(url); }).start(); } @@ -306,15 +282,11 @@ public class CourseSignIn extends AppCompatActivity { }else if(msg.arg1 == 1){ Toast.makeText(CourseSignIn.this, "签到成功", Toast.LENGTH_SHORT).show(); tvSignRecord.setVisibility(View.VISIBLE); - getSignedHandler = new Handler(new Handler.Callback() { - @SuppressLint("NotifyDataSetChanged") - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == 1){ - adapter.notifyDataSetChanged(); - } - return false; + getSignedHandler = new Handler(msg1 -> { + if(msg1.arg1 == 1){ + adapter.notifyDataSetChanged(); } + return false; }); getHasSignedList(); } diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuHome/AllCourses.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuHome/AllCourses.java index 7d917ba..b02f8d7 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuHome/AllCourses.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityStuHome/AllCourses.java @@ -39,7 +39,7 @@ public class AllCourses extends AppCompatActivity { private List coursesData; private StuAddCourseAdapter adapter; private ImageView abIvTitle; - private static SwipeRefreshLayout srlMyRefresh; + private SwipeRefreshLayout srlMyRefresh; private static Bundle bundle; private static Handler handler; diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaCourse/CourseDetail.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaCourse/CourseDetail.java index 129d8ae..458f391 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaCourse/CourseDetail.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaCourse/CourseDetail.java @@ -13,7 +13,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.Fragment; -import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import com.example.stlink.R; import com.example.stlink.fragments.CourseClassListFragment; @@ -125,13 +124,7 @@ public class CourseDetail extends AppCompatActivity { * 设置返回键点击事件 */ private void setListener(){ - abIvTitle.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - - finish(); - } - }); + abIvTitle.setOnClickListener(v -> finish()); } private void initPager(){ @@ -146,46 +139,43 @@ public class CourseDetail extends AppCompatActivity { } private void getCourseDetail(){ - new Thread(new Runnable() { - @Override - public void run() { - - long courseId = bundle.getLong(ModelFieldConstants.COURSE_ID); - long userId = bundle.getLong(ModelFieldConstants.USER_ID); - - String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + - ModelFieldConstants.USER_ID + "=" + userId; - String url = UrlConstants.COURSE_DETAIL + "?" + urlParam; - - new GetUrlParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - - //解析数据 - Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); - Object obj = baseResponse.getData(); - LinkedTreeMap courseDetailMap = null; - if(obj instanceof LinkedTreeMap){ - courseDetailMap = (LinkedTreeMap) obj; - } - //将LinkedTreeMap中字段映射到User类中 - String jsonString = gson.toJson(courseDetailMap); - CourseDetailData courseDetail = gson.fromJson(jsonString, new TypeToken() {}.getType()); - System.out.println("courseDetail = " + courseDetail + ".................."); - Message message = new Message(); - message.obj = courseDetail; - message.arg1 = 200; - handler.sendMessage(message); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - message.obj = baseResponse.getMsg(); - message.arg1 = baseResponse.getCode(); - handler .sendMessage(message); + new Thread(() -> { + + long courseId = bundle.getLong(ModelFieldConstants.COURSE_ID); + long userId = bundle.getLong(ModelFieldConstants.USER_ID); + + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + userId; + String url = UrlConstants.COURSE_DETAIL + "?" + urlParam; + + new GetUrlParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + + //解析数据 + Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); + Object obj = baseResponse.getData(); + LinkedTreeMap courseDetailMap = null; + if(obj instanceof LinkedTreeMap){ + courseDetailMap = (LinkedTreeMap) obj; } - }.getConnect(url); - } + //将LinkedTreeMap中字段映射到User类中 + String jsonString = gson.toJson(courseDetailMap); + CourseDetailData courseDetail = gson.fromJson(jsonString, new TypeToken() {}.getType()); + System.out.println("courseDetail = " + courseDetail + ".................."); + Message message = new Message(); + message.obj = courseDetail; + message.arg1 = 200; + handler.sendMessage(message); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = baseResponse.getMsg(); + message.arg1 = baseResponse.getCode(); + handler .sendMessage(message); + } + }.getConnect(url); }).start(); } } diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CheckCourseSign.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CheckCourseSign.java index 24e2e98..f1f28a6 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CheckCourseSign.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CheckCourseSign.java @@ -3,9 +3,6 @@ package com.example.stlink.activitys.fragmentChild.activityTeaHome; import android.app.Activity; import android.app.Dialog; import android.content.Intent; -import android.content.pm.ApplicationInfo; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.PixelFormat; @@ -20,19 +17,14 @@ import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; import android.widget.TextView; -import android.widget.Toast; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; -import androidx.core.content.FileProvider; import androidx.fragment.app.Fragment; -import com.example.stlink.BuildConfig; import com.example.stlink.R; -import com.example.stlink.activitys.fragmentChild.activityStuClassList.CourseSignIn; import com.example.stlink.fragments.DidNotSignListFragment; import com.example.stlink.fragments.LeaveListFragment; import com.example.stlink.fragments.SignListFragment; @@ -49,10 +41,8 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.internal.LinkedTreeMap; -import java.io.File; import java.util.ArrayList; import java.util.List; -import java.util.Objects; public class CheckCourseSign extends AppCompatActivity { diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateCourse.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateCourse.java index 1516b25..c29d7c4 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateCourse.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateCourse.java @@ -1,14 +1,11 @@ package com.example.stlink.activitys.fragmentChild.activityTeaHome; import android.annotation.SuppressLint; -import android.database.Cursor; import android.graphics.Color; -import android.net.Uri; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; -import android.provider.MediaStore; import android.text.TextUtils; import android.view.View; import android.widget.Button; diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateSign.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateSign.java index aaa9359..3eac8a5 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateSign.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityTeaHome/CreateSign.java @@ -6,7 +6,6 @@ import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.location.LocationManager; import android.net.Uri; -import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.Message; @@ -19,9 +18,7 @@ import android.widget.Toast; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.AppCompatButton; import androidx.core.content.ContextCompat; @@ -41,8 +38,6 @@ import com.google.android.material.timepicker.MaterialTimePicker; import com.google.android.material.timepicker.TimeFormat; import java.text.ParseException; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; import java.util.Objects; public class CreateSign extends AppCompatActivity { @@ -207,24 +202,21 @@ public class CreateSign extends AppCompatActivity { etStartTime.setText(startTime); hasChooseStartTime = true; }); - endTimePicker.addOnPositiveButtonClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - int endHour = endTimePicker.getHour(); - int endMin = endTimePicker.getMinute(); - String endTime = currYear + "-" + - currMonth + "-" + - currDay + " " + - endHour + ":" + - endMin + ":" + "00"; - try { - endTimeStamp = Long.parseLong(CommonUtils.dateToStamp(endTime, "yyyy-MM-dd HH:mm:ss")); - } catch (ParseException e) { - e.printStackTrace(); - } - etEndTime.setText(endTime); - hasChooseEndTime = true; + endTimePicker.addOnPositiveButtonClickListener(v -> { + int endHour = endTimePicker.getHour(); + int endMin = endTimePicker.getMinute(); + String endTime = currYear + "-" + + currMonth + "-" + + currDay + " " + + endHour + ":" + + endMin + ":" + "00"; + try { + endTimeStamp = Long.parseLong(CommonUtils.dateToStamp(endTime, "yyyy-MM-dd HH:mm:ss")); + } catch (ParseException e) { + e.printStackTrace(); } + etEndTime.setText(endTime); + hasChooseEndTime = true; }); //课程开始时间 etStartTime.setOnClickListener(v -> { diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/ModifyUserInfo.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/ModifyUserInfo.java index 912044a..1d6eed2 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/ModifyUserInfo.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/ModifyUserInfo.java @@ -9,7 +9,6 @@ import android.os.Looper; import android.os.Message; import android.text.Editable; import android.text.TextWatcher; -import android.view.View; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; @@ -81,7 +80,9 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if(tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } case ModelFieldConstants.COLLEGE_NAME : { @@ -92,7 +93,9 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if(tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } case ModelFieldConstants.REAL_NAME : { @@ -103,7 +106,9 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if(tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } case ModelFieldConstants.ID_NUMBER : { @@ -118,7 +123,9 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if(tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } case ModelFieldConstants.GENDER : { @@ -138,36 +145,24 @@ public class ModifyUserInfo extends AppCompatActivity { tiNewMsg.setKeyListener(null); - tiNewMsg.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - System.out.println("choose gender............"); - String[] singleItems = {"男", "女"}; - int checkedItem = "男".equals(tiNewMsg.getText().toString()) ? 0 : 1; - - MaterialAlertDialogBuilder materialAlertDialogBuilder = new MaterialAlertDialogBuilder(ModifyUserInfo.this) - .setTitle("请选择性别") - .setNeutralButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - - } - }) - .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - tiNewMsg.setText(singleItems[bundle.getInt("checkedItem")]); - } - }) - .setSingleChoiceItems(singleItems, checkedItem, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - bundle.putInt("checkedItem", which); - } - }); - materialAlertDialogBuilder.show(); + tiNewMsg.setOnClickListener(v -> { + System.out.println("choose gender............"); + String[] singleItems = {"男", "女"}; + int checkedItem = 0; + if(tiNewMsg.getText() != null){ + checkedItem = "男".equals(tiNewMsg.getText().toString()) ? 0 : 1; } + MaterialAlertDialogBuilder materialAlertDialogBuilder = new MaterialAlertDialogBuilder(ModifyUserInfo.this) + .setTitle("请选择性别") + .setNeutralButton(getString(R.string.cancel), (dialog, which) -> { + + }) + .setPositiveButton(getString(R.string.ok), (dialog, which) -> + tiNewMsg.setText(singleItems[bundle.getInt("checkedItem")])) + .setSingleChoiceItems(singleItems, checkedItem, (dialog, which) -> + bundle.putInt("checkedItem", which)); + materialAlertDialogBuilder.show(); }); break; } @@ -179,7 +174,9 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if (tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } case ModelFieldConstants.PHONE : { @@ -190,11 +187,14 @@ public class ModifyUserInfo extends AppCompatActivity { }else{ tiNewMsg.setText(""); } - tiNewMsg.setSelection(tiNewMsg.getText().length()); + if(tiNewMsg.getText() != null){ + tiNewMsg.setSelection(tiNewMsg.getText().length()); + } break; } default:{ - tiNewMsg.setText("error....."); + String errorText = "error....."; + tiNewMsg.setText(errorText); } } } @@ -204,12 +204,7 @@ public class ModifyUserInfo extends AppCompatActivity { */ private void setListener(){ //返回上一个活动,也就是个人信息部分 - abIvTitle.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - } - }); + abIvTitle.setOnClickListener(v -> finish()); tiNewMsg.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { @@ -224,12 +219,7 @@ public class ModifyUserInfo extends AppCompatActivity { abBtSave.setBackgroundResource(R.drawable.selector_bottom_modify_info_save_2); abBtSave.setTextColor(Color.WHITE); //为按钮添加点击事件 - abBtSave.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - dialog(); - } - }); + abBtSave.setOnClickListener(v -> dialog()); } @Override @@ -244,6 +234,7 @@ public class ModifyUserInfo extends AppCompatActivity { */ private void dialog(){ + //添加取消 AlertDialog alertDialog2 = new AlertDialog.Builder(this) .setMessage("请确认是否进行" + abTvTitle.getText()) .setPositiveButton("确定", new DialogInterface.OnClickListener() {//添加"Yes"按钮 @@ -259,10 +250,7 @@ public class ModifyUserInfo extends AppCompatActivity { }; } }) - .setNegativeButton("取消", new DialogInterface.OnClickListener() {//添加取消 - @Override - public void onClick(DialogInterface dialogInterface, int i) { - } + .setNegativeButton("取消", (dialogInterface, i) -> { }) .create(); alertDialog2.show(); @@ -272,57 +260,23 @@ public class ModifyUserInfo extends AppCompatActivity { * 更新信息网络请求 */ private void modifyInfo(){ - new Thread(new Runnable() { - @Override - public void run() { - JSONObject jsonObject = new JSONObject(); - boolean isLegalInput = false; - try { - jsonObject.put(ModelFieldConstants.ID, (Long) bundle.get(ModelFieldConstants.ID)); - } catch (JSONException e) { - e.printStackTrace(); - } - //根据上一个活动传递过来的选择字段,来选择对应的传输方法 - String modifyField = (String) bundle.get(ModelFieldConstants.TO_BE_MODIFY); - switch (modifyField){ - case ModelFieldConstants.ID_NUMBER: - case ModelFieldConstants.IN_SCHOOL_TIME:{ - try { - Long msg = Long.parseLong(Objects.requireNonNull(tiNewMsg.getText()).toString()); - jsonObject.put(modifyField, msg); - bundle.putLong(modifyField, msg); - isLegalInput = true; - }catch (NumberFormatException e){ - e.printStackTrace(); - Message msg = new Message(); - msg.obj = "输入非法."; - handler.sendMessage(msg); - }catch (JSONException e) { - e.printStackTrace(); - } - break; - } - case ModelFieldConstants.GENDER:{ - try { - String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); - if("男".equals(msg) || "女".equals(msg)){ - Boolean msgBoolean = "男".equals(msg); - jsonObject.put(modifyField, msgBoolean); - bundle.putBoolean(modifyField, msgBoolean); - isLegalInput = true; - } - } catch (JSONException e) { - e.printStackTrace(); - } - break; - } - case ModelFieldConstants.PHONE: { + new Thread(() -> { + JSONObject jsonObject = new JSONObject(); + boolean isLegalInput = false; + try { + jsonObject.put(ModelFieldConstants.ID, (Long) bundle.get(ModelFieldConstants.ID)); + } catch (JSONException e) { + e.printStackTrace(); + } + //根据上一个活动传递过来的选择字段,来选择对应的传输方法 + String modifyField = (String) bundle.get(ModelFieldConstants.TO_BE_MODIFY); + switch (modifyField){ + case ModelFieldConstants.ID_NUMBER: + case ModelFieldConstants.IN_SCHOOL_TIME:{ try { - String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); - //判断输入电话号码是否能解析为long型,能解析的话说明输入没有非法字符 - Long msgLong = Long.parseLong(msg); + Long msg = Long.parseLong(Objects.requireNonNull(tiNewMsg.getText()).toString()); jsonObject.put(modifyField, msg); - bundle.putString(modifyField, msg); + bundle.putLong(modifyField, msg); isLegalInput = true; }catch (NumberFormatException e){ e.printStackTrace(); @@ -330,72 +284,103 @@ public class ModifyUserInfo extends AppCompatActivity { msg.obj = "输入非法."; handler.sendMessage(msg); }catch (JSONException e) { - e.printStackTrace(); + e.printStackTrace(); + } + break; + } + case ModelFieldConstants.GENDER:{ + try { + String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); + if("男".equals(msg) || "女".equals(msg)){ + Boolean msgBoolean = "男".equals(msg); + jsonObject.put(modifyField, msgBoolean); + bundle.putBoolean(modifyField, msgBoolean); + isLegalInput = true; } - break; + } catch (JSONException e) { + e.printStackTrace(); } - case ModelFieldConstants.EMAIL:{ - Message message = new Message(); - try { - String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); - String[] msgStr = msg.split("@"); - //必须得包含@符号 - if(msgStr.length == 2){ - //邮箱的两部分必定是长度大于0的 - if(msgStr[0].length() > 0 && msgStr[1].length() > 0){ - jsonObject.put(modifyField, msg); - bundle.putString(modifyField, msg); - isLegalInput = true; - }else{ - message.obj = "输入非法."; - handler.sendMessage(message); - } + break; + } + case ModelFieldConstants.PHONE: { + try { + String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); + //判断输入电话号码是否能解析为long型,能解析的话说明输入没有非法字符 +// Long msgLong = Long.parseLong(msg); + jsonObject.put(modifyField, msg); + bundle.putString(modifyField, msg); + isLegalInput = true; + }catch (NumberFormatException e){ + e.printStackTrace(); + Message msg = new Message(); + msg.obj = "输入非法."; + handler.sendMessage(msg); + }catch (JSONException e) { + e.printStackTrace(); + } + break; + } + case ModelFieldConstants.EMAIL:{ + Message message = new Message(); + try { + String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); + String[] msgStr = msg.split("@"); + //必须得包含@符号 + if(msgStr.length == 2){ + //邮箱的两部分必定是长度大于0的 + if(msgStr[0].length() > 0 && msgStr[1].length() > 0){ + jsonObject.put(modifyField, msg); + bundle.putString(modifyField, msg); + isLegalInput = true; }else{ message.obj = "输入非法."; handler.sendMessage(message); } - } catch (NumberFormatException e){ - e.printStackTrace(); + }else{ message.obj = "输入非法."; handler.sendMessage(message); - }catch (JSONException e) { - e.printStackTrace(); } - - break; + } catch (NumberFormatException e){ + e.printStackTrace(); + message.obj = "输入非法."; + handler.sendMessage(message); + }catch (JSONException e) { + e.printStackTrace(); } - default:{ - try { - String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); - jsonObject.put(modifyField, msg); - bundle.putString(modifyField, msg); - isLegalInput = true; - } catch (JSONException e) { - e.printStackTrace(); - } + + break; + } + default:{ + try { + String msg = Objects.requireNonNull(tiNewMsg.getText()).toString(); + jsonObject.put(modifyField, msg); + bundle.putString(modifyField, msg); + isLegalInput = true; + } catch (JSONException e) { + e.printStackTrace(); } } - System.out.println( "jsonObject : " + jsonObject.toString() + ".............................."); - String json = jsonObject.toString(); - String url = UrlConstants.USER_UPDATE; + } + System.out.println( "jsonObject : " + jsonObject + ".............................."); + String json = jsonObject.toString(); + String url = UrlConstants.USER_UPDATE; - if(isLegalInput){ - new PostBodyParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - Intent intent = new Intent(); - intent.putExtras(bundle); - setResult(RESULT_OK,intent); - finish(); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - System.out.println("修改失败......................."); - handler.sendMessage(message); - } - }.postConnect(url, json); - } + if(isLegalInput){ + new PostBodyParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + Intent intent = new Intent(); + intent.putExtras(bundle); + setResult(RESULT_OK,intent); + finish(); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + System.out.println("修改失败......................."); + handler.sendMessage(message); + } + }.postConnect(url, json); } }).start(); } diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoRecord.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoRecord.java index 01b9e83..9143032 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoRecord.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoRecord.java @@ -33,11 +33,6 @@ public class UserInfoRecord extends AppCompatActivity { private void setClickListener(){ //返回上一个活动,也就是个人信息部分 - abIvTitle.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - } - }); + abIvTitle.setOnClickListener(v -> finish()); } } diff --git a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoSetting.java b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoSetting.java index ea9fc43..28aa0f7 100644 --- a/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoSetting.java +++ b/app/src/main/java/com/example/stlink/activitys/fragmentChild/activityUserInfo/UserInfoSetting.java @@ -2,7 +2,6 @@ package com.example.stlink.activitys.fragmentChild.activityUserInfo; import android.content.Intent; import android.os.Bundle; -import android.view.View; import android.widget.Button; import android.widget.ImageView; @@ -38,30 +37,16 @@ public class UserInfoSetting extends AppCompatActivity { } private void setClickListener(){ - btExit.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { -// finish();//这个只是从方法栈中移除了当前活动 -// System.exit(0); //同上 - CommonUtils.exitApp(UserInfoSetting.this); - } - }); - - btLoginOut.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(UserInfoSetting.this, IdChooseActivity.class); - //退出登录后,禁止再退回来 - intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); - } + btExit.setOnClickListener(v -> + CommonUtils.exitApp(UserInfoSetting.this)); + + btLoginOut.setOnClickListener(v -> { + Intent intent = new Intent(UserInfoSetting.this, IdChooseActivity.class); + //退出登录后,禁止再退回来 + intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(intent); }); //返回上一个活动,也就是个人信息部分 - abIvTitle.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - } - }); + abIvTitle.setOnClickListener(v -> finish()); } } diff --git a/app/src/main/java/com/example/stlink/configs/adapter/LocationPoiAdapter.java b/app/src/main/java/com/example/stlink/configs/adapter/LocationPoiAdapter.java index 4a17839..3162e9e 100644 --- a/app/src/main/java/com/example/stlink/configs/adapter/LocationPoiAdapter.java +++ b/app/src/main/java/com/example/stlink/configs/adapter/LocationPoiAdapter.java @@ -81,6 +81,7 @@ public class LocationPoiAdapter extends RecyclerView.Adapter { }) .create(); alertDialog2.show(); } @@ -155,35 +153,32 @@ public class StuAddCourseAdapter extends RecyclerView.Adapter baseResponse) { - Message message = new Message(); - message.obj = "添加成功"; - message.arg1 = 200; - handler.sendMessage(message); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - System.out.println("添加失败......................."); - message.obj = "添加失败"; - message.arg1 = 400; - handler.sendMessage(message); - } - }.postConnect(url, ""); - } + new Thread(() -> { + AppCompatActivity appCompatActivity = (AppCompatActivity) mContext; + Bundle bundle = appCompatActivity.getIntent().getExtras(); + Long courseId = mCourseData.get(position).getmCourseId(); + long userId = bundle.getLong(ModelFieldConstants.ID); + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + userId; + String url = UrlConstants.STUDENT_SELECT + "?" + urlParam; + + new PostBodyParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = "添加成功"; + message.arg1 = 200; + handler.sendMessage(message); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + System.out.println("添加失败......................."); + message.obj = "添加失败"; + message.arg1 = 400; + handler.sendMessage(message); + } + }.postConnect(url, ""); }).start(); } } diff --git a/app/src/main/java/com/example/stlink/configs/adapter/StuCourseSignedAdapter.java b/app/src/main/java/com/example/stlink/configs/adapter/StuCourseSignedAdapter.java index 29f9e5b..b87577c 100644 --- a/app/src/main/java/com/example/stlink/configs/adapter/StuCourseSignedAdapter.java +++ b/app/src/main/java/com/example/stlink/configs/adapter/StuCourseSignedAdapter.java @@ -46,9 +46,8 @@ public class StuCourseSignedAdapter extends RecyclerView.Adapter { }) .create(); alertDialog2.show(); @@ -152,35 +150,32 @@ public class StuDeleteCourseAdapter extends RecyclerView.Adapter baseResponse) { - Message message = new Message(); - message.obj = "退出成功"; - message.arg1 = 200; - handler.sendMessage(message); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - System.out.println("退出失败......................."); - message.obj = "退出失败"; - message.arg1 = 400; - handler.sendMessage(message); - } - }.deleteConnect(url); - } + new Thread(() -> { + AppCompatActivity appCompatActivity = (AppCompatActivity) mContext; + Bundle bundle = appCompatActivity.getIntent().getExtras(); + Long courseId = mCourseData.get(position).getmCourseId(); + long userId = bundle.getLong(ModelFieldConstants.ID); + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + userId; + String url = UrlConstants.STUDENT_DROP + "?" + urlParam; + + new DeleteUrlParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = "退出成功"; + message.arg1 = 200; + handler.sendMessage(message); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + System.out.println("退出失败......................."); + message.obj = "退出失败"; + message.arg1 = 400; + handler.sendMessage(message); + } + }.deleteConnect(url); }).start(); } } diff --git a/app/src/main/java/com/example/stlink/configs/adapter/TeaDeleteCourseAdapter.java b/app/src/main/java/com/example/stlink/configs/adapter/TeaDeleteCourseAdapter.java index e5a7be7..805938b 100644 --- a/app/src/main/java/com/example/stlink/configs/adapter/TeaDeleteCourseAdapter.java +++ b/app/src/main/java/com/example/stlink/configs/adapter/TeaDeleteCourseAdapter.java @@ -113,13 +113,14 @@ public class TeaDeleteCourseAdapter extends RecyclerView.Adapter { }) .create(); alertDialog2.show(); @@ -157,35 +155,32 @@ public class TeaDeleteCourseAdapter extends RecyclerView.Adapter baseResponse) { - Message message = new Message(); - message.obj = "删除成功"; - message.arg1 = 200; - handler.sendMessage(message); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - System.out.println("删除失败......................."); - message.obj = "删除失败"; - message.arg1 = 400; - handler.sendMessage(message); - } - }.deleteConnect(url); - } + new Thread(() -> { + AppCompatActivity appCompatActivity = (AppCompatActivity) mContext; + Bundle bundle = appCompatActivity.getIntent().getExtras(); + Long courseId = mCourseData.get(position).getmCourseId(); + long userId = bundle.getLong(ModelFieldConstants.ID); + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + userId; + String url = UrlConstants.TEACHER_COURSE + "?" + urlParam; + + new DeleteUrlParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = "删除成功"; + message.arg1 = 200; + handler.sendMessage(message); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + System.out.println("删除失败......................."); + message.obj = "删除失败"; + message.arg1 = 400; + handler.sendMessage(message); + } + }.deleteConnect(url); }).start(); } } diff --git a/app/src/main/java/com/example/stlink/configs/myControls/NestedScrollableHost.java b/app/src/main/java/com/example/stlink/configs/myControls/NestedScrollableHost.java index e2c461e..c4f5a87 100644 --- a/app/src/main/java/com/example/stlink/configs/myControls/NestedScrollableHost.java +++ b/app/src/main/java/com/example/stlink/configs/myControls/NestedScrollableHost.java @@ -45,11 +45,11 @@ public class NestedScrollableHost extends FrameLayout { return (ViewPager2) var2; } - private final View getChild() { + private View getChild() { return this.getChildCount() > 0 ? this.getChildAt(0) : null; } - private final boolean canChildScroll(int orientation, float delta) { + private boolean canChildScroll(int orientation, float delta) { boolean var5 = false; int direction = -((int) Math.signum(delta)); View var10000; @@ -57,11 +57,11 @@ public class NestedScrollableHost extends FrameLayout { switch (orientation) { case 0: var10000 = this.getChild(); - var6 = var10000 != null ? var10000.canScrollHorizontally(direction) : false; + var6 = var10000 != null && var10000.canScrollHorizontally(direction); break; case 1: var10000 = this.getChild(); - var6 = var10000 != null ? var10000.canScrollVertically(direction) : false; + var6 = var10000 != null && var10000.canScrollVertically(direction); break; default: // throw (Throwable)(new IllegalArgumentException()); @@ -76,7 +76,7 @@ public class NestedScrollableHost extends FrameLayout { return super.onInterceptTouchEvent(e); } - private final void handleInterceptTouchEvent(MotionEvent e) { + private void handleInterceptTouchEvent(MotionEvent e) { ViewPager2 var10000 = this.getParentViewPager(); if (var10000 != null) { int orientation = var10000.getOrientation(); @@ -96,11 +96,7 @@ public class NestedScrollableHost extends FrameLayout { if (scaledDx > (float) this.touchSlop || scaledDy > (float) this.touchSlop) { if (isVpHorizontal == scaledDy > scaledDx) { this.getParent().requestDisallowInterceptTouchEvent(false); - } else if (this.canChildScroll(orientation, isVpHorizontal ? dx : dy)) { - this.getParent().requestDisallowInterceptTouchEvent(true); - } else { - this.getParent().requestDisallowInterceptTouchEvent(false); - } + } else this.getParent().requestDisallowInterceptTouchEvent(this.canChildScroll(orientation, isVpHorizontal ? dx : dy)); } } diff --git a/app/src/main/java/com/example/stlink/fragments/CourseSelectedStuFragment.java b/app/src/main/java/com/example/stlink/fragments/CourseSelectedStuFragment.java index 82bc67c..1d0ed41 100644 --- a/app/src/main/java/com/example/stlink/fragments/CourseSelectedStuFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/CourseSelectedStuFragment.java @@ -55,23 +55,14 @@ public class CourseSelectedStuFragment extends Fragment { } private void setClickListener(){ - stu1.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + stu1.setOnClickListener(v -> { - } }); - stu2.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + stu2.setOnClickListener(v -> { - } }); - stu3.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + stu3.setOnClickListener(v -> { - } }); } diff --git a/app/src/main/java/com/example/stlink/fragments/CrsFinishedListFragment.java b/app/src/main/java/com/example/stlink/fragments/CrsFinishedListFragment.java index 572cadc..5d73e2b 100644 --- a/app/src/main/java/com/example/stlink/fragments/CrsFinishedListFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/CrsFinishedListFragment.java @@ -141,12 +141,9 @@ public class CrsFinishedListFragment extends Fragment { @Override public void onItemLongClick(RecyclerView parent, View view, int position) { } }); - srlMyRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { - @Override - public void onRefresh() { - refreshData(); - srlMyRefresh.setRefreshing(false); - } + srlMyRefresh.setOnRefreshListener(() -> { + refreshData(); + srlMyRefresh.setRefreshing(false); }); } diff --git a/app/src/main/java/com/example/stlink/fragments/CrsUnfinishedListFragment.java b/app/src/main/java/com/example/stlink/fragments/CrsUnfinishedListFragment.java index cfd750c..a438199 100644 --- a/app/src/main/java/com/example/stlink/fragments/CrsUnfinishedListFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/CrsUnfinishedListFragment.java @@ -143,12 +143,9 @@ public class CrsUnfinishedListFragment extends Fragment { @Override public void onItemLongClick(RecyclerView parent, View view, int position) { } }); - srlMyRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { - @Override - public void onRefresh() { - refreshData(); - srlMyRefresh.setRefreshing(false); - } + srlMyRefresh.setOnRefreshListener(() -> { + refreshData(); + srlMyRefresh.setRefreshing(false); }); } diff --git a/app/src/main/java/com/example/stlink/fragments/StuClassListFragment.java b/app/src/main/java/com/example/stlink/fragments/StuClassListFragment.java index 7c9b8f6..cddca88 100644 --- a/app/src/main/java/com/example/stlink/fragments/StuClassListFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/StuClassListFragment.java @@ -9,11 +9,9 @@ import android.os.Message; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.Size; import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.Fragment; import androidx.recyclerview.widget.LinearLayoutManager; @@ -32,7 +30,6 @@ import com.example.stlink.model.response.BaseResponse; import com.example.stlink.model.response.data.CourseData; import com.example.stlink.utils.httpUtils.GetUrlParamHttpUtils; import com.google.android.material.badge.BadgeDrawable; -import com.google.android.material.bottomnavigation.BottomNavigationView; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.internal.LinkedTreeMap; @@ -88,6 +85,7 @@ public class StuClassListFragment extends Fragment { + @SuppressLint("NotifyDataSetChanged") public static void refreshData(){ courseIdList = new ArrayList<>(); courseSigns = new ArrayList<>(); @@ -105,19 +103,15 @@ public class StuClassListFragment extends Fragment { getStuSelectedCourseList(); //只有在获取当前学生所选课程的所有id之后才能遍历 - handler = new Handler(new Handler.Callback() { - @SuppressLint("NotifyDataSetChanged") - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == 100){ - getToBeSignList(); - setListener(); - }else if(msg.arg1 == 200){ - adapter.notifyDataSetChanged(); - System.out.println("StuClassListFragment:courseSigns = " + courseSigns.toString()); - } - return false; + handler = new Handler(msg -> { + if(msg.arg1 == 100){ + getToBeSignList(); + setListener(); + }else if(msg.arg1 == 200){ + adapter.notifyDataSetChanged(); + System.out.println("StuClassListFragment:courseSigns = " + courseSigns.toString()); } + return false; }); } @@ -142,12 +136,9 @@ public class StuClassListFragment extends Fragment { } }); - srlMyRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { - @Override - public void onRefresh() { - refreshData(); - srlMyRefresh.setRefreshing(false); - } + srlMyRefresh.setOnRefreshListener(() -> { + refreshData(); + srlMyRefresh.setRefreshing(false); }); } @@ -197,52 +188,49 @@ public class StuClassListFragment extends Fragment { * 获取已选课程待签到内容 */ private static void getToBeSignList(){ - new Thread(new Runnable() { - @Override - public void run() { - for(Long courseId : courseIdList){ - String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + - ModelFieldConstants.USER_ID + "=" + bundle.getLong(ModelFieldConstants.ID) + "&" + - ModelFieldConstants.COURSE_SIGN_STATUS + "=" + 0; - String url = UrlConstants.STUDENT_SIGN_LIST + "?" + urlParam; - new GetUrlParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - if(baseResponse.getData() != null){ - System.out.println("StuClassListFragment:courseDataBaseResponse.getData() = " + baseResponse.getData() + "..............."); - - //解析数据 - Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); - Object obj = baseResponse.getData(); - LinkedTreeMap courseDataMap = null; - if(obj instanceof LinkedTreeMap){ - courseDataMap = (LinkedTreeMap) obj; - } - //将LinkedTreeMap中字段映射到CourseData类中 - //array:学生获取所选课程签到列表返回实体 - String jsonString = gson.toJson(courseDataMap); - CourseData courseData = gson.fromJson(jsonString, new TypeToken>() {}.getType()); - for(CourseSign courseSign : courseData.getRecords()){ - courseSign.setCourseId(courseId); - } - int total = courseData.getTotal(); - //设置角标 - mBadge.setVisible(true); - mBadge.setNumber(total); - System.out.println("StuClassListFragment:size = " + mBadge.getNumber() + "....................."); - System.out.println(mBadge.isVisible()); - if(courseData.getRecords().size() != 0){ - courseSigns.addAll(courseData.getRecords()); - Message message = new Message(); - message.arg1 = 200; - handler.sendMessage(message); - } + new Thread(() -> { + for(Long courseId : courseIdList){ + String urlParam = ModelFieldConstants.COURSE_ID + "=" + courseId + "&" + + ModelFieldConstants.USER_ID + "=" + bundle.getLong(ModelFieldConstants.ID) + "&" + + ModelFieldConstants.COURSE_SIGN_STATUS + "=" + 0; + String url = UrlConstants.STUDENT_SIGN_LIST + "?" + urlParam; + new GetUrlParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + if(baseResponse.getData() != null){ + System.out.println("StuClassListFragment:courseDataBaseResponse.getData() = " + baseResponse.getData() + "..............."); + + //解析数据 + Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); + Object obj = baseResponse.getData(); + LinkedTreeMap courseDataMap = null; + if(obj instanceof LinkedTreeMap){ + courseDataMap = (LinkedTreeMap) obj; + } + //将LinkedTreeMap中字段映射到CourseData类中 + //array:学生获取所选课程签到列表返回实体 + String jsonString = gson.toJson(courseDataMap); + CourseData courseData = gson.fromJson(jsonString, new TypeToken>() {}.getType()); + for(CourseSign courseSign : courseData.getRecords()){ + courseSign.setCourseId(courseId); + } + int total = courseData.getTotal(); + //设置角标 + mBadge.setVisible(true); + mBadge.setNumber(total); + System.out.println("StuClassListFragment:size = " + mBadge.getNumber() + "....................."); + System.out.println(mBadge.isVisible()); + if(courseData.getRecords().size() != 0){ + courseSigns.addAll(courseData.getRecords()); + Message message = new Message(); + message.arg1 = 200; + handler.sendMessage(message); } } - @Override - public void failedMethod(BaseResponse baseResponse) { } - }.getConnect(url); - } + } + @Override + public void failedMethod(BaseResponse baseResponse) { } + }.getConnect(url); } }).start(); } diff --git a/app/src/main/java/com/example/stlink/fragments/StuHomeFragment.java b/app/src/main/java/com/example/stlink/fragments/StuHomeFragment.java index b009179..00464cf 100644 --- a/app/src/main/java/com/example/stlink/fragments/StuHomeFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/StuHomeFragment.java @@ -10,7 +10,6 @@ import android.os.Message; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -95,13 +94,10 @@ public class StuHomeFragment extends Fragment { FloatDragPopupWindow floatDragPopupWindow = new FloatDragPopupWindow.Builder(mAppCompatActivity) .setContentView(faButton) .setPosition(0, 600) - .setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, AllCourses.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - mAppCompatActivity.startActivity(intent); - } + .setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, AllCourses.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + mAppCompatActivity.startActivity(intent); }) .build(); // 显示 FloatDragPopupWindow @@ -118,31 +114,19 @@ public class StuHomeFragment extends Fragment { */ private static void setListener(View view){ //口令输入 TODO - codeButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + codeButton.setOnClickListener(v -> { - } }); //文本输入 TODO - wordButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + wordButton.setOnClickListener(v -> { - } }); - faButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { + faButton.setOnClickListener(v -> { - } }); - srlMyRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { - @Override - public void onRefresh() { - refreshData(); - srlMyRefresh.setRefreshing(false); - } + srlMyRefresh.setOnRefreshListener(() -> { + refreshData(); + srlMyRefresh.setRefreshing(false); }); } diff --git a/app/src/main/java/com/example/stlink/fragments/TeaCourseListFragment.java b/app/src/main/java/com/example/stlink/fragments/TeaCourseListFragment.java index 30fa6ad..d6326fd 100644 --- a/app/src/main/java/com/example/stlink/fragments/TeaCourseListFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/TeaCourseListFragment.java @@ -95,15 +95,12 @@ public class TeaCourseListFragment extends Fragment { */ private void setClickListener(){ //点击刷新页面 - ftBtRefresh.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - int position = viewPager2.getCurrentItem(); - if (position == 0){ - CrsUnfinishedListFragment.refreshData(); - }else{ - CrsFinishedListFragment.refreshData(); - } + ftBtRefresh.setOnClickListener(v -> { + int position = viewPager2.getCurrentItem(); + if (position == 0){ + CrsUnfinishedListFragment.refreshData(); + }else{ + CrsFinishedListFragment.refreshData(); } }); } diff --git a/app/src/main/java/com/example/stlink/fragments/TeaHomeFragment.java b/app/src/main/java/com/example/stlink/fragments/TeaHomeFragment.java index 064045f..0939d2a 100644 --- a/app/src/main/java/com/example/stlink/fragments/TeaHomeFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/TeaHomeFragment.java @@ -1,6 +1,5 @@ package com.example.stlink.fragments; -import android.annotation.SuppressLint; import android.app.Activity; import android.content.Intent; import android.os.Bundle; @@ -92,52 +91,37 @@ public class TeaHomeFragment extends Fragment{ */ private void setClickListener(){ //查看签到 - btCodeCheck.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - bundle = mAppCompatActivity.getIntent().getExtras(); - String nowSignCourseName = bundle.getString(ModelFieldConstants.NOW_SIGN_COURSE_NAME); - if(nowSignCourseName != null){ - System.out.println("nowSignCourseName = " + nowSignCourseName + "......................"); - Intent intent = new Intent(mAppCompatActivity, CheckCourseSign.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - startActivity(intent); - }else{ - Intent intent = new Intent(mAppCompatActivity, ChooseCourse.class); - bundle.putInt(ModelFieldConstants.COURSE_CHOOSE_SELECT, 1); - intent.putExtras(bundle); - startActivity(intent); - } + btCodeCheck.setOnClickListener(v -> { + bundle = mAppCompatActivity.getIntent().getExtras(); + String nowSignCourseName = bundle.getString(ModelFieldConstants.NOW_SIGN_COURSE_NAME); + if(nowSignCourseName != null){ + System.out.println("nowSignCourseName = " + nowSignCourseName + "......................"); + Intent intent = new Intent(mAppCompatActivity, CheckCourseSign.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + startActivity(intent); + }else{ + Intent intent = new Intent(mAppCompatActivity, ChooseCourse.class); + bundle.putInt(ModelFieldConstants.COURSE_CHOOSE_SELECT, 1); + intent.putExtras(bundle); + startActivity(intent); } }); //创建签到 - btWordCheck.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, CreateSign.class); - bundle = mAppCompatActivity.getIntent().getExtras(); - bundle.putInt(ModelFieldConstants.COURSE_CHOOSE_SELECT, 0); - intent.putExtras(bundle); - intentActivityResultLauncher.launch(intent); - } + btWordCheck.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, CreateSign.class); + bundle = mAppCompatActivity.getIntent().getExtras(); + bundle.putInt(ModelFieldConstants.COURSE_CHOOSE_SELECT, 0); + intent.putExtras(bundle); + intentActivityResultLauncher.launch(intent); }); //创建班级 - btCreateClass.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, CreateCourse.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - intentActivityResultLauncher.launch(intent); - } + btCreateClass.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, CreateCourse.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + intentActivityResultLauncher.launch(intent); }); //管理班级 - btManageClass.setOnClickListener(new View.OnClickListener() { - @SuppressLint("ResourceType") - @Override - public void onClick(View v) { - vp2.setCurrentItem(1); - } - }); + btManageClass.setOnClickListener(v -> vp2.setCurrentItem(1)); } } diff --git a/app/src/main/java/com/example/stlink/fragments/UserInfoFragment.java b/app/src/main/java/com/example/stlink/fragments/UserInfoFragment.java index a61851b..d7e7557 100644 --- a/app/src/main/java/com/example/stlink/fragments/UserInfoFragment.java +++ b/app/src/main/java/com/example/stlink/fragments/UserInfoFragment.java @@ -70,7 +70,7 @@ public class UserInfoFragment extends Fragment { /** * 获取UserInfoFragment实例 - * @param str + * @param str 说明,,占位 * @return 返回UserInfoFragment实例 */ public static UserInfoFragment newInstance(String str, AppCompatActivity appCompatActivity){ @@ -122,7 +122,7 @@ public class UserInfoFragment extends Fragment { Glide.with(mAppCompatActivity) .load(avatar) //添加圆角 - .apply(new RequestOptions().bitmapTransform(new RoundedCorners(10))) + .apply(RequestOptions.bitmapTransform(new RoundedCorners(10))) .into(ivHeadImg); } if(userName != null){ @@ -136,55 +136,37 @@ public class UserInfoFragment extends Fragment { public static void initOnClickListener(){ - btSetting.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, UserInfoSetting.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - intentActivityResultLauncher.launch(intent); - } + btSetting.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, UserInfoSetting.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + intentActivityResultLauncher.launch(intent); }); //关于 - btAbout.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, UserInfoAbout.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - intentActivityResultLauncher.launch(intent); - } + btAbout.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, UserInfoAbout.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + intentActivityResultLauncher.launch(intent); }); //分享 - btShare.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - shareHandler = new Handler(new Handler.Callback() { - @Override - public boolean handleMessage(@NonNull Message msg) { - if(msg.arg1 == 1){ - Intent shareIntent = (Intent) msg.obj; - intentActivityResultLauncher.launch(Intent.createChooser(shareIntent, "分享apk")); - } - return false; - } - }); - shareApk(); - } + btShare.setOnClickListener(v -> { + shareHandler = new Handler(msg -> { + if(msg.arg1 == 1){ + Intent shareIntent = (Intent) msg.obj; + intentActivityResultLauncher.launch(Intent.createChooser(shareIntent, "分享apk")); + } + return false; + }); + shareApk(); }); - btRecord.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, UserInfoRecord.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - intentActivityResultLauncher.launch(intent); - } + btRecord.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, UserInfoRecord.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + intentActivityResultLauncher.launch(intent); }); - clBaseInfo.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(mAppCompatActivity, UserInfoDetail.class); - intent.putExtras(mAppCompatActivity.getIntent().getExtras()); - intentActivityResultLauncher.launch(intent); - } + clBaseInfo.setOnClickListener(v -> { + Intent intent = new Intent(mAppCompatActivity, UserInfoDetail.class); + intent.putExtras(mAppCompatActivity.getIntent().getExtras()); + intentActivityResultLauncher.launch(intent); }); } @@ -198,15 +180,8 @@ public class UserInfoFragment extends Fragment { File apkFile = new File(applicationInfo.sourceDir); Intent shareIntent = new Intent(); + // 设置该意图对象作为活动发送 shareIntent.setAction(Intent.ACTION_SEND); -// // 比如发送文本形式的数据内容 -// // 指定发送的内容 -// shareIntent.putExtra(Intent.EXTRA_TEXT, "S.T.Link......"); -// // 指定发送内容的类型 -// shareIntent.setType("text/plain"); -// -// intentActivityResultLauncher.launch(Intent.createChooser(shareIntent, "分享")); - shareIntent.setType("*/*"); // 给目标应用一个临时的读授权,如果要写权限,则是FLAG_GRANT_WRITE_URI_PERMISSION shareIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); diff --git a/app/src/main/java/com/example/stlink/model/domain/User.java b/app/src/main/java/com/example/stlink/model/domain/User.java index a35efa9..36e13ac 100644 --- a/app/src/main/java/com/example/stlink/model/domain/User.java +++ b/app/src/main/java/com/example/stlink/model/domain/User.java @@ -2,6 +2,8 @@ package com.example.stlink.model.domain; import android.content.Intent; +import androidx.annotation.NonNull; + import java.util.Date; public class User { @@ -160,6 +162,7 @@ public class User { this.userName = userName; } + @NonNull @Override public String toString() { return "User{" + diff --git a/app/src/main/java/com/example/stlink/model/request/AllCourseRequest.java b/app/src/main/java/com/example/stlink/model/request/AllCourseRequest.java index 8f3ce73..a5d205b 100644 --- a/app/src/main/java/com/example/stlink/model/request/AllCourseRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/AllCourseRequest.java @@ -1,5 +1,7 @@ package com.example.stlink.model.request; +import androidx.annotation.NonNull; + import com.example.stlink.model.constants.UrlConstants; public class AllCourseRequest { @@ -24,6 +26,7 @@ public class AllCourseRequest { this.size = size; } + @NonNull @Override public String toString() { String retValue; diff --git a/app/src/main/java/com/example/stlink/model/request/CourseCreateRequest.java b/app/src/main/java/com/example/stlink/model/request/CourseCreateRequest.java index d817b2f..4dec7f4 100644 --- a/app/src/main/java/com/example/stlink/model/request/CourseCreateRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/CourseCreateRequest.java @@ -1,6 +1,6 @@ package com.example.stlink.model.request; -import com.google.gson.internal.bind.util.ISO8601Utils; +import androidx.annotation.NonNull; public class CourseCreateRequest { @@ -124,6 +124,7 @@ public class CourseCreateRequest { this.userName = userName; } + @NonNull @Override public String toString() { return "CourseCreateRequest{" + diff --git a/app/src/main/java/com/example/stlink/model/request/CourseCreateSignRequest.java b/app/src/main/java/com/example/stlink/model/request/CourseCreateSignRequest.java index 0543d02..ef2dbb8 100644 --- a/app/src/main/java/com/example/stlink/model/request/CourseCreateSignRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/CourseCreateSignRequest.java @@ -1,5 +1,7 @@ package com.example.stlink.model.request; +import androidx.annotation.NonNull; + import java.io.Serializable; /** @@ -111,6 +113,7 @@ public class CourseCreateSignRequest implements Serializable { this.userId = userId; } + @NonNull @Override public String toString() { return "CourseCreateSignRequest{" + diff --git a/app/src/main/java/com/example/stlink/model/request/StuSignRequest.java b/app/src/main/java/com/example/stlink/model/request/StuSignRequest.java index b6af801..bfb865d 100644 --- a/app/src/main/java/com/example/stlink/model/request/StuSignRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/StuSignRequest.java @@ -1,6 +1,6 @@ package com.example.stlink.model.request; -import android.content.Intent; +import androidx.annotation.NonNull; public class StuSignRequest { @@ -43,6 +43,7 @@ public class StuSignRequest { this.userSignId = userSignId; } + @NonNull @Override public String toString() { return "StuSignRequest{" + diff --git a/app/src/main/java/com/example/stlink/model/request/UserModifyRequest.java b/app/src/main/java/com/example/stlink/model/request/UserModifyRequest.java index 2e2fdaf..ca0b6a4 100644 --- a/app/src/main/java/com/example/stlink/model/request/UserModifyRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/UserModifyRequest.java @@ -1,5 +1,7 @@ package com.example.stlink.model.request; +import androidx.annotation.NonNull; + public class UserModifyRequest { /** @@ -133,6 +135,7 @@ public class UserModifyRequest { this.userName = userName; } + @NonNull @Override public String toString() { return "UserModifyRequest{" + diff --git a/app/src/main/java/com/example/stlink/model/request/UserRegisterRequest.java b/app/src/main/java/com/example/stlink/model/request/UserRegisterRequest.java index 352f1a9..95b2bea 100644 --- a/app/src/main/java/com/example/stlink/model/request/UserRegisterRequest.java +++ b/app/src/main/java/com/example/stlink/model/request/UserRegisterRequest.java @@ -1,5 +1,7 @@ package com.example.stlink.model.request; +import androidx.annotation.NonNull; + public class UserRegisterRequest { /** @@ -41,6 +43,7 @@ public class UserRegisterRequest { this.userName = userName; } + @NonNull @Override public String toString() { return "UserRegisterRequest{" + diff --git a/app/src/main/java/com/example/stlink/model/response/BaseResponse.java b/app/src/main/java/com/example/stlink/model/response/BaseResponse.java index b8e7393..a81184c 100644 --- a/app/src/main/java/com/example/stlink/model/response/BaseResponse.java +++ b/app/src/main/java/com/example/stlink/model/response/BaseResponse.java @@ -1,5 +1,7 @@ package com.example.stlink.model.response; +import androidx.annotation.NonNull; + public class BaseResponse { private int code; @@ -34,6 +36,7 @@ public class BaseResponse { this.data = data; } + @NonNull @Override public String toString() { return "BaseResponse{" + diff --git a/app/src/main/java/com/example/stlink/model/response/data/CourseData.java b/app/src/main/java/com/example/stlink/model/response/data/CourseData.java index 27d4531..8661a92 100644 --- a/app/src/main/java/com/example/stlink/model/response/data/CourseData.java +++ b/app/src/main/java/com/example/stlink/model/response/data/CourseData.java @@ -1,8 +1,7 @@ package com.example.stlink.model.response.data; -import com.example.stlink.model.domain.Course; +import androidx.annotation.NonNull; -import java.util.Arrays; import java.util.List; public class CourseData { @@ -47,6 +46,7 @@ public class CourseData { this.total = total; } + @NonNull @Override public String toString() { return "CourseData{" + diff --git a/app/src/main/java/com/example/stlink/model/response/data/CourseDetailData.java b/app/src/main/java/com/example/stlink/model/response/data/CourseDetailData.java index 20c43cd..64faa6f 100644 --- a/app/src/main/java/com/example/stlink/model/response/data/CourseDetailData.java +++ b/app/src/main/java/com/example/stlink/model/response/data/CourseDetailData.java @@ -1,6 +1,6 @@ package com.example.stlink.model.response.data; -import com.google.gson.annotations.SerializedName; +import androidx.annotation.NonNull; import java.io.Serializable; @@ -151,6 +151,7 @@ public class CourseDetailData implements Serializable { this.userName = userName; } + @NonNull @Override public String toString() { return "CourseDetailData{" + diff --git a/app/src/main/java/com/example/stlink/model/response/data/CourseSignMsg.java b/app/src/main/java/com/example/stlink/model/response/data/CourseSignMsg.java index fa06459..5245762 100644 --- a/app/src/main/java/com/example/stlink/model/response/data/CourseSignMsg.java +++ b/app/src/main/java/com/example/stlink/model/response/data/CourseSignMsg.java @@ -1,5 +1,7 @@ package com.example.stlink.model.response.data; +import androidx.annotation.NonNull; + public class CourseSignMsg { /** @@ -41,6 +43,7 @@ public class CourseSignMsg { this.courseNum = courseNum; } + @NonNull @Override public String toString() { return "CourseSignMsg{" + diff --git a/app/src/main/java/com/example/stlink/utils/CommonUtils.java b/app/src/main/java/com/example/stlink/utils/CommonUtils.java index 62d70f0..4e552ca 100644 --- a/app/src/main/java/com/example/stlink/utils/CommonUtils.java +++ b/app/src/main/java/com/example/stlink/utils/CommonUtils.java @@ -16,7 +16,6 @@ import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.TimeZone; @@ -241,7 +240,7 @@ public class CommonUtils { //需要加八个格林威治时间 simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT+8:00")); //如果它本来就是long类型的,则不用写这一步 - long lt = new Long(s); + long lt = Long.parseLong(s); Date date = new Date(lt); res = simpleDateFormat.format(date); return res; diff --git a/app/src/main/java/com/example/stlink/utils/MyLocationListener.java b/app/src/main/java/com/example/stlink/utils/MyLocationListener.java index f30de2b..cdd00f6 100644 --- a/app/src/main/java/com/example/stlink/utils/MyLocationListener.java +++ b/app/src/main/java/com/example/stlink/utils/MyLocationListener.java @@ -2,7 +2,6 @@ package com.example.stlink.utils; import android.os.Handler; import android.os.Message; -import android.widget.TextView; import com.baidu.location.BDAbstractLocationListener; import com.baidu.location.BDLocation; diff --git a/app/src/main/java/com/example/stlink/utils/QRCodeUtil.java b/app/src/main/java/com/example/stlink/utils/QRCodeUtil.java index 01f82ad..d11bb4d 100644 --- a/app/src/main/java/com/example/stlink/utils/QRCodeUtil.java +++ b/app/src/main/java/com/example/stlink/utils/QRCodeUtil.java @@ -2,7 +2,6 @@ package com.example.stlink.utils; import android.graphics.Bitmap; import android.graphics.Canvas; -import android.media.Image; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/CheckCourseSignUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/CheckCourseSignUtil.java index e509818..dbf6930 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/CheckCourseSignUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/CheckCourseSignUtil.java @@ -48,18 +48,10 @@ public class CheckCourseSignUtil { */ public void initPage(List list){ // 设置点击触发 - tvSignList.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(0); - } - }); - tvCourseSignLeave.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(2); - } - }); + tvSignList.setOnClickListener(v -> + viewPager2.setCurrentItem(0)); + tvCourseSignLeave.setOnClickListener(v -> + viewPager2.setCurrentItem(2)); // 注册页面改变的回调函数 viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { // 声明页面切换后的回调函数 @Override diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/CourseDetailUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/CourseDetailUtil.java index 3cc1429..7c292b6 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/CourseDetailUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/CourseDetailUtil.java @@ -1,6 +1,5 @@ package com.example.stlink.utils.activityUtil; -import android.view.View; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; @@ -45,24 +44,12 @@ public class CourseDetailUtil { */ public void initPage(List list){ // 设置点击触发 - tvCourseIntro.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(0); - } - }); - tvCourseClassList.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(1); - } - }); - tvCourseSelectedStu.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(2); - } - }); + tvCourseIntro.setOnClickListener(v -> + viewPager2.setCurrentItem(0)); + tvCourseClassList.setOnClickListener(v -> + viewPager2.setCurrentItem(1)); + tvCourseSelectedStu.setOnClickListener(v -> + viewPager2.setCurrentItem(2)); // 注册页面改变的回调函数 viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { // 声明页面切换后的回调函数 @Override diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/CreateCourseUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/CreateCourseUtil.java index e6ed22e..5964d8f 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/CreateCourseUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/CreateCourseUtil.java @@ -15,27 +15,24 @@ public class CreateCourseUtil { public static void createCourse(AppCompatActivity appCompatActivity, CourseCreateRequest courseCreateRequest, Handler handler, @Nullable String url) { - new Thread(new Runnable() { - @Override - public void run() { - //fastJson将对象转换为JSON字符串 - String json = JSON.toJSONString(courseCreateRequest); - - new PostBodyParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - Message message = new Message(); - message.obj = "success"; - handler.sendMessage(message); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - message.obj = baseResponse.getMsg(); - handler .sendMessage(message); - } - }.postConnect(url, json); - } + new Thread(() -> { + //fastJson将对象转换为JSON字符串 + String json = JSON.toJSONString(courseCreateRequest); + + new PostBodyParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = "success"; + handler.sendMessage(message); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = baseResponse.getMsg(); + handler .sendMessage(message); + } + }.postConnect(url, json); }).start(); } diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/LoginUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/LoginUtil.java index f139a62..00bdf60 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/LoginUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/LoginUtil.java @@ -117,49 +117,46 @@ public class LoginUtil { * 登录请求 */ private void loginRequest(){ - new Thread(new Runnable() { - @Override - public void run() { - // 密码要进行MD5加密 - String url = UrlConstants.USER_LOGIN + "?password=" + CommonUtils.MD5(pwd) + "&username=" + userName; + new Thread(() -> { + // 密码要进行MD5加密 + String url = UrlConstants.USER_LOGIN + "?password=" + CommonUtils.MD5(pwd) + "&username=" + userName; - new PostBodyParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { + new PostBodyParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { - //解析数据 - Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); - Object obj = baseResponse.getData(); - LinkedTreeMap userMap = null; - if(obj instanceof LinkedTreeMap){ - userMap = (LinkedTreeMap) obj; - } - //将LinkedTreeMap中字段映射到User类中 - User user = new User(); - String jsonString = gson.toJson(userMap); - user = gson.fromJson(jsonString, User.class); - System.out.println("user = " + user + ".................."); - //身份校验 - if(roleId.equals(user.getRoleId())){ - Intent intent = new Intent(loginActivity, MainActivity.class); - bundle = loginActivity.getIntent().getExtras(); - LOGIN_UTIL.saveUser(user); - intent.putExtras(bundle); - loginActivity.startActivity(intent); - }else{ - Message message = new Message(); - message.obj = "登录失败"; - handler.sendMessage(message); - } + //解析数据 + Gson gson = new GsonBuilder().enableComplexMapKeySerialization().create(); + Object obj = baseResponse.getData(); + LinkedTreeMap userMap = null; + if(obj instanceof LinkedTreeMap){ + userMap = (LinkedTreeMap) obj; } - @Override - public void failedMethod(BaseResponse baseResponse) { + //将LinkedTreeMap中字段映射到User类中 + User user = new User(); + String jsonString = gson.toJson(userMap); + user = gson.fromJson(jsonString, User.class); + System.out.println("user = " + user + ".................."); + //身份校验 + if(roleId.equals(user.getRoleId())){ + Intent intent = new Intent(loginActivity, MainActivity.class); + bundle = loginActivity.getIntent().getExtras(); + LOGIN_UTIL.saveUser(user); + intent.putExtras(bundle); + loginActivity.startActivity(intent); + }else{ Message message = new Message(); - message.obj = baseResponse.getMsg(); - handler .sendMessage(message); + message.obj = "登录失败"; + handler.sendMessage(message); } - }.postConnect(url, ""); - } + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = baseResponse.getMsg(); + handler .sendMessage(message); + } + }.postConnect(url, ""); }).start(); } diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/MainActivityUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/MainActivityUtil.java index 3592756..e2540d1 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/MainActivityUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/MainActivityUtil.java @@ -144,9 +144,6 @@ public class MainActivityUtil { Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); appCompatActivity.startActivity(intent); - //退出程序代码 -// finish(); //结束程序 -// System.exit(0); //退出程序 } } diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/RegisterUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/RegisterUtil.java index b3794c1..f09f562 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/RegisterUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/RegisterUtil.java @@ -101,37 +101,34 @@ public class RegisterUtil { */ private void registerRequest(){ - new Thread(new Runnable() { - @Override - public void run() { - UserRegisterRequest requestObj = new UserRegisterRequest(); - //fastJson将对象转换为JSON字符串 - requestObj.setUserName(userName); - //即将云端发送的密码要经过MD5加密,也就是异或运算和MD5的双重加密 - requestObj.setPassword(CommonUtils.MD5(pwd)); - requestObj.setRoleId( (Integer) registerActivity.getIntent().getExtras().get(ModelFieldConstants.ROLE_ID)); - System.out.println( "requestObj : " + requestObj.toString() + ".............................."); - String json = JSON.toJSONString(requestObj); - String url = UrlConstants.USER_REGISTER; + new Thread(() -> { + UserRegisterRequest requestObj = new UserRegisterRequest(); + //fastJson将对象转换为JSON字符串 + requestObj.setUserName(userName); + //即将云端发送的密码要经过MD5加密,也就是异或运算和MD5的双重加密 + requestObj.setPassword(CommonUtils.MD5(pwd)); + requestObj.setRoleId( (Integer) registerActivity.getIntent().getExtras().get(ModelFieldConstants.ROLE_ID)); + System.out.println( "requestObj : " + requestObj + ".............................."); + String json = JSON.toJSONString(requestObj); + String url = UrlConstants.USER_REGISTER; - new PostBodyParamHttpUtils() { - @Override - public void nextMethod(BaseResponse baseResponse) { - //保存在本地的密码只是进行了简单的异或运算 - CommonUtils.localSave(registerActivity, userName, pwdFirst, true); - Intent intent = new Intent(registerActivity, LoginActivity.class); - //将bundle中的数据再次传入新的intent中 - intent.putExtras(registerActivity.getIntent().getExtras()); - registerActivity.startActivity(intent); - } - @Override - public void failedMethod(BaseResponse baseResponse) { - Message message = new Message(); - message.obj = baseResponse.getMsg(); - handler .sendMessage(message); - } - }.postConnect(url, json); - } + new PostBodyParamHttpUtils() { + @Override + public void nextMethod(BaseResponse baseResponse) { + //保存在本地的密码只是进行了简单的异或运算 + CommonUtils.localSave(registerActivity, userName, pwdFirst, true); + Intent intent = new Intent(registerActivity, LoginActivity.class); + //将bundle中的数据再次传入新的intent中 + intent.putExtras(registerActivity.getIntent().getExtras()); + registerActivity.startActivity(intent); + } + @Override + public void failedMethod(BaseResponse baseResponse) { + Message message = new Message(); + message.obj = baseResponse.getMsg(); + handler .sendMessage(message); + } + }.postConnect(url, json); }).start(); } } diff --git a/app/src/main/java/com/example/stlink/utils/activityUtil/TeaClassListUtil.java b/app/src/main/java/com/example/stlink/utils/activityUtil/TeaClassListUtil.java index 534437f..d1c2482 100644 --- a/app/src/main/java/com/example/stlink/utils/activityUtil/TeaClassListUtil.java +++ b/app/src/main/java/com/example/stlink/utils/activityUtil/TeaClassListUtil.java @@ -44,19 +44,11 @@ public class TeaClassListUtil { */ public void initPage(List list){ // 设置点击触发 - tvUnfinishedCourse.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(0); - } - }); + tvUnfinishedCourse.setOnClickListener(v -> + viewPager2.setCurrentItem(0)); System.out.println(tvUnfinishedCourse.hasOnClickListeners()); - tvFinishedCourse.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - viewPager2.setCurrentItem(1); - } - }); + tvFinishedCourse.setOnClickListener(v -> + viewPager2.setCurrentItem(1)); // 注册页面改变的回调函数 viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { // 声明页面切换后的回调函数 @Override diff --git a/app/src/main/java/com/example/stlink/utils/httpUtils/DeleteUrlParamHttpUtils.java b/app/src/main/java/com/example/stlink/utils/httpUtils/DeleteUrlParamHttpUtils.java index 0563ff9..6558edc 100644 --- a/app/src/main/java/com/example/stlink/utils/httpUtils/DeleteUrlParamHttpUtils.java +++ b/app/src/main/java/com/example/stlink/utils/httpUtils/DeleteUrlParamHttpUtils.java @@ -59,17 +59,21 @@ public abstract class DeleteUrlParamHttpUtils { * @param e 异常 */ @Override - public void onFailure(Call call, IOException e) { + public void onFailure(@NonNull Call call, IOException e) { //Log.e(TAG, "Failed to connect server!!!"); e.printStackTrace(); } @Override public void onResponse(@NonNull Call call, Response response) throws IOException { - final String body = response.body().string(); + String body = null; + if(response.body() != null){ + body = response.body().string(); + } Gson gson = new Gson(); Type jsonType = new TypeToken>() {}.getType(); BaseResponse baseResponse = gson.fromJson(body, jsonType); + assert baseResponse != null; int code = baseResponse.getCode(); //页面请求成功 if(response.code() == 200){ diff --git a/app/src/main/java/com/example/stlink/utils/httpUtils/GetUrlParamHttpUtils.java b/app/src/main/java/com/example/stlink/utils/httpUtils/GetUrlParamHttpUtils.java index 1831725..b72e004 100644 --- a/app/src/main/java/com/example/stlink/utils/httpUtils/GetUrlParamHttpUtils.java +++ b/app/src/main/java/com/example/stlink/utils/httpUtils/GetUrlParamHttpUtils.java @@ -14,7 +14,6 @@ import java.lang.reflect.Type; import okhttp3.Call; import okhttp3.Callback; -import okhttp3.Credentials; import okhttp3.Headers; import okhttp3.OkHttpClient; import okhttp3.Request; @@ -60,13 +59,14 @@ public abstract class GetUrlParamHttpUtils { * @param e 异常 */ @Override - public void onFailure(Call call, IOException e) { + public void onFailure(@NonNull Call call, IOException e) { //Log.e(TAG, "Failed to connect server!!!"); e.printStackTrace(); } @Override public void onResponse(@NonNull Call call, Response response) throws IOException { + assert response.body() != null; final String body = response.body().string(); Gson gson = new Gson(); Type jsonType = new TypeToken>() {}.getType(); diff --git a/app/src/main/java/com/example/stlink/utils/httpUtils/PostBodyParamHttpUtils.java b/app/src/main/java/com/example/stlink/utils/httpUtils/PostBodyParamHttpUtils.java index a982c48..80540b3 100644 --- a/app/src/main/java/com/example/stlink/utils/httpUtils/PostBodyParamHttpUtils.java +++ b/app/src/main/java/com/example/stlink/utils/httpUtils/PostBodyParamHttpUtils.java @@ -15,7 +15,6 @@ import java.lang.reflect.Type; import okhttp3.Call; import okhttp3.Callback; -import okhttp3.Credentials; import okhttp3.Headers; import okhttp3.OkHttpClient; import okhttp3.Request; @@ -74,13 +73,14 @@ public abstract class PostBodyParamHttpUtils { * @param e 异常 */ @Override - public void onFailure(Call call, IOException e) { + public void onFailure(@NonNull Call call, IOException e) { //Log.e(TAG, "Failed to connect server!!!"); e.printStackTrace(); } @Override public void onResponse(@NonNull Call call, Response response) throws IOException { + assert response.body() != null; final String body = response.body().string(); Gson gson = new Gson(); Type jsonType = new TypeToken>() {}.getType(); @@ -115,7 +115,7 @@ public abstract class PostBodyParamHttpUtils { System.out.println("response:connect...error..................."); System.out.println("response:code = " + response.code()); System.out.println("response: " + response); - System.out.println("baseResponse: " + baseResponse.toString()); + System.out.println("baseResponse: " + baseResponse); } } diff --git a/app/src/main/java/com/example/stlink/utils/httpUtils/PostFileHttpUtils.java b/app/src/main/java/com/example/stlink/utils/httpUtils/PostFileHttpUtils.java index 6961249..bceb970 100644 --- a/app/src/main/java/com/example/stlink/utils/httpUtils/PostFileHttpUtils.java +++ b/app/src/main/java/com/example/stlink/utils/httpUtils/PostFileHttpUtils.java @@ -70,14 +70,14 @@ public abstract class PostFileHttpUtils { * @param e 异常 */ @Override - public void onFailure(Call call, IOException e) { + public void onFailure(@NonNull Call call, IOException e) { Log.e("TAGTAG", "onFailure,图片上传失败:" + e.getMessage()); e.printStackTrace(); } @Override public void onResponse(@NonNull Call call, Response response) throws IOException { - + assert response.body() != null; final String body = response.body().string(); Log.e("TAGTAG", "onResponse,图片上传成功:" + body); Gson gson = new Gson();