رسول مدنی
رسول مدنی
خواندن ۴ دقیقه·۵ ماه پیش

تمرین جاوا – سیستم مدیریت حساب بانکی و انتقال وجه

تمرین جاوا – سیستم مدیریت حساب بانکی و انتقال وجهرین جاوا سیستم
تمرین جاوا – سیستم مدیریت حساب بانکی و انتقال وجهرین جاوا سیستم



تمرین جاوا – سیستم مدیریت حساب بانکی و انتقال وجه

برنامه ای جهت مدیریت حساب های بانکی و انجام عملیات های بانکی پیاده سازی کنید که سرویس ها و موارد خواسته شده را در اختیار کاربر قرار دهد .

در ابتدا کاربر باید ثبت نام کند .

برای ثبت نام به اطلاعا تی مانند نام کاربری ، رمز عبور نیاز دارد ، پس از ثبت نام ، کاربر جهت استفاده از سرویس های برنامه باید بر اساس نام کاربری و رمز عبور لاگین کند .

( در این برنامه جهت تغییر اطلاعات هویتی مربوط به کاربر هیچ سرویسی نوشته نشود )

ظاهر برنامه:

منوی اصلی باید شامل موارد ثبت نام ، ورود و خروج باشد ، منوی ورود باید شامل موارد عملیات کارت ، عملیات مالی و خروج باشد و هر یک از منوهای عملیات کارت و عملیات مالی در کنار موارد خواسته شده در سوال باید قابلیت برگشت به قبل را نیز داشته باشد .

بعد از لاگین ، کاربر میتواند بر اساس منوی نمایش داده شده سرویس مدنظر خود را انتخاب کند .

این منو شامل موارد زیر است :

۱ - عملیات های کارت که شامل این زیر منو ها میباشد :

ـــ ثبت کارت

ـــ حذف کارت

ـــ نمایش کارت بانکی بر اساس نام کارت

ـــ نمایش کارت های بانکی متعلق به یک بانک خاص بر أساس

نام بانک

ـــ نمایش تمامی کارت ها

ـــ نمایش تمام تراکنش ها بر اساس فیلتر خاص

( موارد فیلتر :

نوع انتقال ، تاریخ تراکنش به صورت بازه ای و روزانه ,

بر اساس مبلغ یعنی تراکنش های بزرگتر از مبلغ

وارد شده )

ـــ نمایش تمام تراکنش های کاربر

۲ - عملیات های مالی که شامل این زیر منو ها میباشد :

ـــ انتقال وجه عادی ( کارت به کارت )

ـــ انتقال وجه پایا انفرادی ( شخصی )

ـــ انتقال وجه پایا دسته ای

ـــ انتقال وجه ساتنا


کارمزد انتقال :

انتقال وجه عادی زیر 15میلیون ، انتقال وجه پایا بین 15 تا 50 میلیون و انتقال وجه ساتنا بیشتر از 50میلیون تا سقف 200میلیون میباشد

انتقال وجه عادی اگر درون شبکه ای باشد بدون کارمزد ، اگر نباشد تا سقف 10میلیون 500 تومان و در غیر این صورت به ازای هر یک میلیون مبلغ مازاد 100تومان به مبلغ 500 تومان اضافه میشود

انتقال وجه پایا انفرادی 0.01 مبلغ تراکنش با کف 240 تومان تا سقف 3000تومان

و انتقال وجه دسته ای تا 10عدد برابر با 1200 تومان و در صورت بیشتر بودن به ازای هر عدد 120 تومان اضافه میشود

و کارمزد انتقال وجه ساتنا 0.02 مبلغ کل تراکنش تا سقف 25000 تومان

نکات :

به طور کلی تشخیص موجودیت ها و روابط بین آنها و فیلد های مربوطه بر عهده شما میباشد .

بدیهی است این سوال باید حداقل دارای موجودیت های : کاربر ، حساب بانکی ، کارت اعتباری ، بانک و تراکنش باشد .

برای نوع تراکنش ها ( عملیات های مالی ) و وضعیت انجام آنها ( موفق ، ناموفق ) از enum استفاده کنید .

در صورت ناکافی بودن موجودی حساب عملیات انتقال و برداشت باید به صورت ناموفق ثبت شود .

برای حل سوال از لایه بندی service ،repository ، entity استفاده کنید .

از اینترفیس جهت تعریف متد های repositor و service استفاده کنید .

برنامه حتما باید دارای منو به عنوان رابط کاربری باشد که قابلیت برگشت به قبل را داشته باشد .

جهت استفاده از متد های سرویس از کلاس ApplicatonContext استفاده کنید و آن را بصورت Eager Singleton پیاده سازی کنید .

کوئری ها مربوط به ساخت جداول را در یک فایل sqlبصورت جداگانه نوشته و اجراکنید.

* پیشنهاد می شود بعد ورود کاربر ,شناسه و نام کاربری آن را در صورت نیاز به نحوی نگهداری کنید *.

بارم بندی سوال

۱ - ایجاد پکیج های service ، repository ،entity ، enum و استفاده از اینترفیس ۱۰ نمره .

۲ - نوشتن کوئری ساخت جداول ۵ نمره

۳- پیاده سازی ApplicationContext بر اساس خواسته سوال ۱۵ نمره

۴ – درنظر گرفتن لایه منو و پیاده سازی درست آن ۱۰ نمره

۵ - انتقال وجه عادی ۵ نمره

۶ - انتقال وجه پایا ۵ نمره

۷ - انتقال وجه ساتنا ۵ نمره

۸ - انتقال وجه پایا دسته ای ۱۰ نمره

۹ - برداشت از کارت ۳ نمره

۱۰ - واریز به کارت ۳ نمره

۱۱ - تست تراکنش ناموفق ۲ نمره

۱۲ - ثبت کارت ۲ نمره

۱۳ - تغییر اطلاعات کارت ۲ نمر

۱۴ - حذف کارت ۲ نمره

۱۵ - حذف تمامی کارت ها ۱ نمره

۱۶ - نمایش کارت ۲ نمره

۱۷ - نمایش کارت بانکی بر اساس نام کارت ۲ نمره

۱۸ - نمایش کارت های بانکی متعلق به یک بانک خاص ۲ نمره

۱۹ - نمایش تمامی کارت ها ۱ نمره

۲۰ - نمایش تراکنش ها بر اساس نوع انتقال ۲ نمره

۲۱ - نمایش تراکنش ها بر اساس یک روز خاص ۲ نمره

۲۲ - نمایش تراکنش بر اساس یک بازه ۲ نمره

۲۳ - نمایش تراکنش ها بر اساس مبلغ (بزرگتر از مبلغ وارد شده) ۲ نمره

۲۴ - نمایش تمامی تراکنش ها ۱ نمره

۲۵ - ثبت نام ۲.۵ نمره

۲۶ - لاگین ۲.۵ نمره



کدهای حل این تمرین در گیتهاب :

https://github.com/RasoulMadani/A-program-to-manage-bank-accounts



تمرین جاواجاوابرنامه نویسیتمرین برنامه نویسی
برنامه نویس جاوا
شاید از این پست‌ها خوشتان بیاید