1.0.1 version publish

master
hwf453 2 years ago
parent f42b8ba91d
commit 23cd8385bc

@ -1,14 +1,27 @@
apply plugin: 'com.android.application'
android {
compileSdkVersion 33
buildToolsVersion "33.0.0"
// compileSdkVersion 34
// buildToolsVersion "34.0.0"
// defaultConfig {
// applicationId "com.bjzc.zjyxdxj"
// minSdkVersion 24
// targetSdkVersion 34
// versionCode 2
// versionName "1.0.1"
// multiDexEnabled true
// testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
// //authorities
// resValue "string", "authorities", applicationId
// resourceConfigurations += ['zh', 'en', 'hdpi']
// }
compileSdk 34
defaultConfig {
applicationId "com.bjzc.zjyxdxj"
minSdkVersion 24
targetSdkVersion 33
versionCode 1
versionName "1.0.0"
minSdk 24
targetSdk 34
versionCode 2
versionName "1.0.1"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
//authorities

@ -24,7 +24,7 @@ public class MyApplication extends LitePalApplication implements Application.Act
NoHttp.setDefaultConnectTimeout(6 * 1000);
NoHttp.setDefaultReadTimeout(60 * 1000);
AutoLayoutConifg.getInstance().useDeviceSize();
CrashReport.initCrashReport(getApplicationContext(), "efefa9e04c", true);
CrashReport.initCrashReport(getApplicationContext(), "54865112c3", true);
registerActivityLifecycleCallbacks(this);
}

@ -103,6 +103,7 @@ public class LoginActivity extends BaseActivity {
// Log.i("app", "--------->");
// Log.i("app", UserIDTemp);
// Log.i("app", UserPwdTemp);
showLog("LoginActivity");
boolean save = (boolean) SPUtils.get(LoginActivity.this, "save", true);
networkCheckType = (String) SPUtils.get(LoginActivity.this, Contans.NETWORK_CHECK_TYPE, "");
@ -151,8 +152,8 @@ public class LoginActivity extends BaseActivity {
// etUse.setText("181145");
// etPwd.setText("13902576510");
// etUse.setText("180701");
// etPwd.setText("13902576186");
etUse.setText("180701");
etPwd.setText("13902576186");
}

@ -31,6 +31,7 @@ import com.azhon.appupdate.listener.OnButtonClickListener;
import com.azhon.appupdate.listener.OnDownloadListener;
import com.azhon.appupdate.manager.DownloadManager;
import com.bjzc.zjyxdxj.DBModel.XSJJHDataBean;
import com.bjzc.zjyxdxj.DBModel.XSJJHXZBean;
import com.bjzc.zjyxdxj.DBModel.XSJJHXZDataBean;
import com.bjzc.zjyxdxj.DBModel.Xjjh;
import com.bjzc.zjyxdxj.DBModel.XjjhList;
@ -72,8 +73,11 @@ import com.yolanda.nohttp.rest.Response;
import org.litepal.crud.DataSupport;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
@ -131,6 +135,8 @@ public class MainActivity extends BaseActivity3 {
username = RSAUtils.decryptBASE64StrLocal(UserIDTemp);
queue = NoHttp.newRequestQueue(1);
showLog("MainActivity");
btnLogout = findViewById(R.id.btn_logout);
tvLoginUser = findViewById(R.id.tv_login_user);
gv = findViewById(R.id.gv);
@ -141,7 +147,7 @@ public class MainActivity extends BaseActivity3 {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//设置透明导航栏
StatusBarUtil.transparencyBar(MainActivity.this);//设置透明状态栏
//当选择外网时才会开启一键招回
if(Contans.IP.equals(Contans.network_type_extranet)){
if (Contans.IP.equals(Contans.network_type_extranet)) {
initMqtt();
}
initAutoUploadTimer();
@ -445,11 +451,11 @@ public class MainActivity extends BaseActivity3 {
@Override
protected void onResume() {
super.onResume();
if(Contans.IP.equals(Contans.network_type_extranet)){
if(mqttPublishServer==null){
if (Contans.IP.equals(Contans.network_type_extranet)) {
if (mqttPublishServer == null) {
mqttPublishServer = new MqttSSLPublishServer(this);
}
if(timer==null){
if (timer == null) {
try {
timer = new Timer();
timer.schedule(new TimerTask() {
@ -462,12 +468,13 @@ public class MainActivity extends BaseActivity3 {
e.printStackTrace();
}
}
if(timerUpload==null){
if (timerUpload == null) {
try {
timerUpload = new Timer();
timerUpload.schedule(new TimerTask() {
public void run() {
autoUpload();
deleteOldPlanData();
}
}, 30000, 30000);
// 设定指定的时间time,此处为30秒
@ -489,14 +496,14 @@ public class MainActivity extends BaseActivity3 {
Intent intent = new Intent(this, BluetoothLeService.class);
stopService(intent);
//停止MQTT推送服务
if(mqttPublishServer!=null){
if (mqttPublishServer != null) {
mqttPublishServer.destroyAll();
mqttPublishServer=null;
mqttPublishServer = null;
}
if(timer!=null){
if (timer != null) {
timer.cancel();
}
if(timerUpload!=null){
if (timerUpload != null) {
timerUpload.cancel();
}
super.onDestroy();
@ -623,6 +630,7 @@ public class MainActivity extends BaseActivity3 {
timerUpload.schedule(new TimerTask() {
public void run() {
autoUpload();
deleteOldPlanData();
}
}, 30000, 30000);
// 设定指定的时间time,此处为10000毫秒
@ -631,7 +639,7 @@ public class MainActivity extends BaseActivity3 {
}
}
public void autoUpload(){
public void autoUpload() {
if (NetworkUtil.hasNetWorkStatus(context, false)) {
showLog("有wifi网络");
//检查是否有数据需要上传
@ -640,16 +648,17 @@ public class MainActivity extends BaseActivity3 {
showLog("无网络");
}
}
//检查是否有数据需要上传
public void checkNeedUpload(){
public void checkNeedUpload() {
needUploadCount = 0;
dbxjjh.clear();
dbxjjh.addAll(where("download = ? and mk = ? and username = ?", "1", "BA", username).find(Xjjh.class));
if(dbxjjh.size()>0){
if (dbxjjh.size() > 0) {
for (int i = 0; i < dbxjjh.size(); i++) {
Xjjh dataBean = dbxjjh.get(i);
List<XSJJHXZDataBean> qydDataBeen = DataSupport.where("zxid = ? and username = ?", dataBean.getZxid(), username).find(XSJJHXZDataBean.class);
if(qydDataBeen!=null&&qydDataBeen.size()>0){
if (qydDataBeen != null && qydDataBeen.size() > 0) {
for (int j = 0; j < qydDataBeen.size(); j++) {
if (qydDataBeen.get(j).isBAChecked()) {
needUploadCount++;
@ -660,12 +669,13 @@ public class MainActivity extends BaseActivity3 {
}
}
//有需要上传的数据
if(needUploadCount>0){
if (needUploadCount > 0) {
autoUploadDataByBa();
}
}
public void autoUploadDataByBa(){
if(dbxjjh.size()>0){
public void autoUploadDataByBa() {
if (dbxjjh.size() > 0) {
String idTemp = (String) SPUtils.get(context, Contans.REQUEST_ID, "");
String id = RSAUtils.decryptBASE64StrLocal(idTemp);
@ -681,7 +691,7 @@ public class MainActivity extends BaseActivity3 {
scxjjhbean.setZxid(zxid);
List<ScxjjhBean.data> datalist = new ArrayList<>();
if(qydDataBeen!=null&&qydDataBeen.size()>0){
if (qydDataBeen != null && qydDataBeen.size() > 0) {
for (int j = 0; j < qydDataBeen.size(); j++) {
if (qydDataBeen.get(j).isBAChecked()) {
XSJJHXZDataBean xsjjhdatabeanItem = qydDataBeen.get(j);
@ -721,22 +731,24 @@ public class MainActivity extends BaseActivity3 {
}
scxjjhbean.setData(datalist);
}
if(datalist.size()>0){
if (datalist.size() > 0) {
//上传数据
String json = GsonUtils.GsonString(scxjjhbean);
sCDataBA(json, zxid,scxjjhbean);
sCDataBA(json, zxid, scxjjhbean);
}
}
}
}
//上传保安单条计划下的已检任务的数据
private void sCDataBA(String json, String zxid,ScxjjhBean scxjjhbean) {
private void sCDataBA(String json, String zxid, ScxjjhBean scxjjhbean) {
Request<String> request = NoHttp.createStringRequest(Contans.IP + Contans.XSCB_PLAN_BA_UPLOAD, RequestMethod.POST);
request.setDefineRequestBodyForJson(json);
String tokenTemp = (String) SPUtils.get(this, Contans.LOGIN_TOKEN, "");
if(!TextUtils.isEmpty(tokenTemp)){
String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);;
if (!TextUtils.isEmpty(tokenTemp)) {
String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);
;
String credential = "Bearer " + token;
request.addHeader("Authorization", credential);
showLog(request.url());
@ -746,7 +758,8 @@ public class MainActivity extends BaseActivity3 {
queue.add(2, request, new OnResponseListener<String>() {
@Override
public void onStart(int what) {}
public void onStart(int what) {
}
@Override
public void onSucceed(int what, Response<String> response) {
@ -756,8 +769,8 @@ public class MainActivity extends BaseActivity3 {
try {
if (what == 2) {
if (info.getState() == 1) { //成功
for(ScxjjhBean.data item :scxjjhbean.getData()){
DataSupport.deleteAll(XSJJHXZDataBean.class, "zxid = ? and username = ? and scid = ?", zxid, username,item.getScid());
for (ScxjjhBean.data item : scxjjhbean.getData()) {
DataSupport.deleteAll(XSJJHXZDataBean.class, "zxid = ? and username = ? and scid = ?", zxid, username, item.getScid());
//刷新计划下载界面
Intent intent = new Intent(Contans.ACTION_DELETE_REFRESHPLANDOWNLOAD);
//发送广播,刷新任务下载页面
@ -784,11 +797,12 @@ public class MainActivity extends BaseActivity3 {
}
});
}
//检查是否需要删除计划
private void checkNeedDeletePlan(String zxid){
private void checkNeedDeletePlan(String zxid) {
List<XSJJHXZDataBean> qydDataBeen = DataSupport.where("zxid = ? and username = ?", zxid, username).find(XSJJHXZDataBean.class);
if(qydDataBeen!=null&&qydDataBeen.size() ==0){
DataSupport.deleteAll(Xjjh.class, "download = 1 and username = ? and zxid = ?", username,zxid);
if (qydDataBeen != null && qydDataBeen.size() == 0) {
DataSupport.deleteAll(Xjjh.class, "download = 1 and username = ? and zxid = ?", username, zxid);
}
}
@ -822,7 +836,7 @@ public class MainActivity extends BaseActivity3 {
if (list != null) {
if (list.getState().equals("1")) {
List<Xjjh> xjjhs = list.getData();//服务器数据
if(xjjhs!=null&&xjjhs.size()>0){
if (xjjhs != null && xjjhs.size() > 0) {
for (int i = 0; i < list.getData().size(); i++) {
Xjjh xjjh = list.getData().get(i);
showLog(new Gson().toJson(xjjh));
@ -853,4 +867,32 @@ public class MainActivity extends BaseActivity3 {
});
}
private void deleteOldPlanData() {
try {
//格式化日期的对象(转化成习惯的时间格式)
SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
SimpleDateFormat sdFormatDay = new SimpleDateFormat("yyyy/MM/dd");
//获取当前时间
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -3);
//输出当前系统时间;
//showLog(sdFormat.format(calendar.getTime()));
List<Xjjh> dbxjjh = DataSupport.where("download = ? and username = ?", "1", username).find(Xjjh.class);
if (dbxjjh.size() > 0) {
for (Xjjh xjjh : dbxjjh) {
Date date = sdFormat.parse(xjjh.getSt());
Calendar calendarOne = Calendar.getInstance();
calendarOne.setTime(date);
if (calendarOne.before(calendar)) {
DataSupport.deleteAll(XSJJHXZDataBean.class, "zxid = ? and username = ?", xjjh.getZxid(), username);
DataSupport.deleteAll(Xjjh.class, "download = 1 and zxid = ? and username = ?", xjjh.getZxid(), username);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

@ -77,6 +77,7 @@ public class NfcinfoActivity extends BaseActivity3 {
public void run() {
if(tvNfc!=null){
tvNfc.setText(result);
showLog(result);
}
}
});

@ -15,9 +15,11 @@ import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import com.bjzc.zjyxdxj.DBModel.UploadLocation;
import com.bjzc.zjyxdxj.DBModel.XSJJHDataBean;
import com.bjzc.zjyxdxj.DBModel.XSJJHXZDataBean;
@ -36,15 +38,22 @@ import com.bjzc.zjyxdxj.utils.RSAUtils;
import com.bjzc.zjyxdxj.utils.SPUtils;
import com.bjzc.zjyxdxj.weight.BaCheckDialog;
import com.bjzc.zjyxdxj.weight.toastviewbymyself;
import com.google.gson.Gson;
import com.yolanda.nohttp.Connection;
import com.yolanda.nohttp.NoHttp;
import com.yolanda.nohttp.RequestMethod;
import com.yolanda.nohttp.rest.Request;
import com.yolanda.nohttp.rest.Response;
import org.litepal.crud.DataSupport;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import static com.bjzc.zjyxdxj.utils.GsonUtils.GsonToBean;
import static org.litepal.crud.DataSupport.where;
@ -96,11 +105,11 @@ public class SxgzActivity extends BaseActivity3 {
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (CAMERA_REQUEST_CODE==requestCode){
if (grantResults.length>0&&grantResults[0]==PackageManager.PERMISSION_GRANTED) {
if (CAMERA_REQUEST_CODE == requestCode) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//扫码
goScan();
}else {
} else {
//权限拒绝
Toast.makeText(this, "你拒绝了权限申请,无法打开相机扫码哟!", Toast.LENGTH_SHORT).show();
}
@ -220,23 +229,39 @@ public class SxgzActivity extends BaseActivity3 {
noCheckeListBA.clear();
checkedList.clear();
noCheckeList.clear();
List<XSJJHXZDataBean> planTemp = where("mk = ? and username = ?", type, username).find(XSJJHXZDataBean.class);
List<XSJJHXZDataBean> planTemp = DataSupport.where("mk = ? and username = ?", type, username).find(XSJJHXZDataBean.class);
if (planTemp != null && planTemp.size() > 0) {
Collections.reverse(planTemp);
}
//showLog(new Gson().toJson(planTemp));
//showLog(String.valueOf(planTemp.size()));
//DataSupport.findAll(XSJJHXZDataBean.class);
List<XSJJHXZDataBean> planTemp1 = this.removeDuplicate(planTemp);
if (planTemp1 != null && planTemp1.size() > 0) {
Collections.reverse(planTemp1);
}
// for(XSJJHXZDataBean item :planTemp){
// showLog(new Gson().toJson(item));
// }
//List<XSJJHXZDataBean> planTemp1 = planTemp;
xsjjhxzDataBeanList.addAll(planTemp1);
Log.i("app", String.valueOf(xsjjhxzDataBeanList.size()));
//Log.i("app", String.valueOf(xsjjhxzDataBeanList.size()));
for (int i = 0; i < xsjjhxzDataBeanList.size(); i++) {
XSJJHXZDataBean item = xsjjhxzDataBeanList.get(i);
if (type != null && type.equals("BA")) {
if(item.isBAChecked()){
if (item.isBAChecked()) {
checkedListBA.add(item);
}else{
} else {
noCheckeListBA.add(item);
}
}else{
} else {
int checkedCount = 0;
List<XSJJHDataBean> xsjjhdatabean = DataSupport.where("qybh = ? and mk = ? and username = ?", item.getQybh(), type, username).find(XSJJHDataBean.class);
for (int j = 0; j< xsjjhdatabean.size(); j++) {
for (int j = 0; j < xsjjhdatabean.size(); j++) {
if (xsjjhdatabean.get(j).isChecked()) {
checkedCount++;
}
@ -254,7 +279,7 @@ public class SxgzActivity extends BaseActivity3 {
if (type != null && type.equals("BA")) {
total_no_check.setText(String.valueOf(noCheckeListBA.size()));
total_checked.setText(String.valueOf(checkedListBA.size()));
}else{
} else {
total_no_check.setText(String.valueOf(noCheckeList.size()));
total_checked.setText(String.valueOf(checkedList.size()));
}
@ -326,8 +351,8 @@ public class SxgzActivity extends BaseActivity3 {
if (content == null) {
content = "";
}
if(notice==null){
notice="";
if (notice == null) {
notice = "";
}
BaCheckDialog auditDialog = new BaCheckDialog(context, content, new BaCheckDialog.AuditDialogListener() {
@ -399,8 +424,8 @@ public class SxgzActivity extends BaseActivity3 {
if (content == null) {
content = "";
}
if(notice==null){
notice="";
if (notice == null) {
notice = "";
}
ContentValues values = new ContentValues();
values.put("isBAChecked", true);
@ -522,7 +547,6 @@ public class SxgzActivity extends BaseActivity3 {
}
//处理二维码的数据
public void handleTwoCodeCheck(String result) {
if (type != null && type.equals("BA")) {
@ -537,8 +561,8 @@ public class SxgzActivity extends BaseActivity3 {
if (content == null) {
content = "";
}
if(notice==null){
notice="";
if (notice == null) {
notice = "";
}
ContentValues values = new ContentValues();
values.put("isBAChecked", true);
@ -567,7 +591,7 @@ public class SxgzActivity extends BaseActivity3 {
}
} else {
List<XSJJHXZDataBean> scranTwoCodeList = where("txm = ? and txm_zt = 1 and mk = ? and username = ?", result, type, username).find(XSJJHXZDataBean.class);
if(scranTwoCodeList!=null&&scranTwoCodeList.size()<=0){
if (scranTwoCodeList != null && scranTwoCodeList.size() <= 0) {
showToast("无数据请联系管理员");
return;
}
@ -609,8 +633,8 @@ public class SxgzActivity extends BaseActivity3 {
// Log.i("app","----------------");
// Log.i("app",response.get());
PointCheckedPersion bean = GsonToBean(response.get(), PointCheckedPersion.class);
if(bean.getState()==1){
DataSupport.deleteAll(UploadLocation.class, "nfcbm = ? and username = ?",uploadLocatio.getNfcbm(),uploadLocatio.getUsername());
if (bean.getState() == 1) {
DataSupport.deleteAll(UploadLocation.class, "nfcbm = ? and username = ?", uploadLocatio.getNfcbm(), uploadLocatio.getUsername());
}
}
@ -644,23 +668,23 @@ public class SxgzActivity extends BaseActivity3 {
// Log.i("app","----------------");
// Log.i("app",response.get());
PointCheckedPersion bean = GsonToBean(response.get(), PointCheckedPersion.class);
if(bean.getState()==1){
if(bean.getData().size()>0){
if (bean.getState() == 1) {
if (bean.getData().size() > 0) {
String msg = "";
PointCheckedPersion.DataBean item = bean.getData().get(0);
if(item.getScr()!=null){
msg = "当前点已被别人巡检过,最后巡检人是:"+item.getScr();
if (item.getScr() != null) {
msg = "当前点已被别人巡检过,最后巡检人是:" + item.getScr();
toastviewbymyself.makeText(SxgzActivity.this, msg, Toast.LENGTH_SHORT).show();
}else{
if(item.getDjsj()!=null){
msg = "当前点已被别人巡检过,最后巡检时间是:"+item.getDjsj();
} else {
if (item.getDjsj() != null) {
msg = "当前点已被别人巡检过,最后巡检时间是:" + item.getDjsj();
toastviewbymyself.makeText(SxgzActivity.this, msg, Toast.LENGTH_SHORT).show();
}
}
}else{
} else {
toastviewbymyself.makeText(SxgzActivity.this, "无数据请联系管理员", Toast.LENGTH_SHORT).show();
}
}else{
} else {
toastviewbymyself.makeText(SxgzActivity.this, "无数据请联系管理员", Toast.LENGTH_SHORT).show();
}
@ -692,7 +716,7 @@ public class SxgzActivity extends BaseActivity3 {
if (resultCode == RESULT_OK) {
Bundle bundle = data.getExtras();
String ewm = bundle.getString("result");
if(ewm!=null){
if (ewm != null) {
//Log.i("app",ewm);
handleTwoCodeCheck(ewm);
}
@ -722,3 +746,8 @@ public class SxgzActivity extends BaseActivity3 {
unregisterReceiver(myReceiver);
}
}
//8a9481e48a43fa9a018a4a2d90e82327
//8a9481e48a43fa9a018a4a2d890e1fe0
//8a9481e48a43fa9a018a4a2d890e1fe0
//8a9481e48a43fa9a018a4a2d890e1fe0

@ -388,7 +388,6 @@ public class XscbglActivity extends BaseActivity {
String tokenTemp = (String) SPUtils.get(this, Contans.LOGIN_TOKEN, "");
if (!TextUtils.isEmpty(tokenTemp)) {
String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);
;
String credential = "Bearer " + token;
request.addHeader("Authorization", credential);
showLog(request.url());

@ -1,26 +1,32 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.1.0'
}
plugins {
id 'com.android.application' version '8.1.0' apply false
id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
}
allprojects {
repositories {
google()
jcenter()
maven {url "https://jitpack.io"}
maven {url 'https://maven.google.com'}
}
}
//
//buildscript {
// repositories {
// google()
// jcenter()
//
// }
// dependencies {
// classpath 'com.android.tools.build:gradle:8.1.0'
// }
//}
//
//allprojects {
// repositories {
// google()
// jcenter()
// maven {url "https://jitpack.io"}
// maven {url 'https://maven.google.com'}
//
// }
//}
task clean(type: Delete) {
delete rootProject.buildDir
}
//task clean(type: Delete) {
// delete rootProject.buildDir
//}

@ -1,2 +1,21 @@
pluginManagement {
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
jcenter()
maven {url "https://jitpack.io"}
maven {url 'https://maven.google.com'}
}
}
include ':app'
rootProject.name = "ZJYXDXJ"
Loading…
Cancel
Save