From 18f7e176f2d0c34855bbdac8559c34610b25c570 Mon Sep 17 00:00:00 2001
From: Fan Yiwen <1225674957@qq.com>
Date: Sun, 10 Apr 2022 19:00:34 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../.idea/deploymentTargetDropDown.xml | 2 +-
.../com/example/logistics/dao/goodDao.java | 4 +-
.../example/logistics/dao/operationDao.java | 57 +++++++++++++++++++
.../example/logistics/entity/Operation.java | 47 +++++++++++++++
.../example/logistics/ui/MainActivity.java | 3 +
.../example/logistics/ui/MenuActivity.java | 27 ++++++++-
.../com/example/logistics/ui/MyFragment2.java | 34 ++++++++---
src/Logistics/gradle.properties | 3 +-
8 files changed, 165 insertions(+), 12 deletions(-)
create mode 100644 src/Logistics/app/src/main/java/com/example/logistics/dao/operationDao.java
create mode 100644 src/Logistics/app/src/main/java/com/example/logistics/entity/Operation.java
diff --git a/src/Logistics/.idea/deploymentTargetDropDown.xml b/src/Logistics/.idea/deploymentTargetDropDown.xml
index ccd930c..0b9ec16 100644
--- a/src/Logistics/.idea/deploymentTargetDropDown.xml
+++ b/src/Logistics/.idea/deploymentTargetDropDown.xml
@@ -12,6 +12,6 @@
-
+
\ No newline at end of file
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/dao/goodDao.java b/src/Logistics/app/src/main/java/com/example/logistics/dao/goodDao.java
index e3a2183..2fc2ece 100644
--- a/src/Logistics/app/src/main/java/com/example/logistics/dao/goodDao.java
+++ b/src/Logistics/app/src/main/java/com/example/logistics/dao/goodDao.java
@@ -48,7 +48,9 @@ public class goodDao {
StringBuilder s = new StringBuilder();
for(String key:map.keySet()){
if(key.equals("phonenum")){
- if(phonenum.equals(map.get(key))){
+ String strphone = String.valueOf(map.get(key));
+ Log.d("abc", strphone);
+ if(phonenum.equals(strphone.substring(7,11))){
msg = 1; //phonenum correct
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("快件位置");
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/dao/operationDao.java b/src/Logistics/app/src/main/java/com/example/logistics/dao/operationDao.java
new file mode 100644
index 0000000..ef55077
--- /dev/null
+++ b/src/Logistics/app/src/main/java/com/example/logistics/dao/operationDao.java
@@ -0,0 +1,57 @@
+package com.example.logistics.dao;
+
+import android.util.Log;
+
+import com.example.logistics.entity.User;
+import com.example.logistics.tools.DBOpenHelper;
+import com.example.logistics.tools.MD5Utils;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+
+public class operationDao {
+ private static final String TAG = "operationDao";
+
+ public boolean add(String pickupcode, String phonenum){
+ HashMap map = new HashMap<>();
+
+ Connection connection = DBOpenHelper.getConn();
+ try{
+ SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
+
+ Date date = new Date();
+
+ String time = format1.format(date);
+
+ String sql = "insert into operations(pickupcode, phonenum, time) values (?,?,?)";
+
+ if(connection != null){
+ PreparedStatement ps = connection.prepareStatement(sql);
+
+ if(ps != null){
+ ps.setString(1, pickupcode);
+ ps.setString(2, phonenum);
+ ps.setString(3, time);
+
+ int rs = ps.executeUpdate();
+ if(rs > 0){
+ return true;
+ }else{
+ return false;
+ }
+ }else{
+ return false;
+ }
+ }else{
+ return false;
+ }
+ }catch(Exception e){
+ e.printStackTrace();
+ Log.e(TAG, "异常 add operation");
+ return false;
+ }
+ }
+}
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/entity/Operation.java b/src/Logistics/app/src/main/java/com/example/logistics/entity/Operation.java
new file mode 100644
index 0000000..cb638b0
--- /dev/null
+++ b/src/Logistics/app/src/main/java/com/example/logistics/entity/Operation.java
@@ -0,0 +1,47 @@
+package com.example.logistics.entity;
+
+import android.provider.ContactsContract;
+
+public class Operation {
+ private int id;
+ private String pickUpCode;
+ private String phoneNum;
+ private String time;
+
+ public Operation(){
+
+ }
+
+ public int getId(){
+ return id;
+ }
+
+ public void setId(int id){
+ this.id = id;
+ }
+
+ public String getPickUpCode(){
+ return pickUpCode;
+ }
+
+ public void setPickUpCode(String PickUpCode){
+ this.pickUpCode = PickUpCode;
+ }
+
+ public String getPhoneNum(){
+ return phoneNum;
+ }
+
+ public void setPhoneNum(String PhoneNum){
+ this.phoneNum = PhoneNum;
+ }
+
+ public String getTime(){
+ return time;
+ }
+
+ public void setTime(String time){
+ this.time = time;
+ }
+
+}
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/ui/MainActivity.java b/src/Logistics/app/src/main/java/com/example/logistics/ui/MainActivity.java
index 77f2293..6fd1b09 100644
--- a/src/Logistics/app/src/main/java/com/example/logistics/ui/MainActivity.java
+++ b/src/Logistics/app/src/main/java/com/example/logistics/ui/MainActivity.java
@@ -2,6 +2,7 @@ package com.example.logistics.ui;
import com.example.logistics.R;
import com.example.logistics.dao.userDao;
+import com.example.logistics.entity.User;
import com.example.logistics.tools.MD5Utils;
import android.annotation.SuppressLint;
@@ -65,7 +66,9 @@ public class MainActivity extends Activity {
Log.e("MAin", "msg");
hand1.sendEmptyMessage(msg);
if(msg == 1){
+ User owner = userDao.findUser(userName.getText().toString().trim());
Intent intent = new Intent(MainActivity.this, MenuActivity.class);
+ intent.putExtra("name", owner.getPhoneNum());
startActivity(intent);
}
}
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/ui/MenuActivity.java b/src/Logistics/app/src/main/java/com/example/logistics/ui/MenuActivity.java
index 27bbacc..5f8b8d8 100644
--- a/src/Logistics/app/src/main/java/com/example/logistics/ui/MenuActivity.java
+++ b/src/Logistics/app/src/main/java/com/example/logistics/ui/MenuActivity.java
@@ -2,7 +2,10 @@ package com.example.logistics.ui;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
+
+import android.content.Intent;
import android.os.Bundle;
+import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -23,12 +26,17 @@ public class MenuActivity extends AppCompatActivity implements View.OnClickListe
private Fragment mFrag2;
private Fragment mFrag3;
+ private String owner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu);
bindView();
+
+ Intent intent = getIntent();
+ owner = intent.getStringExtra("name");
+
selectTab(0);
}
@@ -97,7 +105,11 @@ public class MenuActivity extends AppCompatActivity implements View.OnClickListe
mTextNum2.setVisibility(View.INVISIBLE);
if (mFrag2 == null) {
mFrag2 = new MyFragment2();
- transaction.add(R.id.fragment_container, mFrag2);
+ Bundle bundle = new Bundle();
+ bundle.putString("user", owner);
+ mFrag2.setArguments(bundle);
+
+ transaction.add(R.id.fragment_container, mFrag2, "frag2");
} else {
transaction.show(mFrag2);
}
@@ -129,4 +141,17 @@ public class MenuActivity extends AppCompatActivity implements View.OnClickListe
}
}
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data){
+ super.onActivityResult(requestCode, resultCode, data);
+ Log.d("on", "Activity");
+ FragmentManager fm = getSupportFragmentManager();
+ Fragment fr = fm.findFragmentByTag("frag2");
+ fr.onActivityResult(requestCode, resultCode, data);
+ }
+
+ public String getOwner(){
+ return owner;
+ }
+
}
diff --git a/src/Logistics/app/src/main/java/com/example/logistics/ui/MyFragment2.java b/src/Logistics/app/src/main/java/com/example/logistics/ui/MyFragment2.java
index 1d44a94..fe58fd6 100644
--- a/src/Logistics/app/src/main/java/com/example/logistics/ui/MyFragment2.java
+++ b/src/Logistics/app/src/main/java/com/example/logistics/ui/MyFragment2.java
@@ -7,6 +7,9 @@ import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -18,6 +21,9 @@ import android.widget.Toast;
import androidx.annotation.Nullable;
import com.example.logistics.R;
+import com.example.logistics.dao.operationDao;
+import com.example.logistics.dao.userDao;
+import com.example.logistics.entity.User;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import com.journeyapps.barcodescanner.CaptureActivity;
@@ -36,6 +42,7 @@ public class MyFragment2 extends Fragment implements View.OnClickListener{
View view = inflater.inflate(R.layout.my_fragment2,container,false);
mButton = (Button)view.findViewById(R.id.Pick_Button);
mButton.setOnClickListener(this);
+ mContext = getActivity();
return view;
}
@@ -84,22 +91,33 @@ public class MyFragment2 extends Fragment implements View.OnClickListener{
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
+ Toast.makeText(mContext, "取件成功", Toast.LENGTH_LONG).show();
String pickupcode = PickUpCode.getText().toString().trim();
String phonenum = PhoneNum.getText().toString().trim();
-
+ Log.d("onclick", "123");
String QR_pickup = result.split(" ")[0];
String QR_phone = result.split(" ")[1];
- if(pickupcode.equals(QR_pickup) && pickupcode.equals(QR_phone)){
+ if (pickupcode.equals(QR_pickup) && pickupcode.equals(QR_phone)) {
Toast.makeText(mContext, "取件成功", Toast.LENGTH_LONG).show();
-
- }else{
+ new Thread() {
+ @Override
+ public void run() {
+ operationDao operationDao = new operationDao();
+ Bundle bundle = getArguments();
+ String user = bundle.getString("user");
+ boolean flag = operationDao.add(pickupcode, user);
+ if (flag) {
+ Log.d("add", "success");
+ } else {
+ Log.d("add", "failed");
+ }
+ }
+ }.start();
+ } else {
Toast.makeText(mContext, "取件失败", Toast.LENGTH_LONG).show();
}
}
});
-
}
-
-}
-
+}
\ No newline at end of file
diff --git a/src/Logistics/gradle.properties b/src/Logistics/gradle.properties
index dab7c28..f9e65bb 100644
--- a/src/Logistics/gradle.properties
+++ b/src/Logistics/gradle.properties
@@ -18,4 +18,5 @@ android.useAndroidX=true
# Enables namespacing of each library's R class so that its R class includes only the
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
-android.nonTransitiveRClass=true
\ No newline at end of file
+android.nonTransitiveRClass=true
+android.enableJetifier=true
\ No newline at end of file