diff --git a/app/build.gradle b/app/build.gradle index 906e111..70c87cc 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,8 +13,8 @@ android { applicationId "com.rehome.zhdcoa" minSdk 24 targetSdk 36 - versionCode 24 - versionName "2.4.0" + versionCode 25 + versionName "2.4.1" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" //每个应用拥有不同的authorities,防止相同的在同一个手机上无法同时安装 diff --git a/app/src/main/java/com/rehome/zhdcoa/Api.java b/app/src/main/java/com/rehome/zhdcoa/Api.java index e3e2e2d..9b7da37 100644 --- a/app/src/main/java/com/rehome/zhdcoa/Api.java +++ b/app/src/main/java/com/rehome/zhdcoa/Api.java @@ -1100,7 +1100,7 @@ public interface Api { /** * 消息推送发送指令 */ - @POST("pubfile/data/sendcmdtask.ashx") + @POST("PubFile/data/sendcmdtask.ashx") Call sendCmdTask(@Body RequestBody body); diff --git a/app/src/main/java/com/rehome/zhdcoa/Contans.java b/app/src/main/java/com/rehome/zhdcoa/Contans.java index b2828fb..111d5f0 100644 --- a/app/src/main/java/com/rehome/zhdcoa/Contans.java +++ b/app/src/main/java/com/rehome/zhdcoa/Contans.java @@ -407,10 +407,10 @@ public class Contans { public static String AJHXZRW = "AJH/AJH_XZRW.ashx"; public static String AJHSC = "AJH/AJH_JLSC.ashx"; public static String AJHXCJS = "AJH/AJH_JSXC.ashx"; - public static String XWAQGC = "ajh/gc_xzrw.ashx"; //gh = - public static String QY = "djgl/DJGL_QYLIST.ashx"; - public static String XWAQGCSC = "ajh/gc_jlsc.ashx";//观察结果上传 - public static String XWAQGCJS = "ajh/GC_JSSC.ashx";//记事上传 + public static String XWAQGC = "AJH/gc_xzrw.ashx"; //gh = + public static String QY = "DJGL/DJGL_QYLIST.ashx"; + public static String XWAQGCSC = "AJH/gc_jlsc.ashx";//观察结果上传 + public static String XWAQGCJS = "AJH/GC_JSSC.ashx";//记事上传 public static String GZQKSBLIST = "AJH/GZQKSB/GetDataByList.ashx";//工作上报列表查看 public static String GZQKRZLIST = "AJH/GZQKSB/GetSBOperLogList.ashx";//工作日志 public static String GZQKSBSAVE = "AJH/GZQKSB/SaveData.ashx";//工作情况上报保存 diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/AxwaqgcglActivity.java b/app/src/main/java/com/rehome/zhdcoa/ui/activity/AxwaqgcglActivity.java index 8cff70d..638c5da 100644 --- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/AxwaqgcglActivity.java +++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/AxwaqgcglActivity.java @@ -1,10 +1,14 @@ package com.rehome.zhdcoa.ui.activity; +import static com.rehome.zhdcoa.utils.GsonUtils.GsonToBean; + import android.Manifest; import android.app.Activity; +import android.content.ContentValues; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; +import android.text.TextUtils; import android.view.View; import android.widget.Button; import android.widget.CheckBox; @@ -19,8 +23,15 @@ import androidx.activity.result.contract.ActivityResultContracts; import androidx.annotation.NonNull; import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; +import androidx.localbroadcastmanager.content.LocalBroadcastManager; + +import com.rehome.zhdcoa.App; import com.rehome.zhdcoa.Contans; +import com.rehome.zhdcoa.DBModel.Ajhjh; +import com.rehome.zhdcoa.DBModel.AjhjhList; +import com.rehome.zhdcoa.DBModel.AjhjhxzrwList; import com.rehome.zhdcoa.DBModel.XwaqgcJh; +import com.rehome.zhdcoa.DBModel.XwaqgcJhList; import com.rehome.zhdcoa.DBModel.XwaqgcJs; import com.rehome.zhdcoa.DBModel.XwaqgcSc; import com.rehome.zhdcoa.R; @@ -31,13 +42,16 @@ import com.rehome.zhdcoa.entity.SbdjInfo; import com.rehome.zhdcoa.entity.StatusInfo; import com.rehome.zhdcoa.utils.GsonUtils; import com.rehome.zhdcoa.utils.HttpListener; +import com.rehome.zhdcoa.utils.HttpResponseListener; import com.rehome.zhdcoa.utils.NohttpUtils; +import com.rehome.zhdcoa.utils.SPUtils; import com.rehome.zhdcoa.utils.UiUtlis; import com.rehome.zhdcoa.weiget.WaitDialog; import com.yolanda.nohttp.FileBinary; import com.yolanda.nohttp.NoHttp; import com.yolanda.nohttp.RequestMethod; import com.yolanda.nohttp.rest.Request; +import com.yolanda.nohttp.rest.RequestQueue; import com.yolanda.nohttp.rest.Response; import org.litepal.crud.DataSupport; import java.io.File; @@ -45,6 +59,10 @@ import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; +import javax.net.ssl.HostnameVerifier; +import javax.net.ssl.SSLSession; +import javax.net.ssl.SSLSocketFactory; + /** * Created by ruihong on 2017/10/28. */ @@ -60,7 +78,7 @@ public class AxwaqgcglActivity extends BaseActivity2 { private View headview; private List list; private CommonAdapter adapter; - private List jhs; + private List jhs = new ArrayList<>();; private CheckBox cb; private int requestCount = 0;//请求数量 private int successCount = 0;//成功数量 @@ -69,12 +87,15 @@ public class AxwaqgcglActivity extends BaseActivity2 { private static final int CAMERA_REQUEST_CAMERA_SCAN = 7;//请求码 private ActivityResultLauncher launcherResultQRCode; + private RequestQueue queue; + private void findView() { lv = findViewById(R.id.lv); btnSys = findViewById(R.id.btn_sys); btnSc = findViewById(R.id.btn_sc); btnXg = findViewById(R.id.btn_xg); tvNodata = findViewById(R.id.tv_nodata); + queue = NoHttp.newRequestQueue(1); btnSys.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -123,12 +144,6 @@ public class AxwaqgcglActivity extends BaseActivity2 { protected void initView() { findView(); launcherResultQRCode = createQRCodeActivityResultLauncher(); - } - - @Override - public void initData() { - - jhs = new ArrayList<>(); initNFC(); setTitle("行为安全观察"); @@ -159,10 +174,6 @@ public class AxwaqgcglActivity extends BaseActivity2 { } }); - - jhs.addAll(DataSupport.findAll(XwaqgcJh.class)); - - adapter = new CommonAdapter(context, R.layout.xzjh_item, jhs) { @Override protected void convert(ViewHolder viewHolder, XwaqgcJh item, final int position) { @@ -200,6 +211,100 @@ public class AxwaqgcglActivity extends BaseActivity2 { lv.setAdapter(adapter); } + @Override + public void initData() { + //如果数据库中有数据 + if (DataSupport.count("XwaqgcJh") != 0) { + getDataInSQL(); + adapter.notifyDataSetChanged(); + }else{ + requestData(); + } + } + + private void getDataInSQL() { + jhs.clear(); + jhs.addAll(DataSupport.findAll(XwaqgcJh.class)); + } + + private void requestData() { + Request request = NoHttp.createStringRequest(Contans.IP + Contans.XWAQGC); + request.add("gh", App.getInstance().getUserInfo().getManid()); + if(App.getInstance().getUserInfo()!=null&&App.getInstance().getUserInfo().getToken()!=null){ + String token = App.getInstance().getUserInfo().getToken(); + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); + } + if(!TextUtils.isEmpty(request.url())){ + String url =request.url(); + if(url.startsWith("https://219.131.195.3:7100")||url.startsWith("https://219.131.195.3:7011")||url.startsWith("https://219.131.195.3:7081")||url.startsWith("https://219.131.195.3:7082")){ + SSLSocketFactory socketFactory = NohttpUtils.getSSLSocketFactory(AxwaqgcglActivity.this); + if (socketFactory != null) { + request.setSSLSocketFactory(socketFactory); + request.setHostnameVerifier(new HostnameVerifier() { + @Override + public boolean verify(String s, SSLSession sslSession) { + return true; + } + }); + } + } + } + queue.add(0, request, new HttpResponseListener<>(AxwaqgcglActivity.this, request, new HttpListener() { + @Override + public void onSucceed(int what, Response response) { + + if (what == 0) { + showLog("------行为安全观察------"); + String resutl = response.get(); + showLog("------result------"); + //行为安全观察 + XwaqgcJhList xwaq = GsonToBean(resutl, XwaqgcJhList.class); + showLog(GsonUtils.GsonString(xwaq)); + if (xwaq != null) { + if (xwaq.getTotal() != 0) { + List jhs = new ArrayList<>(); + jhs.addAll(xwaq.getRows()); + DataSupport.deleteAll(XwaqgcJh.class); + int dbcount = -1;//数据库中是否有数据 + for (XwaqgcJh jh : jhs) { + List dbdjjh = DataSupport.where("jhid=?", jh.getJHID()).find(XwaqgcJh.class); + //如果数据库中没有这要数据,就添加 + if (dbdjjh.size() == 0) { + dbcount = 1; + jh.save(); + } + } + + if (dbcount == 1) { + Intent intent = new Intent(); + intent.putExtra("isTask", true); + intent.setAction("com.rehome.zhdcoa.RECEIVER"); + LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(intent); + } + } else { + DataSupport.deleteAll(XwaqgcJh.class); + Intent intent = new Intent(); + intent.putExtra("isTask", false); + intent.setAction("com.rehome.zhdcoa.RECEIVER"); + LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(intent); + } + getDataInSQL(); + adapter.notifyDataSetChanged(); + } + } + } + + @Override + public void onFailed(int what, Response response) { + if (dialog != null && dialog.isShowing()) { + dialog.dismiss(); + } + } + }, true, true, "加载中...")); + } + //上传数据 private void uploadData() { diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt index d703339..85544bd 100644 --- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt +++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt @@ -174,8 +174,8 @@ class LoginActivity : BaseActivityOaToolbarViewBinding() { if (isApkInDebug(context)) { // 管理员 - binding.etUsername.setText("ZHPS_Admin") - binding.etPassword.setText("Rehome.zhps@996") +// binding.etUsername.setText("ZHPS_Admin") +// binding.etPassword.setText("Rehome.zhps@996") //公司内网215管理员 @@ -236,8 +236,8 @@ class LoginActivity : BaseActivityOaToolbarViewBinding() { //李耿 - binding.etUsername.setText("310261") - binding.etPassword.setText("!LLg770731") +// binding.etUsername.setText("310261") +// binding.etPassword.setText("!LLg770731") // binding.etUsername.setText("310534") // binding.etPassword.setText("abCd*1234") diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/MyAdviceActivity.java b/app/src/main/java/com/rehome/zhdcoa/ui/activity/MyAdviceActivity.java index cac5381..a3ae9db 100644 --- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/MyAdviceActivity.java +++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/MyAdviceActivity.java @@ -8,6 +8,7 @@ import com.rehome.zhdcoa.R; import com.rehome.zhdcoa.base.BaseActivity; import com.rehome.zhdcoa.bean.MyadviceBean; import com.rehome.zhdcoa.utils.ApplyListUtils; +import com.rehome.zhdcoa.weiget.LoadListView; /** * Created by ruihong on 2017/10/10. @@ -16,12 +17,14 @@ import com.rehome.zhdcoa.utils.ApplyListUtils; public class MyAdviceActivity extends BaseActivity implements View.OnClickListener, ApplyListUtils.OnItemClickListener { - ListView lv; + LoadListView lv; public String who = ""; private Intent intent; + private ApplyListUtils applyListUtils; + @Override public int getLayoutId() { return R.layout.activity_myadvice; @@ -30,10 +33,6 @@ public class MyAdviceActivity extends BaseActivity implements View.OnClickListen @Override public void initView() { lv = findViewById(R.id.lv); - } - - @Override - public void initData() { intent = getIntent(); if (intent.getStringExtra("result_advice").equals("1")) { @@ -41,7 +40,7 @@ public class MyAdviceActivity extends BaseActivity implements View.OnClickListen who = "me"; - ApplyListUtils.newBuilder() + applyListUtils = ApplyListUtils.newBuilder() .setListener(this) .setParams(Contans.LISTCODE.APPLYSUGGESTION,userInfo.getManid()) .setListView(lv) @@ -53,15 +52,29 @@ public class MyAdviceActivity extends BaseActivity implements View.OnClickListen who = "all"; - ApplyListUtils.newBuilder() + applyListUtils = ApplyListUtils.newBuilder() .setListener(this) .setParams(Contans.LISTCODE.APPLYSUGGESTION, "") .setListView(lv) .builder(this); - } + applyListUtils.setOnLoadMoreDataFinishListener(new ApplyListUtils.OnLoadMoreDataFinishListener() { + @Override + public void onFinish() { + lv.loadComplete(); + } + }); + + lv.setInterface(new LoadListView.ILoadListener() { + @Override + public void onLoad() { + applyListUtils.loadMoreData(); + } + }); + } - + @Override + public void initData() { } diff --git a/app/src/main/java/com/rehome/zhdcoa/utils/ApplyListUtils.java b/app/src/main/java/com/rehome/zhdcoa/utils/ApplyListUtils.java index 93a67d6..ca64eea 100644 --- a/app/src/main/java/com/rehome/zhdcoa/utils/ApplyListUtils.java +++ b/app/src/main/java/com/rehome/zhdcoa/utils/ApplyListUtils.java @@ -239,6 +239,7 @@ public class ApplyListUtils { showLog("----------------"); String result = response.get(); + page++; if(listcode.equals(Contans.LISTCODE.APPLYSUPPLIES)||listcode.equals(Contans.LISTCODE.APPLYFACILITIES)){ if (listcode.equals(Contans.LISTCODE.APPLYSUPPLIES)) { diff --git a/app/src/main/res/layout/activity_myadvice.xml b/app/src/main/res/layout/activity_myadvice.xml index 4a3c80c..b073eb9 100644 --- a/app/src/main/res/layout/activity_myadvice.xml +++ b/app/src/main/res/layout/activity_myadvice.xml @@ -6,7 +6,7 @@ -