1.1.5发布

master
hwf453 1 year ago
parent b597beada9
commit 5edc4493c0

@ -10,8 +10,8 @@ android {
applicationId "com.rehome.dywoa" applicationId "com.rehome.dywoa"
minSdk 24 minSdk 24
targetSdk 34 targetSdk 34
versionCode 15 versionCode 16
versionName "1.1.4" versionName "1.1.5"
multiDexEnabled true multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
//authorities //authorities

@ -240,6 +240,8 @@ public class Contans {
public static final String REFRESHDOWNLOADDJPLAN = "refreshDownloadDjPlan"; public static final String REFRESHDOWNLOADDJPLAN = "refreshDownloadDjPlan";
//刷新巡检工作底部统计 //刷新巡检工作底部统计
public static final String REFRESHDJSTATISTICS = "refreshDjStatistics"; public static final String REFRESHDJSTATISTICS = "refreshDjStatistics";
//刷新点检工作底部统计
public static final String REFRESHDJSINGLEPOINTUPLOADSTATISTICS = "refreshDjSingleUploadStatistics";
public final static String QFGD = "Q4GD/Q4GD_CKGL.ashx"; public final static String QFGD = "Q4GD/Q4GD_CKGL.ashx";
public final static String QFDDVICELIST = "Q4WorkOrder/Q4SBGL.ashx"; public final static String QFDDVICELIST = "Q4WorkOrder/Q4SBGL.ashx";

@ -46,8 +46,6 @@ public class UserInfoBean {
private String isScBm; private String isScBm;
//token http请求加入到header里面 //token http请求加入到header里面
private String token; private String token;
// 运行部 如果有值就是运行部,空值就不是运行部
private String yunQingDepartment="";
//一级部门 //一级部门
private String firstDeparmentId; private String firstDeparmentId;
private String firstDeparment; private String firstDeparment;
@ -178,14 +176,6 @@ public class UserInfoBean {
this.token = token; this.token = token;
} }
public String getYunQingDepartment() {
return yunQingDepartment;
}
public void setYunQingDepartment(String yunQingDepartment) {
this.yunQingDepartment = yunQingDepartment;
}
public String getFirstDeparmentId() { public String getFirstDeparmentId() {
return firstDeparmentId; return firstDeparmentId;
} }

@ -31,6 +31,8 @@ import com.luck.picture.lib.entity.LocalMedia
import com.rehome.dywoa.App import com.rehome.dywoa.App
import com.rehome.dywoa.AppManager import com.rehome.dywoa.AppManager
import com.rehome.dywoa.Contans import com.rehome.dywoa.Contans
import com.rehome.dywoa.DBModel.Djjh
import com.rehome.dywoa.DBModel.DjjhRwQy
import com.rehome.dywoa.DBModel.Gzlx import com.rehome.dywoa.DBModel.Gzlx
import com.rehome.dywoa.DBModel.GzlxQxData import com.rehome.dywoa.DBModel.GzlxQxData
import com.rehome.dywoa.DBModel.Jz import com.rehome.dywoa.DBModel.Jz
@ -39,6 +41,7 @@ import com.rehome.dywoa.DBModel.LxXjTjDropDown
import com.rehome.dywoa.DBModel.LxXjTjDropDownData import com.rehome.dywoa.DBModel.LxXjTjDropDownData
import com.rehome.dywoa.DBModel.XSJJHDataBean import com.rehome.dywoa.DBModel.XSJJHDataBean
import com.rehome.dywoa.DBModel.XSJJHXZDataBean import com.rehome.dywoa.DBModel.XSJJHXZDataBean
import com.rehome.dywoa.DBModel.XcjsInfo
import com.rehome.dywoa.DBModel.Xjjh import com.rehome.dywoa.DBModel.Xjjh
import com.rehome.dywoa.DBModel.Xydj import com.rehome.dywoa.DBModel.Xydj
import com.rehome.dywoa.DBModel.XydjQxData import com.rehome.dywoa.DBModel.XydjQxData
@ -52,21 +55,22 @@ import com.rehome.dywoa.R
import com.rehome.dywoa.base.BaseActivityOaToolbarViewBinding import com.rehome.dywoa.base.BaseActivityOaToolbarViewBinding
import com.rehome.dywoa.bean.ApkUpdateBean import com.rehome.dywoa.bean.ApkUpdateBean
import com.rehome.dywoa.bean.AppUpdateCommit import com.rehome.dywoa.bean.AppUpdateCommit
import com.rehome.dywoa.bean.ScxjjhBean.data import com.rehome.dywoa.bean.ScxjjhBean
import com.rehome.dywoa.bean.StatusInfo import com.rehome.dywoa.bean.StatusInfo
import com.rehome.dywoa.bean.StatusInfoSingleTask import com.rehome.dywoa.bean.StatusInfoSingleTask
import com.rehome.dywoa.bean.WaitForBean import com.rehome.dywoa.bean.WaitForBean
import com.rehome.dywoa.databinding.ActivityHomeBinding import com.rehome.dywoa.databinding.ActivityHomeBinding
import com.rehome.dywoa.entity.ScDjjhInfo
import com.rehome.dywoa.ui.fragment.HomeFragment import com.rehome.dywoa.ui.fragment.HomeFragment
import com.rehome.dywoa.ui.fragment.MineFragment import com.rehome.dywoa.ui.fragment.MineFragment
import com.rehome.dywoa.utils.GsonUtils import com.rehome.dywoa.utils.GsonUtils
import com.rehome.dywoa.utils.HttpListener import com.rehome.dywoa.utils.HttpListener
import com.rehome.dywoa.utils.NoProgresshttpUtils import com.rehome.dywoa.utils.NoProgresshttpUtils
import com.rehome.dywoa.utils.RSAUtils import com.rehome.dywoa.utils.RSAUtils
import com.rehome.dywoa.utils.SPUtils
import com.rehome.dywoa.utils.StatusBarUtil import com.rehome.dywoa.utils.StatusBarUtil
import com.rehome.dywoa.utils.UiUtlis import com.rehome.dywoa.utils.UiUtlis
import com.rehome.dywoa.weiget.toastviewbymyself import com.rehome.dywoa.weiget.toastviewbymyself
import com.sangfor.sdk.SFUemSDK
import com.yolanda.nohttp.NoHttp import com.yolanda.nohttp.NoHttp
import com.yolanda.nohttp.RequestMethod import com.yolanda.nohttp.RequestMethod
import com.yolanda.nohttp.rest.OnResponseListener import com.yolanda.nohttp.rest.OnResponseListener
@ -207,7 +211,10 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
} }
override fun initData() { override fun initData() {
//巡检项目删除过期数据
deleteXjExpirePlan() deleteXjExpirePlan()
//点检项目删除过期数据
deleteDjExpirePlan()
//巡检,点检待办 //巡检,点检待办
//waitForToDo() //waitForToDo()
//缺陷工单下拉数据 //缺陷工单下拉数据
@ -222,6 +229,7 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
getXjZhTjDropDown("lx"); getXjZhTjDropDown("lx");
} }
//巡检项目删除过期数据
private fun deleteXjExpirePlan(){ private fun deleteXjExpirePlan(){
val xjdListAll = DataSupport.where("download = ? and username = ?", "1", username).find(Xjjh::class.java) val xjdListAll = DataSupport.where("download = ? and username = ?", "1", username).find(Xjjh::class.java)
if(xjdListAll!=null&&xjdListAll.size>0){ if(xjdListAll!=null&&xjdListAll.size>0){
@ -240,7 +248,7 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
showLog("--------") showLog("--------")
showLog(sdFormat.format(calendar.time)) showLog(sdFormat.format(calendar.time))
if (Calendar.getInstance().after(calendarOne)) { if (Calendar.getInstance().after(calendarOne)) {
showLog("删除旧数据") showLog("删除巡检旧数据")
DataSupport.deleteAll( DataSupport.deleteAll(
XSJJHXZDataBean::class.java, XSJJHXZDataBean::class.java,
"zxid = ? and username = ?", "zxid = ? and username = ?",
@ -264,6 +272,52 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
} }
} }
//点检项目删除过期数据
private fun deleteDjExpirePlan(){
val djjhListAll = DataSupport.where("download = ? and username = ?", "1", username).find(Djjh::class.java)
if(djjhListAll!=null&&djjhListAll.size>0){
for (djjhItem in djjhListAll) {
showLog("-----djjhListAll-----")
showLog(GsonUtils.GsonString(djjhListAll))
if(!TextUtils.isEmpty(djjhItem.dqsj)){
//格式化日期的对象(转化成习惯的时间格式)
val sdFormat = SimpleDateFormat("yyyy-MM-dd HH:mm")
//静态方法getInstance()使用默认时区和语言环境获得一个日历。
val calendar = Calendar.getInstance()
val date = sdFormat.parse(djjhItem.dqsj)
val calendarOne = Calendar.getInstance()
calendarOne.time = date
showLog(sdFormat.format(calendarOne.time))
showLog("--------")
showLog(sdFormat.format(calendar.time))
if (Calendar.getInstance().after(calendarOne)) {
showLog("删除点检旧数据")
DataSupport.deleteAll(
DjjhRwQy::class.java,
"jhid = ? and username = ?",
djjhItem.jhid,
username
)
DataSupport.deleteAll(
XcjsInfo::class.java,
"jhid = ? and username = ?",
djjhItem.jhid,
username
)
DataSupport.deleteAll(
Djjh::class.java,
"jhid = ? and username = ?",
djjhItem.jhid,
username
)
}else{
showLog("之前")
}
}
}
}
}
private fun waitForToDo(){ private fun waitForToDo(){
var param = HashMap<String,String>() var param = HashMap<String,String>()
param["YHID"] = username param["YHID"] = username
@ -516,8 +570,10 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
showLog(result) showLog(result)
if(result == "1"){ if(result == "1"){
showLog("connect server success") showLog("connect server success")
//检查是否有需要上传的点 //检查巡检是否有需要上传的点
checkNeedUpLoadXjd() checkNeedUpLoadXj()
//检查点检是否有需要上传的点
checkNeedUpLoadDj()
} }
} }
} }
@ -527,31 +583,29 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
} }
}) })
} }
//检查是否有需要上传的点 //检查巡检是否有需要上传的点
private fun checkNeedUpLoadXjd() { private fun checkNeedUpLoadXj() {
//List<XSJJHXZDataBean> planNFC = where("scid = ? and username = ?", scid, username).find(XSJJHXZDataBean.class);
val xsjjhDataBeenList = val xsjjhDataBeenList =
DataSupport.where("checked = ? and username = ?","1", username).find<XSJJHDataBean>( DataSupport.where("checked = ? and username = ?","1", username).find<XSJJHDataBean>(
XSJJHDataBean::class.java XSJJHDataBean::class.java
) )
if (xsjjhDataBeenList != null && xsjjhDataBeenList.size > 0){ if (xsjjhDataBeenList != null && xsjjhDataBeenList.size > 0){
showLog("need upload") // showLog("need upload")
showLog(GsonUtils.GsonString(xsjjhDataBeenList[0])) // showLog(GsonUtils.GsonString(xsjjhDataBeenList[0]))
// showLog("存在已巡检数据,检测是否需要上传")
Log.i("app", "可上传")
for (itemXSJJHDataBean in xsjjhDataBeenList) { for (itemXSJJHDataBean in xsjjhDataBeenList) {
if(itemXSJJHDataBean.isUploaded){ if(itemXSJJHDataBean.isUploaded){
showLog("当前巡检点已上传") //showLog("当前巡检点已上传")
}else{ }else{
if (!TextUtils.isEmpty(itemXSJJHDataBean.photos)) { if (!TextUtils.isEmpty(itemXSJJHDataBean.photos)) {
//有图片需要上传 //有图片需要上传
uploadPhotoXjd(itemXSJJHDataBean) uploadPhotoXj(itemXSJJHDataBean)
}else{ }else{
//不需要上传图片,直接上传数据 //不需要上传图片,直接上传数据
//上传单个巡检点数据 //上传单个巡检点数据
uploadOnePointXjd(itemXSJJHDataBean); uploadOnePointXj(itemXSJJHDataBean);
} }
} }
} }
@ -559,8 +613,33 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
showLog("no need upload") showLog("no need upload")
} }
} }
//检查点检是否有需要上传的点
private fun checkNeedUpLoadDj() {
val djCheckedList =
DataSupport.where("checked = ? and username = ?","1", username).find<DjjhRwQy>(
DjjhRwQy::class.java
)
if (djCheckedList != null && djCheckedList.size > 0){
// showLog("need upload")
// showLog(GsonUtils.GsonString(djCheckedList))
// showLog("存在已点检数据,检测是否需要上传")
for (djCheckedItem in djCheckedList) {
if(djCheckedItem.isUploaded){
//showLog("当前点检点已上传")
}else{
//不需要上传图片,直接上传数据
//上传单个巡检点数据
uploadOnePointDj(djCheckedItem);
}
}
}else{
showLog("no need upload")
}
}
//巡检上传照片 //巡检上传照片
private fun uploadPhotoXjd(itemXSJJHDataBean: XSJJHDataBean) { private fun uploadPhotoXj(itemXSJJHDataBean: XSJJHDataBean) {
val url = Contans.IP + Contans.XJD_UPLOAD_PHOTO val url = Contans.IP + Contans.XJD_UPLOAD_PHOTO
showLog(url) showLog(url)
val request = val request =
@ -607,7 +686,7 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
if (info != null&&info.state == 1) { if (info != null&&info.state == 1) {
showLog("现场记事图片上传成功") showLog("现场记事图片上传成功")
//上传单个巡检点数据 //上传单个巡检点数据
uploadOnePointXjd(itemXSJJHDataBean); uploadOnePointXj(itemXSJJHDataBean);
}else{ }else{
showLog("现场记事图片上传失败") showLog("现场记事图片上传失败")
} }
@ -623,11 +702,11 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
}) })
} }
//上传单个巡检点 //上传单个巡检点
private fun uploadOnePointXjd(itemXSJJHDataBean: XSJJHDataBean) { private fun uploadOnePointXj(itemXSJJHDataBean: XSJJHDataBean) {
val url = Contans.IP + Contans.XSCB_PLAN_UPLOAD_TASK_ONE val url = Contans.IP + Contans.XSCB_PLAN_UPLOAD_TASK_ONE
showLog(url) showLog(url)
val request = NoHttp.createStringRequest(url, RequestMethod.POST) val request = NoHttp.createStringRequest(url, RequestMethod.POST)
val json = getJsonUploadSingleTask(itemXSJJHDataBean) val json = getJsonUploadSingleTaskXj(itemXSJJHDataBean)
request.setDefineRequestBodyForJson(json) request.setDefineRequestBodyForJson(json)
if (App.getInstance().userInfo != null && App.getInstance().userInfo.token != null) { if (App.getInstance().userInfo != null && App.getInstance().userInfo.token != null) {
@ -682,8 +761,60 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
} }
}) })
} }
private fun getJsonUploadSingleTask(itemXSJJHDataBean: XSJJHDataBean):String{ //上传单个巡检点
val datas = data() private fun uploadOnePointDj(djCheckedItem: DjjhRwQy) {
val url = Contans.IP + Contans.DJ_SINGLE_SC
showLog(url)
val request = NoHttp.createStringRequest(url, RequestMethod.POST)
val json = getJsonUploadSingleTaskDj(djCheckedItem)
request.setDefineRequestBodyForJson(json)
if (App.getInstance().userInfo != null && App.getInstance().userInfo.token != null) {
val token = App.getInstance().userInfo.token
val credential = "Bearer $token"
request.addHeader("Authorization", credential)
request.addHeader("token", token)
}
queueNoHttp.add<String>(6, request, object : OnResponseListener<String> {
override fun onStart(what: Int) {
}
override fun onSucceed(what: Int, response: Response<String>?) {
val result = response?.get()
showLog(result)
val info = GsonUtils.GsonToBean(result, StatusInfoSingleTask::class.java)
if (info != null&&info.state == 1) {
showLog("单条点检点上传成功")
val values = ContentValues()
values.put("uploaded", "1")
DataSupport.updateAll(
DjjhRwQy::class.java,
values,
"scid = ? ",
djCheckedItem.scid
)
//刷新点检工作底部统计
val intent = Intent(Contans.REFRESHDJSINGLEPOINTUPLOADSTATISTICS)
//发送广播,刷新点检工作底部统计
LocalBroadcastManager.getInstance(context).sendBroadcast(intent)
}
}
override fun onFailed(what: Int, response: Response<String>?) {
}
override fun onFinish(what: Int) {
}
})
}
private fun getJsonUploadSingleTaskXj(itemXSJJHDataBean: XSJJHDataBean):String{
val datas = ScxjjhBean.data()
datas.scid = itemXSJJHDataBean.scid datas.scid = itemXSJJHDataBean.scid
datas.dbh = itemXSJJHDataBean.dbh datas.dbh = itemXSJJHDataBean.dbh
@ -719,6 +850,43 @@ class HomeActivity : BaseActivityOaToolbarViewBinding<ActivityHomeBinding>() {
return json; return json;
} }
private fun getJsonUploadSingleTaskDj(djCheckedItem: DjjhRwQy):String{
val info = ScDjjhInfo()
info.isChecked = djCheckedItem.isChecked
info.scid = djCheckedItem.scid
info.cjjg = if (djCheckedItem.cjjg == null) "" else djCheckedItem.cjjg
info.jhid = if (djCheckedItem.jhid == null) "" else djCheckedItem.jhid
info.pointnum = if (djCheckedItem.pointnum == null) "" else djCheckedItem.pointnum
info.date = djCheckedItem.date
info.djr = App.getInstance().userInfo.manid
info.bzmc = SPUtils.get(context, Contans.SCBZBH, "") as String
info.fxnr = if (djCheckedItem.fxnr == null) "" else djCheckedItem.fxnr
info.smfx = if (djCheckedItem.isSMFX) "QRCode" else "NFC"
info.assetnum = djCheckedItem.assetnum
info.sbzt = "1"
info.status = "1"
if (!TextUtils.isEmpty(djCheckedItem.status)) {
if (djCheckedItem.status == "0") {
info.status = "0"
if (TextUtils.isEmpty(djCheckedItem.cjjg)) {
info.cjjg = "停用"
}
}
if (djCheckedItem.status == "2") {
info.status = "2"
if (TextUtils.isEmpty(djCheckedItem.cjjg)) {
info.cjjg = "备用"
}
}
}
val json = GsonUtils.GsonString(info);
showLog(json)
return json;
}
private fun checkConnectServer() { private fun checkConnectServer() {
var param = HashMap<String,String>() var param = HashMap<String,String>()
param["login"] = "dywoa"; param["login"] = "dywoa";

@ -189,8 +189,12 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
if (BuildConfig.LOG_ERROR) { if (BuildConfig.LOG_ERROR) {
//测试 //测试
binding.etUsername.setText("371522") // binding.etUsername.setText("371522")
binding.etPassword.setText("A000000a") // binding.etPassword.setText("A000000a")
//ceshi1
// binding.etUsername.setText("ceshi1")
// binding.etPassword.setText("A000000a")
// binding.etUsername.setText("CY00011") // binding.etUsername.setText("CY00011")
// binding.etPassword.setText("A000000a") // binding.etPassword.setText("A000000a")
@ -210,6 +214,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
// binding.etUsername.setText("972526") // binding.etUsername.setText("972526")
// binding.etPassword.setText("Wq248655") // binding.etPassword.setText("Wq248655")
} }
//http://10.25.188.126:8600/apkFiles/release/dywoaapp.apk //http://10.25.188.126:8600/apkFiles/release/dywoaapp.apk
//https://oa.dywzhny.com.cn/apkFiles/release/dywoaapp.apk //https://oa.dywzhny.com.cn/apkFiles/release/dywoaapp.apk
@ -799,7 +804,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
usernameLogin usernameLogin
) )
) { ) {
if((!TextUtils.isEmpty(userInfo.yunQingDepartment))&&(userInfo.yunQingDepartment.equals("运行部"))){ if((!TextUtils.isEmpty(userInfo.firstDeparment))&&(userInfo.firstDeparment.equals("运行部"))){
showToast("运行部为了支持巡检功能,支持离线登录,有效期一天。") showToast("运行部为了支持巡检功能,支持离线登录,有效期一天。")
App.getInstance().userInfo = userInfo App.getInstance().userInfo = userInfo
val intent = Intent(context, HomeActivity::class.java) val intent = Intent(context, HomeActivity::class.java)
@ -903,7 +908,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
usernameLogin usernameLogin
) )
) { ) {
if((!TextUtils.isEmpty(userInfo.yunQingDepartment))&&(userInfo.yunQingDepartment.equals("运行部"))){ if((!TextUtils.isEmpty(userInfo.firstDeparment))&&(userInfo.firstDeparment.equals("运行部"))){
return true return true
} }
if((!TextUtils.isEmpty(userInfo.firstDeparment))&&(userInfo.firstDeparment.equals("工程部"))){ if((!TextUtils.isEmpty(userInfo.firstDeparment))&&(userInfo.firstDeparment.equals("工程部"))){

@ -4,9 +4,12 @@ package com.rehome.dywoa.ui.activity.sbxdjgl;
import static org.litepal.crud.DataSupport.where; import static org.litepal.crud.DataSupport.where;
import android.Manifest; import android.Manifest;
import android.content.BroadcastReceiver;
import android.content.ContentValues; import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.database.Cursor; import android.database.Cursor;
import android.nfc.NfcAdapter; import android.nfc.NfcAdapter;
@ -20,6 +23,7 @@ import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
import androidx.core.app.ActivityCompat; import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
@ -70,10 +74,23 @@ public class SdjgzActivity extends BaseActivity {
TextView tv_no_checked; TextView tv_no_checked;
TextView tv_checked; TextView tv_checked;
TextView tv_uploaded; TextView tv_uploaded;
TextView tv_checkedAndNoUpload; TextView tv_checkedAndNoUploadDj;
ArrayList<DjjhRwQy> djjTotal = new ArrayList<>(); ArrayList<DjjhRwQy> djjTotal = new ArrayList<>();
private BroadcastReceiver myReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (Contans.REFRESHDJSINGLEPOINTUPLOADSTATISTICS.equals(action)) {
//showLog("REFRESHDJSINGLEPOINTUPLOADSTATISTICS");
//刷新底部统计页面
updateDataStatistics();
updateDataStatistics();
}
}
};
private void findView() { private void findView() {
lv = findViewById(R.id.lv); lv = findViewById(R.id.lv);
@ -84,7 +101,7 @@ public class SdjgzActivity extends BaseActivity {
tv_no_checked = findViewById(R.id.tv_no_checked); tv_no_checked = findViewById(R.id.tv_no_checked);
tv_checked = findViewById(R.id.tv_checked); tv_checked = findViewById(R.id.tv_checked);
tv_uploaded = findViewById(R.id.tv_uploaded); tv_uploaded = findViewById(R.id.tv_uploaded);
tv_checkedAndNoUpload = findViewById(R.id.tv_checkedAndNoUpload); tv_checkedAndNoUploadDj = findViewById(R.id.tv_checkedAndNoUploadDj);
} }
private List<DjAjhGzInfo> list; private List<DjAjhGzInfo> list;
@ -119,6 +136,10 @@ public class SdjgzActivity extends BaseActivity {
headView = View.inflate(this, R.layout.djajhgz_item, null); headView = View.inflate(this, R.layout.djajhgz_item, null);
headView.findViewById(R.id.head).setVisibility(View.VISIBLE); headView.findViewById(R.id.head).setVisibility(View.VISIBLE);
launcherResultQRCode = createActivityResultLauncher(); launcherResultQRCode = createActivityResultLauncher();
IntentFilter filter = new IntentFilter();
filter.addAction(Contans.REFRESHDJSINGLEPOINTUPLOADSTATISTICS);
LocalBroadcastManager.getInstance(SdjgzActivity.this).registerReceiver(myReceiver, filter);
} }
public void initData() { public void initData() {
@ -413,6 +434,13 @@ public class SdjgzActivity extends BaseActivity {
adapter.notifyDataSetChanged(); adapter.notifyDataSetChanged();
} }
@Override
protected void onDestroy() {
super.onDestroy();
// 注销广播接收器
LocalBroadcastManager.getInstance(SdjgzActivity.this).unregisterReceiver(myReceiver);
}
//处理NFC的数据 //处理NFC的数据
@Override @Override
public void handleNfc(String result) { public void handleNfc(String result) {
@ -473,7 +501,7 @@ public class SdjgzActivity extends BaseActivity {
List<DjjhRwQy> checkedList = DataSupport.where("checked = ? and username = ?", "1",username).find(DjjhRwQy.class); List<DjjhRwQy> checkedList = DataSupport.where("checked = ? and username = ?", "1",username).find(DjjhRwQy.class);
if(checkedList!=null&&checkedList.size()>0){ if(checkedList!=null&&checkedList.size()>0){
tv_checked.setText(String.valueOf(checkedList.size())); tv_checked.setText(String.valueOf(checkedList.size()));
showLog("-------检点数------"); showLog("-------检点数------");
showLog(GsonUtils.GsonString(checkedList)); showLog(GsonUtils.GsonString(checkedList));
} }
//已检已上传点数 //已检已上传点数
@ -486,9 +514,12 @@ public class SdjgzActivity extends BaseActivity {
//已检未上传点数 //已检未上传点数
List<DjjhRwQy> checkedAndNoUploadList = DataSupport.where("checked = ? and uploaded = ? and username = ?", "1","0",username).find(DjjhRwQy.class); List<DjjhRwQy> checkedAndNoUploadList = DataSupport.where("checked = ? and uploaded = ? and username = ?", "1","0",username).find(DjjhRwQy.class);
if(checkedAndNoUploadList!=null&&checkedAndNoUploadList.size()>0){ if(checkedAndNoUploadList!=null&&checkedAndNoUploadList.size()>0){
tv_checkedAndNoUpload.setText(String.valueOf(checkedAndNoUploadList.size())); tv_checkedAndNoUploadDj.setText(String.valueOf(checkedAndNoUploadList.size()));
showLog("-------已检未上传点数------"); showLog("-------已检未上传点数------");
showLog(GsonUtils.GsonString(checkedAndNoUploadList)); showLog(GsonUtils.GsonString(checkedAndNoUploadList));
}else{
tv_checkedAndNoUploadDj.setText("0");
showLog("-------已检未上传点数------");
} }
} }
} }

@ -272,6 +272,7 @@ public class SjcjFragment extends BaseFragment {
if (!cj.getCJJG().equals("")) { if (!cj.getCJJG().equals("")) {
ContentValues values = new ContentValues(); ContentValues values = new ContentValues();
values.put("checked", true); values.put("checked", true);
values.put("uploaded", "0");
values.put("CJJG", cj.getCJJG()); values.put("CJJG", cj.getCJJG());
values.put("fxnr", cj.getFxnr()); values.put("fxnr", cj.getFxnr());
values.put("status", "1"); values.put("status", "1");
@ -292,6 +293,7 @@ public class SjcjFragment extends BaseFragment {
//停用和备用被选中,可以不用填写采集结果 //停用和备用被选中,可以不用填写采集结果
ContentValues values = new ContentValues(); ContentValues values = new ContentValues();
values.put("checked", true); values.put("checked", true);
values.put("uploaded", "0");
values.put("CJJG", cj.getCJJG()); values.put("CJJG", cj.getCJJG());
values.put("fxnr", cj.getFxnr()); values.put("fxnr", cj.getFxnr());
values.put("status", cj.getRB3() ? "2" : "0"); values.put("status", cj.getRB3() ? "2" : "0");

@ -283,6 +283,9 @@ public class SxgzActivity extends BaseActivity {
tv_checkedAndNoUpload.setText(String.valueOf(checkedAndNoUploadList.size())); tv_checkedAndNoUpload.setText(String.valueOf(checkedAndNoUploadList.size()));
showLog("-------已检未上传点数------"); showLog("-------已检未上传点数------");
showLog(GsonUtils.GsonString(checkedAndNoUploadList)); showLog(GsonUtils.GsonString(checkedAndNoUploadList));
}else{
tv_checkedAndNoUpload.setText("0");
showLog("-------已检未上传点数------");
} }
} }

@ -52,7 +52,7 @@ public class XscbglActivity extends BaseActivity2 {
private String username; private String username;
private String[] str = {"待办任务", "巡检工作", "统计", "读取NFC数据", "缺陷工单录入"}; private String[] str = {"待办任务", "巡检工作", "统计", "读取NFC数据", "缺陷工单录入"};
private int[] imageId = {R.mipmap.icon_xs1, R.mipmap.icon6, R.mipmap.icon_task_count, R.mipmap.icon11, R.drawable.icon15}; private int[] imageId = {R.mipmap.icon_xs1, R.mipmap.icon6, R.mipmap.icon_xj_tj, R.mipmap.icon11, R.drawable.icon15};
private int[] colors = {R.drawable.radius_b1, R.drawable.radius_a4, R.drawable.radius_b3, R.drawable.radius_d1, R.drawable.radius_e4}; private int[] colors = {R.drawable.radius_b1, R.drawable.radius_a4, R.drawable.radius_b3, R.drawable.radius_d1, R.drawable.radius_e4};
private GridViewAdapter adapter; private GridViewAdapter adapter;

@ -165,7 +165,7 @@
android:textColor="@color/viewfinder_mask" android:textColor="@color/viewfinder_mask"
android:text="已检未上传:"/> android:text="已检未上传:"/>
<TextView <TextView
android:id="@+id/tv_checkedAndNoUpload" android:id="@+id/tv_checkedAndNoUploadDj"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="3dp" android:layout_marginStart="3dp"

@ -199,6 +199,7 @@
<TextView <TextView
android:id="@+id/tv_rate" android:id="@+id/tv_rate"
style="@style/dagerDetailRightStyle" style="@style/dagerDetailRightStyle"
android:layout_marginStart="1dp"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" /> android:layout_weight="1" />

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

@ -184,13 +184,13 @@
</style> </style>
<style name="dagerDetailLeftStyle"> <style name="dagerDetailLeftStyle">
<item name="android:gravity">center</item> <item name="android:gravity">center</item>
<item name="android:textSize">13sp</item> <item name="android:textSize">12sp</item>
<item name="android:textColor">@color/black</item> <item name="android:textColor">@color/black</item>
</style> </style>
<style name="dagerDetailRightStyle"> <style name="dagerDetailRightStyle">
<item name="android:layout_marginStart">5dp</item> <item name="android:layout_marginStart">5dp</item>
<item name="android:gravity">center|start</item> <item name="android:gravity">center|start</item>
<item name="android:textSize">13sp</item> <item name="android:textSize">12sp</item>
<item name="android:textColor">@color/black</item> <item name="android:textColor">@color/black</item>
</style> </style>
<style name="xjcjRightStyle"> <style name="xjcjRightStyle">

Loading…
Cancel
Save