修改 巡检

master
wanghao 5 months ago
parent 51444dd042
commit 2fb4d31109

@ -89,7 +89,7 @@ public class BFActivity extends BaseActivity implements TakePictureDialog.dialog
}
public void bfTackPhoto(View view) {
takePhoto();
takePhoto(false,"");
}
public void bfShowPhoto(View view) {

@ -43,6 +43,7 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
private ActivityCheckBinding binding;
private CheckAdapter adapter;
private List<Stock> list;
private List<Stock> list1;
private List<String> selectList;
private ObservableBoolean state;
private ObservableBoolean checkState;
@ -51,7 +52,7 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
private long id;
private long inspectionId;
private int backIndex;
private String code;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -76,10 +77,11 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
}
});*/
Intent intent = getIntent();
id = intent.getLongExtra("id", 0);
id = intent.getLongExtra("id", 0);
backIndex = intent.getIntExtra("backIndex", 0);
inspectionId = intent.getLongExtra("inspectionId", 0);
String code = intent.getStringExtra("code");
code = intent.getStringExtra("code");
initRequest(code);
inputDialog = new InPutDialog(this);
inputDialog.setInPutDialogCall(this);
@ -99,12 +101,13 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
if (body.getCode() == 0) {
list = gson.fromJson(body.getData().toString(), new TypeToken<List<Stock>>() {
}.getType());
if (list == null || list.isEmpty()) {
/* if (list == null || list.isEmpty()) {
Toast.makeText(CheckActivity.this, "没有维护巡检区域", Toast.LENGTH_SHORT).show();
return;
}
adapter.setList(list);
adapter.notifyDataSetChanged();
}*/
list1 = new ArrayList<>();
adapter.setList(list1);
// adapter.notifyDataSetChanged();
return;
}
Toast.makeText(CheckActivity.this, body.getMsg(), Toast.LENGTH_SHORT).show();
@ -121,17 +124,29 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
public void sanRfid(List<Reader.TAGINFO> epcs) {
epcs.forEach(t -> {
var epc = Tools.Bytes2HexString(t.EpcId, t.EpcId.length);
if (tagList.contains(t)) {
try {
if (!epc.substring(0,8).equals("53574C44")) return;
}catch (Exception e){
return;
}
tagList.add(epc);
var stock = new Stock();
stock.setEpcCode(HexAscii.hex2Str(epc));
var index = list.indexOf(stock);
if (index != -1) {
list.get(index).setState("正常");
if (tagList.contains(epc)) {
return;
}
tagList.add(epc);
String s = HexAscii.hex2Str(epc);
var stock = new Stock();
stock.setEpcCode(s);
stock.setLocationCode(code);
stock.setState("正常");
list1.add(stock);
// var stock = new Stock();
// stock.setEpcCode(HexAscii.hex2Str(epc));
// var index = list.indexOf(stock);
// if (index != -1) {
// list.get(index).setState("正常");
// }
});
adapter.notifyDataSetChanged();
@ -139,18 +154,17 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
// 完成巡检,提交数据
public void check_submit(View view) {
var type = list.stream().anyMatch(t -> t.getState().equals("未检"));
if (type) {
// var type = list.stream().anyMatch(t -> t.getState().equals("未检"));
// if (type) {
if (list.size()>list1.size()) {
Toast.makeText(this, "未检完全部轮挡,不允许提交", Toast.LENGTH_SHORT).show();
return;
}
OkGo.<MyResult>post(url + "/xj/submit").tag(this)
.params("tableId", id)
.params("json", gson.toJson(list))
.params("inspectionId",inspectionId)
.params("user", SharedPreferencesUtils.getstring("user",""))
.addFileParams("files",files)
.execute(new MyRecultCall(dialog, this) {
OkGo.<MyResult>post(url + "/xj/submit").tag(this).params("tableId", id)
.params("json", gson.toJson(list1))
.params("inspectionId", inspectionId)
.params("user", SharedPreferencesUtils.getstring("user", ""))
.addFileParams("files", files).execute(new MyRecultCall(dialog, this) {
@Override
public void onSuccess(Response<MyResult> response) {
super.onSuccess(response);
@ -227,7 +241,7 @@ public class CheckActivity extends BaseActivity implements AdapterClickCall, InP
// 拍照
public void check_tackPhoto(View view) {
takePhoto();
takePhoto(true, code);
}
// 显示拍的照片

@ -21,6 +21,7 @@ import com.example.beijing_daxing.base.MyResult;
import com.example.beijing_daxing.been.CheckTaskInfo;
import com.example.beijing_daxing.been.Stock;
import com.example.beijing_daxing.databinding.ActivityCheckListBinding;
import com.example.beijing_daxing.dialog.InPutDialog;
import com.example.beijing_daxing.uitls.SharedPreferencesUtils;
import com.google.gson.reflect.TypeToken;
import com.lzy.okgo.OkGo;
@ -29,11 +30,13 @@ import com.uhf.api.cls.Reader;
import java.util.List;
public class CheckListActivity extends BaseActivity implements AdapterClickCall {
public class CheckListActivity extends BaseActivity implements CheckListAdapter.AdapterClickCall, InPutDialog.InPutDialogCall {
private CheckListAdapter adapter;
private List<CheckTaskInfo> list;
private ObservableBoolean createState;
private String[] stateList;
private InPutDialog inputDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -43,18 +46,28 @@ public class CheckListActivity extends BaseActivity implements AdapterClickCall
createState = new ObservableBoolean();
createState.set(false);
binding.setState(createState);
stateList = getResources().getStringArray(R.array.checkState);
binding.checkListState.setOnItemClickListener((parent, view, position, id) -> {
initRequest(stateList[position]);
inputDialog = new InPutDialog(this);
inputDialog.setInPutDialogCall(this);
stateList = getResources().getStringArray(R.array.checkState);
binding.checkListState.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String state = stateList[position];
Log.e("TAG", "onItemSelected:" + state);
initRequest(state);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
}
private void initRequest(String state) {
OkGo.<MyResult>post(url + "/inspection/selectTask")
.params("state", SharedPreferencesUtils.getstring("user", ""))
.params("state", state)
.execute(new MyRecultCall(dialog, this) {
@SuppressLint("NotifyDataSetChanged")
@Override
@ -76,7 +89,6 @@ public class CheckListActivity extends BaseActivity implements AdapterClickCall
}
public void check_start(View view) {
OkGo.<MyResult>post(url + "/xj/createTask")
.params("user", SharedPreferencesUtils.getstring("user", ""))
@ -97,7 +109,6 @@ public class CheckListActivity extends BaseActivity implements AdapterClickCall
@Override
public void clickItem(int index) {
Intent intent = new Intent(this, CheckActivity.class);
CheckTaskInfo checkTaskInfo = list.get(index);
intent.putExtra("id", checkTaskInfo.getId());
intent.putExtra("inspectionId", checkTaskInfo.getInspectionId());
@ -105,6 +116,12 @@ public class CheckListActivity extends BaseActivity implements AdapterClickCall
intent.putExtra("backIndex", index);
startActivityForResult(intent, 1);
}
private int skipIndex;
@Override
public void clickItemSkip(int index) {
skipIndex=index;
inputDialog.show();
}
@SuppressLint("NotifyDataSetChanged")
@Override
@ -114,9 +131,31 @@ public class CheckListActivity extends BaseActivity implements AdapterClickCall
if (requestCode == 1 && data != null) {
int index = data.getIntExtra("backIndex", 0);
Log.e("TAG", "onActivityResult:" + index);
list.get(index).setTaskState("完成");
list.get(index).setTaskState("完成");
adapter.notifyDataSetChanged();
}
}
@Override
public void inPutDialogReculi(String name) {
CheckTaskInfo checkTaskInfo = list.get(skipIndex);
OkGo.<MyResult>post(url + "/inspection/skipTask")
.params("remark", name)
.params("tableId", checkTaskInfo.getId())
.execute(new MyRecultCall(dialog, this) {
@SuppressLint("NotifyDataSetChanged")
@Override
public void onSuccess(Response<MyResult> response) {
super.onSuccess(response);
MyResult body = response.body();
if (body.getCode() == 0) {
checkTaskInfo.setTaskState("跳过");
adapter.notifyDataSetChanged();
}
}
});
inputDialog.dismiss();
}
}

@ -75,11 +75,11 @@ public class HomePageActivity extends AppCompatActivity {
List<HomeIcon> list = new ArrayList<>();
list.add(new HomeIcon(R.mipmap.home_in1, "轮挡入库", InActivity.class));
list.add(new HomeIcon(R.mipmap.home_out1, "轮挡领用出库", OutActivity.class));
list.add(new HomeIcon(R.mipmap.home_store_check, "仓库盘点", StoreCheckActivity.class));
// list.add(new HomeIcon(R.mipmap.home_store_check, "仓库盘点", StoreCheckActivity.class));
list.add(new HomeIcon(R.mipmap.home_check, "轮挡巡检", CheckListActivity.class));
list.add(new HomeIcon(R.mipmap.home_bf, "轮挡报废", BFActivity.class));
list.add(new HomeIcon(R.mipmap.home_in, "废品入库", FpInActivity.class));
list.add(new HomeIcon(R.mipmap.home_out, "废品出库", FpOutActivity.class));
// list.add(new HomeIcon(R.mipmap.home_out, "废品出库", FpOutActivity.class));
list.add(new HomeIcon(R.mipmap.home_out, "功率设置", SetingPowerActivity.class));
var intent = getIntent();
try {

@ -9,15 +9,10 @@ import android.widget.TextView;
import androidx.databinding.BindingAdapter;
import androidx.databinding.DataBindingUtil;
import androidx.recyclerview.widget.RecyclerView;
import com.example.beijing_daxing.BR;
import com.example.beijing_daxing.R;
import com.example.beijing_daxing.base.AdapterClickCall;
import com.example.beijing_daxing.been.CheckTaskInfo;
import com.example.beijing_daxing.been.Stock;
import com.example.beijing_daxing.databinding.ItemCheckBinding;
import com.example.beijing_daxing.databinding.ItemCheckListBinding;
import java.util.List;
/**
@ -50,6 +45,7 @@ public class CheckListAdapter extends RecyclerView.Adapter<CheckListAdapter.MyVi
var binding = holder.getBinding();
binding.setVariable(BR.vm, list.get(position));
binding.checkListStart.setOnClickListener(v -> call.clickItem(position));
binding.checkListSkip.setOnClickListener(v -> call.clickItemSkip(position));
binding.executePendingBindings();
}
@ -78,8 +74,15 @@ public class CheckListAdapter extends RecyclerView.Adapter<CheckListAdapter.MyVi
public static void setCustomBackground(TextView textView, String taskState) {
if ("待完成".equals(taskState)) {
textView.setBackgroundResource(R.drawable.state_n_bg);
} else {
} else if ("已完成".equals(taskState)) {
textView.setBackgroundResource(R.drawable.state_y_bg);
} else {
textView.setBackgroundResource(R.drawable.state_j_bg);
}
}
public interface AdapterClickCall {
void clickItem(int index);
void clickItemSkip(int index);
}
}

@ -134,9 +134,12 @@ public class BaseActivity extends AppCompatActivity {
public Uri img_uri;
public SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
public SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
private boolean addWatermarkType;
private String addWatermarkLocation;
// 拍照
public void takePhoto() {
public void takePhoto(boolean type,String location) {
this.addWatermarkType=type;
addWatermarkLocation=location;
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
}
@ -177,8 +180,10 @@ public class BaseActivity extends AppCompatActivity {
try {
Log.e("TAG", "onActivityResult:" + img_uri.getPath());
bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(img_uri));
// 添加水印
bitmap = addWatermark(bitmap);
if (addWatermarkType){
// 添加水印
bitmap = addWatermark(bitmap);
}
FileOutputStream outputStream = new FileOutputStream(outputImage);
bitmap.compress(Bitmap.CompressFormat.JPEG, 50, outputStream);
takePhotoCall(outputImage, bitmap);
@ -208,7 +213,7 @@ public class BaseActivity extends AppCompatActivity {
LocalDate today = LocalDate.now(ZoneId.systemDefault());
// 获取当前日期是周几
DayOfWeek dayOfWeek = today.getDayOfWeek();
canvas.drawText("机位:101", 10, h - 400, paint);
canvas.drawText("机位:"+addWatermarkLocation, 10, h - 400, paint);
canvas.drawText(dateFormat.format(new Date()), 10, h - 200, paint);
canvas.drawText(strings[dayOfWeek.getValue()], 10, h - 20, paint);
return result;

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

@ -158,7 +158,22 @@
android:background="@color/white"
android:padding="5dp"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="35dp">
<TextView
android:layout_width="50dp"
android:layout_height="match_parent"
android:text="总数:"
android:gravity="center"/>
<TextView
android:layout_width="100dp"
android:layout_height="match_parent"
android:text=""
android:textColor="@color/blue"
android:gravity="center"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="55dp"

@ -43,10 +43,10 @@
android:background="@color/white" />
<TextView
android:id="@+id/check_list_start"
style="@style/item_text_style"
android:layout_width="115dp"
android:layout_height="match_parent"
android:text="@{vm.locationCode}"
/>
@ -70,12 +70,11 @@
android:background="@color/white" />
<ImageView
android:id="@+id/check_list_start"
android:id="@+id/check_list_skip"
style="@style/item_text_style"
android:layout_width="63dp"
android:layout_height="match_parent"
android:src="@mipmap/ic_start"
android:src="@mipmap/ic_jump"
android:visibility='@{vm.taskState.equals("待完成")?View.VISIBLE:View.GONE}'
android:padding="5dp"/>
</LinearLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

@ -25,6 +25,7 @@
<item>全部</item>
<item>待完成</item>
<item>已完成</item>
<item>跳过</item>
</string-array>
</resources>
Loading…
Cancel
Save