diff --git a/app/src/main/java/com/example/tyre/maintenance/CreateWorkOrderActivity.java b/app/src/main/java/com/example/tyre/maintenance/CreateWorkOrderActivity.java index c7ea784..2ca82b5 100644 --- a/app/src/main/java/com/example/tyre/maintenance/CreateWorkOrderActivity.java +++ b/app/src/main/java/com/example/tyre/maintenance/CreateWorkOrderActivity.java @@ -16,14 +16,17 @@ import androidx.databinding.DataBindingUtil; import com.example.tyre.R; import com.example.tyre.databinding.ActivityCreateWorkOrderBinding; import com.example.tyre.entity.BaseCar; +import com.example.tyre.entity.BaseTyre; import com.example.tyre.maintenance.base.BaseActivity; import com.example.tyre.maintenance.base.MyRecultCall; import com.example.tyre.maintenance.base.MyResult; import com.example.tyre.maintenance.dialog.TipResultDialog; import com.example.tyre.util.MyUrl; import com.example.tyre.util.SharedPreferencesUtils; +import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import com.lzy.okgo.OkGo; +import com.lzy.okgo.callback.StringCallback; import com.lzy.okgo.model.Response; import java.util.ArrayList; @@ -44,12 +47,16 @@ public class CreateWorkOrderActivity extends BaseActivity { private List baseCarList; private Map submitMap; private Runnable searchRunnable; + private String typeTitle; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = DataBindingUtil.setContentView(this, R.layout.activity_create_work_order); tipDialog = new TipResultDialog(this, this); + + initRFIDAndKeyReceiver();// 初始化RFID + binding.createWorkCarNo.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { @@ -84,6 +91,7 @@ public class CreateWorkOrderActivity extends BaseActivity { isSearch = false; BaseCar baseCar = baseCarList.get(position); submitMap.put("vehicleId", baseCar.getId()); + submitMap.put("orderType", "1" ); String carNo = baseCar.getCarNo(); submitMap.put("plateNumber", carNo); binding.createWorkCarNo.setText(carNo); @@ -103,7 +111,10 @@ public class CreateWorkOrderActivity extends BaseActivity { } }); - String typeTitle = getIntent().getStringExtra("title"); + + typeTitle = getIntent().getStringExtra("title"); + binding.setTypeCode(typeTitle);//传入页面控制显示轮胎还是车牌 + // 显示类型选择器 if (typeTitle != null) { List typeList = Arrays.asList(getResources().getStringArray(R.array.work_type)); int index = typeList.indexOf(typeTitle); @@ -152,9 +163,18 @@ public class CreateWorkOrderActivity extends BaseActivity { // 提交数据 public void generateWorkOrder(View view) { + + Object vehicleId = submitMap.get("vehicleId"); + if ( vehicleId == null) { + tipDialog.show(false, null, "请先选择车辆/轮胎", false); + return; + } + + // 选车牌时候已插入id submitMap.put("typeCode", getTypeCode(binding.orderCreateType.getSelectedItem().toString())); submitMap.put("factoryId", getDeptId(binding.orderCreateSite.getSelectedItem().toString())); submitMap.put("createBy", SharedPreferencesUtils.getstring("user", "admin")); + submitMap.put("status", "PROCESSING"); submitMap.put("maintainDate", dateFormat.format(new Date())); OkGo.post(MyUrl.url + "/tyre/order/PDAAddMaintenanceOrder") @@ -173,4 +193,40 @@ public class CreateWorkOrderActivity extends BaseActivity { } }); } + + @Override + public void sanEpcCall(String epc) { + super.sanEpcCall(epc); + binding.createWorkTyreRfid.setText(epc); + findBaseTyre(epc); + + } + + + private void findBaseTyre(String epc) { + dialog.show(); + OkGo.post(MyUrl.url + "/tyre/tyre/pdaQueryTyreInfo") + .tag(this) + .params("tyreEpc", epc) + .execute(new StringCallback() { + @Override + public void onSuccess(Response response) { + dialog.dismiss(); + try { + Gson gson = new Gson(); + BaseTyre baseTyre = gson.fromJson(response.body(), BaseTyre.class); + if (baseTyre != null) { + // wtbm.setText(safeGetString(baseTyre.getTyreNo())); + submitMap.put("vehicleId", baseTyre.getTyreId()); + submitMap.put("plateNumber", baseTyre.getTyreNo()); + submitMap.put("orderType", "2" ); + return; + } + tipDialog.show(false, null, "未查询到轮胎信息", false); + } catch (Exception e) { + e.printStackTrace(); + } + } + }); + } } \ No newline at end of file diff --git a/app/src/main/java/com/example/tyre/maintenance/dialog/TipResultDialog.java b/app/src/main/java/com/example/tyre/maintenance/dialog/TipResultDialog.java index dd551f8..6041a76 100644 --- a/app/src/main/java/com/example/tyre/maintenance/dialog/TipResultDialog.java +++ b/app/src/main/java/com/example/tyre/maintenance/dialog/TipResultDialog.java @@ -66,7 +66,7 @@ public class TipResultDialog extends Dialog { * 启动2秒倒计时(自动关闭) */ private void startCountDown() { - countDownTimer = new CountDownTimer(1000, 1000) { + countDownTimer = new CountDownTimer(500, 500) { @Override public void onTick(long millisUntilFinished) { diff --git a/app/src/main/res/layout/activity_create_work_order.xml b/app/src/main/res/layout/activity_create_work_order.xml index b91c774..b7e8837 100644 --- a/app/src/main/res/layout/activity_create_work_order.xml +++ b/app/src/main/res/layout/activity_create_work_order.xml @@ -4,7 +4,8 @@ xmlns:tools="http://schemas.android.com/tools"> - + + + android:background="@drawable/bg_stroke_blue_1" /> + + + +