巡检集成 缺陷工单

master
hwf453 1 year ago
parent 2f9fa55238
commit cfc2bd9285

@ -263,6 +263,7 @@
android:exported="false"
android:launchMode="singleInstance" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"

@ -2,31 +2,36 @@ package com.rehome.dywoa;
public class Contans {
// public static String IP = "http://192.168.2.175:8601/";
// public static String IP_INTRANET = "http://192.168.2.175:8601/";
// public static String IP_EXTRANET = "http://192.168.2.175:8601/";
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
// public static String IP = "http://192.168.2.21:8601/";
// public static String IP_INTRANET = "http://192.168.2.21:8601/";
// public static String IP_EXTRANET = "http://192.168.2.21:8601/";
// public static String SIS_TOKEN_IP = "http://10.25.188.117:8088/";
// public static String IP = "http://192.168.2.150:8601/";
// public static String IP_INTRANET = "http://192.168.2.150:8601/";
// public static String IP_EXTRANET = "http://192.168.2.150:8601/";
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
public static String IP = "http://192.168.2.150:8601/";
public static String IP_INTRANET = "http://192.168.2.150:8601/";
public static String IP_EXTRANET = "http://192.168.2.150:8601/";
public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
// public static String IP = "http://192.168.2.76:8601/";
// public static String IP_INTRANET = "http://192.168.2.76:8601/";
// public static String IP_EXTRANET = "http://192.168.2.76:8601/";
// public static String SIS_TOKEN_IP = "http://10.25.188.117:8088/";
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
// public static String IP = "http://192.168.6.100:8601/";
// public static String IP_INTRANET = "http://192.168.6.100:8601/";
// public static String IP_EXTRANET = "http://192.168.6.100:8601/";
// public static String SIS_TOKEN_IP = "http://10.25.188.117:8088/";
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
//APP登录接口本地服务器IP
// public static String IP = "http://192.168.2.29:8601/";
// public static String IP_INTRANET = "http://192.168.2.29:8601/";
// public static String IP_EXTRANET = "http://192.168.2.29:8601/";
// public static String SIS_TOKEN_IP = "http://10.25.188.117:8088/";
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
//APP登录接口厂内服务器IP
// public static String IP = "http://10.25.187.8:8601/";
@ -39,13 +44,13 @@ public class Contans {
//APP登录接口厂内服务器IP
public static String IP = "http://10.25.188.126:8601/";
//app内网
public static String IP_INTRANET = "http://10.25.188.126:8601/";
//app外网
public static String IP_EXTRANET = "http://10.25.188.126:8601/";
//SIS系统厂内IP
public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";
// public static String IP = "http://10.25.188.126:8601/";
// //app内网
// public static String IP_INTRANET = "http://10.25.188.126:8601/";
// //app外网
// public static String IP_EXTRANET = "http://10.25.188.126:8601/";
// //SIS系统厂内IP
// public static String SIS_TOKEN_IP = "https://sis.dywzhny.com.cn/";

@ -16,6 +16,7 @@ public class KksDataBean extends BaseListBean{
public static class Row {
private String id;
private String kksCode;
private String kksDesc;
private String equipmentCode;
private String equipmentDesc;
private String clasessCode;
@ -68,5 +69,13 @@ public class KksDataBean extends BaseListBean{
public void setParentCode(String parentCode) {
this.parentCode = parentCode;
}
public String getKksDesc() {
return kksDesc;
}
public void setKksDesc(String kksDesc) {
this.kksDesc = kksDesc;
}
}
}

@ -4,6 +4,7 @@ import android.Manifest
import android.content.Intent
import android.content.pm.PackageManager
import android.os.Handler
import android.text.TextUtils
import android.view.View
import android.widget.Toast
import androidx.activity.result.ActivityResultLauncher
@ -127,7 +128,16 @@ class KksSearchActivity : BaseActivityOaToolbarViewBinding<ActivityKksSearchBind
if (data != null) {
val qrCodeStr: String = data.getStringExtra("result").toString()
showLog(qrCodeStr)
getListData(qrCodeStr)
if(!TextUtils.isEmpty(qrCodeStr)){
if(qrCodeStr.startsWith("KK:",false)){
val qrCodeStrSub = qrCodeStr.replace("KK:","").trim()
getListData(qrCodeStrSub)
}else{
showToast("KKS码无法识别")
binding.tvNodata.visibility=View.VISIBLE
binding.llTop.visibility=View.GONE
}
}
}
}
}
@ -156,6 +166,7 @@ class KksSearchActivity : BaseActivityOaToolbarViewBinding<ActivityKksSearchBind
val row:KksDataBean.Row = bean.rows[0]
binding.tvId.text = row.id
binding.tvKks.text = row.kksCode
binding.tvKksDesc.text = row.kksDesc
binding.tvDevice.text = row.equipmentCode
binding.tvDeviceDesc.text = row.equipmentDesc
binding.tvDeviceFl.text = row.clasessCode

@ -189,15 +189,15 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
if (BuildConfig.LOG_ERROR) {
//测试
// binding.etUsername.setText("371522")
// binding.etPassword.setText("A000000a")
binding.etUsername.setText("371522")
binding.etPassword.setText("A000000a")
// binding.etUsername.setText("371543")
// binding.etPassword.setText("Dyw@2024")
// binding.etUsername.setText("TD-00002")
// binding.etUsername.setText("TD00002")
// binding.etPassword.setText("A000000a")
// binding.etUsername.setText("CY-00001")
@ -539,7 +539,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
//val json: String = "Ms97MbjVaypr+CF04BTQ+Y7hbYp+orLZbXM2u+I+PZKSPSSaqR1dcuM3tsig3UpJ7s2qEw5DsJcVd0t4eJM79ABUFWW/0Nplhx37+6jR2YVaSJgA30L0O2FbuyG7SOjP0qfISNaN1L8eC3a7W5oFPpHxkZdxUf5sxJIQHA2c6lCI+Mo/BUgU1MgTIjM3puiWx99mvxOyl9k2oLZUjcjMOygzNUYYD21SQYQ6dtvdVz3iAtqeJ+0EVCtScPXePG/CH/s0Ti/VS54/KSrlRVfdn5s2pHqw5fd2BZX+ZGtIWTGpWb+Wt1ZtrPXPdv/r1Zx84Zcw0EqKicieeuYpfUH+eg==";
val url = Contans.IP + Contans.APPLOGINRSA
//val url = "http://192.168.2.21:8601/" + Contans.APPLOGINRSA
//val url = "http://192.168.2.150:8601/" + Contans.APPLOGINRSA
val request = NoHttp.createStringRequest(url, RequestMethod.POST)
@ -940,7 +940,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding<ActivityLoginBinding>() {
param["login"] = "dywoa";
val json = GsonUtils.GsonString(param)
val url = Contans.IP + Contans.check_server_connect
//val url = "http://192.168.2.21:8601/" + Contans.check_server_connect
//val url = "http://192.168.2.150:8601/" + Contans.check_server_connect
showLog(url)
showLog(json)
val request = NoHttp.createStringRequest(

@ -282,6 +282,7 @@ class QxgdListActivity : BaseActivityOaToolbarViewBinding<ActivityQxgdListBindin
request.add("jz", qxItemUpload.jz)
request.add("zy", qxItemUpload.zy)
request.add("xydj", qxItemUpload.xydj)
request.add("gzlx", qxItemUpload.gzlx)
request.add("bgr", username)
request.add("gzqx", qxItemUpload.gzqx)
request.add("date", qxItemUpload.date)
@ -340,6 +341,15 @@ class QxgdListActivity : BaseActivityOaToolbarViewBinding<ActivityQxgdListBindin
qxSelectList.clear()
}
}
} else if (info != null && info.state != 1) {
if (TextUtils.isEmpty(info.msg)) {
showLog("缺陷工单上传失败")
showToast("缺陷工单上传失败")
} else {
showLog("缺陷工单上传失败")
showLog(info.msg)
showToast(info.msg)
}
}else{
showLog("缺陷工单上传失败")
}

@ -127,14 +127,17 @@ import com.rehome.dywoa.utils.BitmapUtil;
import com.rehome.dywoa.utils.FullyGridLayoutManager;
import com.rehome.dywoa.utils.GsonUtils;
import com.rehome.dywoa.utils.HttpListener;
import com.rehome.dywoa.utils.HttpResponseListener;
import com.rehome.dywoa.utils.NohttpUtils;
import com.rehome.dywoa.utils.SPUtils;
import com.rehome.dywoa.utils.UiUtlis;
import com.rehome.dywoa.weiget.WaitDialog;
import com.yalantis.ucrop.UCrop;
import com.yalantis.ucrop.UCropImageEngine;
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;
@ -154,8 +157,6 @@ import top.zibin.luban.OnRenameListener;
public class SQxgdlrfActivity extends BaseActivity {
// QxgdListActivity
EditText etGd;
EditText etMs;
Spinner et_zy;
@ -232,6 +233,9 @@ public class SQxgdlrfActivity extends BaseActivity {
private QxgdInfo mQxgdInfo;
private RequestQueue queue;
private WaitDialog dialog;
private void findView() {
@ -262,6 +266,25 @@ public class SQxgdlrfActivity extends BaseActivity {
btnSc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!TextUtils.isEmpty(et_kks.getText().toString())
&& !TextUtils.isEmpty(etMs.getText().toString())) {
if(isEdit){
//编辑,上传
mData.clear();
mData.addAll(mAdapter.getData());
if (updateData()) {
showToast("保存成功");
//clearView();
}
}else{
//新增,不保存直接上传
mData.clear();
mData.addAll(mAdapter.getData());
uploadDataByNoSave();
}
} else {
showToast("你还有信息未填写");
}
//scData();
}
});
@ -311,8 +334,11 @@ public class SQxgdlrfActivity extends BaseActivity {
@Override
public void initView() {
username = App.getInstance().getUserInfo().getManid();
queue = NoHttp.newRequestQueue(1);
dialog = new WaitDialog(context, "上传中...");
findView();
Intent intent = getIntent();
isEdit = intent.getBooleanExtra("edit",false);
editIndex = intent.getIntExtra("index",0);
@ -343,6 +369,7 @@ public class SQxgdlrfActivity extends BaseActivity {
}
});
btnSc.setVisibility(View.GONE);
}else{
initToolbar("缺陷工单新增", "缺陷管理", new View.OnClickListener() {
@Override
@ -374,6 +401,12 @@ public class SQxgdlrfActivity extends BaseActivity {
initSpinnerGzlx();
if(isEdit){
getDataInSqlite();
}else{
Intent intent = getIntent();
String kksCode = intent.getStringExtra("kks");
if(!TextUtils.isEmpty(kksCode)){
et_kks.setText(kksCode);
}
}
}
@ -393,7 +426,14 @@ public class SQxgdlrfActivity extends BaseActivity {
//返回的文本内容
String qrCodeStr = resultIntent.getStringExtra("result");
showLog(qrCodeStr);
et_kks.setText(qrCodeStr);
if(!TextUtils.isEmpty(qrCodeStr)){
if(qrCodeStr.startsWith("KK:")){
String qrCodeStrSub = qrCodeStr.replace("KK:","").trim();
et_kks.setText(qrCodeStrSub);
}else{
showToast("KKS码无法识别");
}
}
}
}
});
@ -434,9 +474,23 @@ public class SQxgdlrfActivity extends BaseActivity {
private void initSpinnerGzlx() {
adapterGzlx = new SpinnerAdapter(gzlxs, context);
et_gzlx.setAdapter(adapterGzlx);
//初始化响应等级选择
int itemGzlx = -1;
for (int i = 0; i < gzlxs.size(); i++) {
if (gzlxs.get(i).getValue().equals("CM(消缺)")) {
itemGzlx = i;
break;
}
}
if (itemGzlx != -1) {
et_gzlx.setSelection(itemGzlx);
}
}
private void scData() {
//缺陷工单,如果缺陷工单为空,就没有上传
List<QxgdInfo> infos = DataSupport.findAll(QxgdInfo.class);
if (infos.size() != 0) {
@ -605,6 +659,134 @@ public class SQxgdlrfActivity extends BaseActivity {
return info.save();
}
public void uploadDataByNoSave() {
finalList.clear();
for (LocalMedia media : mData) {
//finalList.add(media.getCompressPath());
if(media.getCompressPath()!=null){
finalList.add(media.getCompressPath());
}else{
if(media.getSandboxPath()!=null){
finalList.add(media.getSandboxPath());
}
}
showLog(new Gson().toJson(media));
}
showLog(finalList.toString().toLowerCase());
QxgdInfo info = new QxgdInfo();
info.setGzqx(UiUtlis.getText(etMs));
info.setKks(UiUtlis.getText(et_kks));
info.setZy(zys.get(et_zy.getSelectedItemPosition()).getKey());
info.setJz(jzs.get(et_jz.getSelectedItemPosition()).getKey());
info.setXydj(xydjs.get(et_xydj.getSelectedItemPosition()).getKey());
info.setGzlx(gzlxs.get(et_gzlx.getSelectedItemPosition()).getKey());
info.setZyDesc(zys.get(et_zy.getSelectedItemPosition()).getValue());
info.setJzDesc(jzs.get(et_jz.getSelectedItemPosition()).getValue());
info.setXydjDesc(xydjs.get(et_xydj.getSelectedItemPosition()).getValue());
info.setGzlxDesc(gzlxs.get(et_gzlx.getSelectedItemPosition()).getValue());
info.setBgr(username);
info.setUsername(username);
info.setDate(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));
if(finalList.size()>0){
info.setPhotos(new Gson().toJson(mData));
}
upLoadQx(info);
}
//上传单条缺陷工单
private void upLoadQx(QxgdInfo qxItemUpload) {
String url = Contans.IP + Contans.XJD_UPLOAD_QX;
showLog(url);
Request request = NoHttp.createStringRequest(url, RequestMethod.POST);
request.add("kks", qxItemUpload.getKks());
request.add("jz", qxItemUpload.getJz());
request.add("zy", qxItemUpload.getZy());
request.add("xydj", qxItemUpload.getXydj());
request.add("gzlx", qxItemUpload.getGzlx());
request.add("bgr", username);
request.add("gzqx", qxItemUpload.getGzqx());
request.add("date", qxItemUpload.getDate());
if (App.getInstance().getUserInfo() != null && App.getInstance().getUserInfo().getToken() != null) {
String token = App.getInstance().getUserInfo().getToken();
String credential = "Bearer "+token;
request.addHeader("Authorization", credential);
request.addHeader("token", token);
showLog(request.url());
}
if (!TextUtils.isEmpty(qxItemUpload.getPhotos())) {
//List<LocalMedia> mDataTemp = GsonUtils.GsonToList(qxItemUpload.getPhotos(),LocalMedia.class);
Gson gson = new Gson();
List<LocalMedia> mDataTemp = gson.fromJson(qxItemUpload.getPhotos(), new TypeToken<List<LocalMedia>>() {}.getType());
//gson.fromJson(qxItemUpload.getPhotos(),new TypeToken<List<LocalMedia>>() {}.getType());
// = gson.fromJson<List<LocalMedia>>(
// qxItemUpload.photos,
// object : TypeToken<List<LocalMedia?>?>() {}.type
// )
for (LocalMedia localMedia : mDataTemp) {
showLog(new Gson().toJson(localMedia));
if(localMedia.getCompressPath()!=null){
request.add("file", new File(localMedia.getCompressPath()));
}else{
if(localMedia.getSandboxPath()!=null){
request.add("file", new File(localMedia.getSandboxPath()));
}
}
}
}
if (dialog != null) {
dialog.show();
}
queue.add(5, request, new HttpResponseListener<>(SQxgdlrfActivity.this, request, new HttpListener<String>() {
@Override
public void onSucceed(int what, Response<String> response) {
if (dialog != null && dialog.isShowing()) {
dialog.dismiss();
}
String result = response.get();
showLog(result);
com.rehome.dywoa.bean.StatusInfo info = GsonUtils.GsonToBean(result, com.rehome.dywoa.bean.StatusInfo.class);
if (info != null&&info.getState() == 1) {
showLog("缺陷工单上传成功");
showToast("缺陷工单上传成功");
clearView();
}else if (info != null&&info.getState() != 1) {
if(TextUtils.isEmpty(info.getMsg())){
showLog("缺陷工单上传失败");
showToast("缺陷工单上传失败");
}else{
showLog(info.getMsg());
showToast(info.getMsg());
}
}else{
showLog("缺陷工单上传失败");
showToast("缺陷工单上传失败");
}
}
@Override
public void onFailed(int what, Response<String> response) {
if (dialog != null && dialog.isShowing()) {
dialog.dismiss();
}
}
}, true, false, ""));
}
public boolean updateData() {
finalList.clear();
for (LocalMedia media : mData) {

@ -5,6 +5,7 @@ import android.content.ContentValues;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
@ -310,6 +311,33 @@ public class SbxjcjsbActivity extends BaseActivity {
//更新编辑的内容
updateItem(xjcjFragment.getCJJG(), item - 1);
}
if(xsjjhDataBeanArrayList!=null&&xsjjhDataBeanArrayList.size()==1){
//只有一条数据
if(item==xsjjhDataBeanArrayList.size()){
Handler handler = new Handler();
handler.postDelayed(new Runnable(){
@Override
public void run() {
finish();
}
}, 2000);
}
}
if(xsjjhDataBeanArrayList!=null&&xsjjhDataBeanArrayList.size()>1){
//有多条数据
//只有一条数据
if(item==xsjjhDataBeanArrayList.size()){
Handler handler = new Handler();
handler.postDelayed(new Runnable(){
@Override
public void run() {
finish();
}
}, 2000);
}
}
} else {
showToast("没有采集结果");
}

@ -419,7 +419,7 @@ public class SxgzActivity extends BaseActivity {
public void handleNfc(String result) {
// result = "045997529E0F91";
//result = "04818DEAC21B91";
result = "043F9CEAC21B91";
if(TextUtils.isEmpty(result)){
return;

@ -24,6 +24,7 @@ import com.rehome.dywoa.DBModel.XjjhList;
import com.rehome.dywoa.R;
import com.rehome.dywoa.bean.GridViewBean;
import com.rehome.dywoa.bean.XsRequestInfo;
import com.rehome.dywoa.ui.activity.sbxdjgl.SQxgdlrfActivity;
import com.rehome.dywoa.utils.GsonUtils;
import com.rehome.dywoa.utils.HttpListener;
import com.rehome.dywoa.utils.NoProgresshttpUtils;
@ -50,9 +51,9 @@ public class XscbglActivity extends BaseActivity2 {
private String username;
private String[] str = {"待办任务", "巡检工作", "读取NFC数据"};
private int[] imageId = {R.mipmap.icon_xs1, R.mipmap.icon6, R.mipmap.icon11};
private int[] colors = {R.drawable.radius_b1, R.drawable.radius_a4, R.drawable.radius_d1};
private String[] str = {"待办任务", "巡检工作", "读取NFC数据", "缺陷工单录入"};
private int[] imageId = {R.mipmap.icon_xs1, R.mipmap.icon6, R.mipmap.icon11, R.drawable.icon15};
private int[] colors = {R.drawable.radius_b1, R.drawable.radius_a4, R.drawable.radius_d1, R.drawable.radius_e4};
private GridViewAdapter adapter;
private BroadcastReceiver myReceiver = new BroadcastReceiver() {
@ -111,6 +112,10 @@ public class XscbglActivity extends BaseActivity2 {
intent = new Intent(XscbglActivity.this, NFCInfoActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
break;
case 3:
intent = new Intent(XscbglActivity.this, SQxgdlrfActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
break;
}
if (intent != null) {
startActivity(intent);

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#185cbc" />
<corners android:radius="@dimen/radiussize" />
</shape>

@ -86,6 +86,36 @@
android:textColor="@color/black"
android:textSize="18sp"/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="15px" />
<LinearLayout
android:layout_width="match_parent"
android:gravity="center_vertical"
style="@style/logItemStyle">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/selector_list_item"
android:gravity="center_vertical"
android:padding="20px"
android:text="KKS描述:"
android:textColor="@color/black"
style="@style/logItemTextStyle" />
<TextView
android:id="@+id/tv_kks_desc"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="left|center_vertical"
android:text=""
android:background="@drawable/selector_list_item"
android:textColor="@color/black"
android:textSize="18sp"/>
</LinearLayout>
<View
android:layout_width="match_parent"

@ -85,8 +85,7 @@
android:layout_weight="1"
android:layout_height="@dimen/px_60"
app:must="true"
android:hint="请扫码,不允许手工录入"
android:enabled="false"
android:hint="请扫码或手工录入kks码"
android:textColor="#555555"
android:textSize="@dimen/px_25" />
<TextView
@ -248,7 +247,7 @@
<Button
android:id="@+id/btn_sc"
style="@style/button_xz"
android:visibility="gone"
android:visibility="visible"
android:layout_width="@dimen/px_200"
android:text="上传" />
</LinearLayout>

@ -101,7 +101,7 @@
style="@style/dagerDetailLeftStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="漏检点数:" />
android:text="缺陷编号:" />
<TextView
android:id="@+id/tv_gongdan_code"

Loading…
Cancel
Save