From b60b0e1fea14cf4bea44a496d19615351f2093d5 Mon Sep 17 00:00:00 2001 From: Haidar <16521522@mahasiswa.itb.ac.id> Date: Fri, 17 Nov 2023 14:45:51 +0700 Subject: [PATCH] feat: add readme --- README.md | 150 +++++++++++++------------------------------------- img/image.png | Bin 0 -> 26899 bytes pom.xml | 8 +++ 3 files changed, 46 insertions(+), 112 deletions(-) create mode 100644 img/image.png diff --git a/README.md b/README.md index e9ef11d..ff27729 100644 --- a/README.md +++ b/README.md @@ -1,128 +1,54 @@ # SOAP Service -## Getting started - -To make it easy for you to get started with GitLab, here's a list of recommended next steps. - -Already a pro? Just edit this README.md and make it your own. Want to make it -easy? [Use the template at the bottom](#editing-this-readme)! - -## Add your files - -- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) - or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files -- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) - or push an existing Git repository with the following command: - -``` -cd existing_repo -git remote add origin https://gitlab.informatika.org/if3110-2023-02-j/soap-service.git -git branch -M main -git push -uf origin main -``` - -## Integrate with your tools - -- [ ] [Set up project integrations](https://gitlab.informatika.org/if3110-2023-02-j/soap-service/-/settings/integrations) - -## Collaborate with your team - -- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) -- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) -- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) -- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) -- [ ] [Set auto-merge](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) - -## Test and Deploy - -Use the built-in continuous integration in GitLab. - -- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) -- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) -- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) -- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) -- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) - -*** - -# Editing this README - -When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to -structure it however you want - this is just a starting point!). Thank you -to [makeareadme.com](https://www.makeareadme.com/) for this template. - -## Suggestions for a good README - -Every project is different, so consider which of these sections apply to yours. The sections used in the template are -suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long -is better than too short. If you think your README is too long, consider utilizing another form of documentation rather -than cutting out information. - -## Name - -Choose a self-explaining name for your project. +# SOAP Service Documentation ## Description +This repository is dedicated to a SOAP-based web service designed primarily for facilitating point top-up functionality. Users can increase their points via this service. Additionally, this SOAP service incorporates a feature enabling users to purchase merchandise using their accumulated points. -Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be -unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your -project, this is a good place to list differentiating factors. - -## Badges - -On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the -project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. - -## Visuals - -Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see -GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. - -## Installation - -Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. -However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing -specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a -specific context like a particular programming language version or operating system or has dependencies that have to be -installed manually, also add a Requirements subsection. - -## Usage - -Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of -usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably -include in the README. - -## Support - -Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, -etc. - -## Roadmap +## Database + +The above scheme consists of 3 tables. The history table is used to store merch purchase history on rest. The soap log table is used to do logging if a feature on soap is used. The soap connector table is used to store several attributes related to rest, soap and php. Examples are code and points. -If you have ideas for releases in the future, it is a good idea to list them in the README. +## Endpoint +1. /topup +2. /code +3. /buyProduct +4. /checkCode +5. /getCurrency +6. /getHistory +7. /uangConverter +8. /getCode +9. /updatePoint -## Contributing +## Explanation +/topup: This endpoint facilitates the process of adding points or credits to a user's account. It typically accepts requests containing user identification and the amount of points to be added. Upon successful execution, it updates the user's points balance. -State if you are open to contributions and what your requirements are for accepting them. +/code: The endpoint handles a specific action related to generating or managing authentication or access codes. It involve functionalities like generating unique codes. -For people who want to make changes to your project, it's helpful to have some documentation on how to get started. -Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps -explicit. These instructions could also be useful to your future self. +/buyProduct: The '/buyProduct' endpoint allows users to purchase products or items offered by the service. It usually expects a request with details regarding the product ID, quantity, and possibly user authentication for completing the purchase transaction. -You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce -the likelihood that the changes inadvertently break something. Having instructions for running tests is especially -helpful if it requires external setup, such as starting a Selenium server for testing in a browser. +/checkCode: This endpoint is responsible for validating or verifying a register code. -## Authors and acknowledgment +/getCurrency: The endpoint retrieves information related to currency details, such as point and money. -Show your appreciation to those who have contributed to the project. +/getHistory: The '/getHistory' endpoint retrieves the transaction or usage history associated with a user's account. It could provide details like past purchases, points usage, or transaction logs based on user identification. -## License +/uangConverter: This endpoint handles currency conversion functionalities. It convert money to point. -For open source projects, say how it is licensed. +/getCode: The '/getCode' endpoint retrieves specific codes or access tokens based on provided criteria or identifiers. It return codes required for authentication register code. -## Project status +/updatePoint: The '/updatePoint' endpoint is responsible for modifying or updating a user's points or credit balance. It typically receives requests with details like user identification and the amount of points to be added, deducted, or adjusted. -If you have run out of energy or time for your project, put a note at the top of the README saying that development has -slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or -owner, allowing your project to keep going. You can also make an explicit request for maintainers. +### Assignment +|Feature|13521015|13521025| +|-------|--------|--------| +|topup||✔ï¸| +|code||✔ï¸| +|buyProduct||✔ï¸| +|checkCode||✔ï¸| +|getCurrency||✔ï¸| +|getHistory||✔ï¸| +|uangConverter||✔ï¸| +|getCode||✔ï¸| +|updatePoint||✔ï¸| +|testing|✔ï¸|✔ï¸| diff --git a/img/image.png b/img/image.png new file mode 100644 index 0000000000000000000000000000000000000000..3187f121e8d0330a95b71c0678faea40c2ca2c20 GIT binary patch literal 26899 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 JyQFdOe*;8~tg-+A literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index 5885804..6cb63a9 100644 --- a/pom.xml +++ b/pom.xml @@ -50,6 +50,14 @@ <version>2.18</version> </dependency> + <!-- https://mvnrepository.com/artifact/javax.mail/javax.mail-api --> + <dependency> + <groupId>com.sun.mail</groupId> + <artifactId>javax.mail</artifactId> + <version>1.6.2</version> <!-- Use the appropriate version --> + </dependency> + + </dependencies> <build> -- GitLab