diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/libs/urobo.jar b/app/libs/urobo.jar new file mode 100644 index 0000000..eef7d29 Binary files /dev/null and b/app/libs/urobo.jar differ diff --git a/app/src/main/java/com/example/chaoran/DjActivity.java b/app/src/main/java/com/example/chaoran/DjActivity.java index 0ffda0a..08efe23 100644 --- a/app/src/main/java/com/example/chaoran/DjActivity.java +++ b/app/src/main/java/com/example/chaoran/DjActivity.java @@ -61,6 +61,8 @@ import java.io.IOException; import java.lang.reflect.Method; import java.util.*; +import android.device.ScanManager; +import android.device.scanner.configuration.Triggering; /** * 富力叶不兼容版本代码 * import com.olc.scan.IScanCallBack; @@ -68,1932 +70,1808 @@ import java.util.*; **/ /* - * DecodeInfoCallBack 接口 是seuic的 扫描 后 的 回调接口 + * DecodeInfoCallBack 接口 是seuic的 扫描 后 的 回调接口 */ -public class DjActivity extends TabActivity implements OnInitListener, DecodeInfoCallBack, - BarcodeReader.BarcodeListener, - BarcodeReader.TriggerListener { - /* 振动 */ - public Vibrator vibrator; - /* 拍照用的属性 */ - public PhotographUi photographUi;// 当前拍照的组件 - public String pzImgPath;// 照相的图片路径 - /*----------------------*/ - public String phoneModel;// 电话类型 - public Map djInitMap = null; - public HashMap pageMap = new HashMap();// 页面参数 - public String mxTempTable;// 明细临时表 - public String mxSql;// 明细数据插入sql - private String mxQuerySql;// 明细查询sql - private String defaultFocus;// 初始化进入单据时的默认焦点 - private String defaultFocus2;// 初始化进入单据时的默认焦点 - private String nextFocusTag;// 下一个需要获得焦点组件Tag - private WakeLock wakeLock = null; - private WakeLock linghtScreen = null;// 点亮屏幕 - PowerManager pm = null; - private boolean isLinghtScreen = false; - private WifiLock wifiLock; - /* 菜单栏变量 */ - private AbsListView menuList; - private List menuData; - private BaseAdapter menuAdapter; - private String formlx; - private int currentDjId; - public ProgressDialog pd; - public TabHost tabhost; - public TabHost hzTab; - public HashMap fangAMap = new HashMap();// 保存所有方案 - /* 明细内容 */ - private TextView mxTitle; - private ListView mxList; - public ArrayList mxData = new ArrayList(); - private MyAdapter mxAdapter; - private Button mxRefreshBut; - private int cur_pos = -1;// 当前选中的行 +/** + * 单据窗口 + */ +public class DjActivity extends TabActivity implements OnInitListener, DecodeInfoCallBack, + BarcodeReader.BarcodeListener, + BarcodeReader.TriggerListener { + /* 振动 */ + public Vibrator vibrator; + /* 拍照用的属性 */ + public PhotographUi photographUi;// 当前拍照的组件 + public String pzImgPath;// 照相的图片路径 + /*----------------------*/ + public String phoneModel;// 电话类型 + public Map djInitMap = null; + public HashMap pageMap = new HashMap();// 页面参数 + public String mxTempTable;// 明细临时表 + public String mxSql;// 明细数据插入sql + private String mxQuerySql;// 明细查询sql + private String defaultFocus;// 初始化进入单据时的默认焦点 + private String defaultFocus2;// 初始化进入单据时的默认焦点 + private String nextFocusTag;// 下一个需要获得焦点组件Tag + private WakeLock wakeLock = null; + private WakeLock linghtScreen = null;// 点亮屏幕 + PowerManager pm = null; + private boolean isLinghtScreen = false; + private WifiLock wifiLock; + /* 菜单栏变量 */ + private AbsListView menuList; + private List menuData; + private BaseAdapter menuAdapter; + private String formlx; + private int currentDjId; + public ProgressDialog pd; - /* 语音播放变量 */ - private int MY_DATA_CHECK_CODE = 0; - private TextToSpeech tts; - private MediaPlayer diPlayer = null; - private MediaPlayer duPlayer = null; - // - public static View m_view = null; + public TabHost tabhost; + public TabHost hzTab; + public HashMap fangAMap = new HashMap();// 保存所有方案 + /* 明细内容 */ + private TextView mxTitle; + private ListView mxList; + public ArrayList mxData = new ArrayList(); + private MyAdapter mxAdapter; + private Button mxRefreshBut; + private int cur_pos = -1;// 当前选中的行 - // 正在执行是否支持重复读取条形码 - private boolean reReadCode = true; - - /* 数据操作变量 */ - private DBManager dbManager; - private String ttsNr; - private OnCompletionListener completionListener = new OnCompletionListener() { - // @Override - public void onCompletion(MediaPlayer mp) { - if (ttsNr != null) { - if (tts != null) { - tts.speak(ttsNr, TextToSpeech.QUEUE_ADD, null); - } - ttsNr = null; - } - } - };// 声音提示停止接口 - // /* 单据内容查询 */ - // public Runnable downloadRun = new Runnable() { - // public void run() { - // Object ob; - // try { - // ob = getWeather(formlx); - // Message message = new Message(); - // message.obj = ob; - // handler.sendMessage(message); - // } catch (Exception e) { - // Message message = new Message(); - // message.obj = e.toString(); - // message.what = -1; - // handler.sendMessage(message); - // } - // } - // }; - /* 菜单栏查询 */ - Runnable menuRun = new Runnable() { - public void run() { - purview(); - } - }; - /* 显示网络图片Handler */ - public Handler imgHandler = new Handler() { - @Override - public void handleMessage(Message msg) { - super.handleMessage(msg); - if (msg.what == -1) { - DialogUtil.builder(DjActivity.this, "错误信息", "图片地址不正确", 0); - } else { - Map map = (Map) msg.obj; - ((SelfImage) map.get("image")).setBitmap((Bitmap) map.get("bitMap")); - } - } + /* 语音播放变量 */ + private int MY_DATA_CHECK_CODE = 0; + private TextToSpeech tts; + private MediaPlayer diPlayer = null; + private MediaPlayer duPlayer = null; + // + public static View m_view = null; - }; - /* 单据内容查询后更新页面 */ - private Handler handler = new Handler() { - @Override - // 当有消息发送出来的时候就执行Handler的这个方法 - public void handleMessage(Message msg) { - super.handleMessage(msg); - System.out.println("=========sd=================================" + msg.what); - if (msg.what == -1) { - if (pd != null) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "初始化失败:" + msg.obj, 0); - } - } else { - Object initOb = msg.obj; - if (initOb instanceof Map) { - djInitMap = (Map) initOb; - createDj(1); - } else { - if (initOb.equals("0")) { - DialogUtil.builder(DjActivity.this, "提示信息", "PDA未注册!", 0); - } else if (initOb.equals("1")) { - DialogUtil.builder(DjActivity.this, "提示信息", "PDA还未授权使用!", 0); - } else if (initOb.equals("2")) { - DialogUtil.builder(DjActivity.this, "提示信息", "试用期已过!", 0); - } else if (initOb.equals("该模块未授权")) { - DialogUtil.builder(DjActivity.this, "提示信息", "该模块未授权!", 0); - } - pd.cancel(); - } - } - } + // 正在执行是否支持重复读取条形码 + private boolean reReadCode = true; - }; - /* 菜单查询后更新页面 */ - private Handler menuHandler = new Handler() { - @Override - // 当有消息发送出来的时候就执行Handler的这个方法 - public void handleMessage(Message msg) { - super.handleMessage(msg); - if (msg.what == -1) { - DialogUtil.builder(DjActivity.this, "错误信息", "下载单据菜单失败!" + msg.obj, 0); - } else { - menuAdapter.notifyDataSetChanged(); - } - pd.cancel(); - } - - }; - private Handler sqlHandler = new Handler() { - @Override - public void handleMessage(Message msg) { - super.handleMessage(msg); - if (msg.what == -1) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "提取方案SQL失败!" + msg.obj, 0); - } else { - if (msg.arg1 == 0) { - try { - HashMap faMap = (HashMap) IoUtil.byte_obj((byte[]) msg.obj); - Map map = SqlUtil.regSql(faMap.get("sql").toString(), hzTab, pageMap); - pd.setMessage("正在执行检索方案"); - String audioFld = ""; - if (faMap.get("audioFld") != null) { - audioFld = faMap.get("audioFld").toString().toUpperCase(); - } - runSearch(map, faMap.get("return_one").toString(), audioFld); - } catch (Exception e) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "检索方案内容解析失败!", 0); - } - // String sql = msg.obj.toString(); - // String return_one = sql.substring(0, 1); - // sql = sql.substring(1, sql.length()); - // Map map = SqlUtil.regSql(sql, hzTab, pageMap); - // pd.setMessage("正在执行检索方案"); - // runSearch(map, return_one); - } else if (msg.arg1 == 1) { - String sql = null; - try { - sql = (String) IoUtil.byte_obj((byte[]) msg.obj); - } catch (Exception e) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案内容解析失败!", 0); - return; - } - Map map = SqlUtil.regSql(sql, hzTab, pageMap); - // if (mxData.size() > 0) { - // map.put("mxSql", mxSql); - // map.put("mxData", - // DjUtil.organizationMxData(mxData, - // pageMap.get("GZID"))); - // } else { - // map.put("mxSql", ""); - // map.put("mxData", null); - // } - map.put("gzid", pageMap.get("GZID")); - map.put("mxTempTable", mxTempTable); - Map hzData = DjUtil.organizationHzData(hzTab, pageMap.get("GZID")); - hzData.putAll(pageMap); - map.put("hzData", hzData); - try { - byte[] b = IoUtil.getbyte(map); - String paramString = Base64.encode(b); - pd.setMessage("正在执行页面修改方案"); - runYmup(paramString); - } catch (Exception e) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案组织数据失败!", 0); - } - } else if (msg.arg1 == 2) {// 页面提取方案 - Djselefa djselefa = null; - try { - djselefa = (Djselefa) IoUtil.byte_obj((byte[]) msg.obj); - } catch (Exception e) { - e.printStackTrace(); - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "提取方案内容解析失败!", 0); - return; - } - HashMap map = SqlUtil.regSql(djselefa.getT_sql(), hzTab, pageMap); - pd.cancel(); - Intent intent = new Intent(); - djselefa.setT_sql(map.get("sql").toString()); - HashMap paramMap = new HashMap(); - paramMap.put("djselefa", djselefa); - paramMap.put("t_sqlParam", (HashMap) map.get("param")); - paramMap.put("mxTempTable", mxTempTable); - paramMap.put("GZID", pageMap.get("GZID")); - intent.putExtra("paramMap", paramMap); - intent.setClass(getApplicationContext(), DjtqActivity.class); - startActivityForResult(intent, 2); - } - } - } - }; - public Handler runHandler = new Handler() { - @Override - public void handleMessage(Message msg) { - super.handleMessage(msg); - View rootview = DjActivity.this.getWindow().getDecorView(); - View aaa = rootview.findFocus(); - // View bbb = - // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - // if (aaa == bbb && defaultFocus2 != null) { - // DjUtil.setFocus(hzTab, defaultFocus2); - // } - if (aaa instanceof SelfEditText) { - m_view = aaa; - SelfEditText set = (SelfEditText)aaa; - if (set.getText().length() > 0) - set.selectAll(); - } - /* - if (defaultFocus2 != null) { - View bbb = hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - if (bbb instanceof SelfEditText) { - if (((SelfEditText)bbb).getText().length() > 0) - DjUtil.setFocus(hzTab, defaultFocus2); - } - }*/ - if (msg.what == -1) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "检索方案执行失败:" + msg.obj.toString(), 0); - } else if (msg.what == -2) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案执行失败:" + msg.obj.toString(), 0); - WifiManager wifiManager = (WifiManager) DjActivity.this.getSystemService(Context.WIFI_SERVICE); - wifiManager.disconnect(); - wifiManager.reconnect(); - } else if (msg.what == -3) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "单据保存失败:" + msg.obj.toString(), 0); - } else if (msg.what == -4) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "单据退出失败:" + msg.obj.toString(), 0); - } else if (msg.what == -5) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "查询明细失败:" + msg.obj.toString(), 0); - } else { - if (msg.obj == null) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "方案执行失败!", 0); - } else { - if (msg.arg1 == 1) {// 检索方案 - Map map = (Map) msg.obj; - DataGrid dg = (DataGrid) map.get("dg"); - int len = dg.getTableData().size(); - if (len < 1) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "提示信息", "当前查询没有记录!", 0); - return; - } - String speakFld = (map.get("audioFld")).toString(); - if (map.get("return_one").equals("Y") && len < 2) { - // System.out.println("检索方案"); - // if (len > 0) { - Map paramValueMap = (Map) dg.getTableData().get(0); - play(paramValueMap, speakFld); - DjUtil.setUiValue(hzTab, paramValueMap, pageMap, imgHandler); - // } - } else { - Intent intent = new Intent(); - intent.setClass(getApplicationContext(), ParamActivity.class); - intent.putExtra("dg", dg); - intent.putExtra("audioFld", speakFld); - startActivityForResult(intent, 1); - } - if (defaultFocus != null) { - DjUtil.setFocus(hzTab, defaultFocus); - defaultFocus = null; - } - pd.cancel(); - } else if (msg.arg1 == 2) {// 页面修改方案 - // byte[] bb = org.kobjects.base64.Base64.decode(msg.obj - // .toString()); - Object ob = msg.obj; - // try { - // ob = IoUtil.byte_obj(bb); - // } catch (Exception e) { - // DialogUtil.builder(DjActivity.this, "提示信息", - // "数据转换失败"); - // } - // if (ob instanceof Map) { - // Map map = (Map) ob; - // DjUtil.setUiValue(hzTab, (List) map.get("hz"), - // pageMap, imgHandler); - // // mxData.clear(); - // // mxData.addAll((List) map.get("mx")); - // // mxAdapter.notifyDataSetChanged(); - // // System.out.println(map.get("msg")); - // if (map.get("msg") != null) { - // DialogUtil.builder(DjActivity.this, "提示信息", map - // .get("msg").toString()); - // } - // } else { - // DialogUtil.builder(DjActivity.this, "提示信息", - // ob.toString()); - // } - if (ob instanceof Map) { - Map map = (Map) ob; - List> list = (List>) map.get("hz"); - Map paramValueMap = new HashMap(); - for (Map tm : list) { - if ("MESSAGE_A".equals(tm.get(" fieldname"))) { - paramValueMap = tm; - } else if ("MESSAGE_AUDIO".equals(tm.get("fieldname"))) - paramValueMap = tm; - } - // Map paramValueMap = (Map) - // dg.getTableData().get(0); - // String speakFld = - // (map.get("audioFld")).toString(); - play(paramValueMap, "fieldValue"); - DjUtil.setUiValue(hzTab, (List) map.get("hz"), pageMap, imgHandler); - - if (map.get("msg") != null) { - String ymup_msg = map.get("msg").toString(); - if (ymup_msg.toUpperCase().indexOf("JUMP_") == 0) { - String ymup_msgs[] = ymup_msg.split("_"); - String newOpenDjFromlx = ymup_msgs[1].toUpperCase(); - int dj_no = -1; - int len = menuData.size(); - for (int i = 0; i < len; i++) { - Map tempMap = (Map) menuData.get(i); - String tempgn_no = tempMap.get("gn_no").toString().toUpperCase(); - if (newOpenDjFromlx.equals(tempgn_no)) { - dj_no = i; - break; - } - } - if (dj_no == -1) { - DialogUtil.builder(DjActivity.this, "提示信息", "当前操作员不具有" + newOpenDjFromlx + "单据操作权限!", 0); - } else { - tabhost.setCurrentTab(0); - currentDjId = dj_no; - DialogUtil.builderCancel(DjActivity.this, "提示", "是否退出该单据", okClick); - } - } else { - String returnMsg[] = map.get("msg").toString().split("@"); - int fontsize = 0; - if (returnMsg.length > 1) { - fontsize = Integer.parseInt(returnMsg[1]); - } - DialogUtil.builder(DjActivity.this, "提示信息", returnMsg[0], fontsize); - } - } - } else { - DialogUtil.builder(DjActivity.this, "提示信息", ob.toString(), 0); - } - pd.cancel(); - } else if (msg.arg1 == 3) { - String mess = msg.obj.toString(); - if (mess.substring(0, 2).equals("ok")) { - String djbh = mess.substring(2, mess.length()); - // if(pageMap.containsKey("DJBH")){ - // djbh=pageMap.get("DJBH").toString(); - // }else{ - // View et=hzTab.findViewWithTag("DJBH"); - // if(et instanceof InputInterface){ - // djbh=((InputInterface)et).getText().toString(); - // } - // } - mxData.clear(); - mxAdapter.notifyDataSetChanged(); - hzTab.setCurrentTab(0); - hzTab.clearAllTabs(); - pageMap.clear(); - mxTempTable = null; - mxSql = null; - mxQuerySql = null; - createDj(0); - DialogUtil.builder(DjActivity.this, "提示信息", "单据保存成功\n单据编号:".concat(djbh), 0); - } else { - DialogUtil.builder(DjActivity.this, "提示信息", mess, 0); - } - pd.cancel(); - } else if (msg.arg1 == 4) { - if (tabhost.getCurrentTab() != 0) { - // hzTab.setCurrentTab(0); - hzTab.clearAllTabs(); - mxData.clear(); - fangAMap.clear(); - djInitMap.clear(); - djInitMap = null; - pageMap.clear(); - mxTempTable = null; - mxSql = null; - mxQuerySql = null; - formlx = null; - pd.cancel(); - tabhost.setCurrentTab(0); - } else { - pd.cancel(); - openNewDj(); - } - } else if (msg.arg1 == 5) { - mxData.clear(); - try { - byte[] bb = Base64.decode(msg.obj.toString()); - mxData.addAll((List) IoUtil.byte_obj(bb)); - } catch (Exception e) { - DialogUtil.builder(DjActivity.this, "提示信息", "数据转换失败", 0); - } - mxAdapter.notifyDataSetChanged(); - pd.cancel(); - } - } - - } - if (nextFocusTag != null) { - // System.out.println(nextFocusTag - // + "----------------------------"); - setNextFocus(nextFocusTag); - nextFocusTag = null; - } - if (isLinghtScreen) { - releaseLinghtScreen(); - } - // if (dc != null) { - // dc.start(); - // } - if (newScanControler != null) { - newScanControler.scanOnce();// 如果PDA是ht518 则一进入单据就打开扫描 - } - if (seuicScanner != null && islxscan.equals("0")) { - seuicScanner.startScan(); - } - - if (androidHandheldTerminal0 != null) { - androidHandheldTerminal0.start(); - } - if (cr5wScanControl != null) - cr5wScanControl.start(DjActivity.this); - if (androidHandheldTerminal != null) - androidHandheldTerminal.start(); - if (nr510ScanControl != null) - nr510ScanControl.start(DjActivity.this); - - if (barcodeReader != null) { - continuousScanning(true); - } - if (zkr322aControl != null) { - zkr322aControl.start(); - } - if (haixinN1SDemoReceiver != null) { - haixinN1sStart(); - } - reReadCode = true; - } - }; - /* - * mt35a 扫描所需变量 private DeviceControl DevCtrl; private SerialPort - * mSerialPort; public int fd; private ReadThread mReadThread; private - * static final String TAG = "SerialPort"; private boolean key_start = - * true;// 指明scan键的状态 private boolean Powered = false;// 指明扫头是否上电 private - * boolean Opened = false;// // 指明串口是否打开 private Timer timer = new Timer(); - * private Timer retrig_timer = new Timer(); private SoundPool soundPool; - * private int soundId; private Handler succeed_handler = null; private - * Handler t_handler = null; private Handler n_handler = null; private - * boolean ops = false;// 指明程序是否初始化** - */ - /* 事件 */ - public OnFocusChangeEvent focusEvent; - public OnClickEvent clickEvent; - public PzClickListener pzClickEvent;// 拍照事件 - public ImageClickListener imgClickEvent; - - private void createDj(int ty) { - if (ty == 1) {// 为0表示保存后新开单据 - fangAMap.clear(); - if (!SysData.is_lx) { - DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("searchList")); - DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("ymupList")); - DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("djtqList")); - djInitMap.remove("searchList"); - djInitMap.remove("ymupList"); - djInitMap.remove("djtqList"); - } else { - fangAMap = (HashMap) djInitMap.get("fangAMap"); - djInitMap.remove("fangAMap"); - } - } - Sys_DanJuFormsOptions danju = (Sys_DanJuFormsOptions) djInitMap.get("danju"); - ByteArrayInputStream in = null; - try { - DanJuEntity dj = (DanJuEntity) IoUtil.byte_obj2(danju.getFORM()); - if (SysData.is_lx) {// 如果是离线单据就在PDA上生成临时表 - System.out.println(danju.getFORMbs() + "-----" + formlx); - String tableName = "CR_DJBS_".concat(danju.getFORMbs()).concat(formlx); - String createMxTableSql = "create table ".concat(tableName).concat("(gzid char(11),dj_sn int null default 0,"); - HashMap mxFiledMap = null; - for (int i = 0; i < dj.mxzdArray.size(); i++) { - mxFiledMap = (HashMap) dj.mxzdArray.get(i); - createMxTableSql = createMxTableSql.concat(mxFiledMap.get("fdname").toString()); - String fdtype = mxFiledMap.get("fdtype").toString(); - if (fdtype.equals("字符")) { - createMxTableSql = createMxTableSql.concat("varchar (").concat(mxFiledMap.get("fdsize").toString()).concat(") null default '',"); - } else if (fdtype.equals("整型") || fdtype.equals("整数")) { - createMxTableSql = createMxTableSql.concat(" int null default 0,"); - } else if (fdtype.equals("时间")) { - createMxTableSql = createMxTableSql.concat(" datetime null ,"); - } else if (fdtype.equals("位图") || fdtype.equals("二进")) { - createMxTableSql = createMxTableSql.concat(" blob null ,"); - } else if (fdtype.equals("文本")) { - createMxTableSql = createMxTableSql.concat(" text ,"); - } else if (fdtype.equals("实数")) { - createMxTableSql = createMxTableSql.concat(" decimal(").concat(mxFiledMap.get("fdsize").toString()).concat(",") - .concat(mxFiledMap.get("fddec").toString()).concat(") null default 0 ,"); - } - } - createMxTableSql = createMxTableSql.concat(" CONSTRAINT cr_").concat(danju.getFORMbs()).concat("_").concat(formlx) - .concat("_PK PRIMARY KEY (gzid,dj_sn))"); - System.out.println(dj.mxzdArray.size() + "------------sql:" + createMxTableSql); - if (dbManager.existsTable(tableName) > 0) { - dbManager.exeSql("drop table ".concat(tableName)); - } - dbManager.exeSql(createMxTableSql); - } - String[] arrs = dj.pageNr.split("\\^"); - if (arrs.length > 1) { - dj.pageNr = arrs[0]; - } - in = new ByteArrayInputStream(dj.pageNr.getBytes()); - pageMap.put("RQ", djInitMap.get("RQ").toString()); - Dom4jUtil.testParseXMLData(in, DjActivity.this); - if (dj.mxzdArray.size() > 0) { - mxTitle.setText(((Map) dj.mxzdArray.get(0)).get("chnname").toString().trim()); - // mxAdapter = new SimpleAdapter( - // DjActivity.this, - // mxData, - // R.layout.activity_menu, - // new String[] { ((Map) dj.mxzdArray.get(0)) - // .get("fdname").toString().trim().toUpperCase() }, - // new int[] { R.id.title }); - if (mxAdapter != null) { - mxAdapter.clear(); - } - mxAdapter = new MyAdapter(DjActivity.this, mxData, ((Map) dj.mxzdArray.get(0)).get("fdname").toString().trim().toUpperCase()); - mxList.setAdapter(mxAdapter); - } - mxTempTable = "CR_DJBS_".concat(danju.getFORMbs()).concat(formlx); - mxSql = DjUtil.createMxSql(dj.mxzdArray, mxTempTable); - mxQuerySql = DjUtil.createMxQuerySql(dj.mxzdArray, mxTempTable); - if (mxQuerySql == null) { - mxRefreshBut.setEnabled(false); - mxTempTable = null; - } else { - mxRefreshBut.setEnabled(true); - } - pageMap.put("GZID", djInitMap.get("GZID").toString().trim()); - pageMap.put("DJLX", formlx); - pageMap.put("DJBH", danju.getFORMbs().trim().concat("草")); - pageMap.put("DJBS", danju.getFORMbs().trim()); - pageMap.put("RQ", djInitMap.get("RQ").toString()); - pageMap.put("ONTIME", djInitMap.get("ONTIME").toString()); - pageMap.put("JIGID", SysData.jigid); - pageMap.put("ZHIYID", SysData.userid); - pageMap.put("USERID", SysData.userid); - pageMap.put("USERNAME", SysData.lgnname); - pageMap.put("CLIENTID", SysData.clientid); - DjUtil.setUiValue2(hzTab, pageMap, imgHandler); - String newDjInit = null; - if (dj.fangAtyjkVO != null) { - newDjInit = dj.fangAtyjkVO.newDjInit.trim(); - } - if (newDjInit != null && newDjInit.length() > 0) { - defaultFocus = danju.getDefaultFouseField(); - defaultFocus2 = defaultFocus; - eventHandler(newDjInit, null); - } else { - defaultFocus2 = danju.getDefaultFouseField(); - DjUtil.setFocus(hzTab, danju.getDefaultFouseField()); - } - pd.cancel(); - } catch (Exception e) { - e.printStackTrace(); - DialogUtil.builder(this, "错误信息", "生成单据页面失败!" + e.toString(), 0); - pd.cancel(); - } finally { - try { - if (in != null) { - in.close(); - in = null; - } - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - - public DialogInterface.OnClickListener okClick = new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - // TODO Auto-generated method stub - new DjMenuFun().exitDj(DjActivity.this); - } - }; - public DialogInterface.OnClickListener cancelClick = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - // TODO Auto-generated method stub - - } - }; - - public void queryMx(View v) { - if (mxQuerySql == null) { - // DialogUtil.builder(DjActivity.this, "提示信息", "明细未设置", 0); - return; - } - DialogUtil.setDialog(pd, "正在查询单据内容", "正在查询明细……"); - new ExitThread(pageMap.get("GZID"), mxQuerySql, runHandler, "queryMx").start(); - } - - public void openNewDj() { - if (SysData.is_lx) { - if (dbManager.existsTable("sys_DanJuFormsOptions".toUpperCase()) < 1) { - DialogUtil.builder(DjActivity.this, "提示信息", "请下载单据表", 0); - return; - } - // if (dbManager.existsTable("sys_SearchOptions".toUpperCase()) < 1) - // { - // DialogUtil.builder(DjActivity.this, "提示信息", "请下载检索方案表"); - // return; - // } - // if (dbManager.existsTable("sys_YmupOptions".toUpperCase()) < 1) { - // DialogUtil.builder(DjActivity.this, "提示信息", "请下载页面修改方案表"); - // return; - // } - } - DialogUtil.setDialog(pd, "正在查询单据内容", "正在下载……"); - Map map = (Map) menuData.get(currentDjId); - formlx = map.get("gn_no").toString(); - mxData.clear(); - pageMap.clear(); - if (djInitMap != null) { - djInitMap.clear(); - djInitMap = null; - } - fangAMap.clear(); - mxTempTable = null; - mxSql = null; - tabhost.setCurrentTab(1); - // hzTab.setCurrentTab(0); - hzTab.clearAllTabs(); - if (SysData.is_lx) { - new Thread(new LxDJNrThread(dbManager, handler, formlx)).start(); - } else { - new Thread(new DownDJRun(formlx, handler)).start(); - } - } - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_dj); - // layout = new RelativeLayout(this); - // layout.setLayoutParams(new RelativeLayout.LayoutParams(-1, -1)); - // layout.setBackgroundColor(Color.WHITE); - // setContentView(layout); - if (SysData.url != null) { - this.setTitle(SysData.no + " " + SysData.url.substring(SysData.url.indexOf("//") + 2, 24)); - } - focusEvent = new OnFocusChangeEvent(); - clickEvent = new OnClickEvent(); - imgClickEvent = new ImageClickListener(this); - pzClickEvent = new PzClickListener(this); - /* 检测语音包资源 如果有合适的资源 就在onActivityResult中实例化一个TTS */ - Intent checkIntent = new Intent(); - checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); - startActivityForResult(checkIntent, MY_DATA_CHECK_CODE); - mxRefreshBut = (Button) findViewById(R.id.mxbut); - /*--------------*/ - pd = ProgressDialog.show(DjActivity.this, "正在查询单据菜单", "正在下载……"); - pd.setOnCancelListener(new OnCancelListener() { - - @Override - public void onCancel(DialogInterface dialog) { - if (m_view != null) { - if (m_view instanceof SelfEditText) { - ((SelfEditText)m_view).selectAll(); - } - m_view = null; - } - } - }); - menuData = new ArrayList(); - if (SysData.is_lx) { - dbManager = new DBManager(this); - new Thread(new LxMenuQueryThread(dbManager, menuHandler, menuData)).start(); - } else { - new Thread(menuRun).start();// 查询单据菜单 - } - tabhost = getTabHost(); - tabhost.addTab(tabhost.newTabSpec("djmenu").setIndicator("菜单").setContent(R.id.djmenu)); - // tabhost.addTab(tabhost.newTabSpec("hz").setIndicator("汇总") - // .setContent(R.id.hz)); - // mxActivity=new MxActivity(); - tabhost.addTab(tabhost.newTabSpec("hz").setIndicator("汇总").setContent(R.id.hz)); - tabhost.addTab(tabhost.newTabSpec("mx").setIndicator("明细").setContent(R.id.mx)); - TabWidget tabwidget = tabhost.getTabWidget(); - setTabwidgetAtt(tabwidget); - Intent intent = getIntent(); - String displaymode = intent.getStringExtra("displaymode"); - islxscan = intent.getStringExtra("islxscan"); - if (displaymode.equals("grid")) { - menuAdapter = new ImageAdpter(menuData, this); - menuList = new GridView(this); - GridView gv = (GridView) menuList; - gv.setNumColumns(3); - gv.setVerticalSpacing(20); - ((AdapterView) menuList).setAdapter(menuAdapter); - RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); - layoutParams.topMargin = 0; - layoutParams.leftMargin = 0; - ((LinearLayout) findViewById(R.id.djmenu)).addView(menuList, layoutParams); - } else { - menuAdapter = new SimpleAdapter(this, menuData, R.layout.activity_menu, new String[] { "mname" }, new int[] { R.id.title }); - // menuList = (ListView) findViewById(R.id.munuList); - menuList = new ListView(this); - RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); - layoutParams.topMargin = 0; - layoutParams.leftMargin = 0; - ((LinearLayout) findViewById(R.id.djmenu)).addView(menuList, layoutParams); - ((AdapterView) menuList).setAdapter(menuAdapter); - } - OnItemClickListener lis1 = new OnItemClickListener() { - - @Override - public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { - if (formlx != null) { - currentDjId = arg2; - DialogUtil.builderCancel(DjActivity.this, "提示", "是否退出该单据", okClick); - } else { - currentDjId = arg2; - openNewDj(); - } - } - }; - menuList.setOnItemClickListener(lis1); - - hzTab = (TabHost) findViewById(R.id.hz); - hzTab.setup(); - mxTitle = (TextView) findViewById(R.id.mxtitle); - mxList = (ListView) findViewById(R.id.mxlist); - mxList.setChoiceMode(ListView.CHOICE_MODE_SINGLE);// 一定要设置这个属性,否则ListView不会刷新 - mxList.setOnItemClickListener(new OnItemClickListener() { - @Override - public void onItemClick(AdapterView arg0, View arg1, int position, long id) { - cur_pos = position;// 更新当前行 - mxAdapter.cur_pos = cur_pos; - } - }); - - tabhost.getTabWidget().getChildAt(2).setOnClickListener(new OnClickListener() { - - @Override - public void onClick(View v) { - // TODO Auto-generated method stub - ((Button) findViewById(R.id.mxbut)).performClick(); - tabhost.setCurrentTab(2); - // tabhost.getTabWidget().setCurrentTab(2); - // DialogUtil.builder(DjActivity.this, "测试标题","测试内容!" + - // v.getLeft(), 18); - } - }); - - tabhost.getTabWidget().getChildAt(1).setOnClickListener(new OnClickListener() { - - @Override - public void onClick(View v) { - // TODO Auto-generated method stub - tabhost.setCurrentTab(1); - if (defaultFocus2 != null) { - DjUtil.setFocus(hzTab, defaultFocus2); - } - } - }); - - // mxAdapter = new SimpleAdapter(this, mxData, R.layout.activity_menu, - // new String[] { "mname" }, new int[] { R.id.title }); - phoneModel = android.os.Build.MODEL.toLowerCase(); - System.out.println(phoneModel + "--------------phoneModel---------------"); - if (phoneModel.equals("zk-r322a") || phoneModel.equals("zk-r322")|| phoneModel.equals("zk-r323")|| phoneModel.equals("zk-r323a")) { - zkr322aNew(); - }/* else if (phoneModel.equals("n1s")) { - haixinN1SInit(); - } */else if (phoneModel.equals("ht518")) { - // ht518Init(); - ht518InitNew(); - } else if (phoneModel.equals("al9") /*|| "cruise".equals(phoneModel)*/) { - seuicIint(); - } else if ("cr-5w".equals(phoneModel) /*|| "android handheld terminal".equals(phoneModel)*/) { - cr5wScanControl = new CR5WScanControl(); - cr5wScanControl.init(DjActivity.this); - } else if("android handheld terminal".equals(phoneModel)) { - androidHandheldTerminal0 = new AndroidHandheldTerminal0(DjActivity.this); - //androidHandheldTerminal = new AndroidHandheldTerminal(); - } else if ("nr510".equals(phoneModel) || "android".equals(phoneModel)) { - nr510ScanControl = new Nr510ScanControl(); - } else if ("scanpal eda50".equals(phoneModel)) { - // get bar code instance from MainActivity - // DialogUtil.builder(DjActivity.this, "信息", "初始化失败:111111111111111111", 0); - //if (barcodeReader != null) { - /// continuousScanning(true); - //} else { - barcodeReader = MainActivity.getBarcodeObject(); - - if (barcodeReader != null) { - - // register bar code event listener - barcodeReader.addBarcodeListener(this); - - // set the trigger mode to client control - try { - //barcodeReader.setProperty(BarcodeReader.PROPERTY_TRIGGER_CONTROL_MODE, - // BarcodeReader.TRIGGER_CONTROL_MODE_AUTO_CONTROL); - // set the trigger mode to client control - barcodeReader.setProperty(BarcodeReader.PROPERTY_TRIGGER_CONTROL_MODE, - BarcodeReader.TRIGGER_CONTROL_MODE_CLIENT_CONTROL); - - } catch (UnsupportedPropertyException e) { - Toast.makeText(this, "Failed to apply properties", Toast.LENGTH_SHORT).show(); - } - // register trigger state change listener - barcodeReader.addTriggerListener(this); - - Map properties = new HashMap(); - // Set Symbologies On/Off - properties.put(BarcodeReader.PROPERTY_CODE_128_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_GS1_128_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_QR_CODE_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_CODE_39_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_DATAMATRIX_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_UPC_A_ENABLE, true); - properties.put(BarcodeReader.PROPERTY_EAN_13_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_AZTEC_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_CODABAR_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_INTERLEAVED_25_ENABLED, true); - properties.put(BarcodeReader.PROPERTY_PDF_417_ENABLED, true); - // Set Max Code 39 barcode length - properties.put(BarcodeReader.PROPERTY_CODE_39_MAXIMUM_LENGTH, 10); - // Turn on center decoding - properties.put(BarcodeReader.PROPERTY_CENTER_DECODE, true); - // Enable bad read response - properties.put(BarcodeReader.PROPERTY_NOTIFICATION_BAD_READ_ENABLED, false); - properties.put(BarcodeReader.PROPERTY_EAN_13_CHECK_DIGIT_TRANSMIT_ENABLED, true); - // Apply the settings - barcodeReader.setProperties(properties); - } - try { - barcodeReader.claim(); - } catch (ScannerUnavailableException e) { - e.printStackTrace(); - Toast.makeText(this, "Scanner unavailable", Toast.LENGTH_SHORT).show(); - } - // } - } - acquireWakeLock(); - WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); - wifiLock = wifiManager.createWifiLock("crtechWIFI"); - wifiLock.acquire(); - System.out.println(wifiLock.isHeld() + "-----------------===-----------锁住"); - /**** - * mt35a初始化扫描变量 try { DevCtrl = new DeviceControl("/proc/driver/scan"); - * System.out.println("DevCtrl初始化扫描"); } catch (SecurityException e) { - * e.printStackTrace(); } catch (IOException e) { Log.d(TAG, "AAA"); new - * AlertDialog.Builder(this) .setTitle(R.string.DIA_ALERT) - * .setMessage(R.string.DEV_OPEN_ERR) - * .setPositiveButton(R.string.DIA_CHECK, new - * DialogInterface.OnClickListener() { - * - * @Override public void onClick(DialogInterface dialog, int which) { // - * TODO Auto-generated method stub finish(); } }).show(); - * return; } ops = true;// 指明程序是否初始化 - * - * soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0); - * soundId = - * soundPool.load("/system/media/audio/ui/VideoRecord.ogg", - * 0); - * - * t_handler = new Handler() { - * @Override public void handleMessage(Message msg) { - * super.handleMessage(msg); if (msg.what == 1) { try { - * DevCtrl.PowerOffDevice(); } catch (IOException e) { - * Log.d(TAG, "BBB"); // TODO Auto-generated catch block - * e.printStackTrace(); }// powersave Powered = false; } } }; - * - * n_handler = new Handler() { - * @Override public void handleMessage(Message msg) { - * super.handleMessage(msg); if (msg.what == 1) { try { if - * (key_start == false) { DevCtrl.TriggerOffDevice(); timer = - * new Timer(); // 启动一个计时器,当机器闲置一段时间后,切断电源,节省能源。 - * timer.schedule(new MyTask(), 60000); key_start = true; } } - * catch (IOException e) { // TODO Auto-generated catch block - * e.printStackTrace(); } } } }; - * - * succeed_handler = new Handler() { - * @Override public void handleMessage(Message msg) { - * super.handleMessage(msg); if (msg.what == 1 && key_start == - * false) { String buff1 = msg.obj.toString(); // - * mReception.append(buff+"---"); View view = - * DjActivity.this.getCurrentFocus(); if (view != null && view - * instanceof EditText) { ((EditText) view).setText(buff1); - * view.clearFocus(); View nextView = layout - * .findViewWithTag(((SelfEditText) view).nextFocus); if - * (nextView != null) { nextView.requestFocus(); } } - * - * soundPool.play(soundId, 1, 1, 0, 0, 1); key_start = true; - * retrig_timer.cancel(); } } }; - ***/ - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - // if (resultCode == 1) { - // Map map = (Map) data.getSerializableExtra("param"); - // DjUtil.setUiValue(hzTab, map, pageMap, imgHandler); - // } - if (requestCode == MY_DATA_CHECK_CODE) { - if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) { - // success, create the TTS instance - tts = new TextToSpeech(this, this); - } else { - Intent installIntent = new Intent(); - installIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); - startActivity(installIntent); - } - } else if (requestCode == 1) { - if (resultCode == 1) { - Map map = (Map) data.getSerializableExtra("param"); - String speakFld = data.getSerializableExtra("audioFld").toString(); - if (tts != null) { - play(map, speakFld); - } - DjUtil.setUiValue(hzTab, map, pageMap, imgHandler); - } - } else if (requestCode == 2) { - if (resultCode == 2) { - DjUtil.setUiValue(hzTab, (HashMap) data.getSerializableExtra("param"), pageMap, imgHandler); - System.out.println(nextFocusTag + "-------------------------------------------------------------------"); - if (nextFocusTag != null) { - setNextFocus(nextFocusTag); - nextFocusTag = null; - } - } - } else if (requestCode == 3) { - if (resultCode == 3) { - HashMap tempmap = (HashMap) data.getSerializableExtra("param"); - // for (Object key : tempmap.keySet()) { - // System.out.println(tempmap.get(key) + "-------------------"); - // } - DjUtil.setUiValue(hzTab, tempmap, pageMap, imgHandler); - } - } else if (requestCode == 4) { - View view = null; - if (data != null) { - String uiId = data.getExtras().getString("uiId"); - view = hzTab.findViewWithTag(uiId.toUpperCase()); - if (view != null && view instanceof EditText) { - view.requestFocus(); - ((EditText) view).setText(data.getExtras().getString("tm")); - } - } - if (nextFocusTag != null) { - if (view != null) { - view.clearFocus(); - } - setNextFocus(nextFocusTag); - nextFocusTag = null; - } - } - if (requestCode == 8888) { - Bitmap bitmap = BitmapFactory.decodeFile(pzImgPath, null); - photographUi.setImageBitmap(bitmap); - } - } - - public void setTabwidgetAtt(TabWidget tabwidget) { - for (int i = 0; i < tabwidget.getChildCount(); i++) { - // 设置页签高度和页签内字体属性 - TextView tv = (TextView) tabwidget.getChildAt(i).findViewById(android.R.id.title); - tabwidget.getChildAt(i).getLayoutParams().height = UnitConversionUtil.convertDIP2PX(20.0); - // tv.setTextSize(20); - // float t = tv.getTextSize() * SysData.t_scale * 2 / 3; - // tv.setTextSize(t); - // System.out.println(tv.getTextSize()); - tv.setTextColor(Color.WHITE); - tv.setGravity(Gravity.CENTER_HORIZONTAL); - } - } - - public void purview() { - try { - String url = SysData.url + "/webservice/ServiceInterface?wsdl"; - System.out.println(url); - String method = "selectAndroidPurview"; - SoapObject rpc = new SoapObject("", method); - rpc.addProperty("userid", SysData.userid); - HttpTransportSE ht = new HttpTransportSE(url, SysData.timeout); - ht.debug = true; - SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); - envelope.bodyOut = rpc; - envelope.dotNet = true; - envelope.setOutputSoapObject(rpc); - ht.call("", envelope); - if (envelope.getResponse() != null) {// 判断是否返回结果,因为我这个是一个查询操作,是带有返回值的。 - byte[] bb = Base64.decode(envelope.getResponse().toString()); - List list = (List) IoUtil.byte_obj(bb); - // for(int i=0;i 0) { Log.d(TAG, "opened"); Opened = true; } } if - * (mReadThread == null) { mReadThread = new ReadThread(); - * mReadThread.start(); System.out.println("线程创建并启动"); } else - * { if (!mReadThread.isAlive()) { mReadThread.start(); - * System.out.println("线程只启动"); } } } Log.d(TAG, "onResume"); - ****/ - super.onResume(); - System.out.println("onResume"); - if (cr5wScanControl != null) - cr5wScanControl.start(DjActivity.this); - else if (androidHandheldTerminal != null) - androidHandheldTerminal.start(); - else if (nr510ScanControl != null) - nr510ScanControl.start(DjActivity.this); - else if (androidHandheldTerminal0 != null) { - androidHandheldTerminal0.start(); - } else if (haixinN1SDemoReceiver != null) { - haixinN1sStart(); + /* 数据操作变量 */ + private DBManager dbManager; + private String ttsNr; + private OnCompletionListener completionListener = new OnCompletionListener() { + // @Override + public void onCompletion(MediaPlayer mp) { + if (ttsNr != null) { + if (tts != null) { + tts.speak(ttsNr, TextToSpeech.QUEUE_ADD, null); + } + ttsNr = null; + } + } + }; + /* 菜单栏查询 */ + Runnable menuRun = new Runnable() { + public void run() { + purview(); + } + }; + /* 显示网络图片Handler */ + public Handler imgHandler = new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + if (msg.what == -1) { + DialogUtil.builder(DjActivity.this, "错误信息", "图片地址不正确", 0); + } else { + Map map = (Map) msg.obj; + ((SelfImage) map.get("image")).setBitmap((Bitmap) map.get("bitMap")); + } + } + + }; + /* 单据内容查询后更新页面 */ + private Handler handler = new Handler() { + @Override + // 当有消息发送出来的时候就执行Handler的这个方法 + public void handleMessage(Message msg) { + super.handleMessage(msg); + if (msg.what == -1) { + if (pd != null) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "初始化失败:" + msg.obj, 0); + } + } else { + Object initOb = msg.obj; + if (initOb instanceof Map) { + djInitMap = (Map) initOb; + createDj(1); + } else { + if (initOb.equals("0")) { + DialogUtil.builder(DjActivity.this, "提示信息", "PDA未注册!", 0); + } else if (initOb.equals("1")) { + DialogUtil.builder(DjActivity.this, "提示信息", "PDA还未授权使用!", 0); + } else if (initOb.equals("2")) { + DialogUtil.builder(DjActivity.this, "提示信息", "试用期已过!", 0); + } else if (initOb.equals("该模块未授权")) { + DialogUtil.builder(DjActivity.this, "提示信息", "该模块未授权!", 0); + } + pd.cancel(); + } + } + } + + }; + /* 菜单查询后更新页面 */ + private Handler menuHandler = new Handler() { + @Override + // 当有消息发送出来的时候就执行Handler的这个方法 + public void handleMessage(Message msg) { + super.handleMessage(msg); + if (msg.what == -1) { + DialogUtil.builder(DjActivity.this, "错误信息", "下载单据菜单失败!" + msg.obj, 0); + } else { + menuAdapter.notifyDataSetChanged(); + } + pd.cancel(); + } + + }; + private Handler sqlHandler = new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + if (msg.what == -1) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "提取方案SQL失败!" + msg.obj, 0); + } else { + if (msg.arg1 == 0) { + try { + HashMap faMap = (HashMap) IoUtil.byte_obj((byte[]) msg.obj); + Map map = SqlUtil.regSql(faMap.get("sql").toString(), hzTab, pageMap); + pd.setMessage("正在执行检索方案"); + String audioFld = ""; + if (faMap.get("audioFld") != null) { + audioFld = faMap.get("audioFld").toString().toUpperCase(); + } + runSearch(map, faMap.get("return_one").toString(), audioFld); + } catch (Exception e) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "检索方案内容解析失败!", 0); + } + } else if (msg.arg1 == 1) { + String sql = null; + try { + sql = (String) IoUtil.byte_obj((byte[]) msg.obj); + } catch (Exception e) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案内容解析失败!", 0); + return; + } + Map map = SqlUtil.regSql(sql, hzTab, pageMap); + map.put("gzid", pageMap.get("GZID")); + map.put("mxTempTable", mxTempTable); + Map hzData = DjUtil.organizationHzData(hzTab, pageMap.get("GZID")); + hzData.putAll(pageMap); + map.put("hzData", hzData); + try { + byte[] b = IoUtil.getbyte(map); + String paramString = Base64.encode(b); + pd.setMessage("正在执行页面修改方案"); + runYmup(paramString); + } catch (Exception e) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案组织数据失败!", 0); + } + } else if (msg.arg1 == 2) {// 页面提取方案 + Djselefa djselefa = null; + try { + djselefa = (Djselefa) IoUtil.byte_obj((byte[]) msg.obj); + } catch (Exception e) { + e.printStackTrace(); + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "提取方案内容解析失败!", 0); + return; + } + HashMap map = SqlUtil.regSql(djselefa.getT_sql(), hzTab, pageMap); + pd.cancel(); + Intent intent = new Intent(); + djselefa.setT_sql(map.get("sql").toString()); + HashMap paramMap = new HashMap(); + paramMap.put("djselefa", djselefa); + paramMap.put("t_sqlParam", (HashMap) map.get("param")); + paramMap.put("mxTempTable", mxTempTable); + paramMap.put("GZID", pageMap.get("GZID")); + intent.putExtra("paramMap", paramMap); + intent.setClass(getApplicationContext(), DjtqActivity.class); + startActivityForResult(intent, 2); + } + } + } + }; + public Handler runHandler = new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + View rootview = DjActivity.this.getWindow().getDecorView(); + View aaa = rootview.findFocus(); + if (aaa instanceof SelfEditText) { + m_view = aaa; + SelfEditText set = (SelfEditText) aaa; + if (set.getText().length() > 0) + set.selectAll(); + } + if (msg.what == -1) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "检索方案执行失败:" + msg.obj.toString(), 0); + } else if (msg.what == -2) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案执行失败:" + msg.obj.toString(), 0); + WifiManager wifiManager = (WifiManager) DjActivity.this.getSystemService(Context.WIFI_SERVICE); + wifiManager.disconnect(); + wifiManager.reconnect(); + } else if (msg.what == -3) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "单据保存失败:" + msg.obj.toString(), 0); + } else if (msg.what == -4) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "单据退出失败:" + msg.obj.toString(), 0); + } else if (msg.what == -5) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "查询明细失败:" + msg.obj.toString(), 0); + } else { + if (msg.obj == null) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "方案执行失败!", 0); + } else { + if (msg.arg1 == 1) {// 检索方案 + Map map = (Map) msg.obj; + DataGrid dg = (DataGrid) map.get("dg"); + int len = dg.getTableData().size(); + if (len < 1) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "提示信息", "当前查询没有记录!", 0); + return; + } + String speakFld = (map.get("audioFld")).toString(); + if (map.get("return_one").equals("Y") && len < 2) { + Map paramValueMap = (Map) dg.getTableData().get(0); + play(paramValueMap, speakFld); + DjUtil.setUiValue(hzTab, paramValueMap, pageMap, imgHandler); + } else { + Intent intent = new Intent(); + intent.setClass(getApplicationContext(), ParamActivity.class); + intent.putExtra("dg", dg); + intent.putExtra("audioFld", speakFld); + startActivityForResult(intent, 1); + } + if (defaultFocus != null) { + DjUtil.setFocus(hzTab, defaultFocus); + defaultFocus = null; + } + pd.cancel(); + } else if (msg.arg1 == 2) {// 页面修改方案 + Object ob = msg.obj; + if (ob instanceof Map) { + Map map = (Map) ob; + List> list = (List>) map.get("hz"); + Map paramValueMap = new HashMap(); + for (Map tm : list) { + if ("MESSAGE_A".equals(tm.get(" fieldname"))) { + paramValueMap = tm; + } else if ("MESSAGE_AUDIO".equals(tm.get("fieldname"))) + paramValueMap = tm; + } + play(paramValueMap, "fieldValue"); + DjUtil.setUiValue(hzTab, (List) map.get("hz"), pageMap, imgHandler); + + if (map.get("msg") != null) { + String ymup_msg = map.get("msg").toString(); + if (ymup_msg.toUpperCase().indexOf("JUMP_") == 0) { + String ymup_msgs[] = ymup_msg.split("_"); + String newOpenDjFromlx = ymup_msgs[1].toUpperCase(); + int dj_no = -1; + int len = menuData.size(); + for (int i = 0; i < len; i++) { + Map tempMap = (Map) menuData.get(i); + String tempgn_no = tempMap.get("gn_no").toString().toUpperCase(); + if (newOpenDjFromlx.equals(tempgn_no)) { + dj_no = i; + break; + } + } + if (dj_no == -1) { + DialogUtil.builder(DjActivity.this, "提示信息", "当前操作员不具有" + newOpenDjFromlx + "单据操作权限!", 0); + } else { + tabhost.setCurrentTab(0); + currentDjId = dj_no; + DialogUtil.builderCancel(DjActivity.this, "提示", "是否退出该单据", okClick); + } + } else { + String returnMsg[] = map.get("msg").toString().split("@"); + int fontsize = 0; + if (returnMsg.length > 1) { + fontsize = Integer.parseInt(returnMsg[1]); + } + DialogUtil.builder(DjActivity.this, "提示信息", returnMsg[0], fontsize); + } + } + } else { + DialogUtil.builder(DjActivity.this, "提示信息", ob.toString(), 0); + } + pd.cancel(); + } else if (msg.arg1 == 3) { + String mess = msg.obj.toString(); + if (mess.substring(0, 2).equals("ok")) { + String djbh = mess.substring(2, mess.length()); + mxData.clear(); + mxAdapter.notifyDataSetChanged(); + hzTab.setCurrentTab(0); + hzTab.clearAllTabs(); + pageMap.clear(); + mxTempTable = null; + mxSql = null; + mxQuerySql = null; + createDj(0); + DialogUtil.builder(DjActivity.this, "提示信息", "单据保存成功\n单据编号:".concat(djbh), 0); + } else { + DialogUtil.builder(DjActivity.this, "提示信息", mess, 0); + } + pd.cancel(); + } else if (msg.arg1 == 4) { + if (tabhost.getCurrentTab() != 0) { + hzTab.clearAllTabs(); + mxData.clear(); + fangAMap.clear(); + djInitMap.clear(); + djInitMap = null; + pageMap.clear(); + mxTempTable = null; + mxSql = null; + mxQuerySql = null; + formlx = null; + pd.cancel(); + tabhost.setCurrentTab(0); + } else { + pd.cancel(); + openNewDj(); + } + } else if (msg.arg1 == 5) { + mxData.clear(); + try { + byte[] bb = Base64.decode(msg.obj.toString()); + mxData.addAll((List) IoUtil.byte_obj(bb)); + } catch (Exception e) { + DialogUtil.builder(DjActivity.this, "提示信息", "数据转换失败", 0); + } + mxAdapter.notifyDataSetChanged(); + pd.cancel(); + } + } + + } + if (nextFocusTag != null) { + setNextFocus(nextFocusTag); + nextFocusTag = null; + } + if (isLinghtScreen) { + releaseLinghtScreen(); + } + if (newScanControler != null) { + newScanControler.scanOnce();// 如果PDA是ht518 则一进入单据就打开扫描 + } + if (seuicScanner != null && islxscan.equals("0")) { + seuicScanner.startScan(); + } + + if (androidHandheldTerminal0 != null) { + androidHandheldTerminal0.start(); + } + if (cr5wScanControl != null) + cr5wScanControl.start(DjActivity.this); + if (androidHandheldTerminal != null) + androidHandheldTerminal.start(); + if (nr510ScanControl != null) + nr510ScanControl.start(DjActivity.this); + if(uroBoScannerControl!=null){ + uroBoScannerControl.start(); + } + if (barcodeReader != null) { + continuousScanning(true); + } + if (zkr322aControl != null) { + zkr322aControl.start(); + } + if (haixinN1SDemoReceiver != null) { + haixinN1sStart(); + } + reReadCode = true; + } + }; + /* 事件 */ + public OnFocusChangeEvent focusEvent; + public OnClickEvent clickEvent; + public PzClickListener pzClickEvent;// 拍照事件 + public ImageClickListener imgClickEvent; + + private void createDj(int ty) { + if (ty == 1) {// 为0表示保存后新开单据 + fangAMap.clear(); + if (!SysData.is_lx) { + DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("searchList")); + DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("ymupList")); + DjUtil.assembleFangA(fangAMap, (ArrayList) djInitMap.get("djtqList")); + djInitMap.remove("searchList"); + djInitMap.remove("ymupList"); + djInitMap.remove("djtqList"); + } else { + fangAMap = (HashMap) djInitMap.get("fangAMap"); + djInitMap.remove("fangAMap"); + } + } + Sys_DanJuFormsOptions danju = (Sys_DanJuFormsOptions) djInitMap.get("danju"); + ByteArrayInputStream in = null; + try { + DanJuEntity dj = (DanJuEntity) IoUtil.byte_obj2(danju.getFORM()); + if (SysData.is_lx) {// 如果是离线单据就在PDA上生成临时表 + String tableName = "CR_DJBS_".concat(danju.getFORMbs()).concat(formlx); + String createMxTableSql = "create table ".concat(tableName).concat("(gzid char(11),dj_sn int null default 0,"); + HashMap mxFiledMap = null; + for (int i = 0; i < dj.mxzdArray.size(); i++) { + mxFiledMap = (HashMap) dj.mxzdArray.get(i); + createMxTableSql = createMxTableSql.concat(mxFiledMap.get("fdname").toString()); + String fdtype = mxFiledMap.get("fdtype").toString(); + if (fdtype.equals("字符")) { + createMxTableSql = createMxTableSql.concat("varchar (").concat(mxFiledMap.get("fdsize").toString()).concat(") null default '',"); + } else if (fdtype.equals("整型") || fdtype.equals("整数")) { + createMxTableSql = createMxTableSql.concat(" int null default 0,"); + } else if (fdtype.equals("时间")) { + createMxTableSql = createMxTableSql.concat(" datetime null ,"); + } else if (fdtype.equals("位图") || fdtype.equals("二进")) { + createMxTableSql = createMxTableSql.concat(" blob null ,"); + } else if (fdtype.equals("文本")) { + createMxTableSql = createMxTableSql.concat(" text ,"); + } else if (fdtype.equals("实数")) { + createMxTableSql = createMxTableSql.concat(" decimal(").concat(mxFiledMap.get("fdsize").toString()).concat(",") + .concat(mxFiledMap.get("fddec").toString()).concat(") null default 0 ,"); + } + } + createMxTableSql = createMxTableSql.concat(" CONSTRAINT cr_").concat(danju.getFORMbs()).concat("_").concat(formlx) + .concat("_PK PRIMARY KEY (gzid,dj_sn))"); + if (dbManager.existsTable(tableName) > 0) { + dbManager.exeSql("drop table ".concat(tableName)); + } + dbManager.exeSql(createMxTableSql); + } + String[] arrs = dj.pageNr.split("\\^"); + if (arrs.length > 1) { + dj.pageNr = arrs[0]; + } + in = new ByteArrayInputStream(dj.pageNr.getBytes()); + pageMap.put("RQ", djInitMap.get("RQ").toString()); + Dom4jUtil.testParseXMLData(in, DjActivity.this); + if (dj.mxzdArray.size() > 0) { + mxTitle.setText(((Map) dj.mxzdArray.get(0)).get("chnname").toString().trim()); + if (mxAdapter != null) { + mxAdapter.clear(); + } + mxAdapter = new MyAdapter(DjActivity.this, mxData, ((Map) dj.mxzdArray.get(0)).get("fdname").toString().trim().toUpperCase()); + mxList.setAdapter(mxAdapter); + } + mxTempTable = "CR_DJBS_".concat(danju.getFORMbs()).concat(formlx); + mxSql = DjUtil.createMxSql(dj.mxzdArray, mxTempTable); + mxQuerySql = DjUtil.createMxQuerySql(dj.mxzdArray, mxTempTable); + if (mxQuerySql == null) { + mxRefreshBut.setEnabled(false); + mxTempTable = null; + } else { + mxRefreshBut.setEnabled(true); + } + pageMap.put("GZID", djInitMap.get("GZID").toString().trim()); + pageMap.put("DJLX", formlx); + pageMap.put("DJBH", danju.getFORMbs().trim().concat("草")); + pageMap.put("DJBS", danju.getFORMbs().trim()); + pageMap.put("RQ", djInitMap.get("RQ").toString()); + pageMap.put("ONTIME", djInitMap.get("ONTIME").toString()); + pageMap.put("JIGID", SysData.jigid); + pageMap.put("ZHIYID", SysData.userid); + pageMap.put("USERID", SysData.userid); + pageMap.put("USERNAME", SysData.lgnname); + pageMap.put("CLIENTID", SysData.clientid); + DjUtil.setUiValue2(hzTab, pageMap, imgHandler); + String newDjInit = null; + if (dj.fangAtyjkVO != null) { + newDjInit = dj.fangAtyjkVO.newDjInit.trim(); + } + if (newDjInit != null && newDjInit.length() > 0) { + defaultFocus = danju.getDefaultFouseField(); + defaultFocus2 = defaultFocus; + eventHandler(newDjInit, null); + } else { + defaultFocus2 = danju.getDefaultFouseField(); + DjUtil.setFocus(hzTab, danju.getDefaultFouseField()); + } + pd.cancel(); + } catch (Exception e) { + e.printStackTrace(); + DialogUtil.builder(this, "错误信息", "生成单据页面失败!" + e.toString(), 0); + pd.cancel(); + } finally { + try { + if (in != null) { + in.close(); + in = null; + } + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + public DialogInterface.OnClickListener okClick = new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + // TODO Auto-generated method stub + new DjMenuFun().exitDj(DjActivity.this); + } + }; + public DialogInterface.OnClickListener cancelClick = new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + // TODO Auto-generated method stub + + } + }; + + public void queryMx(View v) { + if (mxQuerySql == null) { + return; + } + DialogUtil.setDialog(pd, "正在查询单据内容", "正在查询明细……"); + new ExitThread(pageMap.get("GZID"), mxQuerySql, runHandler, "queryMx").start(); + } + + public void openNewDj() { + if (SysData.is_lx) { + if (dbManager.existsTable("sys_DanJuFormsOptions".toUpperCase()) < 1) { + DialogUtil.builder(DjActivity.this, "提示信息", "请下载单据表", 0); + return; + } + } + DialogUtil.setDialog(pd, "正在查询单据内容", "正在下载……"); + Map map = (Map) menuData.get(currentDjId); + formlx = map.get("gn_no").toString(); + mxData.clear(); + pageMap.clear(); + if (djInitMap != null) { + djInitMap.clear(); + djInitMap = null; + } + fangAMap.clear(); + mxTempTable = null; + mxSql = null; + tabhost.setCurrentTab(1); + hzTab.clearAllTabs(); + if (SysData.is_lx) { + new Thread(new LxDJNrThread(dbManager, handler, formlx)).start(); + } else { + new Thread(new DownDJRun(formlx, handler)).start(); + } + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_dj); + if (SysData.url != null) { + this.setTitle(SysData.no + " " + SysData.url.substring(SysData.url.indexOf("//") + 2, 24)); + } + focusEvent = new OnFocusChangeEvent(); + clickEvent = new OnClickEvent(); + imgClickEvent = new ImageClickListener(this); + pzClickEvent = new PzClickListener(this); + /* 检测语音包资源 如果有合适的资源 就在onActivityResult中实例化一个TTS */ + Intent checkIntent = new Intent(); + checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); + startActivityForResult(checkIntent, MY_DATA_CHECK_CODE); + mxRefreshBut = (Button) findViewById(R.id.mxbut); + /*--------------*/ + pd = ProgressDialog.show(DjActivity.this, "正在查询单据菜单", "正在下载……"); + pd.setOnCancelListener(new OnCancelListener() { + + @Override + public void onCancel(DialogInterface dialog) { + if (m_view != null) { + if (m_view instanceof SelfEditText) { + ((SelfEditText) m_view).selectAll(); + } + m_view = null; + } + } + }); + menuData = new ArrayList(); + if (SysData.is_lx) { + dbManager = new DBManager(this); + new Thread(new LxMenuQueryThread(dbManager, menuHandler, menuData)).start(); + } else { + new Thread(menuRun).start();// 查询单据菜单 + } + tabhost = getTabHost(); + tabhost.addTab(tabhost.newTabSpec("djmenu").setIndicator("菜单").setContent(R.id.djmenu)); + tabhost.addTab(tabhost.newTabSpec("hz").setIndicator("汇总").setContent(R.id.hz)); + tabhost.addTab(tabhost.newTabSpec("mx").setIndicator("明细").setContent(R.id.mx)); + TabWidget tabwidget = tabhost.getTabWidget(); + setTabwidgetAtt(tabwidget); + Intent intent = getIntent(); + String displaymode = intent.getStringExtra("displaymode"); + islxscan = intent.getStringExtra("islxscan"); + if (displaymode.equals("grid")) { + menuAdapter = new ImageAdpter(menuData, this); + menuList = new GridView(this); + GridView gv = (GridView) menuList; + gv.setNumColumns(3); + gv.setVerticalSpacing(20); + ((AdapterView) menuList).setAdapter(menuAdapter); + RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); + layoutParams.topMargin = 0; + layoutParams.leftMargin = 0; + ((LinearLayout) findViewById(R.id.djmenu)).addView(menuList, layoutParams); + } else { + menuAdapter = new SimpleAdapter(this, menuData, R.layout.activity_menu, new String[]{"mname"}, new int[]{R.id.title}); + // menuList = (ListView) findViewById(R.id.munuList); + menuList = new ListView(this); + RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); + layoutParams.topMargin = 0; + layoutParams.leftMargin = 0; + ((LinearLayout) findViewById(R.id.djmenu)).addView(menuList, layoutParams); + ((AdapterView) menuList).setAdapter(menuAdapter); + } + OnItemClickListener lis1 = new OnItemClickListener() { + + @Override + public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { + if (formlx != null) { + currentDjId = arg2; + DialogUtil.builderCancel(DjActivity.this, "提示", "是否退出该单据", okClick); + } else { + currentDjId = arg2; + openNewDj(); + } + } + }; + menuList.setOnItemClickListener(lis1); + + hzTab = (TabHost) findViewById(R.id.hz); + hzTab.setup(); + mxTitle = (TextView) findViewById(R.id.mxtitle); + mxList = (ListView) findViewById(R.id.mxlist); + mxList.setChoiceMode(ListView.CHOICE_MODE_SINGLE);// 一定要设置这个属性,否则ListView不会刷新 + mxList.setOnItemClickListener(new OnItemClickListener() { + @Override + public void onItemClick(AdapterView arg0, View arg1, int position, long id) { + cur_pos = position;// 更新当前行 + mxAdapter.cur_pos = cur_pos; + } + }); + + tabhost.getTabWidget().getChildAt(2).setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + ((Button) findViewById(R.id.mxbut)).performClick(); + tabhost.setCurrentTab(2); + } + }); + + tabhost.getTabWidget().getChildAt(1).setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + tabhost.setCurrentTab(1); + if (defaultFocus2 != null) { + DjUtil.setFocus(hzTab, defaultFocus2); + } + } + }); + + phoneModel = android.os.Build.MODEL.toLowerCase(); + System.out.println(phoneModel + "--------------phoneModel---------------"); + if (phoneModel.equals("zk-r322a") || phoneModel.equals("zk-r322") || phoneModel.equals("zk-r323") || phoneModel.equals("zk-r323a")) { + zkr322aNew(); + }/* else if (phoneModel.equals("n1s")) { + haixinN1SInit(); + } */ else if (phoneModel.equals("ht518")) { + // ht518Init(); + ht518InitNew(); + } else if (phoneModel.equals("al9") /*|| "cruise".equals(phoneModel)*/) { + seuicIint(); + } else if ("cr-5w".equals(phoneModel) /*|| "android handheld terminal".equals(phoneModel)*/) { + cr5wScanControl = new CR5WScanControl(); + cr5wScanControl.init(DjActivity.this); + } else if ("android handheld terminal".equals(phoneModel)) { + androidHandheldTerminal0 = new AndroidHandheldTerminal0(DjActivity.this); + //androidHandheldTerminal = new AndroidHandheldTerminal(); + } else if ("nr510".equals(phoneModel) || "android".equals(phoneModel)) { + nr510ScanControl = new Nr510ScanControl(); + }else if("i6200series".equals(phoneModel)){ + uroBoScannerControl=new UroBoScannerControl(); + } else if ("scanpal eda50".equals(phoneModel)) { + // get bar code instance from MainActivity + // DialogUtil.builder(DjActivity.this, "信息", "初始化失败:111111111111111111", 0); + //if (barcodeReader != null) { + /// continuousScanning(true); + //} else { + barcodeReader = MainActivity.getBarcodeObject(); + + if (barcodeReader != null) { + + // register bar code event listener + barcodeReader.addBarcodeListener(this); + + // set the trigger mode to client control + try { + //barcodeReader.setProperty(BarcodeReader.PROPERTY_TRIGGER_CONTROL_MODE, + // BarcodeReader.TRIGGER_CONTROL_MODE_AUTO_CONTROL); + // set the trigger mode to client control + barcodeReader.setProperty(BarcodeReader.PROPERTY_TRIGGER_CONTROL_MODE, + BarcodeReader.TRIGGER_CONTROL_MODE_CLIENT_CONTROL); + + } catch (UnsupportedPropertyException e) { + Toast.makeText(this, "Failed to apply properties", Toast.LENGTH_SHORT).show(); + } + // register trigger state change listener + barcodeReader.addTriggerListener(this); + + Map properties = new HashMap(); + // Set Symbologies On/Off + properties.put(BarcodeReader.PROPERTY_CODE_128_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_GS1_128_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_QR_CODE_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_CODE_39_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_DATAMATRIX_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_UPC_A_ENABLE, true); + properties.put(BarcodeReader.PROPERTY_EAN_13_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_AZTEC_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_CODABAR_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_INTERLEAVED_25_ENABLED, true); + properties.put(BarcodeReader.PROPERTY_PDF_417_ENABLED, true); + // Set Max Code 39 barcode length + properties.put(BarcodeReader.PROPERTY_CODE_39_MAXIMUM_LENGTH, 10); + // Turn on center decoding + properties.put(BarcodeReader.PROPERTY_CENTER_DECODE, true); + // Enable bad read response + properties.put(BarcodeReader.PROPERTY_NOTIFICATION_BAD_READ_ENABLED, false); + properties.put(BarcodeReader.PROPERTY_EAN_13_CHECK_DIGIT_TRANSMIT_ENABLED, true); + // Apply the settings + barcodeReader.setProperties(properties); + } + try { + barcodeReader.claim(); + } catch (ScannerUnavailableException e) { + e.printStackTrace(); + Toast.makeText(this, "Scanner unavailable", Toast.LENGTH_SHORT).show(); + } + // } + } + acquireWakeLock(); + WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); + wifiLock = wifiManager.createWifiLock("crtechWIFI"); + wifiLock.acquire(); + System.out.println(wifiLock.isHeld() + "-----------------===-----------锁住"); + /**** + * mt35a初始化扫描变量 try { DevCtrl = new DeviceControl("/proc/driver/scan"); + * System.out.println("DevCtrl初始化扫描"); } catch (SecurityException e) { + * e.printStackTrace(); } catch (IOException e) { Log.d(TAG, "AAA"); new + * AlertDialog.Builder(this) .setTitle(R.string.DIA_ALERT) + * .setMessage(R.string.DEV_OPEN_ERR) + * .setPositiveButton(R.string.DIA_CHECK, new + * DialogInterface.OnClickListener() { + * + * @Override public void onClick(DialogInterface dialog, int which) { // + * TODO Auto-generated method stub finish(); } }).show(); + * return; } ops = true;// 指明程序是否初始化 + * + * soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0); + * soundId = + * soundPool.load("/system/media/audio/ui/VideoRecord.ogg", + * 0); + * + * t_handler = new Handler() { + * @Override public void handleMessage(Message msg) { + * super.handleMessage(msg); if (msg.what == 1) { try { + * DevCtrl.PowerOffDevice(); } catch (IOException e) { + * Log.d(TAG, "BBB"); // TODO Auto-generated catch block + * e.printStackTrace(); }// powersave Powered = false; } } }; + * + * n_handler = new Handler() { + * @Override public void handleMessage(Message msg) { + * super.handleMessage(msg); if (msg.what == 1) { try { if + * (key_start == false) { DevCtrl.TriggerOffDevice(); timer = + * new Timer(); // 启动一个计时器,当机器闲置一段时间后,切断电源,节省能源。 + * timer.schedule(new MyTask(), 60000); key_start = true; } } + * catch (IOException e) { // TODO Auto-generated catch block + * e.printStackTrace(); } } } }; + * + * succeed_handler = new Handler() { + * @Override public void handleMessage(Message msg) { + * super.handleMessage(msg); if (msg.what == 1 && key_start == + * false) { String buff1 = msg.obj.toString(); // + * mReception.append(buff+"---"); View view = + * DjActivity.this.getCurrentFocus(); if (view != null && view + * instanceof EditText) { ((EditText) view).setText(buff1); + * view.clearFocus(); View nextView = layout + * .findViewWithTag(((SelfEditText) view).nextFocus); if + * (nextView != null) { nextView.requestFocus(); } } + * + * soundPool.play(soundId, 1, 1, 0, 0, 1); key_start = true; + * retrig_timer.cancel(); } } }; + ***/ + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + // if (resultCode == 1) { + // Map map = (Map) data.getSerializableExtra("param"); + // DjUtil.setUiValue(hzTab, map, pageMap, imgHandler); + // } + if (requestCode == MY_DATA_CHECK_CODE) { + if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) { + // success, create the TTS instance + tts = new TextToSpeech(this, this); + } else { + Intent installIntent = new Intent(); + installIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); + startActivity(installIntent); + } + } else if (requestCode == 1) { + if (resultCode == 1) { + Map map = (Map) data.getSerializableExtra("param"); + String speakFld = data.getSerializableExtra("audioFld").toString(); + if (tts != null) { + play(map, speakFld); + } + DjUtil.setUiValue(hzTab, map, pageMap, imgHandler); + } + } else if (requestCode == 2) { + if (resultCode == 2) { + DjUtil.setUiValue(hzTab, (HashMap) data.getSerializableExtra("param"), pageMap, imgHandler); + System.out.println(nextFocusTag + "-------------------------------------------------------------------"); + if (nextFocusTag != null) { + setNextFocus(nextFocusTag); + nextFocusTag = null; + } + } + } else if (requestCode == 3) { + if (resultCode == 3) { + HashMap tempmap = (HashMap) data.getSerializableExtra("param"); + // for (Object key : tempmap.keySet()) { + // System.out.println(tempmap.get(key) + "-------------------"); + // } + DjUtil.setUiValue(hzTab, tempmap, pageMap, imgHandler); + } + } else if (requestCode == 4) { + View view = null; + if (data != null) { + String uiId = data.getExtras().getString("uiId"); + view = hzTab.findViewWithTag(uiId.toUpperCase()); + if (view != null && view instanceof EditText) { + view.requestFocus(); + ((EditText) view).setText(data.getExtras().getString("tm")); + } + } + if (nextFocusTag != null) { + if (view != null) { + view.clearFocus(); + } + setNextFocus(nextFocusTag); + nextFocusTag = null; + } + } + if (requestCode == 8888) { + Bitmap bitmap = BitmapFactory.decodeFile(pzImgPath, null); + photographUi.setImageBitmap(bitmap); + } + } + + public void setTabwidgetAtt(TabWidget tabwidget) { + for (int i = 0; i < tabwidget.getChildCount(); i++) { + // 设置页签高度和页签内字体属性 + TextView tv = (TextView) tabwidget.getChildAt(i).findViewById(android.R.id.title); + tabwidget.getChildAt(i).getLayoutParams().height = UnitConversionUtil.convertDIP2PX(20.0); + // tv.setTextSize(20); + // float t = tv.getTextSize() * SysData.t_scale * 2 / 3; + // tv.setTextSize(t); + // System.out.println(tv.getTextSize()); + tv.setTextColor(Color.WHITE); + tv.setGravity(Gravity.CENTER_HORIZONTAL); + } + } + + public void purview() { + try { + String url = SysData.url + "/webservice/ServiceInterface?wsdl"; + System.out.println(url); + String method = "selectAndroidPurview"; + SoapObject rpc = new SoapObject("", method); + rpc.addProperty("userid", SysData.userid); + HttpTransportSE ht = new HttpTransportSE(url, SysData.timeout); + ht.debug = true; + SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); + envelope.bodyOut = rpc; + envelope.dotNet = true; + envelope.setOutputSoapObject(rpc); + ht.call("", envelope); + if (envelope.getResponse() != null) {// 判断是否返回结果,因为我这个是一个查询操作,是带有返回值的。 + byte[] bb = Base64.decode(envelope.getResponse().toString()); + List list = (List) IoUtil.byte_obj(bb); + // for(int i=0;i 0) { Log.d(TAG, "opened"); Opened = true; } } if + * (mReadThread == null) { mReadThread = new ReadThread(); + * mReadThread.start(); System.out.println("线程创建并启动"); } else + * { if (!mReadThread.isAlive()) { mReadThread.start(); + * System.out.println("线程只启动"); } } } Log.d(TAG, "onResume"); + ****/ + super.onResume(); + System.out.println("onResume"); + if (cr5wScanControl != null) + cr5wScanControl.start(DjActivity.this); + else if (androidHandheldTerminal != null) + androidHandheldTerminal.start(); + else if (nr510ScanControl != null) + nr510ScanControl.start(DjActivity.this); + else if (androidHandheldTerminal0 != null) { + androidHandheldTerminal0.start(); + } else if (haixinN1SDemoReceiver != null) { + haixinN1sStart(); + }else if(uroBoScannerControl!=null){ + uroBoScannerControl.start(); + } + if (seuicScanner != null) {// seuic PDA操作 + boolean b = seuicScanner.open(); + System.out.println(b + "----seuicScanner.open()"); + seuicScanner.setDecodeInfoCallBack(this); + // ScannerKey.open(); + // if (!seuicScannerThread.isrun) { + // System.out.println("------------------------onResume"); + // seuicScannerThread.isrun = true; + // new Thread(seuicScannerThread).start(); + // } } - if (seuicScanner != null) {// seuic PDA操作 - boolean b = seuicScanner.open(); - System.out.println(b + "----seuicScanner.open()"); - seuicScanner.setDecodeInfoCallBack(this); - // ScannerKey.open(); - // if (!seuicScannerThread.isrun) { - // System.out.println("------------------------onResume"); - // seuicScannerThread.isrun = true; - // new Thread(seuicScannerThread).start(); - // } - } if (barcodeReader != null) { - continuousScanning(true); + continuousScanning(true); } if (zkr322aControl != null) { - zkr322aControl.start(); + zkr322aControl.start(); } reReadCode = true; - } + } - @Override - protected void onStart() { - super.onStart(); - System.out.println("onStart"); - if (newScanControler != null) { - newScanControler.scanOnce(); - } - else if (seuicScanner != null) { - seuicScanner.setDecodeInfoCallBack(this); - seuicScanner.open(); - } - else if (cr5wScanControl != null) - cr5wScanControl.start(DjActivity.this); - else if (nr510ScanControl != null) - nr510ScanControl.start(DjActivity.this); - else if (androidHandheldTerminal != null) - androidHandheldTerminal.start(); - else if (barcodeReader != null) - continuousScanning(true); - else if (haixinN1SDemoReceiver != null) { - haixinN1sStart(); + @Override + protected void onStart() { + super.onStart(); + System.out.println("onStart"); + if (newScanControler != null) { + newScanControler.scanOnce(); + } else if (seuicScanner != null) { + seuicScanner.setDecodeInfoCallBack(this); + seuicScanner.open(); + } else if (cr5wScanControl != null) + cr5wScanControl.start(DjActivity.this); + else if(uroBoScannerControl!=null){ + uroBoScannerControl.start(); + } + else if (nr510ScanControl != null) + nr510ScanControl.start(DjActivity.this); + else if (androidHandheldTerminal != null) + androidHandheldTerminal.start(); + else if (barcodeReader != null) + continuousScanning(true); + else if (haixinN1SDemoReceiver != null) { + haixinN1sStart(); } // else if(androidHandheldTerminal0 != null) // androidHandheldTerminal0.start(); if (zkr322aControl != null) { - zkr322aControl.start(); + zkr322aControl.start(); } reReadCode = true; - } + } - @Override - protected void onPause() { - // TODO Auto-generated method stub - super.onPause(); - if (newScanControler != null) { - newScanControler.stopScan(); - } - else if (cr5wScanControl != null) - cr5wScanControl.stop(DjActivity.this); - else if (nr510ScanControl != null) - nr510ScanControl.stop(DjActivity.this); - else if (androidHandheldTerminal != null) - androidHandheldTerminal.stop(); - else if (androidHandheldTerminal0 != null) { - androidHandheldTerminal0.stop(); - } else if (haixinN1SDemoReceiver != null) { - haixinN1sStop(); + @Override + protected void onPause() { + // TODO Auto-generated method stub + super.onPause(); + if (newScanControler != null) { + newScanControler.stopScan(); + } else if (cr5wScanControl != null) + cr5wScanControl.stop(DjActivity.this); + else if (nr510ScanControl != null) + nr510ScanControl.stop(DjActivity.this); + else if (androidHandheldTerminal != null) + androidHandheldTerminal.stop(); + else if (androidHandheldTerminal0 != null) { + androidHandheldTerminal0.stop(); + } else if (haixinN1SDemoReceiver != null) { + haixinN1sStop(); + }else if(uroBoScannerControl!=null){ + uroBoScannerControl.stop(); + } + System.out.println("onPause"); + if (seuicScanner != null) {// seuic PDA操作 + System.out.println("seuicScanner.close"); + seuicScanner.stopScan(); + seuicScanner.close(); + seuicScanner.setDecodeCallBack(null); + // ScannerKey.close(); + // if (seuicScannerThread.isrun) { + // seuicScannerThread.isrun = false; + // } } - System.out.println("onPause"); - if (seuicScanner != null) {// seuic PDA操作 - System.out.println("seuicScanner.close"); - seuicScanner.stopScan(); - seuicScanner.close(); - seuicScanner.setDecodeCallBack(null); - // ScannerKey.close(); - // if (seuicScannerThread.isrun) { - // seuicScannerThread.isrun = false; - // } - } if (barcodeReader != null) { // release the scanner claim so we don't get any scanner // notifications while paused. // barcodeReader.release(); - continuousScanning(false); + continuousScanning(false); } if (zkr322aControl != null) { - zkr322aControl.stop(); + zkr322aControl.stop(); } - } + } + + @Override + protected void onStop() { + // TODO Auto-generated method stub + super.onStop(); + } + + public void onDestroy() { + // if (seuicScanner != null) {// seuic PDA操作 + // ScannerKey.close(); + // com.seuic.scanner.Scanner.stopScanService(this); + // } + // TODO Auto-generated method stub + /** + * mt35a 调用 System.out.println("杀死---------------------------------"); + * if (ops == true) { try { + * System.out.println("杀死123---------------------------------"); + * mReadThread.interrupt(); soundPool.release(); DevCtrl.DeviceClose(); + * } catch (IOException e) { Log.d(TAG, "EEE"); // TODO Auto-generated + * catch block e.printStackTrace(); } } + ****/ + super.onDestroy(); - @Override - protected void onStop() { - // TODO Auto-generated method stub - super.onStop(); - } - public void onDestroy() { - // if (seuicScanner != null) {// seuic PDA操作 - // ScannerKey.close(); - // com.seuic.scanner.Scanner.stopScanService(this); - // } - // TODO Auto-generated method stub - /** - * mt35a 调用 System.out.println("杀死---------------------------------"); - * if (ops == true) { try { - * System.out.println("杀死123---------------------------------"); - * mReadThread.interrupt(); soundPool.release(); DevCtrl.DeviceClose(); - * } catch (IOException e) { Log.d(TAG, "EEE"); // TODO Auto-generated - * catch block e.printStackTrace(); } } - ****/ - super.onDestroy(); - - if (barcodeReader != null) { - barcodeReader.release(); + barcodeReader.release(); // unregister barcode event listener - barcodeReader.removeBarcodeListener(this); + barcodeReader.removeBarcodeListener(this); // unregister trigger state change listener - barcodeReader.removeTriggerListener(this); - barcodeReader = null; - // triggerState = true; + barcodeReader.removeTriggerListener(this); + barcodeReader = null; + // triggerState = true; + } + + if (diPlayer != null) { + diPlayer.stop(); + diPlayer.release(); + diPlayer = null; + } + if (duPlayer != null) { + duPlayer.stop(); + duPlayer.release(); + duPlayer = null; + } + if (vibrator != null) { + vibrator.cancel(); } - - if (diPlayer != null) { - diPlayer.stop(); - diPlayer.release(); - diPlayer = null; - } - if (duPlayer != null) { - duPlayer.stop(); - duPlayer.release(); - duPlayer = null; - } - if (vibrator != null) { - vibrator.cancel(); - } // if (seuicScanner != null) { // seuicScanner.stopScan(); // seuicScanner.close(); // seuicScanner.setDecodeCallBack(null); // } - completionListener = null; - // if (washeld) { - // washeld = false; - + completionListener = null; + // if (washeld) { + // washeld = false; - } - private void exitClear() { - System.out.println("---退出清理---"); - if (dbManager != null) { - dbManager.closeDB(); - dbManager = null; - } - if (djInitMap != null) { - djInitMap.clear(); - djInitMap = null; - } - fangAMap.clear(); - fangAMap = null; - pageMap.clear(); - pageMap = null; - if (menuList != null) { - menuList = null; - } - if (menuAdapter != null) { - menuAdapter = null; - } - if (menuData != null) { - menuData.clear(); - menuData = null; - } - if (menuAdapter != null) { - menuAdapter = null; - } - if (mxList != null) { - mxList = null; - } - System.out.println(phoneModel + "---------------------------------phoneModel1"); - mxData.clear(); - mxData = null; - if (mxAdapter != null) { - mxAdapter.clear(); - mxAdapter = null; - } - releaseWakeLock(); - linghtScreen = null; - wifiLock.release(); - wifiLock = null; - if (pm != null) { - pm = null; - } - if (tts != null) { - tts.shutdown(); - } - if (phoneModel.equals("ht518")) { - ht518Clear(); - // DiemensionalCodeControler.setDiemensionalConNull();//ht518旧扫描头清除 - } - if (zkr322aControl != null) { - zkr322aClear(); - } - } + } - @Override - public boolean onCreateOptionsMenu(Menu menu) { - getMenuInflater().inflate(R.menu.activity_dj, menu); - return true; - } + private void exitClear() { + System.out.println("---退出清理---"); + if (dbManager != null) { + dbManager.closeDB(); + dbManager = null; + } + if (djInitMap != null) { + djInitMap.clear(); + djInitMap = null; + } + fangAMap.clear(); + fangAMap = null; + pageMap.clear(); + pageMap = null; + if (menuList != null) { + menuList = null; + } + if (menuAdapter != null) { + menuAdapter = null; + } + if (menuData != null) { + menuData.clear(); + menuData = null; + } + if (menuAdapter != null) { + menuAdapter = null; + } + if (mxList != null) { + mxList = null; + } + System.out.println(phoneModel + "---------------------------------phoneModel1"); + mxData.clear(); + mxData = null; + if (mxAdapter != null) { + mxAdapter.clear(); + mxAdapter = null; + } + releaseWakeLock(); + linghtScreen = null; + wifiLock.release(); + wifiLock = null; + if (pm != null) { + pm = null; + } + if (tts != null) { + tts.shutdown(); + } + if (phoneModel.equals("ht518")) { + ht518Clear(); + // DiemensionalCodeControler.setDiemensionalConNull();//ht518旧扫描头清除 + } + if (zkr322aControl != null) { + zkr322aClear(); + } + } - @Override - public boolean onOptionsItemSelected(MenuItem item) { - super.onOptionsItemSelected(item); - switch (item.getItemId())// 得到被点击的item的itemId - { - case R.id.updatePwd: // 对应的ID就是在add方法中所设定的Id - Intent intent = new Intent(); - intent.setClass(getApplicationContext(), UpdatePwdActivity.class); - startActivity(intent); - break; - default: - break; - } - return true; - } + @Override + public boolean onCreateOptionsMenu(Menu menu) { + getMenuInflater().inflate(R.menu.activity_dj, menu); + return true; + } - /* - * mt35a 调用 public boolean onKeyDown(int keyCode, KeyEvent event) { - * System.out.println(keyCode + "==================="); switch (keyCode) { - * case 111: try { if (key_start == true) { if (Powered == false) { Powered - * = true; DevCtrl.PowerOnDevice(); } timer.cancel(); - * DevCtrl.TriggerOnDevice(); key_start = false; retrig_timer = new Timer(); - * retrig_timer.schedule(new RetrigTask(), 3500); } } catch (IOException e) - * { Log.d(TAG, "FFF"); // TODO Auto-generated catch block - * e.printStackTrace(); } break; case 4: dialog(); break; } - * - * return super.onKeyDown(keyCode, event); } - */ - @Override - public boolean onKeyUp(int keyCode, KeyEvent event) { - if (!isKeyDown) { - isKeyDown = true; - } - return super.onKeyUp(keyCode, event); - } + @Override + public boolean onOptionsItemSelected(MenuItem item) { + super.onOptionsItemSelected(item); + switch (item.getItemId())// 得到被点击的item的itemId + { + case R.id.updatePwd: // 对应的ID就是在add方法中所设定的Id + Intent intent = new Intent(); + intent.setClass(getApplicationContext(), UpdatePwdActivity.class); + startActivity(intent); + break; + default: + break; + } + return true; + } - @Override - public boolean onKeyDown(int keyCode, KeyEvent event) { - super.onKeyDown(keyCode, event); - String temp = String.valueOf(keyCode); - System.err.println(temp + "---------------------1" + seuicScanner + "--" + isKeyDown); - if (temp.equals("132")) {// ht518专用 - event.startTracking();// 加了这句 键盘长按事件才有效 - return true; - } - if (seuicScanner != null && temp.equals("0") && isKeyDown) { - seuicScanner.startScan(); - isKeyDown = false; - return true; - } - return super.onKeyDown(keyCode, event); - } + /* + * mt35a 调用 public boolean onKeyDown(int keyCode, KeyEvent event) { + * System.out.println(keyCode + "==================="); switch (keyCode) { + * case 111: try { if (key_start == true) { if (Powered == false) { Powered + * = true; DevCtrl.PowerOnDevice(); } timer.cancel(); + * DevCtrl.TriggerOnDevice(); key_start = false; retrig_timer = new Timer(); + * retrig_timer.schedule(new RetrigTask(), 3500); } } catch (IOException e) + * { Log.d(TAG, "FFF"); // TODO Auto-generated catch block + * e.printStackTrace(); } break; case 4: dialog(); break; } + * + * return super.onKeyDown(keyCode, event); } + */ + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (!isKeyDown) { + isKeyDown = true; + } + return super.onKeyUp(keyCode, event); + } - private boolean isCurrentFocus_EditText() {// 判断当前焦点组件是否是输入框 - View view = DjActivity.this.getCurrentFocus(); - if (view != null && view instanceof EditText) { - return true; - } else { - return false; - } - } + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + super.onKeyDown(keyCode, event); + String temp = String.valueOf(keyCode); + System.err.println(temp + "---------------------1" + seuicScanner + "--" + isKeyDown); + if (temp.equals("132")) {// ht518专用 + event.startTracking();// 加了这句 键盘长按事件才有效 + return true; + } + if (seuicScanner != null && temp.equals("0") && isKeyDown) { + seuicScanner.startScan(); + isKeyDown = false; + return true; + } + return super.onKeyDown(keyCode, event); + } - @Override - public boolean dispatchKeyEvent(KeyEvent event) { - // System.out.println(event.getKeyCode() + "---------------------"); - int keyCode = event.getKeyCode(); - // DialogUtil.builder(DjActivity.this, "提示信息", "keyCode = " + keyCode, 0); - // if (event.getAction() != KeyEvent.ACTION_UP) { - if (event.getAction() == KeyEvent.ACTION_DOWN) { - switch (keyCode) { - case 120: - break; - case 211: - break; - case 212: - break; - case 113: - View view = DjActivity.this.getCurrentFocus(); - if (view != null && view instanceof EditText) { - setFcous(view); - } - break; - case KeyEvent.KEYCODE_BACK: - dialog(); - break; - case KeyEvent.KEYCODE_ENTER: - View view1 = DjActivity.this.getCurrentFocus(); - if (view1 != null && view1 instanceof EditText) { - setFcous(view1); - } - break; - case 132: - // if (!isOpen) { - // isOpen = true; - // dc.start(); - // } - if (newScanControler != null) { - newScanControler.scanOnce(); - } - break; - case 510: - if (nr510ScanControl != null) { - nr510ScanControl.start(DjActivity.this); - } - break; - default: - return super.dispatchKeyEvent(event); - } - // return true; - } else if (event.getAction() == KeyEvent.ACTION_UP) { - if (keyCode == 120 || keyCode == 211 || keyCode == 212) { - } else if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) { // 阻止系统的enter事件 - return true; - } - // else if (keyCode == 132) { - // if (isOpen) { - // isOpen = false; - // } - // } - } - return super.dispatchKeyEvent(event); - } + private boolean isCurrentFocus_EditText() {// 判断当前焦点组件是否是输入框 + View view = DjActivity.this.getCurrentFocus(); + if (view != null && view instanceof EditText) { + return true; + } else { + return false; + } + } - // @Override - // public boolean onKeyUp(int keyCode, KeyEvent event) { - // super.onKeyUp(keyCode, event); - // if(keyCode==132&&isOpen){ - // isOpen = false; - // } - // return true; - // } + @Override + public boolean dispatchKeyEvent(KeyEvent event) { + // System.out.println(event.getKeyCode() + "---------------------"); + int keyCode = event.getKeyCode(); + // DialogUtil.builder(DjActivity.this, "提示信息", "keyCode = " + keyCode, 0); + // if (event.getAction() != KeyEvent.ACTION_UP) { + if (event.getAction() == KeyEvent.ACTION_DOWN) { + switch (keyCode) { + case 120: + break; + case 211: + break; + case 212: + break; + case 113: + View view = DjActivity.this.getCurrentFocus(); + if (view != null && view instanceof EditText) { + setFcous(view); + } + break; + case KeyEvent.KEYCODE_BACK: + dialog(); + break; + case KeyEvent.KEYCODE_ENTER: + View view1 = DjActivity.this.getCurrentFocus(); + if (view1 != null && view1 instanceof EditText) { + setFcous(view1); + } + break; + case 132: + // if (!isOpen) { + // isOpen = true; + // dc.start(); + // } + if (newScanControler != null) { + newScanControler.scanOnce(); + } + break; + case 510: + if (nr510ScanControl != null) { + nr510ScanControl.start(DjActivity.this); + } + break; + default: + return super.dispatchKeyEvent(event); + } + // return true; + } else if (event.getAction() == KeyEvent.ACTION_UP) { + if (keyCode == 120 || keyCode == 211 || keyCode == 212) { + } else if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) { // 阻止系统的enter事件 + return true; + } + // else if (keyCode == 132) { + // if (isOpen) { + // isOpen = false; + // } + // } + } + return super.dispatchKeyEvent(event); + } - public boolean onKeyLongPress(int keyCode, KeyEvent event) { - super.onKeyLongPress(keyCode, event); - String temp = String.valueOf(keyCode); - if (temp.equals("132")) { - // dc.stop(); - // dc.doHandsFree(); - } - return true; - } + // @Override + // public boolean onKeyUp(int keyCode, KeyEvent event) { + // super.onKeyUp(keyCode, event); + // if(keyCode==132&&isOpen){ + // isOpen = false; + // } + // return true; + // } - // public boolean onKeyDown(int keyCode, KeyEvent event) { - // System.out.println(keyCode + "--------------------------------"); - // switch (keyCode) { - // case 120: - // if (SysUtil.isTopApp(this)) { - // if (mScanManager.getTriggerLockState()) { - // mScanManager.unlockTriggler(); - // } - // } else { - // if (!mScanManager.getTriggerLockState()) { - // mScanManager.lockTriggler(); - // } - // } - // break; - // case 4: - // dialog(); - // break; - // case 113: - // View view = DjActivity.this.getCurrentFocus(); - // if (view != null && view instanceof EditText) { - // setFcous(view); - // } - // break; - // } - // return super.onKeyDown(keyCode, event); - // } + public boolean onKeyLongPress(int keyCode, KeyEvent event) { + super.onKeyLongPress(keyCode, event); + String temp = String.valueOf(keyCode); + if (temp.equals("132")) { + // dc.stop(); + // dc.doHandsFree(); + } + return true; + } - protected void dialog() { - AlertDialog.Builder builder = new AlertDialog.Builder(DjActivity.this); - builder.setMessage("确定要退出吗?"); - builder.setTitle("提示"); - builder.setPositiveButton("确认", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - if (pageMap.containsKey("GZID")) { - new ExitThread(pageMap.get("GZID"), mxTempTable, null, "clearDj").start(); - } - dialog.cancel(); - DjActivity.this.finish(); - exitClear(); - } - }); - builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - dialog.cancel(); - } - }); - builder.create().show(); - } + // public boolean onKeyDown(int keyCode, KeyEvent event) { + // System.out.println(keyCode + "--------------------------------"); + // switch (keyCode) { + // case 120: + // if (SysUtil.isTopApp(this)) { + // if (mScanManager.getTriggerLockState()) { + // mScanManager.unlockTriggler(); + // } + // } else { + // if (!mScanManager.getTriggerLockState()) { + // mScanManager.lockTriggler(); + // } + // } + // break; + // case 4: + // dialog(); + // break; + // case 113: + // View view = DjActivity.this.getCurrentFocus(); + // if (view != null && view instanceof EditText) { + // setFcous(view); + // } + // break; + // } + // return super.onKeyDown(keyCode, event); + // } - /* - * 扫描所需要的内容 class MyTask extends TimerTask { - * - * @Override public void run() { // TODO Auto-generated method stub Message - * message = new Message(); message.what = 1; - * t_handler.sendMessage(message); } } - */ - /* - * class RetrigTask extends TimerTask { - * - * @Override public void run() { // TODO Auto-generated method stub Message - * message = new Message(); message.what = 1; - * n_handler.sendMessage(message); } } - * - * private class ReadThread extends Thread { - * - * @Override public void run() { super.run(); while - * (!Thread.currentThread().isInterrupted()) { try { Log.d(TAG, "read"); - * String buff = mSerialPort.ReadSerial(fd, 1024); Log.d(TAG, "end"); if - * (buff != null) { Message msg = new Message(); msg.what = 1; msg.obj = - * buff; succeed_handler.sendMessage(msg); timer = new Timer(); - * timer.schedule(new MyTask(), 60000); } else { Message msg = new - * Message(); msg.what = 0; succeed_handler.sendMessage(msg); } } catch - * (SecurityException e) { e.printStackTrace(); } catch - * (UnsupportedEncodingException e) { // TODO Auto-generated catch block - * e.printStackTrace(); } } } } - */ - class OnFocusChangeEvent implements View.OnFocusChangeListener { - @Override - public void onFocusChange(View v, boolean hasFocus) { - // System.out.println(v.toString()); - if (hasFocus) { - if (v instanceof SelfEditText) { - SelfEditText focusInSet = (SelfEditText) v; - // focusInSet.setInputType(InputType.TYPE_NULL); - // System.out.println(focusInSet.getTag()+"的到焦点------------"); - if (focusInSet.closeKeyBoard) { - InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); - imm.hideSoftInputFromWindow(focusInSet.getWindowToken(), 0); - } - if (focusInSet.isTextChange) { - focusInSet.isTextChange = false; - } - focusInSet.selectAll(); - eventHandler(focusInSet.focusInFun, v); - } - } else { - if (v instanceof SelfEditText) { - SelfEditText set = (SelfEditText) v; - // System.out.println(set.getTag()+"失去焦点------------" + - // set.isTextChange); - if (set.isTextChange) { - nextFocusTag = set.nextFocus; - eventHandler(((SelfEditText) v).focusOutFun, v); - } - } - } - } - } + protected void dialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(DjActivity.this); + builder.setMessage("确定要退出吗?"); + builder.setTitle("提示"); + builder.setPositiveButton("确认", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + if (pageMap.containsKey("GZID")) { + new ExitThread(pageMap.get("GZID"), mxTempTable, null, "clearDj").start(); + } + dialog.cancel(); + DjActivity.this.finish(); + exitClear(); + } + }); + builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + dialog.cancel(); + } + }); + builder.create().show(); + } - class OnClickEvent implements OnClickListener { + /* + * 扫描所需要的内容 class MyTask extends TimerTask { + * + * @Override public void run() { // TODO Auto-generated method stub Message + * message = new Message(); message.what = 1; + * t_handler.sendMessage(message); } } + */ + /* + * class RetrigTask extends TimerTask { + * + * @Override public void run() { // TODO Auto-generated method stub Message + * message = new Message(); message.what = 1; + * n_handler.sendMessage(message); } } + * + * private class ReadThread extends Thread { + * + * @Override public void run() { super.run(); while + * (!Thread.currentThread().isInterrupted()) { try { Log.d(TAG, "read"); + * String buff = mSerialPort.ReadSerial(fd, 1024); Log.d(TAG, "end"); if + * (buff != null) { Message msg = new Message(); msg.what = 1; msg.obj = + * buff; succeed_handler.sendMessage(msg); timer = new Timer(); + * timer.schedule(new MyTask(), 60000); } else { Message msg = new + * Message(); msg.what = 0; succeed_handler.sendMessage(msg); } } catch + * (SecurityException e) { e.printStackTrace(); } catch + * (UnsupportedEncodingException e) { // TODO Auto-generated catch block + * e.printStackTrace(); } } } } + */ + class OnFocusChangeEvent implements View.OnFocusChangeListener { + @Override + public void onFocusChange(View v, boolean hasFocus) { + // System.out.println(v.toString()); + if (hasFocus) { + if (v instanceof SelfEditText) { + SelfEditText focusInSet = (SelfEditText) v; + // focusInSet.setInputType(InputType.TYPE_NULL); + // System.out.println(focusInSet.getTag()+"的到焦点------------"); + if (focusInSet.closeKeyBoard) { + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(focusInSet.getWindowToken(), 0); + } + if (focusInSet.isTextChange) { + focusInSet.isTextChange = false; + } + focusInSet.selectAll(); + eventHandler(focusInSet.focusInFun, v); + } + } else { + if (v instanceof SelfEditText) { + SelfEditText set = (SelfEditText) v; + // System.out.println(set.getTag()+"失去焦点------------" + + // set.isTextChange); + if (set.isTextChange) { + nextFocusTag = set.nextFocus; + eventHandler(((SelfEditText) v).focusOutFun, v); + } + } + } + } + } - @Override - public void onClick(View v) { - View view = DjActivity.this.getCurrentFocus(); - if (view instanceof SelfEditText) { - if (((SelfEditText) view).isTextChange) { - DjActivity.this.hzTab.requestFocus(); - return; - } - } - SelfButton selfBut = (SelfButton) v; - nextFocusTag = selfBut.nextFocus; - eventHandler(selfBut.clickFun, null); - } + class OnClickEvent implements OnClickListener { - } + @Override + public void onClick(View v) { + View view = DjActivity.this.getCurrentFocus(); + if (view instanceof SelfEditText) { + if (((SelfEditText) view).isTextChange) { + DjActivity.this.hzTab.requestFocus(); + return; + } + } + SelfButton selfBut = (SelfButton) v; + nextFocusTag = selfBut.nextFocus; + eventHandler(selfBut.clickFun, null); + } - public void openRunWin() { - DialogUtil.builder(DjActivity.this, "提示信息", "PDA不兼容", 0); - } + } - public void eventHandler(String funName, View view) { - if (!SysData.isreg.equals("Y")) { - openRunWin(); - } - if (funName == null) { - return; - } - funName = funName.trim(); - if (funName.length() < 1) { - return; - } - String funType = ""; - String functionname = null; - if (funName.indexOf("_") > -1) { - funType = funName.substring(0, funName.indexOf("_")).toUpperCase(); - // functionname = funName.substring(funName.indexOf("_") + 1, - // funName.length()); - } - HashMap faMap = (HashMap) fangAMap.get(funName.toUpperCase()); - if (faMap == null && (funType.equals("SEARCH") || funType.equals("YMUP") || funType.equals("DJTQ"))) { - DialogUtil.builder(DjActivity.this, "错误信息", "方案不存在!", 0); - return; - } - if (funType.equals("SEARCH")) {// 检索方案函数 - if (cr5wScanControl != null) - cr5wScanControl.stop(DjActivity.this); - else if (androidHandheldTerminal != null) - androidHandheldTerminal.stop(); - else if (nr510ScanControl != null) - nr510ScanControl.stop(DjActivity.this); - else if (haixinN1SDemoReceiver != null) { - haixinN1sStop(); - } - // else if (androidHandheldTerminal0 != null) - // androidHandheldTerminal0.stop(); - if (barcodeReader != null) { - // continuousScanning(false); - } - if (zkr322aControl != null) { - zkr322aControl.stop(); - } - DialogUtil.setDialog(pd, "检索方案", "正在执行检索方案……"); - // new SearchThread(formlx, functionname, sqlHandler, 0).start(); - Map map = SqlUtil.regSql(faMap.get("zdysql").toString(), hzTab, pageMap); - String audioFld = ""; - if (faMap.get("audioFld") != null) { - audioFld = faMap.get("audioFld").toString().toUpperCase(); - } - runSearch(map, faMap.get("return_one").toString(), audioFld); - } else if (funType.equals("YMUP")) {// 页面修改函数 - if (cr5wScanControl != null) - cr5wScanControl.stop(DjActivity.this); - else if (nr510ScanControl != null) - nr510ScanControl.stop(DjActivity.this); - else if (androidHandheldTerminal != null) - androidHandheldTerminal.stop(); - else if (haixinN1SDemoReceiver != null) { - haixinN1sStop(); - } - // else if (androidHandheldTerminal0 != null) - // androidHandheldTerminal0.stop(); - if (barcodeReader != null) { - // continuousScanning(false); - } - if (zkr322aControl != null) { - zkr322aControl.stop(); - } - DialogUtil.setDialog(pd, "页面修改方案", "正在执行页面修改方案"); - // new SearchThread(formlx, functionname, sqlHandler, 1).start(); - Map map = SqlUtil.regSql(faMap.get("zdysql").toString(), hzTab, pageMap); - System.out.println(pageMap.get("GZID") + "------------------gzid"); - map.put("gzid", pageMap.get("GZID")); - map.put("mxTempTable", mxTempTable); - Map hzData = DjUtil.organizationHzData(hzTab, pageMap.get("GZID")); - ((HashMap) hzData.get("hzData")).putAll(pageMap); - map.put("hzData", hzData); - try { - if (!SysData.is_lx) { - byte[] b = IoUtil.getbyte(map); - String paramString = Base64.encode(b); - runYmup(paramString); - } else { - new Thread(new LxRunYmupThread(dbManager, faMap.get("zdysql").toString(), (Map) hzData.get("hzData"), runHandler)).start(); - } - } catch (Exception e) { - pd.cancel(); - DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案组织数据失败!", 0); - } - } else if (funType.equals("DJTQ")) { - DialogUtil.setDialog(pd, "提取方案", "加载提取方案函数……"); - // new SearchThread(formlx, functionname, sqlHandler, 2).start(); - Djselefa djselefa = new Djselefa(); - djselefa.setT_sql(faMap.get("t_sql").toString()); - djselefa.setHz_sql(faMap.get("hz_sql").toString()); - djselefa.setMx_sql(faMap.get("mx_sql").toString()); - djselefa.setFangamch(faMap.get("fangamch").toString()); - HashMap map = SqlUtil.regSql(djselefa.getT_sql(), hzTab, pageMap); - pd.cancel(); - Intent intent = new Intent(); - djselefa.setT_sql(map.get("sql").toString()); - HashMap paramMap = new HashMap(); - paramMap.put("djselefa", djselefa); - paramMap.put("t_sqlParam", (HashMap) map.get("param")); - paramMap.put("mxTempTable", mxTempTable); - paramMap.put("GZID", pageMap.get("GZID")); - intent.putExtra("paramMap", paramMap); - intent.setClass(getApplicationContext(), DjtqActivity.class); - startActivityForResult(intent, 2); - } else { - DjMenuFun menufun = new DjMenuFun(); - Class cla = menufun.getClass(); - Method method = null; - try { - if (funName.substring(0, 1).equals("M")) { - method = cla.getDeclaredMethod(funName, DjActivity.class); - method.invoke(menufun, DjActivity.this); - } else if (funName.substring(0, 4).toUpperCase().equals("SCAN")) { - method = cla.getDeclaredMethod(funName.substring(0, 4), DjActivity.class, String.class); - method.invoke(menufun, DjActivity.this, funName); - } else { - method = cla.getDeclaredMethod(funName); - if (method != null && view instanceof EditText) { - ((EditText) view).setText(method.invoke(menufun).toString()); - } - } - } catch (Exception e) { - DialogUtil.builder(DjActivity.this, "系统错误", "生成函数失败", 0); - e.printStackTrace(); - } - } - } + public void openRunWin() { + DialogUtil.builder(DjActivity.this, "提示信息", "PDA不兼容", 0); + } - /* 运行检索方案 */ - public void runSearch(Map map, String return_one, String audioFld) { - // new SearchThread(formlx, "WMSW87_01", sqlHandler).start(); - try { - new RunSearchThread(map.get("sql").toString(), IoUtil.ob_base64(map.get("param")), runHandler, return_one, audioFld).start(); - } catch (IOException e) { - // TODO Auto-generated catch block - DialogUtil.builder(this, "错误信息", "转换成Base64编码失败!", 0); - // e.printStackTrace(); - } - } + public void eventHandler(String funName, View view) { + if (!SysData.isreg.equals("Y")) { + openRunWin(); + } + if (funName == null) { + return; + } + funName = funName.trim(); + if (funName.length() < 1) { + return; + } + String funType = ""; + String functionname = null; + if (funName.indexOf("_") > -1) { + funType = funName.substring(0, funName.indexOf("_")).toUpperCase(); + // functionname = funName.substring(funName.indexOf("_") + 1, + // funName.length()); + } + HashMap faMap = (HashMap) fangAMap.get(funName.toUpperCase()); + if (faMap == null && (funType.equals("SEARCH") || funType.equals("YMUP") || funType.equals("DJTQ"))) { + DialogUtil.builder(DjActivity.this, "错误信息", "方案不存在!", 0); + return; + } + if (funType.equals("SEARCH")) {// 检索方案函数 + if (cr5wScanControl != null) + cr5wScanControl.stop(DjActivity.this); + else if (androidHandheldTerminal != null) + androidHandheldTerminal.stop(); + else if (nr510ScanControl != null) + nr510ScanControl.stop(DjActivity.this); + else if (haixinN1SDemoReceiver != null) { + haixinN1sStop(); + }else if(uroBoScannerControl!=null){ + uroBoScannerControl.stop(); + } + // else if (androidHandheldTerminal0 != null) + // androidHandheldTerminal0.stop(); + if (barcodeReader != null) { + // continuousScanning(false); + } + if (zkr322aControl != null) { + zkr322aControl.stop(); + } + DialogUtil.setDialog(pd, "检索方案", "正在执行检索方案……"); + // new SearchThread(formlx, functionname, sqlHandler, 0).start(); + Map map = SqlUtil.regSql(faMap.get("zdysql").toString(), hzTab, pageMap); + String audioFld = ""; + if (faMap.get("audioFld") != null) { + audioFld = faMap.get("audioFld").toString().toUpperCase(); + } + runSearch(map, faMap.get("return_one").toString(), audioFld); + } else if (funType.equals("YMUP")) {// 页面修改函数 + if (cr5wScanControl != null) + cr5wScanControl.stop(DjActivity.this); + else if (nr510ScanControl != null) + nr510ScanControl.stop(DjActivity.this); + else if (androidHandheldTerminal != null) + androidHandheldTerminal.stop(); + else if (haixinN1SDemoReceiver != null) { + haixinN1sStop(); + }else if(uroBoScannerControl!=null){ + uroBoScannerControl.stop(); + } + // else if (androidHandheldTerminal0 != null) + // androidHandheldTerminal0.stop(); + if (barcodeReader != null) { + // continuousScanning(false); + } + if (zkr322aControl != null) { + zkr322aControl.stop(); + } + DialogUtil.setDialog(pd, "页面修改方案", "正在执行页面修改方案"); + // new SearchThread(formlx, functionname, sqlHandler, 1).start(); + Map map = SqlUtil.regSql(faMap.get("zdysql").toString(), hzTab, pageMap); + System.out.println(pageMap.get("GZID") + "------------------gzid"); + map.put("gzid", pageMap.get("GZID")); + map.put("mxTempTable", mxTempTable); + Map hzData = DjUtil.organizationHzData(hzTab, pageMap.get("GZID")); + ((HashMap) hzData.get("hzData")).putAll(pageMap); + map.put("hzData", hzData); + try { + if (!SysData.is_lx) { + byte[] b = IoUtil.getbyte(map); + String paramString = Base64.encode(b); + runYmup(paramString); + } else { + new Thread(new LxRunYmupThread(dbManager, faMap.get("zdysql").toString(), (Map) hzData.get("hzData"), runHandler)).start(); + } + } catch (Exception e) { + pd.cancel(); + DialogUtil.builder(DjActivity.this, "错误信息", "页面修改方案组织数据失败!", 0); + } + } else if (funType.equals("DJTQ")) { + DialogUtil.setDialog(pd, "提取方案", "加载提取方案函数……"); + // new SearchThread(formlx, functionname, sqlHandler, 2).start(); + Djselefa djselefa = new Djselefa(); + djselefa.setT_sql(faMap.get("t_sql").toString()); + djselefa.setHz_sql(faMap.get("hz_sql").toString()); + djselefa.setMx_sql(faMap.get("mx_sql").toString()); + djselefa.setFangamch(faMap.get("fangamch").toString()); + HashMap map = SqlUtil.regSql(djselefa.getT_sql(), hzTab, pageMap); + pd.cancel(); + Intent intent = new Intent(); + djselefa.setT_sql(map.get("sql").toString()); + HashMap paramMap = new HashMap(); + paramMap.put("djselefa", djselefa); + paramMap.put("t_sqlParam", (HashMap) map.get("param")); + paramMap.put("mxTempTable", mxTempTable); + paramMap.put("GZID", pageMap.get("GZID")); + intent.putExtra("paramMap", paramMap); + intent.setClass(getApplicationContext(), DjtqActivity.class); + startActivityForResult(intent, 2); + } else { + DjMenuFun menufun = new DjMenuFun(); + Class cla = menufun.getClass(); + Method method = null; + try { + if (funName.substring(0, 1).equals("M")) { + method = cla.getDeclaredMethod(funName, DjActivity.class); + method.invoke(menufun, DjActivity.this); + } else if (funName.substring(0, 4).toUpperCase().equals("SCAN")) { + method = cla.getDeclaredMethod(funName.substring(0, 4), DjActivity.class, String.class); + method.invoke(menufun, DjActivity.this, funName); + } else { + method = cla.getDeclaredMethod(funName); + if (method != null && view instanceof EditText) { + ((EditText) view).setText(method.invoke(menufun).toString()); + } + } + } catch (Exception e) { + DialogUtil.builder(DjActivity.this, "系统错误", "生成函数失败", 0); + e.printStackTrace(); + } + } + } - /* 运行页面修改过方案 */ - public void runYmup(String param) { - new RunYmupThread(param, runHandler, "runYmup", 0).start(); - } + /* 运行检索方案 */ + public void runSearch(Map map, String return_one, String audioFld) { + try { + new RunSearchThread(map.get("sql").toString(), IoUtil.ob_base64(map.get("param")), runHandler, return_one, audioFld).start(); + } catch (IOException e) { + DialogUtil.builder(this, "错误信息", "转换成Base64编码失败!", 0); + } + } - @Override - public void onInit(int status) { - if (status == TextToSpeech.SUCCESS) { - tts.setLanguage(Locale.CHINA); - } + /* 运行页面修改过方案 */ + public void runYmup(String param) { + new RunYmupThread(param, runHandler, "runYmup", 0).start(); + } - else if (status == TextToSpeech.ERROR) { - Toast.makeText(DjActivity.this, "始化文本到语音引擎时发生错误", Toast.LENGTH_LONG).show(); - } - } + @Override + public void onInit(int status) { + if (status == TextToSpeech.SUCCESS) { + tts.setLanguage(Locale.CHINA); + } else if (status == TextToSpeech.ERROR) { + Toast.makeText(DjActivity.this, "始化文本到语音引擎时发生错误", Toast.LENGTH_LONG).show(); + } + } - public void play(Map map, String speakFld) { - if (map.containsKey(speakFld)) { - String speakNr = map.get(speakFld).toString(); - int isZd = 0; - if (speakNr.indexOf("退药") > -1 || speakNr.indexOf("批次错误") > -1) { - if (diPlayer == null) { - diPlayer = MediaPlayer.create(this, R.raw.didi); - diPlayer.setOnCompletionListener(completionListener); - } - ttsNr = map.get(speakFld).toString(); - diPlayer.start(); - } else if (speakNr.indexOf("错误") > -1) { - if (duPlayer == null) { - duPlayer = MediaPlayer.create(this, R.raw.dudu); - duPlayer.setOnCompletionListener(completionListener); - } - ttsNr = map.get(speakFld).toString(); - duPlayer.start(); - } else { - isZd = 1; - if (tts != null) { - tts.speak(map.get(speakFld).toString(), TextToSpeech.QUEUE_ADD, null); - } - } - if (isZd == 0) { - if (vibrator == null) { - vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); - } - vibrator.vibrate(2000); - } - // tts.speak(map.get(speakFld).toString(), TextToSpeech.QUEUE_ADD, - // null); - } + public void play(Map map, String speakFld) { + if (map.containsKey(speakFld)) { + String speakNr = map.get(speakFld).toString(); + int isZd = 0; + if (speakNr.indexOf("退药") > -1 || speakNr.indexOf("批次错误") > -1) { + if (diPlayer == null) { + diPlayer = MediaPlayer.create(this, R.raw.didi); + diPlayer.setOnCompletionListener(completionListener); + } + ttsNr = map.get(speakFld).toString(); + diPlayer.start(); + } else if (speakNr.indexOf("错误") > -1) { + if (duPlayer == null) { + duPlayer = MediaPlayer.create(this, R.raw.dudu); + duPlayer.setOnCompletionListener(completionListener); + } + ttsNr = map.get(speakFld).toString(); + duPlayer.start(); + } else { + isZd = 1; + if (tts != null) { + tts.speak(map.get(speakFld).toString(), TextToSpeech.QUEUE_ADD, null); + } + } + if (isZd == 0) { + if (vibrator == null) { + vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); + } + vibrator.vibrate(2000); + } + // tts.speak(map.get(speakFld).toString(), TextToSpeech.QUEUE_ADD, + // null); + } - } + } - private void setFcous(View view) { - ((EditText) view).clearFocus(); - setNextFocus(((SelfEditText) view).nextFocus); - } + private void setFcous(View view) { + ((EditText) view).clearFocus(); + setNextFocus(((SelfEditText) view).nextFocus); + } - private void setNextFocus(String focusName) { - View nextView = hzTab.findViewWithTag(focusName); - if (nextView != null) { - nextView.requestFocus(); - } - } + private void setNextFocus(String focusName) { + View nextView = hzTab.findViewWithTag(focusName); + if (nextView != null) { + nextView.requestFocus(); + } + } - private void zyFcous(String tiaoma) { - if (!reReadCode) { - return; - } - View view = DjActivity.this.getCurrentFocus(); - if (view != null && view instanceof EditText) { - reReadCode = false; - ((EditText) view).setText(tiaoma); - setFcous(view); - } - } + private void zyFcous(String tiaoma) { + if (!reReadCode) { + return; + } + View view = DjActivity.this.getCurrentFocus(); + if (view != null && view instanceof EditText) { + reReadCode = false; + ((EditText) view).setText(tiaoma); + setFcous(view); + } + } - public void acquireWakeLock() { - if (pm == null) { - pm = (PowerManager) getSystemService(Context.POWER_SERVICE); - } - if (wakeLock == null) { - wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "crtech"); - } - if (linghtScreen == null) { - linghtScreen = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "bright"); - } - if (wakeLock != null) { - System.out.println(wakeLock + "------------------锁定"); - wakeLock.acquire(); - } - } + public void acquireWakeLock() { + if (pm == null) { + pm = (PowerManager) getSystemService(Context.POWER_SERVICE); + } + if (wakeLock == null) { + wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "crtech"); + } + if (linghtScreen == null) { + linghtScreen = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "bright"); + } + if (wakeLock != null) { + System.out.println(wakeLock + "------------------锁定"); + wakeLock.acquire(); + } + } - // 释放设备电源锁 - public void releaseWakeLock() { - if (wakeLock != null) { - wakeLock.release(); - System.out.println("------------------解除锁定"); - wakeLock = null; - } - } + // 释放设备电源锁 + public void releaseWakeLock() { + if (wakeLock != null) { + wakeLock.release(); + System.out.println("------------------解除锁定"); + wakeLock = null; + } + } - public void releaseLinghtScreen() { - if (isLinghtScreen) { - isLinghtScreen = false; - linghtScreen.release(); - } - } + public void releaseLinghtScreen() { + if (isLinghtScreen) { + isLinghtScreen = false; + linghtScreen.release(); + } + } - /* ht518 扫描 */ - // DiemensionalCodeControler dc; - // DiemensionalScanListener scanListener; - // private boolean isOpen = false;// 判断扫描是否开始 - // - // /* ht518初始化(带旧版扫描头) */ - // private void ht518Init() { - // DiemensionalCodeControler.setDiemensionalConNull(); - // scanListener = new ScanListener(); - // dc = DiemensionalCodeControler.getCodeControler(this, scanListener); - // } - // public class ScanListener implements DiemensionalScanListener { - // - // @Override - // public void onDiemensionalScanComplete(String result, String error) { - // KeyguardManager km = (KeyguardManager) - // getSystemService(Context.KEYGUARD_SERVICE); - // if (km.inKeyguardRestrictedInputMode()) { - // System.out.println("解锁屏幕------------"); - // // 得到键盘锁管理器对象 - // KeyguardLock kl = km.newKeyguardLock("unLock"); - // // 参数是LogCat里用的Tag - // kl.disableKeyguard(); // 解锁 - // } - // // System.out.println(wakeLock+"------------"+washeld); - // // if (washeld) { - // // washeld = false; - // // wakeLock.release(); - // // System.out.println(wakeLock); - // // } - // // System.out.println(wakeLock + "------------"); - // // wakeLock.acquire(); - // // washeld = true; - // - // // 获取PowerManager.WakeLock对象,后面的参数|表示同时传入两个值,最后的是LogCat里用的Tag - // if (!pm.isScreenOn()) { - // linghtScreen.acquire();// 点亮屏幕 - // isLinghtScreen = true; - // System.out.println(wakeLock + "------------"); - // } - // if (result != null) { - // zyFcous(result); - // } else { - // if (error.equals("解码超时")) { - // dc.start(); - // } else { - // tts.speak(error, TextToSpeech.QUEUE_ADD, null); - // } - // } - // } - // } - - // 富力叶 android handheld terminal 扫描头 - AndroidHandheldTerminal0 androidHandheldTerminal0 = null; - public class AndroidHandheldTerminal0 { - public boolean running = true; - public AndroidHandheldTerminal0(final Context context) { - ScanHelper.setScanSwitchLeft(context, true); - ScanHelper.setScanSwitchRight(context, true); - ScanHelper.setBarcodeReceiveModel(context, 2); - m_Broadcastname = "com.barcode.sendBroadcast"; - final IntentFilter intentFilter = new IntentFilter(); - intentFilter.addAction(m_Broadcastname); - registerReceiver(myCodeReceiver, intentFilter); - } - - - public void start() { - running = true; - } - - public void stop() { - //ScanHelper.setScanSwitchLeft(context, false); - //ScanHelper.setScanSwitchRight(context, false); + /* ht518 扫描 */ + // DiemensionalCodeControler dc; + // DiemensionalScanListener scanListener; + // private boolean isOpen = false;// 判断扫描是否开始 + // + // /* ht518初始化(带旧版扫描头) */ + // private void ht518Init() { + // DiemensionalCodeControler.setDiemensionalConNull(); + // scanListener = new ScanListener(); + // dc = DiemensionalCodeControler.getCodeControler(this, scanListener); + // } + // public class ScanListener implements DiemensionalScanListener { + // + // @Override + // public void onDiemensionalScanComplete(String result, String error) { + // KeyguardManager km = (KeyguardManager) + // getSystemService(Context.KEYGUARD_SERVICE); + // if (km.inKeyguardRestrictedInputMode()) { + // System.out.println("解锁屏幕------------"); + // // 得到键盘锁管理器对象 + // KeyguardLock kl = km.newKeyguardLock("unLock"); + // // 参数是LogCat里用的Tag + // kl.disableKeyguard(); // 解锁 + // } + // // System.out.println(wakeLock+"------------"+washeld); + // // if (washeld) { + // // washeld = false; + // // wakeLock.release(); + // // System.out.println(wakeLock); + // // } + // // System.out.println(wakeLock + "------------"); + // // wakeLock.acquire(); + // // washeld = true; + // + // // 获取PowerManager.WakeLock对象,后面的参数|表示同时传入两个值,最后的是LogCat里用的Tag + // if (!pm.isScreenOn()) { + // linghtScreen.acquire();// 点亮屏幕 + // isLinghtScreen = true; + // System.out.println(wakeLock + "------------"); + // } + // if (result != null) { + // zyFcous(result); + // } else { + // if (error.equals("解码超时")) { + // dc.start(); + // } else { + // tts.speak(error, TextToSpeech.QUEUE_ADD, null); + // } + // } + // } + // } + + // 富力叶 android handheld terminal 扫描头 + AndroidHandheldTerminal0 androidHandheldTerminal0 = null; + + public class AndroidHandheldTerminal0 { + public boolean running = true; + + public AndroidHandheldTerminal0(final Context context) { + ScanHelper.setScanSwitchLeft(context, true); + ScanHelper.setScanSwitchRight(context, true); + ScanHelper.setBarcodeReceiveModel(context, 2); + m_Broadcastname = "com.barcode.sendBroadcast"; + final IntentFilter intentFilter = new IntentFilter(); + intentFilter.addAction(m_Broadcastname); + registerReceiver(myCodeReceiver, intentFilter); + } + + + public void start() { + running = true; + } + + public void stop() { + //ScanHelper.setScanSwitchLeft(context, false); + //ScanHelper.setScanSwitchRight(context, false); // ScanHelper.setBarcodeReceiveModel(context, 2); // if (!state) { // synchronized (lock) { @@ -2003,122 +1881,123 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf // } // } // } - running = false; - } - } - - private String m_Broadcastname = null; - private MyCodeReceiver myCodeReceiver = new MyCodeReceiver(); - public class MyCodeReceiver extends BroadcastReceiver - { - private static final String TAG = "MycodeReceiver"; - @Override - public void onReceive(Context context, Intent intent) { - if(androidHandheldTerminal0.running && intent.getAction().equals(m_Broadcastname)) { - String str = intent.getStringExtra("BARCODE"); - if (!"".equals(str)) { - View rootview = DjActivity.this.getWindow().getDecorView(); - View aaa = rootview.findFocus(); - // View bbb = - // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - // if (aaa == bbb && defaultFocus2 != null) { - // DjUtil.setFocus(hzTab, defaultFocus2); - // } - if (aaa instanceof SelfEditText) { - SelfEditText set = (SelfEditText)aaa; - set.setText(str); - //if (set.closeKeyBoard) { + running = false; + } + } + + private String m_Broadcastname = null; + private MyCodeReceiver myCodeReceiver = new MyCodeReceiver(); + + public class MyCodeReceiver extends BroadcastReceiver { + private static final String TAG = "MycodeReceiver"; + + @Override + public void onReceive(Context context, Intent intent) { + if (androidHandheldTerminal0.running && intent.getAction().equals(m_Broadcastname)) { + String str = intent.getStringExtra("BARCODE"); + if (!"".equals(str)) { + View rootview = DjActivity.this.getWindow().getDecorView(); + View aaa = rootview.findFocus(); + // View bbb = + // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); + // if (aaa == bbb && defaultFocus2 != null) { + // DjUtil.setFocus(hzTab, defaultFocus2); + // } + if (aaa instanceof SelfEditText) { + SelfEditText set = (SelfEditText) aaa; + set.setText(str); + //if (set.closeKeyBoard) { // set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); // set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); - new Thread(new Runnable() { - - @Override - public void run() { - // TODO Auto-generated method stub - Instrumentation inst = new Instrumentation(); - inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); - } - }).start(); - //} - } - } - } - } - } - // 海信 n1s 设备扫描头控制 - public static final String HAIXIN_N1S_ACTION_SCAN_RESULT = "android.provider.sdlMessage"; - public static boolean haixinN1SStart = false; - - private static IntentFilter haixinN1SMakeDemoIntentFilter() { - final IntentFilter intentFilter = new IntentFilter(); - intentFilter.addAction(HAIXIN_N1S_ACTION_SCAN_RESULT); - return intentFilter; - } - - private BroadcastReceiver haixinN1SDemoReceiver = null; - - public void haixinN1SInit() { - haixinN1SDemoReceiver = new BroadcastReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - // - final String action = intent.getAction(); - if (HAIXIN_N1S_ACTION_SCAN_RESULT.equals(action)) { - // The string is the scan result value. - final String scanResultStr = intent.getStringExtra("msg"); - - if (scanResultStr != null && scanResultStr.trim().length() > 0) { - handler.post(new Runnable() { - public void run() { - View rootview = DjActivity.this.getWindow().getDecorView(); - View aaa = rootview.findFocus(); - // View bbb = - // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - // if (aaa == bbb && defaultFocus2 != null) { - // DjUtil.setFocus(hzTab, defaultFocus2); - // } - if (aaa instanceof SelfEditText) { - SelfEditText set = (SelfEditText)aaa; - set.setText(scanResultStr); - // - new Thread(new Runnable() { - - @Override - public void run() { - // TODO Auto-generated method stub - Instrumentation inst = new Instrumentation(); - inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); - } - }).start(); - } - } - }); - } - } - // - } - }; - } - - public void haixinN1sStart() { - if (!haixinN1SStart) { - haixinN1SStart = true; - registerReceiver(haixinN1SDemoReceiver, haixinN1SMakeDemoIntentFilter()); - } - } - - public void haixinN1sStop() { - if (haixinN1SStart) { - haixinN1SStart = false; - unregisterReceiver(haixinN1SDemoReceiver); - } - } - + new Thread(new Runnable() { - // 富力叶 android handheld terminal 扫描头 - - public static AndroidHandheldTerminal androidHandheldTerminal = null; - /* 富力叶不兼容代码 + @Override + public void run() { + // TODO Auto-generated method stub + Instrumentation inst = new Instrumentation(); + inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); + } + }).start(); + //} + } + } + } + } + } + + // 海信 n1s 设备扫描头控制 + public static final String HAIXIN_N1S_ACTION_SCAN_RESULT = "android.provider.sdlMessage"; + public static boolean haixinN1SStart = false; + + private static IntentFilter haixinN1SMakeDemoIntentFilter() { + final IntentFilter intentFilter = new IntentFilter(); + intentFilter.addAction(HAIXIN_N1S_ACTION_SCAN_RESULT); + return intentFilter; + } + + private BroadcastReceiver haixinN1SDemoReceiver = null; + + public void haixinN1SInit() { + haixinN1SDemoReceiver = new BroadcastReceiver() { + @Override + public void onReceive(Context context, Intent intent) { + // + final String action = intent.getAction(); + if (HAIXIN_N1S_ACTION_SCAN_RESULT.equals(action)) { + // The string is the scan result value. + final String scanResultStr = intent.getStringExtra("msg"); + + if (scanResultStr != null && scanResultStr.trim().length() > 0) { + handler.post(new Runnable() { + public void run() { + View rootview = DjActivity.this.getWindow().getDecorView(); + View aaa = rootview.findFocus(); + // View bbb = + // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); + // if (aaa == bbb && defaultFocus2 != null) { + // DjUtil.setFocus(hzTab, defaultFocus2); + // } + if (aaa instanceof SelfEditText) { + SelfEditText set = (SelfEditText) aaa; + set.setText(scanResultStr); + new Thread(new Runnable() { + + @Override + public void run() { + // TODO Auto-generated method stub + Instrumentation inst = new Instrumentation(); + inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); + } + }).start(); + } + } + }); + } + } + } + }; + } + + public void haixinN1sStart() { + if (!haixinN1SStart) { + haixinN1SStart = true; + registerReceiver(haixinN1SDemoReceiver, haixinN1SMakeDemoIntentFilter()); + } + } + + public void haixinN1sStop() { + if (haixinN1SStart) { + haixinN1SStart = false; + unregisterReceiver(haixinN1SDemoReceiver); + } + } + + + // 富力叶 android handheld terminal 扫描头 + + public static AndroidHandheldTerminal androidHandheldTerminal = null; + + /* 富力叶不兼容代码 private Handler androidHandheldTerminalHandler = new MainHandler(); @@ -2131,18 +2010,18 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf String readerdata = (String) msg.obj; // View rootview = DjActivity.this.getWindow().getDecorView(); - View aaa = rootview.findFocus(); - // View bbb = - // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - // if (aaa == bbb && defaultFocus2 != null) { - // DjUtil.setFocus(hzTab, defaultFocus2); - // } - if (aaa instanceof SelfEditText) { - SelfEditText set = (SelfEditText)aaa; - set.setText(readerdata); - //set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); - //set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); - } + View aaa = rootview.findFocus(); + // View bbb = + // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); + // if (aaa == bbb && defaultFocus2 != null) { + // DjUtil.setFocus(hzTab, defaultFocus2); + // } + if (aaa instanceof SelfEditText) { + SelfEditText set = (SelfEditText)aaa; + set.setText(readerdata); + //set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); + //set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); + } // } @@ -2162,15 +2041,15 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf } };*/ - public class AndroidHandheldTerminal { - /* 富力叶不兼容代码 - private ScanManager scan = null; - - public AndroidHandheldTerminal() { - scan = (ScanManager) getSystemService("olc_service_scan"); - } + public class AndroidHandheldTerminal { + /* 富力叶不兼容代码 + private ScanManager scan = null; + + public AndroidHandheldTerminal() { + scan = (ScanManager) getSystemService("olc_service_scan"); + } */ - public void start() {/* 富力叶不兼容代码 + public void start() {/* 富力叶不兼容代码 if (scan != null) { Log.v("AndroidHandheldTerminal", "scan: start begin"); scan.setScanSwitchLeft(true); @@ -2180,9 +2059,9 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf Log.v("AndroidHandheldTerminal", "scan: start end"); } else Log.v("AndroidHandheldTerminal", "scan: start fail");*/ - } + } - public void stop() {/* 富力叶不兼容代码 + public void stop() {/* 富力叶不兼容代码 if (scan != null) { Log.v("AndroidHandheldTerminal", "scan: stop begin"); scan.setScanSwitchLeft(false); @@ -2190,231 +2069,231 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf Log.v("AndroidHandheldTerminal", "scan: stop end"); } else Log.v("AndroidHandheldTerminal", "scan: stop fail");*/ - } + } - public void restart() { - stop(); - start(); - } - } + public void restart() { + stop(); + start(); + } + } - /** - * zkr322a 大屏 工业一体机 - */ - private boolean zkr322aIsReciverThread = true; - private Thread zkr322aReciverThread = null; - private ZKR322AControl zkr322aControl = null; - private Handler zkr322aHandler = new Handler() { - @Override - // 当有消息发送出来的时候就执行Handler的这个方法 - public void handleMessage(Message msg) { - zyFcous(msg.obj.toString()); - } - }; + /** + * zkr322a 大屏 工业一体机 + */ + private boolean zkr322aIsReciverThread = true; + private Thread zkr322aReciverThread = null; + private ZKR322AControl zkr322aControl = null; + private Handler zkr322aHandler = new Handler() { + @Override + // 当有消息发送出来的时候就执行Handler的这个方法 + public void handleMessage(Message msg) { + zyFcous(msg.obj.toString()); + } + }; - private void zkr322aNew() { - try { - zkr322aControl = new ZKR322AControl(); - zkr322aControl.initScan(); - zkr322aReciverThread = new Thread(zkr322aReciverDataRunable); - zkr322aReciverThread.start(); - } catch (Exception e) { - DialogUtil.builder(DjActivity.this, "错误信息", "[ZKR322A]初始化失败:" + e.getMessage(), 0); - } - } - - public void zkr322aClear() { - zkr322aIsReciverThread = false; - zkr322aReciverThread = null; - zkr322aControl.stop(); - zkr322aControl.close(); - zkr322aControl = null; - zkr322aHandler = null; - } + private void zkr322aNew() { + try { + zkr322aControl = new ZKR322AControl(); + zkr322aControl.initScan(); + zkr322aReciverThread = new Thread(zkr322aReciverDataRunable); + zkr322aReciverThread.start(); + } catch (Exception e) { + DialogUtil.builder(DjActivity.this, "错误信息", "[ZKR322A]初始化失败:" + e.getMessage(), 0); + } + } - Runnable zkr322aReciverDataRunable = new Runnable() { - @Override - public void run() { - while (zkr322aIsReciverThread && zkr322aControl != null) { - String msg = zkr322aControl.getData(); - if (msg != null && msg.length() > 0) { - Message message = new Message(); - message.obj = msg; - zkr322aHandler.sendMessage(message); - } - } + public void zkr322aClear() { + zkr322aIsReciverThread = false; + zkr322aReciverThread = null; + zkr322aControl.stop(); + zkr322aControl.close(); + zkr322aControl = null; + zkr322aHandler = null; + } - } - }; - /** - * cr5w 设备扫描头控制 - * */ - public static CR5WScanControl cr5wScanControl = null; - - /** - * 联新 nr510 控制 - */ - public static Nr510ScanControl nr510ScanControl = null; - - public class Nr510ScanControl extends BroadcastReceiver { - private boolean usecloseState = true; - private Engine engine = new Engine(); - private boolean islxScan = false; - - public Nr510ScanControl() { - Intent intent = getIntent(); - String checkBox = intent.getStringExtra("islxscan"); - islxScan = "0".equals(checkBox) ? true : false; - } - - public void start(Context context) { - if (usecloseState) { - usecloseState = false; - if (islxScan) - engine.start(context); - IntentFilter filter = new IntentFilter(); - filter.addAction("lachesis_barcode_value_notice_broadcast"); - registerReceiver(this, filter); - } - } - - public void stop(Context context) { - if (!usecloseState) { - unregisterReceiver(this); - if (islxScan) - engine.stop(context); - usecloseState = true; - } - } - - @Override - public void onReceive(Context arg0, Intent arg1) { - Log.i("NR510GetValue", "onReceive......"); - final String value = arg1 - .getStringExtra("lachesis_barcode_value_notice_broadcast_data_string"); - //final String value = "1234567890"; - if (value.length() > 10) { - handler.post(new Runnable() { - public void run() { - View rootview = DjActivity.this.getWindow().getDecorView(); - View aaa = rootview.findFocus(); - // View bbb = - // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); - // if (aaa == bbb && defaultFocus2 != null) { - // DjUtil.setFocus(hzTab, defaultFocus2); - // } - if (aaa instanceof SelfEditText) { - SelfEditText set = (SelfEditText)aaa; - if (set.closeKeyBoard) { - set.setText(value); - set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); - set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); - } - } - } - }); - } - } - } - - /** - * Honeywell 设备扫描头控制 - */ - public static BarcodeReader barcodeReader = null; + Runnable zkr322aReciverDataRunable = new Runnable() { + @Override + public void run() { + while (zkr322aIsReciverThread && zkr322aControl != null) { + String msg = zkr322aControl.getData(); + if (msg != null && msg.length() > 0) { + Message message = new Message(); + message.obj = msg; + zkr322aHandler.sendMessage(message); + } + } + + } + }; + /** + * cr5w 设备扫描头控制 + */ + public static CR5WScanControl cr5wScanControl = null; + + /** + * 联新 nr510 控制 + */ + public static Nr510ScanControl nr510ScanControl = null; + + public class Nr510ScanControl extends BroadcastReceiver { + private boolean usecloseState = true; + private Engine engine = new Engine(); + private boolean islxScan = false; + + public Nr510ScanControl() { + Intent intent = getIntent(); + String checkBox = intent.getStringExtra("islxscan"); + islxScan = "0".equals(checkBox) ? true : false; + } + + public void start(Context context) { + if (usecloseState) { + usecloseState = false; + if (islxScan) + engine.start(context); + IntentFilter filter = new IntentFilter(); + filter.addAction("lachesis_barcode_value_notice_broadcast"); + registerReceiver(this, filter); + } + } + + public void stop(Context context) { + if (!usecloseState) { + unregisterReceiver(this); + if (islxScan) + engine.stop(context); + usecloseState = true; + } + } + + @Override + public void onReceive(Context arg0, Intent arg1) { + Log.i("NR510GetValue", "onReceive......"); + final String value = arg1 + .getStringExtra("lachesis_barcode_value_notice_broadcast_data_string"); + //final String value = "1234567890"; + if (value.length() > 10) { + handler.post(new Runnable() { + public void run() { + View rootview = DjActivity.this.getWindow().getDecorView(); + View aaa = rootview.findFocus(); + // View bbb = + // hzTab.findViewWithTag(defaultFocus2.toUpperCase().trim()); + // if (aaa == bbb && defaultFocus2 != null) { + // DjUtil.setFocus(hzTab, defaultFocus2); + // } + if (aaa instanceof SelfEditText) { + SelfEditText set = (SelfEditText) aaa; + if (set.closeKeyBoard) { + set.setText(value); + set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); + set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); + } + } + } + }); + } + } + } + + /** + * Honeywell 设备扫描头控制 + */ + public static BarcodeReader barcodeReader = null; // public static boolean triggerState = false; - /* - * ht518初始化(带新版扫描头) 包括android_serialport_api包和android.gpio包 - * 和com.jiebao.h518.scan.NewScanControler类 - */ - private NewScanControler newScanControler; - private Thread reciverThread; - private boolean isReciverThread = true; - private BeepManager bManager; - private Handler ht518handler = new Handler() { - @Override - // 当有消息发送出来的时候就执行Handler的这个方法 - public void handleMessage(Message msg) { - bManager.playBeepSoundAndVibrate(); - zyFcous(msg.obj.toString()); - newScanControler.stopScan(); - } - }; + /* + * ht518初始化(带新版扫描头) 包括android_serialport_api包和android.gpio包 + * 和com.jiebao.h518.scan.NewScanControler类 + */ + private NewScanControler newScanControler; + private Thread reciverThread; + private boolean isReciverThread = true; + private BeepManager bManager; + private Handler ht518handler = new Handler() { + @Override + // 当有消息发送出来的时候就执行Handler的这个方法 + public void handleMessage(Message msg) { + bManager.playBeepSoundAndVibrate(); + zyFcous(msg.obj.toString()); + newScanControler.stopScan(); + } + }; - public void ht518Clear() { - isReciverThread = false; - reciverThread = null; - newScanControler.stopScan(); - newScanControler.close(); - newScanControler = null; - ht518handler = null; - bManager.release(); - } + public void ht518Clear() { + isReciverThread = false; + reciverThread = null; + newScanControler.stopScan(); + newScanControler.close(); + newScanControler = null; + ht518handler = null; + bManager.release(); + } - private void ht518InitNew() { - try { - newScanControler = new NewScanControler(); - newScanControler.initScan(); - } catch (SecurityException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - reciverThread = new Thread(ReciverDataRunable); - reciverThread.start(); - bManager = new BeepManager(this); - } + private void ht518InitNew() { + try { + newScanControler = new NewScanControler(); + newScanControler.initScan(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + reciverThread = new Thread(ReciverDataRunable); + reciverThread.start(); + bManager = new BeepManager(this); + } - Runnable ReciverDataRunable = new Runnable() { - @Override - public void run() { - while (isReciverThread) { - String msg = newScanControler.getData(); - if (msg != null && msg.length() > 0) { - Message message = new Message(); - message.obj = msg; - ht518handler.sendMessage(message); - } - } + Runnable ReciverDataRunable = new Runnable() { + @Override + public void run() { + while (isReciverThread) { + String msg = newScanControler.getData(); + if (msg != null && msg.length() > 0) { + Message message = new Message(); + message.obj = msg; + ht518handler.sendMessage(message); + } + } - } - }; + } + }; - /* - * seuic PDA - */ - private com.seuic.scanner.Scanner seuicScanner; - private SoundPool soundpool = null; - private int soundid; - private boolean isKeyDown = true; - private String islxscan; + /* + * seuic PDA + */ + private com.seuic.scanner.Scanner seuicScanner; + private SoundPool soundpool = null; + private int soundid; + private boolean isKeyDown = true; + private String islxscan; - private SeuicScanKeyEventRunnable seuicScannerThread; + private SeuicScanKeyEventRunnable seuicScannerThread; - public void seuicIint() { - soundpool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 100); // MODE_RINGTONE - soundid = soundpool.load(this, R.raw.beep, 1); - if (seuicScanner == null) { - seuicScanner = ScannerFactory.getScanner(DjActivity.this); - } - ScannerKey.close(); - seuicScannerThread = new SeuicScanKeyEventRunnable(seuicScanner); - new Thread(seuicScannerThread).start(); - } + public void seuicIint() { + soundpool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 100); // MODE_RINGTONE + soundid = soundpool.load(this, R.raw.beep, 1); + if (seuicScanner == null) { + seuicScanner = ScannerFactory.getScanner(DjActivity.this); + } + ScannerKey.close(); + seuicScannerThread = new SeuicScanKeyEventRunnable(seuicScanner); + new Thread(seuicScannerThread).start(); + } - @Override - public void onDecodeComplete(DecodeInfo info) { - if (!SysData.isreg.equals("Y")) { - openRunWin(); - } - soundpool.play(soundid, 1, 1, 0, 0, 1); - zyFcous(info.barcode); - } + @Override + public void onDecodeComplete(DecodeInfo info) { + if (!SysData.isreg.equals("Y")) { + openRunWin(); + } + soundpool.play(soundid, 1, 1, 0, 0, 1); + zyFcous(info.barcode); + } - @Override - public void onTriggerEvent(TriggerStateChangeEvent event) { + @Override + public void onTriggerEvent(TriggerStateChangeEvent event) { // TODO Auto-generated method stub // if (event.getState()) { @@ -2431,13 +2310,13 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf // e.printStackTrace(); // } // } - } + } - @Override - public void onBarcodeEvent(BarcodeReadEvent event) { - // TODO Auto-generated method stub + @Override + public void onBarcodeEvent(BarcodeReadEvent event) { + // TODO Auto-generated method stub - final BarcodeReadEvent event2 = event; + final BarcodeReadEvent event2 = event; runOnUiThread(new Runnable() { @Override public void run() { @@ -2455,33 +2334,33 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf barcodeList.setAdapter(dataAdapter); */ - // + // // Toast.makeText(DjActivity.this, event2.getBarcodeData(), Toast.LENGTH_SHORT).show(); - if (barcodeReader == null) return; - View rootview = DjActivity.this.getWindow().getDecorView(); - // boolean isfindEdit = true; - if (rootview != null) { - View aaa = rootview.findFocus(); - if (aaa != null && aaa instanceof SelfEditText) { - final SelfEditText set = (SelfEditText)aaa; - set.setText(event2.getBarcodeData()); + if (barcodeReader == null) return; + View rootview = DjActivity.this.getWindow().getDecorView(); + // boolean isfindEdit = true; + if (rootview != null) { + View aaa = rootview.findFocus(); + if (aaa != null && aaa instanceof SelfEditText) { + final SelfEditText set = (SelfEditText) aaa; + set.setText(event2.getBarcodeData()); // set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); // set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); - new Thread(new Runnable() { - - @Override - public void run() { - // TODO Auto-generated method stub - Instrumentation inst = new Instrumentation(); - inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); - } - }).start(); - } else { - // isfindEdit = false; - } - } else { - // isfindEdit = false; - } + new Thread(new Runnable() { + + @Override + public void run() { + // TODO Auto-generated method stub + Instrumentation inst = new Instrumentation(); + inst.sendKeyDownUpSync(KeyEvent.KEYCODE_ENTER); + } + }).start(); + } else { + // isfindEdit = false; + } + } else { + // isfindEdit = false; + } /* if (!isfindEdit) { Timer timer = new Timer(); timer.schedule(new TimerTask() { @@ -2503,22 +2382,22 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf } }*/ - // + // // try { // Thread.sleep(1000);//sleep 1s waiting for another barcode // } catch (InterruptedException e) { // e.printStackTrace(); // } // continuousScanning(true); - continuousScanning(true); + continuousScanning(true); } }); - } - - public void continuousScanning(final boolean bState){ + } + + public void continuousScanning(final boolean bState) { // if (triggerState && bState) return; // triggerState = bState; - + new Thread(new Runnable() { @Override public void run() { @@ -2527,23 +2406,89 @@ public class DjActivity extends TabActivity implements OnInitListener, DecodeInf } catch (InterruptedException e) { e.printStackTrace(); } - try { - barcodeReader.light(bState); //turn on/off backlight - barcodeReader.aim(bState); //开关瞄准线 - barcodeReader.decode(bState); //开关解码功能 - } catch (ScannerUnavailableException e) { - e.printStackTrace(); - } catch (ScannerNotClaimedException e) { - e.printStackTrace(); - } + try { + barcodeReader.light(bState); //turn on/off backlight + barcodeReader.aim(bState); //开关瞄准线 + barcodeReader.decode(bState); //开关解码功能 + } catch (ScannerUnavailableException e) { + e.printStackTrace(); + } catch (ScannerNotClaimedException e) { + e.printStackTrace(); + } } }).start(); } - @Override - public void onFailureEvent(BarcodeFailureEvent arg0) { + @Override + public void onFailureEvent(BarcodeFailureEvent arg0) { // TODO Auto-generated method stub //continuousScanning(true); - } + } + + + /** + * 优博讯控制器 + */ + UroBoScannerControl uroBoScannerControl=null; + public class UroBoScannerControl extends BroadcastReceiver { + private ScanManager mScanManager; + private Vibrator mVibrator; + private SoundPool soundPool; + private int soundid; + + public UroBoScannerControl() { + mScanManager = new ScanManager(); + mScanManager.openScanner(); + mScanManager.switchOutputMode(0); + if (mScanManager.getTriggerMode() != Triggering.CONTINUOUS) + mScanManager.setTriggerMode(Triggering.CONTINUOUS); + + + soundPool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 100); // MODE_RINGTONE + soundid = soundPool.load(DjActivity.this, R.raw.beep, 1); + + mVibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); + Window window = getWindow(); + window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); + } + + public void start() { + mScanManager.startDecode(); + IntentFilter filter = new IntentFilter(); + filter.addAction(""); //添加action + registerReceiver(this, filter); + } + + public void stop() { + unregisterReceiver(this); + mScanManager.stopDecode(); + mVibrator.cancel(); + soundPool.release(); + } + + @Override + public void onReceive(Context context, Intent intent) { + soundPool.play(soundid, 1, 1, 0, 0, 1); + mVibrator.vibrate(100); + + byte[] barcode = intent.getByteArrayExtra("barocode"); + int barocodelen = intent.getIntExtra("length", 0); + String barcodeStr = new String(barcode, 0, barocodelen); + handler.post(new Runnable() { + public void run() { + View rootview = DjActivity.this.getWindow().getDecorView(); + View aaa = rootview.findFocus(); + if (aaa instanceof SelfEditText) { + SelfEditText set = (SelfEditText) aaa; + if (set.closeKeyBoard) { + set.setText(barcodeStr); + set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER)); + set.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_ENTER)); + } + } + } + }); + } + } } diff --git a/app/src/main/java/com/example/chaoran/DjtqActivity.java b/app/src/main/java/com/example/chaoran/DjtqActivity.java index b7b1008..ab8b1bd 100644 --- a/app/src/main/java/com/example/chaoran/DjtqActivity.java +++ b/app/src/main/java/com/example/chaoran/DjtqActivity.java @@ -1,23 +1,5 @@ package com.example.chaoran; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.kobjects.base64.Base64; - -import com.chaoran.component.MyAdapter; -import com.chaoran.entiry.DataGrid; -import com.chaoran.entiry.Djselefa; -import com.example.chaoran.R; -import com.util.DialogUtil; -import com.util.IoUtil; -import com.util.SqlUtil; -import com.util.SysUtil; - import android.app.Activity; import android.app.ProgressDialog; import android.content.Intent; @@ -27,11 +9,26 @@ import android.os.Message; import android.view.KeyEvent; import android.view.View; import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; import android.widget.Button; import android.widget.ListView; -import android.widget.AdapterView.OnItemClickListener; import android.widget.TextView; +import com.chaoran.component.MyAdapter; +import com.chaoran.entiry.DataGrid; +import com.chaoran.entiry.Djselefa; +import com.util.DialogUtil; +import com.util.IoUtil; +import com.util.SqlUtil; +import com.util.SysUtil; +import org.kobjects.base64.Base64; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; + +/** + * 单据提取窗口 + */ public class DjtqActivity extends Activity { private ListView listview; private int cur_pos = -1;// 当前显示的一行 diff --git a/app/src/main/java/com/example/chaoran/ExitThread.java b/app/src/main/java/com/example/chaoran/ExitThread.java index f5c1409..0d39695 100644 --- a/app/src/main/java/com/example/chaoran/ExitThread.java +++ b/app/src/main/java/com/example/chaoran/ExitThread.java @@ -11,6 +11,9 @@ import android.util.Log; import com.sys.SysData; +/** + * 退出线程 + */ public class ExitThread extends Thread { public String gzid; public String mxTempTable; diff --git a/app/src/main/java/com/example/chaoran/MainActivity.java b/app/src/main/java/com/example/chaoran/MainActivity.java index 5e2f32a..18a7a71 100644 --- a/app/src/main/java/com/example/chaoran/MainActivity.java +++ b/app/src/main/java/com/example/chaoran/MainActivity.java @@ -1,64 +1,23 @@ package com.example.chaoran; -import java.io.BufferedInputStream; -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.Properties; - -import org.ksoap2.SoapEnvelope; -import org.ksoap2.serialization.SoapObject; -import org.ksoap2.serialization.SoapSerializationEnvelope; -import org.ksoap2.transport.HttpTransportSE; -import org.xmlpull.v1.XmlPullParserException; - -import com.chaoran.db.DBManager; -import com.chaoran.db.SqlHelpUtil; -import com.chaoran.entiry.UpdataInfo; -import com.chaoran.entiry.UserList; -import com.chaoran.lx.activity.DownDataActivity; -import com.chaoran.thread.DownApk; -import com.example.chaoran.R; -import com.honeywell.aidc.AidcManager; -import com.honeywell.aidc.AidcManager.CreatedCallback; -import com.honeywell.aidc.BarcodeReader; -import com.sys.SysData; -import com.util.DialogUtil; -import com.util.Dom4jUtil; -import com.util.InstallUtil; -import com.util.IoUtil; -import com.util.SysUtil; - -import android.content.pm.ActivityInfo; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager.NameNotFoundException; - -import android.net.wifi.WifiManager; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; import android.app.Activity; import android.app.AlertDialog; -import android.app.ProgressDialog; import android.app.AlertDialog.Builder; -import android.content.Context; +import android.app.ProgressDialog; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; +import android.content.pm.ActivityInfo; +import android.content.pm.PackageInfo; import android.content.pm.PackageManager; +import android.content.pm.PackageManager.NameNotFoundException; import android.content.res.Configuration; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; @@ -67,7 +26,29 @@ import android.widget.CheckBox; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; +import com.chaoran.db.DBManager; +import com.chaoran.db.SqlHelpUtil; +import com.chaoran.entiry.UpdataInfo; +import com.chaoran.entiry.UserList; +import com.chaoran.lx.activity.DownDataActivity; +import com.chaoran.thread.DownApk; +import com.honeywell.aidc.AidcManager; +import com.honeywell.aidc.AidcManager.CreatedCallback; +import com.honeywell.aidc.BarcodeReader; +import com.sys.SysData; +import com.util.*; +import org.ksoap2.SoapEnvelope; +import org.ksoap2.serialization.SoapObject; +import org.ksoap2.serialization.SoapSerializationEnvelope; +import org.ksoap2.transport.HttpTransportSE; +import java.io.*; +import java.net.HttpURLConnection; +import java.net.URL; + +/** + * 主活动窗口 + */ public class MainActivity extends Activity { SqlHelpUtil db; SQLiteDatabase sDatabase; @@ -103,8 +84,6 @@ public class MainActivity extends Activity { DialogUtil.builder(MainActivity.this, "错误信息", "更新文件失败!",0); } else if (msg.what == 1) { UpdataInfo info = (UpdataInfo) msg.obj; - System.out.println(info+"---------------------"); - System.out.println(versionStr+"---------------------"); if (info!=null&&!info.getVersion().equals(versionStr)) { showUpdataDialog(info); } @@ -115,7 +94,6 @@ public class MainActivity extends Activity { DialogUtil.builder(MainActivity.this, "提示信息", "该功能未授权!",0); } else { UserList user = (UserList) msg.obj; - // System.out.println(so.hasProperty("lgnname")); if (user.getLgnname() == null) { String udesc = user.getUdesc(); if (udesc.equals("0")) { @@ -136,29 +114,8 @@ public class MainActivity extends Activity { } } else { - // SysData.username= - // so.getProperty("username").toString().trim(); SysData.is_lx = false; login_end(user); - // SysData.jigid = user.getJigid(); - // SysData.lgnname = user.getLgnname(); - // SysData.userid = String.valueOf(user.getUserid()); - // SysData.scale = MainActivity.this.getResources() - // .getDisplayMetrics().density + 1; - // SharedPreferences sp = MainActivity.this - // .getSharedPreferences("userTxt", MODE_PRIVATE); - // Editor editor = sp.edit(); - // editor.putString("name", name.getText().toString() - // .trim()); - // editor.putString("pwd", - // pwd.getText().toString().trim()); - // editor.commit(); - // Intent intent = new Intent(); - // intent.putExtra("displaymode", - // user.getDisplaymode()); - // intent.setClass(getApplicationContext(), - // DjActivity.class); - // startActivity(intent); } } } @@ -185,16 +142,10 @@ public class MainActivity extends Activity { SysData.lgnname = user.getLgnname(); SysData.userid = String.valueOf(user.getUserid()); SysData.scale = MainActivity.this.getResources().getDisplayMetrics().density + 1; - //SysData.t_scale = MainActivity.this.getResources().getDisplayMetrics().densityDpi >= 200f ? 200f / MainActivity.this.getResources().getDisplayMetrics().densityDpi : 200f * 0.95f / MainActivity.this.getResources().getDisplayMetrics().densityDpi; SysData.t_scale = MainActivity.this.getResources().getDisplayMetrics().densityDpi >= 300f ? 1 : 300f * def_pbl / MainActivity.this.getResources().getDisplayMetrics().densityDpi; SysData.exectime=Integer.parseInt(user.getUdesc() == null ? "60" : user.getUdesc()); - System.out.println(SysData.exectime+"---------------------------------------SysData.exectime"); SharedPreferences sp = MainActivity.this.getSharedPreferences( "userTxt", MODE_PRIVATE); - // Editor editor = sp.edit(); - // editor.putString("name", name.getText().toString().trim()); - // editor.putString("pwd", pwd.getText().toString().trim()); - // editor.commit(); if (checkBox.isChecked()) { Editor editor = sp.edit(); editor.putString("name", name.getText().toString().trim()); @@ -245,8 +196,6 @@ public class MainActivity extends Activity { TextView version = (TextView) findViewById(R.id.version); versionStr=getVersionName(); version.setText("版本".concat(versionStr)); - // SysData.clientid = Secure.getString(getContentResolver(), - // Secure.ANDROID_ID); SysData.clientid = SysUtil.getLocalMacAddress(MainActivity.this); db = new SqlHelpUtil(getApplicationContext()); sDatabase = db.getWritableDatabase(); @@ -269,7 +218,6 @@ public class MainActivity extends Activity { new Thread(new CheckVersionTask()).start(); new Thread(queryZcrq).start(); } - // BufferedReader br = null; BufferedWriter bw = null; File file = new File(getFilesDir().getAbsolutePath() + "/cr_pda_config"); @@ -311,7 +259,6 @@ public class MainActivity extends Activity { } } } - // if ("scanpal eda50".equals(android.os.Build.MODEL.toLowerCase())) { AidcManager.create(this, new CreatedCallback() { @@ -339,10 +286,6 @@ public class MainActivity extends Activity { public void run() { try { String url = SysData.url + "/webservice/ServiceInterface?wsdl"; - // System.out - // .println(url - // + - // "--------------============================================"); String method = "regEndRq"; SoapObject rpc = new SoapObject("", method); HttpTransportSE ht = new HttpTransportSE(url, SysData.timeout); @@ -391,27 +334,15 @@ public class MainActivity extends Activity { public void onset(View v) { Intent intent = new Intent(); intent.setClass(this, NetWorkSet.class); - // intent.setClass(getApplicationContext(), BDMapActivity.class); startActivity(intent); - // startActivityForResult(intent,0); } public void onopentest(View v) { DialogUtil.builder(this, "测试标题","测试内容!open" + v.getLeft(), 18); -// ScanManager sm = (ScanManager) getSystemService("olc_service_scan"); -// -// sm.setScanSwitchLeft(false); -// sm.setScanSwitchRight(false); -// sm.setScanSwitchMiddle(false); } public void onclosetest(View v) { DialogUtil.builder(this, "测试标题","测试内容!close" + v.getLeft(), 18); -// ScanManager sm = (ScanManager) getSystemService("olc_service_scan"); -// -// sm.setScanSwitchLeft(true); -// sm.setScanSwitchRight(true); -// sm.setScanSwitchMiddle(true); } // 设置按钮监听 @@ -445,10 +376,6 @@ public class MainActivity extends Activity { // 设置按钮监听 public void onsub(View v) { - // if (SysData.url == null) { - // DialogUtil.builder(this, "错误信息", "请检查网络!"); - // return; - // } loginTy = 1; start_login(); } @@ -482,20 +409,12 @@ public class MainActivity extends Activity { DialogUtil.setDialog(pd, "提示", "正在登录……"); } - // DialogUtil.setDialog(pd, "提示", "" + MainActivity.this.getResources().getDisplayMetrics().densityDpi); new Thread(downloadRun).start(); } public void login(String name, String pwd) { - // WifiManager wifiManager=(WifiManager) - // this.getSystemService(Context.WIFI_SERVICE); - // wifiManager.disconnect(); - // wifiManager.reconnect(); try { String url = SysData.url + "/webservice/ServiceInterface?wsdl"; - // System.out - // .println(url - // + "--------------============================================"); String method = "login"; SoapObject rpc = new SoapObject("", method); rpc.addProperty("name", name); @@ -510,10 +429,6 @@ public class MainActivity extends Activity { envelope.setOutputSoapObject(rpc); ht.call("", envelope); if (envelope.getResponse() != null) { - // SoapObject result = (SoapObject) envelope.bodyIn; - // SoapObject soapChilds = (SoapObject) result.getProperty(0); - // System.out.println(soapChilds+"---"+soapChilds.getProperty("jigid")); - // System.out.println(soapChilds.getProperty("jigid")); byte[] bb = org.kobjects.base64.Base64.decode(envelope .getResponse().toString()); Message message = new Message(); @@ -601,16 +516,13 @@ public class MainActivity extends Activity { HttpURLConnection conn = null; try { String path = SysData.url + "/apk.xml"; - System.out.println(path+"----------------------"); URL url = new URL(path); conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5000); if (conn.getResponseCode() == 200) { is = conn.getInputStream(); - // UpdataInfo info = getUpdataInfo(is); Message msg = new Message(); msg.what = 1; - System.out.println(versionStr); msg.obj = Dom4jUtil.parserXml(is,versionStr); handler.sendMessage(msg); } @@ -637,9 +549,6 @@ public class MainActivity extends Activity { case R.id.lxdatadown: loginTy = 2; start_login(); - // Intent intent = new Intent(); - // intent.setClass(getApplicationContext(), DownDataActivity.class); - // startActivity(intent); break; case R.id.lxlogin: if (!isNull()) { @@ -687,8 +596,7 @@ public class MainActivity extends Activity { * 该方法解决屏幕旋转程序崩溃,需要对应 AndroidManifest.xml 文件 android:configChanges="orientation|screenSize|keyboardHidden" 配置 */ public void onConfigurationChanged(Configuration newConfig) { - // TODO Auto-generated method stub - super.onConfigurationChanged(newConfig); + super.onConfigurationChanged(newConfig); if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { Toast.makeText(this, "转换横屏", Toast.LENGTH_SHORT).show(); } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) { diff --git a/app/src/main/java/com/example/chaoran/MenuActivity.java b/app/src/main/java/com/example/chaoran/MenuActivity.java index 48c5e87..1f0554e 100644 --- a/app/src/main/java/com/example/chaoran/MenuActivity.java +++ b/app/src/main/java/com/example/chaoran/MenuActivity.java @@ -1,34 +1,31 @@ package com.example.chaoran; -import java.io.ByteArrayInputStream; -import java.io.ObjectInputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.Menu; +import android.view.View; +import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.ListView; +import android.widget.SimpleAdapter; +import com.sys.SysData; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; +import java.io.ByteArrayInputStream; +import java.io.ObjectInputStream; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; -import com.chaoran.entiry.DanJuEntity; -import com.example.chaoran.R; -import com.sys.SysData; - -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.app.Activity; -import android.content.Intent; -import android.view.Menu; -import android.view.View; -import android.widget.AdapterView; -import android.widget.ListView; -import android.widget.SimpleAdapter; -import android.widget.AdapterView.OnItemClickListener; - +/** + * 菜单窗口 + */ public class MenuActivity extends Activity { private ListView listView; private List mData; diff --git a/app/src/main/java/com/example/chaoran/NetWorkSet.java b/app/src/main/java/com/example/chaoran/NetWorkSet.java index d4d098f..1bb0dfc 100644 --- a/app/src/main/java/com/example/chaoran/NetWorkSet.java +++ b/app/src/main/java/com/example/chaoran/NetWorkSet.java @@ -33,6 +33,9 @@ import android.view.View; import android.widget.EditText; import android.widget.TextView; +/** + * 网络相关窗口 + */ @SuppressLint("NewApi") public class NetWorkSet extends Activity { private EditText ip; diff --git a/app/src/main/java/com/example/chaoran/ParamActivity.java b/app/src/main/java/com/example/chaoran/ParamActivity.java index 96cb04e..12145ea 100644 --- a/app/src/main/java/com/example/chaoran/ParamActivity.java +++ b/app/src/main/java/com/example/chaoran/ParamActivity.java @@ -1,28 +1,25 @@ package com.example.chaoran; +import android.app.Activity; +import android.content.Intent; +import android.graphics.Color; +import android.os.Bundle; +import android.view.KeyEvent; +import android.view.View; +import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.ListView; +import android.widget.TextView; +import com.chaoran.component.MyAdapter; +import com.chaoran.entiry.DataGrid; + import java.io.Serializable; import java.util.ArrayList; import java.util.List; -import java.util.Map; - -import com.chaoran.component.MyAdapter; -import com.chaoran.entiry.DataGrid; -import com.example.chaoran.R; -import com.util.DialogUtil; - -import android.os.Bundle; -import android.app.Activity; -import android.content.Intent; -import android.graphics.Color; -import android.view.KeyEvent; -import android.view.Menu; -import android.view.View; -import android.widget.AdapterView; -import android.widget.ListView; -import android.widget.SimpleAdapter; -import android.widget.TextView; -import android.widget.AdapterView.OnItemClickListener; +/** + * 参数窗口 + */ public class ParamActivity extends Activity { private ListView listView; private List listdata; diff --git a/app/src/main/java/com/example/chaoran/PdaRegActivity.java b/app/src/main/java/com/example/chaoran/PdaRegActivity.java index 0cce99a..a1c8c10 100644 --- a/app/src/main/java/com/example/chaoran/PdaRegActivity.java +++ b/app/src/main/java/com/example/chaoran/PdaRegActivity.java @@ -22,6 +22,9 @@ import android.view.Menu; import android.view.View; import android.widget.EditText; +/** + * pda注册窗口 + */ public class PdaRegActivity extends Activity { private EditText ip; private EditText port; diff --git a/app/src/main/java/com/example/chaoran/RunSearchThread.java b/app/src/main/java/com/example/chaoran/RunSearchThread.java index 0398eac..3f53ed9 100644 --- a/app/src/main/java/com/example/chaoran/RunSearchThread.java +++ b/app/src/main/java/com/example/chaoran/RunSearchThread.java @@ -1,23 +1,18 @@ package com.example.chaoran; -import java.io.ByteArrayInputStream; -import java.io.ObjectInputStream; -import java.util.HashMap; -import java.util.Map; - +import android.os.Handler; +import android.os.Message; +import android.util.Log; +import com.chaoran.entiry.DataGrid; +import com.sys.SysData; +import com.util.IoUtil; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; -import android.os.Handler; -import android.os.Message; -import android.util.Log; - -import com.chaoran.entiry.DataGrid; -import com.chaoran.entiry.Sys_DanJuFormsOptions; -import com.sys.SysData; -import com.util.IoUtil; +import java.util.HashMap; +import java.util.Map; /*运行检索方案线程*/ public class RunSearchThread extends Thread { diff --git a/app/src/main/java/com/example/chaoran/RunYmupThread.java b/app/src/main/java/com/example/chaoran/RunYmupThread.java index 32c5eba..7d0c85f 100644 --- a/app/src/main/java/com/example/chaoran/RunYmupThread.java +++ b/app/src/main/java/com/example/chaoran/RunYmupThread.java @@ -1,20 +1,14 @@ package com.example.chaoran; -import java.util.HashMap; -import java.util.Map; - -import org.ksoap2.SoapEnvelope; -import org.ksoap2.serialization.SoapObject; -import org.ksoap2.serialization.SoapSerializationEnvelope; -import org.ksoap2.transport.HttpTransportSE; - -import com.chaoran.entiry.DataGrid; -import com.sys.SysData; -import com.util.IoUtil; - import android.os.Handler; import android.os.Message; import android.util.Log; +import com.sys.SysData; +import com.util.IoUtil; +import org.ksoap2.SoapEnvelope; +import org.ksoap2.serialization.SoapObject; +import org.ksoap2.serialization.SoapSerializationEnvelope; +import org.ksoap2.transport.HttpTransportSE; public class RunYmupThread extends Thread { private String param; diff --git a/app/src/main/java/com/example/chaoran/SearchThread.java b/app/src/main/java/com/example/chaoran/SearchThread.java index 2b6bd7b..93f8ab5 100644 --- a/app/src/main/java/com/example/chaoran/SearchThread.java +++ b/app/src/main/java/com/example/chaoran/SearchThread.java @@ -10,6 +10,9 @@ import android.os.Handler; import android.os.Message; import android.util.Log; +/** + * 搜索线程 + */ public class SearchThread extends Thread { private String fangalx; private String functionname; diff --git a/app/src/main/java/com/example/chaoran/UpdatePwdActivity.java b/app/src/main/java/com/example/chaoran/UpdatePwdActivity.java index 5a9b47d..fa51271 100644 --- a/app/src/main/java/com/example/chaoran/UpdatePwdActivity.java +++ b/app/src/main/java/com/example/chaoran/UpdatePwdActivity.java @@ -1,28 +1,19 @@ package com.example.chaoran; -import java.io.File; - -import org.ksoap2.serialization.SoapObject; - -import com.chaoran.entiry.UpdataInfo; -import com.chaoran.thread.UpdatePwdThread; -import com.example.chaoran.R; -import com.sys.SysData; -import com.util.DialogUtil; -import com.util.InstallUtil; - -import android.R.color; +import android.app.Activity; +import android.app.ProgressDialog; import android.os.Bundle; import android.os.Handler; import android.os.Message; -import android.app.Activity; -import android.app.ProgressDialog; -import android.content.Intent; -import android.graphics.Color; -import android.view.Menu; import android.view.View; import android.widget.EditText; +import com.chaoran.thread.UpdatePwdThread; +import com.sys.SysData; +import com.util.DialogUtil; +/** + * 更新密码窗口 + */ public class UpdatePwdActivity extends Activity { private EditText newPwd; private EditText CfNewPwd; diff --git a/app/src/main/java/com/util/DjUtil.java b/app/src/main/java/com/util/DjUtil.java index 076ba48..daaa666 100644 --- a/app/src/main/java/com/util/DjUtil.java +++ b/app/src/main/java/com/util/DjUtil.java @@ -1,32 +1,18 @@ package com.util; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import com.chaoran.entiry.PhotographUi; -import com.chaoran.entiry.SelfCheckBox; -import com.chaoran.entiry.SelfEditText; -import com.chaoran.entiry.SelfImage; -import com.chaoran.entiry.SelfTextBut; -import com.chaoran.imp.InputInterface; -import com.chaoran.thread.ImageUrl; - -import android.graphics.Bitmap; -import android.graphics.Bitmap.CompressFormat; import android.os.Handler; import android.view.View; import android.widget.CheckBox; -import android.widget.EditText; import android.widget.FrameLayout; import android.widget.ImageView; -import android.widget.RelativeLayout; import android.widget.TabHost; -import android.widget.TextView; +import com.chaoran.entiry.PhotographUi; +import com.chaoran.entiry.SelfCheckBox; +import com.chaoran.entiry.SelfImage; +import com.chaoran.imp.InputInterface; +import com.chaoran.thread.ImageUrl; + +import java.util.*; /* * 单据工具类 @@ -167,11 +153,6 @@ public class DjUtil { for (String s : set) { view = layout.findViewWithTag(s); if (view != null) { - // if (view instanceof SelfEditText) { - // ((SelfEditText) view).setText(map.get(s).toString().trim()); - // } else if (view instanceof TextView) { - // ((TextView) view).setText(map.get(s).toString().trim()); - // } setText(view, map.get(s).toString().trim(), imgHandler, -1, -1); list.add(s); }