public override void OnBarcodeDataReceived(BarcodeDataReceivedEvent_ dataReceivedEvent) { IList <BarcodeDataReceivedEvent_.BarcodeData_> listBarcodeData = dataReceivedEvent.BarcodeData; foreach (BarcodeDataReceivedEvent_.BarcodeData_ barcodeData in listBarcodeData) { Activity.RunOnUiThread(() => { string data = barcodeData.Data; if (etCourse.HasFocus) { if (data.Length < 12) { ShowDialog("エラー", "コースNoがみつかりません。", () => { }); return; } string btvTmp = data.Substring(0, 11); // 配送日(8桁) + センター(3桁) string btvHaisohDate = btvTmp.Substring(2, 4); // 配送日(YYMMDD) string btvCenterCd = btvTmp.Substring(6, 3); // センターコード(3桁) string btvCourse = data.Substring(11, data.Length - 11); // コース(桁可変) try { string haiso_date = CommonUtils.GetDateYYYYMMDDwithSlash(btvHaisohDate); TUMIKOMI010 result = WebService.RequestTumikomi010(souko_cd, kitaku_cd, syuka_date, btvCourse); if (result.state == "03") { ShowDialog("エラー", "該当コースの積込みは完了しています。", () => { }); return; } editor.PutString("syuka_date", syuka_date); editor.PutString("course", btvCourse); editor.PutString("bin_no", result.bin_no); editor.PutString("kansen_kbn", result.kansen_kbn); editor.Apply(); ShowConfirmMessage(); } catch { ShowDialog("エラー", "コースNoがみつかりません。", () => { }); return; } } }); } }
// CHECK INPUT AND MOVE TO NEXT FRAGMENT private void Confirm() { if (etSyukaDate.Text == "") { ShowDialog("エラー", "配送日を入力してください。", () => { etSyukaDate.RequestFocus(); }); return; } if (etCourse.Text == "") { ShowDialog("エラー", "コースNoを入力してください。", () => { etCourse.RequestFocus(); }); return; } ((MainActivity)this.Activity).ShowProgress("便情報を確認しています。"); new Thread(new ThreadStart(delegate { Activity.RunOnUiThread(() => { try { syuka_date = etSyukaDate.Text.Replace("/", ""); TUMIKOMI010 result = WebService.RequestTumikomi010(souko_cd, kitaku_cd, syuka_date, etCourse.Text); if (result == null) { ShowDialog("エラー", "コースNoがみつかりません。", () => { }); return; } else if (result.state == "03") { ShowDialog("エラー", "該当コースの積込みは完了しています。", () => { }); return; } bin_no = result.bin_no; kansen_kbn = result.kansen_kbn; List <TUMIKOMI020> todokeList = WebService.RequestTumikomi020(souko_cd, kitaku_cd, syuka_date, bin_no, etCourse.Text); if (todokeList.Count == 0) { ShowDialog("エラー", "表示データがありません。", () => { }); return; } editor.PutString("syuka_date", syuka_date); editor.PutString("course", etCourse.Text); editor.PutString("bin_no", bin_no); editor.PutString("kansen_kbn", kansen_kbn); editor.Apply(); ShowConfirmMessage(); CommonUtils.HideKeyboard(this.Activity); } catch { ShowDialog("エラー", "コースNoがみつかりません。", () => { }); } } ); Activity.RunOnUiThread(() => ((MainActivity)this.Activity).DismissDialog()); } )).Start(); }