@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_hist); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); // Intent intent = getIntent(); 遷移元からデータ引き継いでないので記述不要 MySQLiteOpenHelper hlpr = new MySQLiteOpenHelper(getApplicationContext()); mydb = hlpr.getReadableDatabase(); Cursor mCursor = mydb.rawQuery( "select RegisterId, RegisterDate, ExecuteDate from alarmTalbe order by RegisterId desc", null); // 予約情報が1件もない場合_よい実装を考える。 if (mCursor == null) { return; } // DBから取得したデータをListに詰める while (mCursor.moveToNext()) { RegisterBean bean = new RegisterBean(); bean.setRegisterId(mCursor.getInt(mCursor.getColumnIndex("RegisterId"))); bean.setRegisterDate(mCursor.getString(mCursor.getColumnIndex("RegisterDate"))); bean.setExecuteDate(mCursor.getString(mCursor.getColumnIndex("ExecuteDate"))); bean.setRegisterInfo( "予約No" + mCursor.getInt(mCursor.getColumnIndex("RegisterId")) + ":" + mCursor.getString(mCursor.getColumnIndex("ExecuteDate"))); registerList.add(bean); } // ListView用に実行日だけ詰め替える final ArrayList<String> showList = new ArrayList<>(); for (RegisterBean bean : registerList) { showList.add(bean.getRegisterInfo()); } lview = (ListView) findViewById(R.id.lv); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, showList); lview.setAdapter(adapter); // リスト項目をクリック lview.setOnItemClickListener( new AdapterView.OnItemClickListener() { String deleteId; // onItemClickの中で宣言すると、ダイアログ生成のonClickで変数が使用できない int position = -1; @Override public void onItemClick(AdapterView<?> parent, View view, int pos, long id) { ListView lv = (ListView) parent; deleteId = (String) lv.getItemAtPosition(pos); // 選択項目 int index = deleteId.indexOf(":"); deleteId = deleteId.substring(4, index); position = pos; // 確認ダイアログ生成 AlertDialog.Builder alertDlg = new AlertDialog.Builder(HistActivity.this); // ここはgetApplicationContext()では動かない alertDlg.setTitle("削除確認"); alertDlg.setMessage("指定した履歴を削除します。"); alertDlg.setPositiveButton( "OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { mydb.rawQuery( "Delete From alarmTalbe Where RegisterId = ?", new String[] {deleteId}) .moveToFirst(); showList.remove(position); adapter.notifyDataSetChanged(); // OK ボタンクリック処理 Toast.makeText(getApplicationContext(), "削除しました", Toast.LENGTH_LONG).show(); // ListViewからデータ削除 // adapter.remove(item); } }); alertDlg.setNegativeButton( "Cancel", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // Cancel ボタンクリック処理 Toast.makeText(getApplicationContext(), "Cancel押されました", Toast.LENGTH_LONG) .show(); } }); // 表示 alertDlg.create().show(); } }); // 戻るボタン Button btn = (Button) this.findViewById(R.id.btnBack); btn.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); }
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); response.setContentType("text/html"); HttpSession session = request.getSession(); try { RegisterBean registerBean = (RegisterBean) session.getAttribute("registerBean"); if (registerBean == null) { registerBean = new RegisterBean(); session.setAttribute("registerBean", registerBean); } FillRegisterProfileManager fillRegisterMng = FillRegisterProfileManager.getInstance(); fillRegisterMng.initFillRegisterProfileManager(registerBean); // ดึงข้อมูล register ณ ปัจจุบัน registerBean = fillRegisterMng.getRegisterNow(); System.out.println(registerBean.getRegisterNo()); String title = request.getParameter("radiotitle"); String name = request.getParameter("textname"); String education = request.getParameter("selecteducation"); String[] job = request.getParameterValues("checkboxjob"); String other = request.getParameter("textjobOther"); String telNo = request.getParameter("texttelno"); String email = request.getParameter("textemail"); String workplace = request.getParameter("textworkplace"); if (workplace == null || workplace == "") { workplace = "-"; } String addressNo = request.getParameter("textno"); String street = request.getParameter("textstreet"); if (street == null || street == "") { street = "-"; } String subDistrict = request.getParameter("textsubdistrict"); String district = request.getParameter("textdistrict"); String province = request.getParameter("textprovince"); String zipcode = request.getParameter("textzipcode"); String username = request.getParameter("textusername"); String password = request.getParameter("textpassword"); String confirmPassword = request.getParameter("textconfirmpassword"); TraineeBean traineeBean = new TraineeBean(); traineeBean.setTitle(title); traineeBean.setName(name); traineeBean.setEducation(education); traineeBean.setTelNo(telNo); traineeBean.setEmail(email); traineeBean.setTraineeStatus("ยังไม่ได้ชำระเงิน"); Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH); int date = calendar.get(Calendar.DATE); String registerDate = year + "-" + (month + 1) + "-" + date; traineeBean.setRegisterDate(registerDate); Vector<OccupationBean> occupationVector = new Vector<OccupationBean>(); OccupationBean occ1 = new OccupationBean(false, "Tester"); OccupationBean occ2 = new OccupationBean(false, "Administrator"); OccupationBean occ3 = new OccupationBean(false, "Programmer"); OccupationBean occ4 = new OccupationBean(false, "System analyst"); OccupationBean occ5 = new OccupationBean(false, "Other"); occupationVector.add(occ1); occupationVector.add(occ2); occupationVector.add(occ3); occupationVector.add(occ4); occupationVector.add(occ5); traineeBean.setOccVector(occupationVector); for (int i = 0; i < job.length; i++) { for (int j = 0; j < traineeBean.getOccVector().size(); j++) { if (traineeBean.getOccVector().get(j).getOccupationName().equals(job[i])) { traineeBean.getOccVector().get(j).setSelected(true); if (job[i].equals("Other")) { traineeBean.setOther(other); } break; } } } AddressBean addressBean = new AddressBean(workplace, addressNo, street, subDistrict, district, province, zipcode); LoginBean loginBean = new LoginBean(username, password, "user"); traineeBean.setAddress(addressBean); traineeBean.setLogin(loginBean); registerBean.getTraineeVector().add(traineeBean); boolean verifyLoginOfTrainee = fillRegisterMng.verifyLogin(traineeBean.getLogin()); if (!verifyLoginOfTrainee) { // 13 – ระบบค้นหาจำนวนผู้เข้าอบรมของการลงทะเบียนอบรมหลักสูตรนั้น // ๆจากฐานข้อมูล // 14 – ระบบคืนค่าการค้นหาจากฐานข้อมูล String traineePayment = fillRegisterMng.createFrangmentPayment(registerBean); System.out.println(traineePayment); traineeBean.setTraineePayment(traineePayment); boolean addTrainee = fillRegisterMng.addTrainee(traineeBean); if (addTrainee) { boolean addAddress = fillRegisterMng.addAddress(traineeBean); boolean addLogin = fillRegisterMng.addLogin(traineeBean); boolean isOccExist = fillRegisterMng.isOccExist(other); if (!isOccExist) { boolean addOccupation = fillRegisterMng.addOccupation(traineeBean); } boolean addTraineeOccupation = fillRegisterMng.addTraineeOccupation(traineeBean); } else { System.out.println("เกิดข้อผิดพลาด : ไม่สามารถลงทะเบียนได้"); } session.setAttribute("registerBean", registerBean); response.sendRedirect("index.jsp"); } else { System.out.println( "ขออภัย ชื่อผู้ใช้ที่ท่านกำหนดไม่สามารถใช้งานได้ เนื่องจากมีผู้ใช้งานแล้ว"); } } catch (Exception e) { System.out.println(e); } }