ผลต่างระหว่างรุ่นของ "418342 ภาคปลาย 2552/การบ้าน 2"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 1: แถว 1:
 
ให้เมื่อวันที่ 17 กุมภาพันธ์ 2553 '''ส่งวันที่ 22 กุมภาพันธ์ 2553 เวลา 23.59 น.'''
 
ให้เมื่อวันที่ 17 กุมภาพันธ์ 2553 '''ส่งวันที่ 22 กุมภาพันธ์ 2553 เวลา 23.59 น.'''
  
ในการบ้านนี้นิสิตจะสร้างระบบบัญชีส่วนตัว เพื่อให้นิสิตสามารถบันทึกรายรับและรายจ่ายประจำวัน รวมถึงสามารถตรวจสอบรายงานสรุปค่าใช้จ่ายของตนเองได้
+
ในการบ้านนี้นิสิตจะสร้างระบบบัญชีส่วนตัว เพื่อให้นิสิตสามารถบันทึกรายรับรายจ่ายประจำวัน รวมถึงออกรายงานสรุปรายรับรายจ่ายของตนเองได้
  
 
== ข้อกำหนดเบื้องต้นเกี่ยวกับระบบบัญชีส่วนตัว ==
 
== ข้อกำหนดเบื้องต้นเกี่ยวกับระบบบัญชีส่วนตัว ==
แถว 12: แถว 12:
 
== รายละเอียดเกี่ยวกับระบบบัญชีส่วนตัว ==
 
== รายละเอียดเกี่ยวกับระบบบัญชีส่วนตัว ==
 
* หน้าหลักของแอพพลิเคชันจะแสดงรายการรายรับและรายจ่าย โดยให้ลำดับของรายการที่เข้ามาใหม่อยู่เหนือรายการที่ถูกบันทึกมาก่อน นอกจากนี้ให้แสดงรายการไม่เกิน 20 รายการต่อหน้า มิฉะนั้นให้แสดงรายการที่เหลือในหน้าถัดๆ ไป
 
* หน้าหลักของแอพพลิเคชันจะแสดงรายการรายรับและรายจ่าย โดยให้ลำดับของรายการที่เข้ามาใหม่อยู่เหนือรายการที่ถูกบันทึกมาก่อน นอกจากนี้ให้แสดงรายการไม่เกิน 20 รายการต่อหน้า มิฉะนั้นให้แสดงรายการที่เหลือในหน้าถัดๆ ไป
 +
* หน้าหลักและหน้าเพจอื่นในแอพพลิเคชันต้องมีเมนูที่ลิงค์ไปยังหน้าเพจอื่นที่สัมพันธ์กันอย่างเหมาะสม
 
* ประเุภทของรายการที่ปรากฏในระบบบัญชีนี้มี 2 ชนิดคือ
 
* ประเุภทของรายการที่ปรากฏในระบบบัญชีนี้มี 2 ชนิดคือ
*# รายการรายรับ เป็นรายการที่ทำให้บัญชีค่าใช้จ่ายมียอดสูงขึ้น อาทิเช่น ค่าเบี้ยเลี้ยง เงินเปิดบัญชี เป็นต้น
+
*# รายการรายรับ เป็นรายการที่ทำให้บัญชีรายรับรายจ่ายมียอดสูงขึ้น อาทิเช่น ค่าเบี้ยเลี้ยง เงินเปิดบัญชี เป็นต้น
*# รายการรายจ่าย เป็นรายการที่ทำให้บัญชีค่าใช้จ่ายมียอดลดลง อาทิเช่น ค่าอาหาร ค่าเดินทาง เป็นต้น
+
*# รายการรายจ่าย เป็นรายการที่ทำให้บัญชีรายรับรายจ่ายมียอดลดลง อาทิเช่น ค่าอาหาร ค่าเดินทาง เป็นต้น
 
* ประเุภทของรายการในแอพพลิเคชันต้องถูกเก็บอยู่ในตาราง ซึ่งแยกออกมาจากตารางที่ใช้เก็บรายการรายรับและรายจ่าย และข้อมูลในตารางประเภทรายการสามารถถูกเพิ่ม ลบ และแก้ไข ผ่านหน้าเพจแอพพลิเคชันได้
 
