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