From da6d5f8a993c800bd02806609bec696a335f5bfa Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期三, 29 四月 2020 13:09:35 +0800
Subject: [PATCH] 完成信号配置功能
---
app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java | 100 +++++++++++++++++++++++++++++++------------------
1 files changed, 63 insertions(+), 37 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java
index b25aa69..ae7b7a7 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java
@@ -1,61 +1,41 @@
package safeluck.drive.evaluation.fragment;
import android.content.Context;
-import android.os.AsyncTask;
import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.text.Editable;
-import android.text.InputType;
import android.text.TextUtils;
-import android.text.TextWatcher;
import android.util.Log;
-import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.view.inputmethod.EditorInfo;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.CheckBox;
import android.widget.CompoundButton;
-import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
-import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSpinner;
import androidx.appcompat.widget.Toolbar;
-import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
-import com.anyun.exam.lib.AYSdk;
import com.anyun.exam.lib.MyLog;
-import com.google.gson.Gson;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.List;
-import java.util.Map;
-import java.util.Set;
import me.yokeyword.fragmentation.SupportFragment;
-import safeluck.drive.evaluation.Constant;
import safeluck.drive.evaluation.DB.WorkRoomDataBase;
import safeluck.drive.evaluation.DB.signalConfigdb.SignalConfigViewModel;
import safeluck.drive.evaluation.DB.signalConfigdb.SingalConfig;
import safeluck.drive.evaluation.R;
import safeluck.drive.evaluation.bean.SignalConfigBean;
-import safeluck.drive.evaluation.bean.SignalConfigRemote;
import safeluck.drive.evaluation.util.CThreadPoolExecutor;
-import safeluck.drive.evaluation.util.Utils;
/**
@@ -77,7 +57,7 @@
private List<SignalConfigBean> signalConfiglist =new ArrayList<>();
- List<SignalConfigRemote> list = new ArrayList<>();//瑕佸彂閫佺粰remoteservice鐨勪俊鍙烽厤缃紝鏈夊彲鑳藉彂涓嶅嚭鍘�
+ List<SingalConfig> list = new ArrayList<>();//瑕佸彂閫佺粰remoteservice鐨勪俊鍙烽厤缃紝鏈夊彲鑳藉彂涓嶅嚭鍘�
private Toolbar mToobar;
private ListView listView;
private LinearLayout linearLayout;
@@ -110,15 +90,8 @@
signalConfiglist.clear();
MyLog.i(TAG,"淇″彿閰嶇疆鍙戠敓鍙樺寲");
- for (int i = 0; i < singalConfigs.size(); i++) {
- SignalConfigRemote signalConfigRemote = new SignalConfigRemote();
- signalConfigRemote.setFunc_id(i);
- signalConfigRemote.setGpio_num(singalConfigs.get(i).getIndex());
- signalConfigRemote.setLevel(singalConfigs.get(i).getHighLevel());
- list.add(signalConfigRemote);
- }
- for (int i = 0; i < singalConfigs.size(); i++) {
+ for (int i = 0; i < singalConfigs.size(); i++) {
SingalConfig singalConfig = singalConfigs.get(i);
i++;
if (i<singalConfigs.size()){
@@ -201,13 +174,41 @@
viewHolder.editText1.setAdapter(adapter1);
viewHolder.editText2.setAdapter(adapter2);
+
+ viewHolder.editText1.setTag(position*2+1);
+ viewHolder.editText2.setTag((2*(1+position)));
+
viewHolder.editText1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
int index = (int) viewHolder.editText1.getTag();
- Log.i(TAG,String.format("Spinner1 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s",index,pos
- ,arr_strs[pos]));
-// signalConfigViewModel.updateindex(index,pos);
+ CThreadPoolExecutor.runInBackground(new Runnable() {
+ @Override
+ public void run() {
+
+ int indexPre = WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getSignalName2Index(arr_strs[pos]);
+ int fun_id = WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getFun_idBySignalName(arr_strs[pos]);
+ Log.i(TAG,String.format("Spinner1 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s锛宨ndex" ,index,fun_id,arr_strs[pos]));
+ String siname=WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getSignalName(index);
+ int fun_idpRe= WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getFun_idBySignalName(siname);
+ Log.i(TAG,index+" "+siname+ " arr-Strs[pos]="+arr_strs[pos]+ " "+pos);
+ if (siname!=null&&siname.equals(arr_strs[pos])){
+
+ }else{
+ Log.i(TAG,String.format("鎶�%s淇″彿鐨刬ndex=%d鏀逛负%d",siname,index,indexPre));
+ Log.i(TAG,String.format("鎶�%s淇″彿鐨刬ndex=%d鏀逛负%d",arr_strs[pos],indexPre,index));
+ WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().updateindex(indexPre,fun_idpRe);
+ WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().updateindex(index,fun_id);
+// signalConfigViewModel.updateindex(indexPre,getSigal2Pos(siname));
+ }
+
+ Log.i(TAG,String.format("Spinner1 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s锛宨ndex" +
+ "pre=%d,indexpreName=%s",index,pos
+ ,arr_strs[pos],indexPre,siname));
+// signalConfigViewModel.updateindex(index,pos);
+ }
+ });
+
}
@Override
@@ -219,9 +220,32 @@
@Override
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
int index = (int) viewHolder.editText2.getTag();
- Log.i(TAG,String.format("Spinner2 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s",index,pos
- ,arr_strs[pos]));
-// signalConfigViewModel.updateindex(index,pos);
+ CThreadPoolExecutor.runInBackground(new Runnable() {
+ @Override
+ public void run() {
+
+ int indexPre = WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getSignalName2Index(arr_strs[pos]);
+ int fun_id = WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getFun_idBySignalName(arr_strs[pos]);
+ Log.i(TAG,String.format("Spinner2 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s锛宨ndex" ,index,fun_id,arr_strs[pos]));
+ String siname=WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getSignalName(index);
+ int fun_idpRe= WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().getFun_idBySignalName(siname);
+ Log.i(TAG,index+" sp2 "+siname+ " arr-Strs[pos]="+arr_strs[pos]+ " "+pos);
+ if (siname!=null&&siname.equals(arr_strs[pos])){
+
+ }else{
+ Log.i(TAG,String.format("sp2鎶�%s淇″彿鐨刬ndex=%d鏀逛负%d",siname,index,indexPre));
+ Log.i(TAG,String.format("sp2鎶�%s淇″彿鐨刬ndex=%d鏀逛负%d",arr_strs[pos],indexPre,index));
+ WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().updateindex(indexPre,fun_idpRe);
+ WorkRoomDataBase.getWorkRoomDataBase(_mActivity).getSignalConfigDao().updateindex(index,fun_id);
+// signalConfigViewModel.updateindex(indexPre,getSigal2Pos(siname));
+ }
+
+ Log.i(TAG,String.format("Spinner2 index=%d,fun_id=%d瀵瑰簲鐨勪俊鍙峰悕绉�=%s锛宨ndex" +
+ "pre=%d,indexpreName=%s",index,pos
+ ,arr_strs[pos],indexPre,siname));
+ }
+ });
+
}
@Override
@@ -233,15 +257,17 @@
convertView.setTag(viewHolder);
}else {
+
viewHolder = (ViewHolder) convertView.getTag();
viewHolder.checkBox1.setTag(signalConfiglist.get(position));
viewHolder.checkBox3.setTag(signalConfiglist.get(position));
+
+ viewHolder.editText1.setTag(position*2+1);
+ viewHolder.editText2.setTag((2*(1+position)));
}
- viewHolder.editText1.setTag(position*2+1);
- viewHolder.editText2.setTag((2*(1+position)));
final SignalConfigBean signalConfigItem = getItem(position);
--
Gitblit v1.8.0