diff --git a/app/release/output-metadata.json b/app/release/output-metadata.json
new file mode 100644
index 0000000..4549c92
--- /dev/null
+++ b/app/release/output-metadata.json
@@ -0,0 +1,20 @@
+{
+ "version": 3,
+ "artifactType": {
+ "type": "APK",
+ "kind": "Directory"
+ },
+ "applicationId": "com.example.beijing_daxing",
+ "variantName": "release",
+ "elements": [
+ {
+ "type": "SINGLE",
+ "filters": [],
+ "attributes": [],
+ "versionCode": 5,
+ "versionName": "1.5",
+ "outputFile": "app-release.apk"
+ }
+ ],
+ "elementType": "File"
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 560a9b5..35213d1 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -6,14 +6,11 @@
android:name="android.hardware.camera"
android:required="false" />
-
-
-
-
-
@@ -21,7 +18,8 @@
-
+
+
+
+
-
@@ -61,7 +62,6 @@
-
@@ -93,6 +93,7 @@
android:exported="true">
+
diff --git a/app/src/main/java/com/example/beijing_daxing/HomePageActivity.java b/app/src/main/java/com/example/beijing_daxing/HomePageActivity.java
index f70b541..009664c 100644
--- a/app/src/main/java/com/example/beijing_daxing/HomePageActivity.java
+++ b/app/src/main/java/com/example/beijing_daxing/HomePageActivity.java
@@ -43,7 +43,9 @@ public class HomePageActivity extends AppCompatActivity {
MyApplication.getApplication().setUhfrManager(instance);
instance.setRegion(Reader.Region_Conf.RG_PRC);
instance.setPower(33,33);
- boolean b = instance.setInventoryFilter(Tools.HexString2Bytes("53574C44"), 1, 2, true);
+ instance.setGen2session(false);
+ String epcConfig = getIntent().getStringExtra("epcConfig");
+ boolean b = instance.setInventoryFilter(Tools.HexString2Bytes(epcConfig), 1, 2, true);
Log.e("TAG", "设置过滤:" + b);
}catch (NullPointerException e){
Toast.makeText(this, "扫描驱动异常,重新启动程序加载", Toast.LENGTH_SHORT).show();
@@ -83,15 +85,9 @@ public class HomePageActivity extends AppCompatActivity {
private void initUi(ActivityHomePageBinding binding) {
List list = new ArrayList<>();
- list.add(new HomeIcon(R.mipmap.home_in1, "轮挡入库", InActivity.class));
- list.add(new HomeIcon(R.mipmap.home_out1, "轮挡领用出库", OutActivity.class));
- // list.add(new HomeIcon(R.mipmap.home_store_check, "仓库盘点", StoreCheckActivity.class));
- list.add(new HomeIcon(R.mipmap.home_check, "轮挡巡检", CheckListActivity.class));
- list.add(new HomeIcon(R.mipmap.home_bf, "维修&报废", BFActivity.class));
- list.add(new HomeIcon(R.mipmap.home_in, "异常轮挡回库", FpInActivity.class));
- // list.add(new HomeIcon(R.mipmap.home_out, "废品出库", FpOutActivity.class));
+ list.add(new HomeIcon(R.mipmap.home_check, "信息查询", SelectPersonInfoActivity.class));
list.add(new HomeIcon(R.mipmap.home_out, "功率设置", SetingPowerActivity.class));
- var intent = getIntent();
+ /*var intent = getIntent();
try {
if (!intent.getStringExtra("user").equals("admin")) {
ArrayList strings = new Gson().fromJson(intent.getStringExtra("json"), new TypeToken>() {
@@ -110,7 +106,7 @@ public class HomePageActivity extends AppCompatActivity {
}
} catch (Exception e) {
e.printStackTrace();
- }
+ }*/
HomePageAdapter adapter = new HomePageAdapter(list, this);
binding.homeGridview.setAdapter(adapter);
binding.homeGridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
diff --git a/app/src/main/java/com/example/beijing_daxing/MainActivity.java b/app/src/main/java/com/example/beijing_daxing/MainActivity.java
index 8d0881a..179a0cb 100644
--- a/app/src/main/java/com/example/beijing_daxing/MainActivity.java
+++ b/app/src/main/java/com/example/beijing_daxing/MainActivity.java
@@ -1,15 +1,13 @@
package com.example.beijing_daxing;
-import androidx.appcompat.app.AppCompatActivity;
-import androidx.databinding.DataBindingUtil;
-import androidx.databinding.ObservableField;
-
import android.content.Intent;
import android.os.Bundle;
-import android.os.FileObserver;
import android.view.View;
import android.widget.Toast;
+import androidx.databinding.DataBindingUtil;
+import androidx.databinding.ObservableBoolean;
+
import com.example.beijing_daxing.base.BaseActivity;
import com.example.beijing_daxing.databinding.ActivityMainBinding;
import com.example.beijing_daxing.uitls.SharedPreferencesUtils;
@@ -17,40 +15,49 @@ import com.example.beijing_daxing.vm.LoginVm;
import com.lzy.okgo.OkGo;
import com.lzy.okgo.callback.StringCallback;
import com.lzy.okgo.model.Response;
-import com.uhf.api.cls.Reader;
-import com.xuexiang.xupdate.XUpdate;
-import com.xuexiang.xupdate.easy.EasyUpdate;
-
-import java.util.List;
public class MainActivity extends BaseActivity {
private LoginVm loginVm;
+ private ObservableBoolean isShow = new ObservableBoolean(false);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
loginVm = new LoginVm();
+ String ipConfig = SharedPreferencesUtils.getstring("ipConfig", "");
+ loginVm.setIpConfig(ipConfig);
+ String epcConfig = SharedPreferencesUtils.getstring("epcConfig", "");
+ loginVm.setEpcConfig(epcConfig);
boolean isRemember = SharedPreferencesUtils.getboolean("isRemember", false);
if (isRemember) {
loginVm.setName(SharedPreferencesUtils.getstring("user", ""));
loginVm.setPass(SharedPreferencesUtils.getstring("pass", ""));
loginVm.setRemember(isRemember);
}
+
binding.setUser(loginVm);
- EasyUpdate.checkUpdate(this,url + "/getVersion");
+ isShow.set(ipConfig.isEmpty() || epcConfig.isEmpty());
+ binding.setIsShow(isShow);
+
+ // EasyUpdate.checkUpdate(this,url + "/getVersion");
// XUpdate.newBuild(this)
// .updateUrl(url + "/getVersion")
// .promptIgnoreDownloadError(true)
// .update();
}
-
-
public void login_click(View view) {
String pass = loginVm.getPass();
String name = loginVm.getName();
- if (pass == null || name == null || pass.isEmpty() || name.isEmpty()) return;
+ String ipConfig = loginVm.getIpConfig();
+ String epcConfig = loginVm.getEpcConfig();
+ if (epcConfig.length()!=8){
+ Toast.makeText(this, "请输入正确的EPC配置", Toast.LENGTH_SHORT).show();
+ return;
+ }
+ setUrl(ipConfig);
+ if (pass == null || name == null || pass.isEmpty() || name.isEmpty() || ipConfig.isEmpty() || epcConfig.isEmpty()) return;
dialog.show();
OkGo.get(url + "/login/finduser").tag(this)
.params("name", name)
@@ -64,15 +71,17 @@ public class MainActivity extends BaseActivity {
Toast.makeText(MainActivity.this, "暂无权限", Toast.LENGTH_SHORT).show();
} else if (body.equals("Error")) {
Toast.makeText(MainActivity.this, "用户名密码错误", Toast.LENGTH_SHORT).show();
- } else {
+ } else if (body.equals("ok")) {
boolean remember = loginVm.isRemember();
+ SharedPreferencesUtils.putstring("ipConfig", ipConfig);
+ SharedPreferencesUtils.putstring("epcConfig", epcConfig);
if (remember) {
SharedPreferencesUtils.putboolean("isRemember", remember);
SharedPreferencesUtils.putstring("user", name);
SharedPreferencesUtils.putstring("pass", pass);
Intent intent = new Intent(MainActivity.this, HomePageActivity.class);
- intent.putExtra("json", body);
- intent.putExtra("user", name);
+ intent.putExtra("epcConfig", epcConfig);
+ // intent.putExtra("user", name);
startActivity(intent);
finish();
}
@@ -81,5 +90,8 @@ public class MainActivity extends BaseActivity {
});
}
+ public void setting(View view) {
+ isShow.set(!isShow.get());
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/beijing_daxing/SelectPersonInfoActivity.java b/app/src/main/java/com/example/beijing_daxing/SelectPersonInfoActivity.java
new file mode 100644
index 0000000..48130c3
--- /dev/null
+++ b/app/src/main/java/com/example/beijing_daxing/SelectPersonInfoActivity.java
@@ -0,0 +1,59 @@
+package com.example.beijing_daxing;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Toast;
+
+import androidx.databinding.DataBindingUtil;
+
+import com.bumptech.glide.Glide;
+import com.example.beijing_daxing.base.BaseActivity;
+import com.example.beijing_daxing.base.MyRecultCall;
+import com.example.beijing_daxing.base.MyResult;
+import com.example.beijing_daxing.been.PmBasePersonInfo;
+import com.example.beijing_daxing.databinding.ActivitySelectPersonInfoBinding;
+import com.example.beijing_daxing.dialog.TakePictureDialog;
+import com.lzy.okgo.OkGo;
+import com.lzy.okgo.model.Response;
+
+public class SelectPersonInfoActivity extends BaseActivity {
+ private ActivitySelectPersonInfoBinding binding;
+ private TakePictureDialog pictureDialog;
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ binding = DataBindingUtil.setContentView(this, R.layout.activity_select_person_info);
+ pictureDialog=new TakePictureDialog(this);
+ }
+
+ @Override
+ public void readTidReault(boolean b, String bytes2HexString, byte[] rdata) {
+ super.readTidReault(b, bytes2HexString, rdata);
+ binding.selectInfoEpc.setText(bytes2HexString);
+ OkGo.post(url + "/selectPersonInfo")
+ .params("epc", bytes2HexString)
+ .execute(new MyRecultCall(dialog, this) {
+ @Override
+ public void onSuccess(Response response) {
+ super.onSuccess(response);
+ MyResult body = response.body();
+ if (body.getCode() == 0) {
+ PmBasePersonInfo personInfo =gson.fromJson(body.getJson(), PmBasePersonInfo.class);
+ binding.setPersonInfo(personInfo);
+ Glide.with(SelectPersonInfoActivity.this).load(url.replace("/api", "")+personInfo.getPhotoPath()).into(binding.selectInfoPhoto);
+ return;
+ }
+ Toast.makeText(SelectPersonInfoActivity.this, body.getMsg(), Toast.LENGTH_SHORT).show();
+ }
+ });
+ }
+
+ public void selectInfoPhoto(View view) {
+
+ }
+
+ public void selectInfoSubmit(View view) {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/beijing_daxing/base/BaseActivity.java b/app/src/main/java/com/example/beijing_daxing/base/BaseActivity.java
index 363f53a..39abc94 100644
--- a/app/src/main/java/com/example/beijing_daxing/base/BaseActivity.java
+++ b/app/src/main/java/com/example/beijing_daxing/base/BaseActivity.java
@@ -20,16 +20,16 @@ import android.os.Bundle;
import android.provider.MediaStore;
import android.util.Log;
import android.view.Window;
+import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.core.content.FileProvider;
-
import com.example.beijing_daxing.R;
import com.google.gson.Gson;
-import com.handheld.uhfr.*;
+import com.handheld.uhfr.UHFRManager;
import com.uhf.api.cls.Reader;
import java.io.File;
@@ -43,18 +43,32 @@ import java.time.ZoneId;
import java.util.Date;
import java.util.List;
+import cn.pda.serialport.Tools;
import okhttp3.MediaType;
-public class BaseActivity extends AppCompatActivity {
- // public static String url = "http://192.168.137.1:8090/api";
- public static String url = "http://119.45.202.115:8090/api";
+public class BaseActivity extends AppCompatActivity {
+ public static final int CAMERA_PHOTO = 0X02;
+ public static String url;
public ProgressDialog dialog;
public Gson gson;
public MediaType JSON = MediaType.parse("application/json; charset=utf-8");
public UHFRManager uhfLongerManager;
- private MediaPlayer mediaPlayer;
public MyReceiver myReceiver;
public Intent broadcastIntent;
+ public File outputImage;
+ public Uri img_uri;
+ public SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
+ public SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ private MediaPlayer mediaPlayer;
+ private byte[] accesspwd;
+ private boolean addWatermarkType;
+ private String addWatermarkLocation;
+ private String[] strings =
+ new String[]{"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"};
+
+ public static void setUrl(String url) {
+ BaseActivity.url = "http://" + url + "/api";
+ }
@SuppressLint("UnspecifiedRegisterReceiverFlag")
@Override
@@ -66,6 +80,7 @@ public class BaseActivity extends AppCompatActivity {
broadcastIntent = new Intent("android.rfid.FUN_KEY");
broadcastIntent.putExtra("keydown", false);
}
+
private void initSan() {
uhfLongerManager = MyApplication.getApplication().getUhfrManager();
myReceiver = new MyReceiver();
@@ -73,19 +88,27 @@ public class BaseActivity extends AppCompatActivity {
intentFilter.addAction("android.rfid.FUN_KEY");
registerReceiver(myReceiver, intentFilter);
mediaPlayer = MediaPlayer.create(this, R.raw.msg);
+ accesspwd = Tools.HexString2Bytes("00000000");
}
- public class MyReceiver extends BroadcastReceiver {
- @Override
- public void onReceive(Context context, Intent intent) {
- var keydown = intent.getBooleanExtra("keydown", false);
- Log.e("TAG", "接收到广播:" + keydown);
- if (!keydown) {
- sanEpc();
- }
+ // 1- 读取EPC
+ public void readEPC(int lenth) {
+ byte[] rdata = new byte[lenth];
+ Reader.READER_ERR readerErr =
+ uhfLongerManager.getTagData(1, 2, lenth / 2, rdata, accesspwd, (short) 1000);
+ if (readerErr == Reader.READER_ERR.MT_OK_ERR) {
+ mediaPlayer.start();
+ readTidReault(true, Tools.Bytes2HexString(rdata, lenth), rdata);
+ } else {
+ Toast.makeText(this, "读取失败", Toast.LENGTH_SHORT).show();
+
}
+
+ }
+
+ public void readTidReault(boolean b, String bytes2HexString, byte[] rdata) {
}
public void sanEpc() {
@@ -105,8 +128,6 @@ public class BaseActivity extends AppCompatActivity {
dialog.setMessage("请求网络...");
}
-
-
public void setPower(int power) {
try {
Reader.READER_ERR readerErr = uhfLongerManager.setPower(power, power);
@@ -125,26 +146,19 @@ public class BaseActivity extends AppCompatActivity {
unregisterReceiver(myReceiver);
}
+ public void sanRfid(List epcs) {
- public void sanRfid(List epcs){
+ }
- };
-
- public static final int CAMERA_PHOTO = 0X02;
- public File outputImage;
- public Uri img_uri;
- public SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
- public SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
- private boolean addWatermarkType;
- private String addWatermarkLocation;
// 拍照
- public void takePhoto(boolean type,String location) {
- this.addWatermarkType=type;
- addWatermarkLocation=location;
+ public void takePhoto(boolean type, String location) {
+ this.addWatermarkType = type;
+ addWatermarkLocation = location;
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
}
- outputImage = new File(getExternalCacheDir(), "output_imgage" + format.format(new Date()) + ".jpg");
+ outputImage =
+ new File(getExternalCacheDir(), "output_imgage" + format.format(new Date()) + ".jpg");
try {
outputImage.createNewFile();
} catch (IOException e) {
@@ -162,7 +176,8 @@ public class BaseActivity extends AppCompatActivity {
startActivityForResult(intent, CAMERA_PHOTO);
} else {
// 提示用户开户权限 拍照和读写sd卡权限
- String[] perms = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA};
+ String[] perms =
+ {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA};
ActivityCompat.requestPermissions(this, perms, CAMERA_PHOTO);
}
}
@@ -181,7 +196,7 @@ public class BaseActivity extends AppCompatActivity {
try {
Log.e("TAG", "onActivityResult:" + img_uri.getPath());
bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(img_uri));
- if (addWatermarkType){
+ if (addWatermarkType) {
// 添加水印
bitmap = addWatermark(bitmap);
}
@@ -197,7 +212,7 @@ public class BaseActivity extends AppCompatActivity {
}
}
- private String[] strings=new String[]{"星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
+
@SuppressLint("NewApi")
private Bitmap addWatermark(Bitmap src) {
int w = src.getWidth();
@@ -214,9 +229,22 @@ public class BaseActivity extends AppCompatActivity {
LocalDate today = LocalDate.now(ZoneId.systemDefault());
// 获取当前日期是周几
DayOfWeek dayOfWeek = today.getDayOfWeek();
- canvas.drawText("机位:"+addWatermarkLocation, 10, h - 400, paint);
+ canvas.drawText("机位:" + addWatermarkLocation, 10, h - 400, paint);
canvas.drawText(dateFormat.format(new Date()), 10, h - 200, paint);
canvas.drawText(strings[dayOfWeek.getValue()], 10, h - 20, paint);
return result;
}
+
+ public class MyReceiver extends BroadcastReceiver {
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+
+ var keydown = intent.getBooleanExtra("keydown", false);
+ Log.e("TAG", "接收到广播:" + keydown);
+ if (!keydown) {
+ readEPC(6);
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/beijing_daxing/base/MyApplication.java b/app/src/main/java/com/example/beijing_daxing/base/MyApplication.java
index 856d2b9..e4652a3 100644
--- a/app/src/main/java/com/example/beijing_daxing/base/MyApplication.java
+++ b/app/src/main/java/com/example/beijing_daxing/base/MyApplication.java
@@ -46,18 +46,18 @@ public class MyApplication extends Application {
super.onCreate();
application = this;
LitePal.initialize(this);
- SharedPreferencesUtils.init(getApplicationContext(), "myapp");
+ SharedPreferencesUtils.init(getApplicationContext(), "myapp_text");
okGoBase();
// getUhfLongerManager();
- XUpdate.get().debug(true).isWifiOnly(false) // 默认设置只在wifi下检查版本更新
- .isGet(true) // 默认设置使用get请求检查版本
- .isAutoMode(false) // 默认设置非自动模式,可根据具体使用配置
- // .param("versionCode", UpdateUtils.getVersionCode(this)) //设置默认公共请求参数
- // .param("appKey", getPackageName())
-
- .supportSilentInstall(false) // 设置是否支持静默安装,默认是true
- .setIUpdateHttpService(new OkHttpUpdateHttpServiceImpl()) // 这个必须设置!实现网络请求功能。
- .init(this);
+ // XUpdate.get().debug(true).isWifiOnly(false) // 默认设置只在wifi下检查版本更新
+ // .isGet(true) // 默认设置使用get请求检查版本
+ // .isAutoMode(false) // 默认设置非自动模式,可根据具体使用配置
+ // // .param("versionCode", UpdateUtils.getVersionCode(this)) //设置默认公共请求参数
+ // // .param("appKey", getPackageName())
+ //
+ // .supportSilentInstall(false) // 设置是否支持静默安装,默认是true
+ // .setIUpdateHttpService(new OkHttpUpdateHttpServiceImpl()) // 这个必须设置!实现网络请求功能。
+ // .init(this);
}
public static MyApplication getApplication() {
@@ -95,7 +95,7 @@ public class MyApplication extends Application {
OkGo.getInstance().init(this).setOkHttpClient(builder.build()) // 建议设置OkHttpClient,不设置将使用默认的
.setCacheMode(CacheMode.NO_CACHE) // 全局统一缓存模式,默认不使用缓存,可以不传
.setCacheTime(CacheEntity.CACHE_NEVER_EXPIRE) // 全局统一缓存时间,默认永不过期,可以不传
- .setRetryCount(1);
+ .setRetryCount(0);
}
diff --git a/app/src/main/java/com/example/beijing_daxing/base/MyRecultCall.java b/app/src/main/java/com/example/beijing_daxing/base/MyRecultCall.java
index e75d760..6af4caa 100644
--- a/app/src/main/java/com/example/beijing_daxing/base/MyRecultCall.java
+++ b/app/src/main/java/com/example/beijing_daxing/base/MyRecultCall.java
@@ -32,7 +32,7 @@ public class MyRecultCall extends AbsCallback {
if (body == null) return null;
Gson gson = new Gson();
MyResult resust = gson.fromJson(body.string(), MyResult.class);
- resust.setData(gson.toJson(resust.getData()));
+ resust.setJson(gson.toJson(resust.getData()));
return resust;
}
diff --git a/app/src/main/java/com/example/beijing_daxing/base/MyResult.java b/app/src/main/java/com/example/beijing_daxing/base/MyResult.java
index 5b70893..b644195 100644
--- a/app/src/main/java/com/example/beijing_daxing/base/MyResult.java
+++ b/app/src/main/java/com/example/beijing_daxing/base/MyResult.java
@@ -8,6 +8,15 @@ public class MyResult {
private int code;
private String msg;
private Object data;
+ private String json;
+
+ public String getJson() {
+ return json;
+ }
+
+ public void setJson(String json) {
+ this.json = json;
+ }
public int getCode() {
return code;
diff --git a/app/src/main/java/com/example/beijing_daxing/been/PmBasePersonInfo.java b/app/src/main/java/com/example/beijing_daxing/been/PmBasePersonInfo.java
new file mode 100644
index 0000000..ca7130b
--- /dev/null
+++ b/app/src/main/java/com/example/beijing_daxing/been/PmBasePersonInfo.java
@@ -0,0 +1,145 @@
+package com.example.beijing_daxing.been;
+
+/**
+ * 人员信息对象 pm_base_person_info
+ *
+ * @author ruoyi
+ * @date 2025-11-26
+ */
+public class PmBasePersonInfo {
+
+ /**
+ * 人员表主键
+ */
+ private Long basePersonId;
+
+ /**
+ * RFID编码
+ */
+
+ private String rfidId;
+
+ /**
+ * 工号
+ */
+
+ private String employeeId;
+
+ /**
+ * 姓名
+ */
+
+ private String peopleName;
+
+ /**
+ * 性别
+ */
+
+ private String peopleSex;
+
+ /**
+ * 驾驶证代号
+ */
+ private String driverCode;
+
+ /**
+ * 联系电话
+ */
+ private String phoneNumber;
+
+ /**
+ * 照片
+ */
+ private String photoPath;
+
+ /**
+ * 有效日期截止
+ */
+ private String joinDate;
+
+ /**
+ * 学历
+ */
+ private String academicQualification;
+
+ public Long getBasePersonId() {
+ return basePersonId;
+ }
+
+ public void setBasePersonId(Long basePersonId) {
+ this.basePersonId = basePersonId;
+ }
+
+ public String getRfidId() {
+ return rfidId;
+ }
+
+ public void setRfidId(String rfidId) {
+ this.rfidId = rfidId;
+ }
+
+ public String getEmployeeId() {
+ return employeeId;
+ }
+
+ public void setEmployeeId(String employeeId) {
+ this.employeeId = employeeId;
+ }
+
+ public String getPeopleName() {
+ return peopleName;
+ }
+
+ public void setPeopleName(String peopleName) {
+ this.peopleName = peopleName;
+ }
+
+ public String getPeopleSex() {
+ return peopleSex;
+ }
+
+ public void setPeopleSex(String peopleSex) {
+ this.peopleSex = peopleSex;
+ }
+
+ public String getDriverCode() {
+ return driverCode;
+ }
+
+ public void setDriverCode(String driverCode) {
+ this.driverCode = driverCode;
+ }
+
+ public String getPhoneNumber() {
+ return phoneNumber;
+ }
+
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
+ }
+
+ public String getPhotoPath() {
+ return photoPath;
+ }
+
+ public void setPhotoPath(String photoPath) {
+ this.photoPath = photoPath;
+ }
+
+ public String getJoinDate() {
+ return joinDate;
+ }
+
+ public void setJoinDate(String joinDate) {
+ this.joinDate = joinDate;
+ }
+
+ public String getAcademicQualification() {
+ return academicQualification;
+ }
+
+ public void setAcademicQualification(String academicQualification) {
+ this.academicQualification = academicQualification;
+ }
+
+}
diff --git a/app/src/main/java/com/example/beijing_daxing/dialog/LookPictureDialog.java b/app/src/main/java/com/example/beijing_daxing/dialog/LookPictureDialog.java
new file mode 100644
index 0000000..ca120d1
--- /dev/null
+++ b/app/src/main/java/com/example/beijing_daxing/dialog/LookPictureDialog.java
@@ -0,0 +1,57 @@
+package com.example.beijing_daxing.dialog;
+
+import android.annotation.SuppressLint;
+import android.app.Dialog;
+import android.content.Context;
+import android.os.Bundle;
+import android.widget.ImageView;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+
+import com.bumptech.glide.Glide;
+import com.example.beijing_daxing.R;
+
+
+/**
+ * @author wanghao
+ * @date 2023/2/1 17:06
+ */
+public class LookPictureDialog extends Dialog {
+
+ private Context context;
+ private String path;
+ private ImageView imageView;
+
+ public LookPictureDialog(@NonNull Context context) {
+ super(context, R.style.dialog);
+ this.context = context;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ @SuppressLint("MissingInflatedId")
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.dialog_look_picture);
+
+ imageView = findViewById(R.id.picture_imageview);
+ findViewById(R.id.confirm_back).setOnClickListener(v -> {
+ dismiss();
+ });
+ LinearLayoutManager linearLayoutManager = new LinearLayoutManager(context);
+ linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
+ }
+
+
+ @Override
+ public void show() {
+ super.show();
+ Glide.with(context).load(path).into(imageView);
+ }
+
+
+}
diff --git a/app/src/main/java/com/example/beijing_daxing/vm/LoginVm.java b/app/src/main/java/com/example/beijing_daxing/vm/LoginVm.java
index 8b696e2..6799fef 100644
--- a/app/src/main/java/com/example/beijing_daxing/vm/LoginVm.java
+++ b/app/src/main/java/com/example/beijing_daxing/vm/LoginVm.java
@@ -11,6 +11,25 @@ public class LoginVm extends BaseObservable {
private String pass;
private boolean remember;
+ private String ipConfig;
+ private String epcConfig;
+
+ public String getIpConfig() {
+ return ipConfig;
+ }
+
+ public void setIpConfig(String ipConfig) {
+ this.ipConfig = ipConfig;
+ }
+
+ public String getEpcConfig() {
+ return epcConfig;
+ }
+
+ public void setEpcConfig(String epcConfig) {
+ this.epcConfig = epcConfig;
+ }
+
public String getName() {
return name;
}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index eb0df4b..4d2b224 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -9,49 +9,37 @@
name="user"
type="com.example.beijing_daxing.vm.LoginVm" />
+
+
+
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_height="55dp"
+ android:layout_marginTop="80dp"
+ android:gravity="center"
+ android:letterSpacing="0.5"
+ android:text="叉车人员管理"
+ android:textColor="@color/white"
+ android:textSize="25sp"
+ android:textStyle="bold" />
@@ -68,7 +56,7 @@
@@ -94,6 +82,44 @@
android:checked="@={user.remember}"
android:text="记住我" />
+
+
+
+
+
+
+
+
+
+
+ android:textStyle="bold" />
diff --git a/app/src/main/res/layout/activity_select_person_info.xml b/app/src/main/res/layout/activity_select_person_info.xml
new file mode 100644
index 0000000..5388f86
--- /dev/null
+++ b/app/src/main/res/layout/activity_select_person_info.xml
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/dialog_look_picture.xml b/app/src/main/res/layout/dialog_look_picture.xml
new file mode 100644
index 0000000..3211b2d
--- /dev/null
+++ b/app/src/main/res/layout/dialog_look_picture.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 78ba68a..5726143 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,3 +1,3 @@
- RFID轮挡
+ 人员管理
\ No newline at end of file