* ประเุภทของรายการในแอพพลิเคชันต้องถูกเก็บอยู่ในตาราง ซึ่งแยกออกมาจากตารางที่ใช้เก็บรายการรายรับและรายจ่าย และข้อมูลในตารางประเภทรายการสามารถถูกเพิ่ม ลบ และแก้ไข ผ่านหน้าเพจแอพพลิเคชันได้
* รายการรายรับและรายจ่ายสามารถถูกเพิ่ม ลบ และแก้ไข ใน'''''ตารางรายการ''''' ผ่านหน้าเพจของแอพพลิเคชันได้ โดยประเภทของรายการต้องถูกนำมาแสดงจาก'''''ตารางประเภทรายการ'''''
+
* รายการรายรับและรายจ่ายสามารถถูกเพิ่ม ลบ และแก้ไข ใน'''''ตารางรายการ''''' ผ่านหน้าเพจของแอพพลิเคชัน โดยประเภทของรายการต้องถูกนำมาแสดงจาก'''''ตารางประเภทรายการ'''''
* แอพพลิเคชันมีหน้าเพจแสดงรายงานรายรับรายจ่ายใน 2 ลักษณะ
+
* แอพพลิเคชันมีหน้าเพจแสดงรายงานรายรับรายจ่าย 2 ชนิดคือ
 
*# รายงานรายรับรายจ่ายประจำวัน โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำวันนี้  
 
*# รายงานรายรับรายจ่ายประจำวัน โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำวันนี้  
*#* รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละวันในช่วงเวลาที่ผู้ใช้กำหนด โดยให้เรียงลำดับจากรายการที่เกิดขึ้นก่อนอยู่เหนือรายการที่เกิดตามมา
+
*#* รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละวันในช่วงเวลาที่ผู้ใช้กำหนด โดยให้เรียงลำดับจากรายการที่เกิดขึ้นก่อนเหนือรายการที่เกิดตามมา
*#* เมื่อสิ้นสุดของแต่ละวัน รายงานต้องแสดงยอดเงินสุทธิของรายรับและรายจ่ายที่เกิดขึ้นในวันนั้น
+
*#* เมื่อสิ้นสุดของแต่ละวัน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในวันนั้น
*#* เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายรับและรายจ่ายที่เกิดขึ้นในช่วงวันที่ผู้ใช้ได้กำหนดมาให้
+
*#* เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในช่วงวันที่ผู้ใช้ได้กำหนดมา
 
*# รายงานรายรับรายจ่ายประจำเดือนแยกประเภท โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำเดือนนี้  
 
*# รายงานรายรับรายจ่ายประจำเดือนแยกประเภท โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำเดือนนี้  
 
*#* รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละเดือนในช่วงเวลาที่ผู้ใช้กำหนด โดยให้แยกประเภทของรายการและแสดงยอดเงินรวมของรายการประเภทนั้น
 
*#* รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละเดือนในช่วงเวลาที่ผู้ใช้กำหนด โดยให้แยกประเภทของรายการและแสดงยอดเงินรวมของรายการประเภทนั้น
 
*#* เมื่อสิ้นสุดของแต่ละเดือน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในเดือนนั้น
 
*#* เมื่อสิ้นสุดของแต่ละเดือน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในเดือนนั้น
*#* เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในช่วงเวลาที่ผู้ใช้ได้กำหนดมาให้
+
*#* เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในช่วงเวลาที่ผู้ใช้ได้กำหนดมา
  
 
'''หลังจากทำการพัฒนาเสร็จแล้ว ให้ rollback migration ทั้งหมด (ให้ database ว่าง) แล้ว zip ไดเรคทอรีที่ rails สร้างทั้งหมดส่งมาที่อีเมล์ของ อ.ประมุข (pramook at gmail dot com) และ อ.ชาคริต (fscickw at ku dot ac dot th)'''
 
'''หลังจากทำการพัฒนาเสร็จแล้ว ให้ rollback migration ทั้งหมด (ให้ database ว่าง) แล้ว zip ไดเรคทอรีที่ rails สร้างทั้งหมดส่งมาที่อีเมล์ของ อ.ประมุข (pramook at gmail dot com) และ อ.ชาคริต (fscickw at ku dot ac dot th)'''

รุ่นแก้ไขเมื่อ 18:15, 14 กุมภาพันธ์ 2553

ให้เมื่อวันที่ 17 กุมภาพันธ์ 2553 ส่งวันที่ 22 กุมภาพันธ์ 2553 เวลา 23.59 น.

ในการบ้านนี้นิสิตจะสร้างระบบบัญชีส่วนตัว เพื่อให้นิสิตสามารถบันทึกรายรับรายจ่ายประจำวัน รวมถึงออกรายงานสรุปรายรับรายจ่ายของตนเองได้

