|
|
|
@ -38,10 +38,14 @@ import java.util.ArrayList;
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
import java.util.Optional;
|
|
|
|
|
|
|
|
|
|
|
|
public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
import okhttp3.RequestBody;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public class WorkExecuteActivity extends BaseActivity implements TireUpdateDialog.TireUpdateDialogSaveListener {
|
|
|
|
private ActivityWorkExecuteBinding binding;
|
|
|
|
private ActivityWorkExecuteBinding binding;
|
|
|
|
private Map<String, BaseTyre> tyreMap;
|
|
|
|
private Map<String, BaseTyre> tyreMap;
|
|
|
|
|
|
|
|
private Map<String, BizOrderTireDetail> infoMap;
|
|
|
|
private TireUpdateDialog tireUpdateDialog;// 点击轮胎弹窗
|
|
|
|
private TireUpdateDialog tireUpdateDialog;// 点击轮胎弹窗
|
|
|
|
private Map<String, Object> orderSubmitMap;
|
|
|
|
private Map<String, Object> orderSubmitMap;
|
|
|
|
private List<BizOrderTireDetail> tireDetails;
|
|
|
|
private List<BizOrderTireDetail> tireDetails;
|
|
|
|
@ -51,6 +55,8 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
private String epcTag = "";// 屏蔽重复查询
|
|
|
|
private String epcTag = "";// 屏蔽重复查询
|
|
|
|
private String carNo;
|
|
|
|
private String carNo;
|
|
|
|
private ActivityResultLauncher<Intent> launcher;
|
|
|
|
private ActivityResultLauncher<Intent> launcher;
|
|
|
|
|
|
|
|
private boolean orderState;// 工单状态
|
|
|
|
|
|
|
|
private Order order;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
|
|
@ -58,68 +64,30 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
binding = DataBindingUtil.setContentView(this, R.layout.activity_work_execute);
|
|
|
|
binding = DataBindingUtil.setContentView(this, R.layout.activity_work_execute);
|
|
|
|
initRFID();
|
|
|
|
initRFID();
|
|
|
|
Intent intent = getIntent();
|
|
|
|
Intent intent = getIntent();
|
|
|
|
|
|
|
|
infoMap = new HashMap<>();
|
|
|
|
|
|
|
|
// 订单状态
|
|
|
|
|
|
|
|
orderState = intent.getBooleanExtra("orderState", false);
|
|
|
|
|
|
|
|
binding.setOrderState(orderState);
|
|
|
|
carNo = intent.getStringExtra("carNo");
|
|
|
|
carNo = intent.getStringExtra("carNo");
|
|
|
|
binding.setCarNo(carNo);
|
|
|
|
binding.setCarNo(carNo);
|
|
|
|
tyreMap = new HashMap<>();
|
|
|
|
tyreMap = new HashMap<>();
|
|
|
|
selectCarNo(carNo);
|
|
|
|
// selectCarNo(carNo);
|
|
|
|
selectTire(carNo);
|
|
|
|
selectTire(carNo);
|
|
|
|
orderSubmitMap = new HashMap<>();
|
|
|
|
orderSubmitMap = new HashMap<>();
|
|
|
|
Order order = gson.fromJson(intent.getStringExtra("json"), Order.class);
|
|
|
|
order = gson.fromJson(intent.getStringExtra("json"), Order.class);
|
|
|
|
orderSubmitMap.put("order", order);
|
|
|
|
orderSubmitMap.put("order", order);
|
|
|
|
tireDetails = new ArrayList<>();
|
|
|
|
tireDetails = new ArrayList<>();
|
|
|
|
fileList = new ArrayList<>();
|
|
|
|
fileList = new ArrayList<>();
|
|
|
|
orderSubmitMap.put("tireDetails", tireDetails);
|
|
|
|
orderSubmitMap.put("tireDetails", tireDetails);
|
|
|
|
binding.setSite(intent.getStringExtra("site"));
|
|
|
|
binding.setSite(intent.getStringExtra("site"));
|
|
|
|
binding.setDate(intent.getStringExtra("maintainDate"));
|
|
|
|
binding.setDate(intent.getStringExtra("maintainDate"));
|
|
|
|
tireUpdateDialog = new TireUpdateDialog(this, new TireUpdateDialog.TireUpdateDialogSaveListener() {
|
|
|
|
tireUpdateDialog = new TireUpdateDialog(this, this);
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onSave(BizOrderTireDetail bizOrderTireDetail, File image, boolean isupdate, BizOrderTireDetail newTireDetail) {
|
|
|
|
|
|
|
|
// 返回轮胎信息
|
|
|
|
|
|
|
|
bizOrderTireDetail.setOrderId(order.getOrderId());
|
|
|
|
|
|
|
|
tireDetails.add(bizOrderTireDetail);
|
|
|
|
|
|
|
|
if (image != null) {
|
|
|
|
|
|
|
|
fileList.add(image);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
tireUpdateDialog.dismiss();
|
|
|
|
|
|
|
|
if (isupdate) {
|
|
|
|
|
|
|
|
// 换新胎
|
|
|
|
|
|
|
|
tireDetails.add(newTireDetail);
|
|
|
|
|
|
|
|
BaseTyre baseTyre = newTireDetail.getBaseTyre();
|
|
|
|
|
|
|
|
String positionName = newTireDetail.getPositionName();
|
|
|
|
|
|
|
|
tyreMap.put(positionName, baseTyre);
|
|
|
|
|
|
|
|
initTire(positionName, baseTyre);// 页面信息修改
|
|
|
|
|
|
|
|
up_insert(baseTyre.getTyreEpc(), carNo,binding.workLicheng.getText().toString(), positionName, baseTyre.getSelfNo());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onTakePhoto() {
|
|
|
|
|
|
|
|
// 拍照
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
teke_photo();
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tireClick();
|
|
|
|
tireClick();
|
|
|
|
tipDialog = new TipResultDialog(this, this);
|
|
|
|
tipDialog = new TipResultDialog(this, this);
|
|
|
|
|
|
|
|
|
|
|
|
launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
|
|
|
|
launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
|
|
|
|
if (result.getResultCode() == RESULT_OK) {
|
|
|
|
if (result.getResultCode() == RESULT_OK) {
|
|
|
|
/* Intent data = result.getData();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 返回json转换
|
|
|
|
|
|
|
|
String json = data.getStringExtra("json");
|
|
|
|
|
|
|
|
Log.e("TAG", "onCreate:" + json);
|
|
|
|
|
|
|
|
BaseTyre reBaseTyre = gson.fromJson(json, BaseTyre.class);
|
|
|
|
|
|
|
|
tyreMap.put(reBaseTyre.getWheelPostion(), reBaseTyre);*/
|
|
|
|
|
|
|
|
// initTire(reBaseTyre.getWheelPostion(), reBaseTyre);
|
|
|
|
|
|
|
|
selectTire(carNo);
|
|
|
|
selectTire(carNo);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
@ -127,6 +95,9 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
|
|
|
|
|
|
|
|
// 点击轮胎
|
|
|
|
// 点击轮胎
|
|
|
|
private void tireClick() {
|
|
|
|
private void tireClick() {
|
|
|
|
|
|
|
|
if (orderState) {
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
binding.tireClick1.layoutTireInfo.setOnClickListener(view -> {
|
|
|
|
binding.tireClick1.layoutTireInfo.setOnClickListener(view -> {
|
|
|
|
showDialog("左前轮");
|
|
|
|
showDialog("左前轮");
|
|
|
|
});
|
|
|
|
});
|
|
|
|
@ -159,7 +130,6 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
if (baseTyre == null) {
|
|
|
|
if (baseTyre == null) {
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
if (keyReceiver != null) {
|
|
|
|
if (keyReceiver != null) {
|
|
|
|
|
|
|
|
|
|
|
|
unregisterReceiver(keyReceiver);
|
|
|
|
unregisterReceiver(keyReceiver);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
} catch (Exception e) {
|
|
|
|
@ -174,7 +144,9 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
launcher.launch(intent);
|
|
|
|
launcher.launch(intent);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
initKeyRecriver(this::readEPC);
|
|
|
|
initKeyRecriver(this::readEPC);
|
|
|
|
tireUpdateDialog.setBaseTyre(baseTyre);
|
|
|
|
BizOrderTireDetail tag=
|
|
|
|
|
|
|
|
tireDetails.stream().filter(tire -> tire.getPositionName().equals(location)).findFirst().orElse(null);
|
|
|
|
|
|
|
|
tireUpdateDialog.setBaseTyre(baseTyre, tag);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -184,7 +156,12 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
OkGo.<String>post(MyUrl.url + "/tyre/tyre/getCarBingTire").tag(this).params("carNo", carNo).execute(new StringCallback() {
|
|
|
|
OkGo.<String>post(MyUrl.url + "/tyre/tyre/getCarBingTire").tag(this).params("carNo", carNo).execute(new StringCallback() {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Response<String> response) {
|
|
|
|
public void onSuccess(Response<String> response) {
|
|
|
|
|
|
|
|
binding.setTire1(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire2(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire3(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire4(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire5(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire6(new BaseTyre());
|
|
|
|
baseTyreList = gson.fromJson(response.body(), new TypeToken<List<BaseTyre>>() {
|
|
|
|
baseTyreList = gson.fromJson(response.body(), new TypeToken<List<BaseTyre>>() {
|
|
|
|
}.getType());
|
|
|
|
}.getType());
|
|
|
|
tireUpdateDialog.setBaseTyreList(baseTyreList);
|
|
|
|
tireUpdateDialog.setBaseTyreList(baseTyreList);
|
|
|
|
@ -221,17 +198,14 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
|
|
|
|
|
|
|
|
// 初始化轮胎信息
|
|
|
|
// 初始化轮胎信息
|
|
|
|
private void initTire(String wheelPostion, BaseTyre baseTyre) {
|
|
|
|
private void initTire(String wheelPostion, BaseTyre baseTyre) {
|
|
|
|
binding.setTire1(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire2(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire3(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire4(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire5(new BaseTyre());
|
|
|
|
|
|
|
|
binding.setTire6(new BaseTyre());
|
|
|
|
|
|
|
|
switch (wheelPostion) {
|
|
|
|
switch (wheelPostion) {
|
|
|
|
case "左前轮":
|
|
|
|
case "左前轮":
|
|
|
|
|
|
|
|
|
|
|
|
binding.setTire1(baseTyre);
|
|
|
|
binding.setTire1(baseTyre);
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case "右前轮":
|
|
|
|
case "右前轮":
|
|
|
|
|
|
|
|
|
|
|
|
binding.setTire2(baseTyre);
|
|
|
|
binding.setTire2(baseTyre);
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case "左外轮":
|
|
|
|
case "左外轮":
|
|
|
|
@ -252,7 +226,9 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
|
|
|
|
|
|
|
|
// 查询车辆信息
|
|
|
|
// 查询车辆信息
|
|
|
|
private void selectCarNo(String carNo) {
|
|
|
|
private void selectCarNo(String carNo) {
|
|
|
|
OkGo.<MyResult>post(MyUrl.url + "/tyre/car/PdaQueryCarList").tag(this).params("carNo", carNo).execute(new MyRecultCall(dialog, this) {
|
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
|
|
|
|
|
map.put("carNo", carNo);
|
|
|
|
|
|
|
|
OkGo.<MyResult>post(MyUrl.url + "/tyre/car/PdaQueryCarList").tag(this).upRequestBody(RequestBody.create(JSON, new Gson().toJson(map))).execute(new MyRecultCall(dialog, this) {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Response<MyResult> response) {
|
|
|
|
public void onSuccess(Response<MyResult> response) {
|
|
|
|
super.onSuccess(response);
|
|
|
|
super.onSuccess(response);
|
|
|
|
@ -311,14 +287,7 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
|
|
|
|
|
|
|
|
// 装车
|
|
|
|
// 装车
|
|
|
|
private void up_insert(String rfid, String carNo, String millage, String wheel, String selfNo) {
|
|
|
|
private void up_insert(String rfid, String carNo, String millage, String wheel, String selfNo) {
|
|
|
|
OkGo.<String>post(MyUrl.url + "/tyre/install/PdaInstallTyre").tag(this)
|
|
|
|
OkGo.<String>post(MyUrl.url + "/tyre/install/PdaInstallTyre").tag(this).params("tyreRfid", rfid).params("mileage", millage).params("carNo", carNo).params("wheelPostion", wheel).params("selfNo", selfNo).params("CreateBy", SharedPreferencesUtils.getstring("user", "admin")).execute(new StringCallback() {
|
|
|
|
.params("tyreRfid", rfid)
|
|
|
|
|
|
|
|
.params("mileage", millage)
|
|
|
|
|
|
|
|
.params("carNo", carNo)
|
|
|
|
|
|
|
|
.params("wheelPostion", wheel)
|
|
|
|
|
|
|
|
.params("selfNo", selfNo)
|
|
|
|
|
|
|
|
.params("CreateBy", SharedPreferencesUtils.getstring("user", "admin"))
|
|
|
|
|
|
|
|
.execute(new StringCallback() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Response<String> response) {
|
|
|
|
public void onSuccess(Response<String> response) {
|
|
|
|
String body = response.body();
|
|
|
|
String body = response.body();
|
|
|
|
@ -371,4 +340,87 @@ public class WorkExecuteActivity extends BaseActivity {
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onSave(BizOrderTireDetail bizOrderTireDetail, File image, boolean isupdate, BizOrderTireDetail newTireDetail) {
|
|
|
|
|
|
|
|
// 返回轮胎信息
|
|
|
|
|
|
|
|
bizOrderTireDetail.setOrderId(order.getOrderId());
|
|
|
|
|
|
|
|
infoMap.put(bizOrderTireDetail.getPositionName(), bizOrderTireDetail);
|
|
|
|
|
|
|
|
tireDetails.stream().filter(tire -> tire.getPositionName().equals(bizOrderTireDetail.getPositionName())).findFirst().ifPresent(tire -> {
|
|
|
|
|
|
|
|
tireDetails.remove(tire);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
tireDetails.add(bizOrderTireDetail);
|
|
|
|
|
|
|
|
if (image != null) {
|
|
|
|
|
|
|
|
fileList.add(image);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
tireUpdateDialog.dismiss();
|
|
|
|
|
|
|
|
if (isupdate) {
|
|
|
|
|
|
|
|
// 换新胎
|
|
|
|
|
|
|
|
tireDetails.add(newTireDetail);
|
|
|
|
|
|
|
|
BaseTyre baseTyre = newTireDetail.getBaseTyre();
|
|
|
|
|
|
|
|
String positionName = newTireDetail.getPositionName();
|
|
|
|
|
|
|
|
tyreMap.put(positionName, baseTyre);
|
|
|
|
|
|
|
|
initTire(positionName, baseTyre);// 页面信息修改
|
|
|
|
|
|
|
|
up_insert(baseTyre.getTyreEpc(), carNo, binding.workLicheng.getText().toString(), positionName, baseTyre.getSelfNo());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onTakePhoto() {
|
|
|
|
|
|
|
|
// 拍照
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
teke_photo();
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onChangeSave(String oldLocation, String newLocation) {
|
|
|
|
|
|
|
|
BaseTyre baseTyreOld = tyreMap.get(oldLocation);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BaseTyre baseTyreNew = tyreMap.get(newLocation);
|
|
|
|
|
|
|
|
OkGo.<MyResult>post(url + "/tyre/tyre/changeTyreForOneCar")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.params("oldTyreId", baseTyreOld.getTyreId())
|
|
|
|
|
|
|
|
.params("newTyreId", baseTyreNew.getTyreId())
|
|
|
|
|
|
|
|
.params("oldLocation", oldLocation)
|
|
|
|
|
|
|
|
.params("newLocation", newLocation)
|
|
|
|
|
|
|
|
.params("user", SharedPreferencesUtils.getstring("user", "admin"))
|
|
|
|
|
|
|
|
.execute(new MyRecultCall(dialog, this) {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void onSuccess(Response<MyResult> response) {
|
|
|
|
|
|
|
|
super.onSuccess(response);
|
|
|
|
|
|
|
|
MyResult body = response.body();
|
|
|
|
|
|
|
|
if (body.getCode() == 0) {
|
|
|
|
|
|
|
|
tyreMap.put(newLocation, baseTyreOld);
|
|
|
|
|
|
|
|
initTire(newLocation, baseTyreOld);
|
|
|
|
|
|
|
|
tyreMap.put(oldLocation, baseTyreNew);
|
|
|
|
|
|
|
|
initTire(oldLocation, baseTyreNew);
|
|
|
|
|
|
|
|
tireDetails.forEach(tireDetail -> {
|
|
|
|
|
|
|
|
if (tireDetail.getPositionName().equals(oldLocation)) {
|
|
|
|
|
|
|
|
tireDetail.setPositionName(newLocation);
|
|
|
|
|
|
|
|
} else if (tireDetail.getPositionName().equals(newLocation)) {
|
|
|
|
|
|
|
|
tireDetail.setPositionName(oldLocation);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// BizOrderTireDetail info1 = infoMap.get(newLocation);
|
|
|
|
|
|
|
|
// BizOrderTireDetail info2 = infoMap.get(oldLocation);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
Toast.makeText(WorkExecuteActivity.this, body.getMsg(), Toast.LENGTH_SHORT).show();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|