ข้อกำหนดเบื้องต้นเกี่ยวกับระบบบัญชีส่วนตัว

  • สร้างแอพพลิเคชันขึ้นมาด้วย Rails และสามารถใช้ปลั๊กอินในการสร้างแอพพลิเคชันนี้ได้
  • ระบบจำเป็นต้องมีฐานข้อมูลที่ใช้ในการจัดเก็บข้อมูล โดยให้ใช้ sqlite เป็นระบบฐานข้อมูล
  • ตารางในฐานข้อมูลควรถูกออกแบบตามความเหมาะสมเพื่อใช้บันทึกข้อมูลรายรับรายจ่ายประจำวันได้
  • แอพพลิเคชันต้องถูกออกแบบโดยให้เป็นไปตามหลักการของ Rest
  • สำหรับการบ้านนี้ แอพพลิเคชันไม่จำเป็นต้องมีระบบ authentication เพราะแอพพลิเคชันนี้เป็นระบบบัญชีส่วนตัวของผู้ใช้เพียงคนเดียว

รายละเอียดเกี่ยวกับระบบบัญชีส่วนตัว

  • หน้าหลักของแอพพลิเคชันจะแสดงรายการรายรับและรายจ่าย โดยให้ลำดับของรายการที่เข้ามาใหม่อยู่เหนือรายการที่ถูกบันทึกมาก่อน นอกจากนี้ให้แสดงรายการไม่เกิน 20 รายการต่อหน้า มิฉะนั้นให้แสดงรายการที่เหลือในหน้าถัดๆ ไป
  • หน้าหลักและหน้าเพจอื่นในแอพพลิเคชันต้องมีเมนูที่ลิงค์ไปยังหน้าเพจอื่นที่สัมพันธ์กันอย่างเหมาะสม
  • ประเุภทของรายการที่ปรากฏในระบบบัญชีนี้มี 2 ชนิดคือ
    1. รายการรายรับ เป็นรายการที่ทำให้บัญชีรายรับรายจ่ายมียอดสูงขึ้น อาทิเช่น ค่าเบี้ยเลี้ยง เงินเปิดบัญชี เป็นต้น
    2. รายการรายจ่าย เป็นรายการที่ทำให้บัญชีรายรับรายจ่ายมียอดลดลง อาทิเช่น ค่าอาหาร ค่าเดินทาง เป็นต้น
  • ประเุภทของรายการในแอพพลิเคชันต้องถูกเก็บอยู่ในตาราง ซึ่งแยกออกมาจากตารางที่ใช้เก็บรายการรายรับและรายจ่าย และข้อมูลในตารางประเภทรายการสามารถถูกเพิ่ม ลบ และแก้ไข ผ่านหน้าเพจแอพพลิเคชันได้
  • รายการรายรับและรายจ่ายสามารถถูกเพิ่ม ลบ และแก้ไข ในตารางรายการ ผ่านหน้าเพจของแอพพลิเคชัน โดยประเภทของรายการต้องถูกนำมาแสดงจากตารางประเภทรายการ
  • แอพพลิเคชันมีหน้าเพจแสดงรายงานรายรับรายจ่าย 2 ชนิดคือ
    1. รายงานรายรับรายจ่ายประจำวัน โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำวันนี้
      • รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละวันในช่วงเวลาที่ผู้ใช้กำหนด โดยให้เรียงลำดับจากรายการที่เกิดขึ้นก่อนเหนือรายการที่เกิดตามมา
      • เมื่อสิ้นสุดของแต่ละวัน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในวันนั้น
      • เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในช่วงวันที่ผู้ใช้ได้กำหนดมา
    2. รายงานรายรับรายจ่ายประจำเดือนแยกประเภท โดยผู้ใช้จะป้อนวันที่เริ่มต้นและวันที่สิ้นสุดในการแสดงรายงานประจำเดือนนี้
      • รายงานนี้จะแสดงรายการที่เกิดขึ้นของแต่ละเดือนในช่วงเวลาที่ผู้ใช้กำหนด โดยให้แยกประเภทของรายการและแสดงยอดเงินรวมของรายการประเภทนั้น
      • เมื่อสิ้นสุดของแต่ละเดือน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในเดือนนั้น
      • เมื่อสิ้นสุดรายงาน รายงานต้องแสดงยอดเงินสุทธิของรายการที่เกิดขึ้นในช่วงเวลาที่ผู้ใช้ได้กำหนดมา

หลังจากทำการพัฒนาเสร็จแล้ว ให้ rollback migration ทั้งหมด (ให้ database ว่าง) แล้ว zip ไดเรคทอรีที่ rails สร้างทั้งหมดส่งมาที่อีเมล์ของ อ.ประมุข (pramook at gmail dot com) และ อ.ชาคริต (fscickw at ku dot ac dot th)