Mirabito CS - Dogukan Atakur; Emre Demir; Mert Vural;: Difference between revisions
From CS486wiki
Jump to navigationJump to search
Content deleted Content added
No edit summary (change visibility) |
No edit summary (change visibility) |
||
| Line 1: | Line 1: | ||
== Week 1 09/18/2024 == |
|||
-------------------------------------------------------------------- |
|||
'''Attendance:''' Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL |
'''Attendance:''' Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL |
||
<br> |
<br> |
||
== Summary: == |
=== Summary: === |
||
The primary objective for our project group is to integrate AI with older POS (Point of Sale) registers and to build the foundation of the loyalty system’s API based on Conexxus specifications, using XML as the data interchange format for communication between systems. |
The primary objective for our project group is to integrate AI with older POS (Point of Sale) registers and to build the foundation of the loyalty system’s API based on Conexxus specifications, using XML as the data interchange format for communication between systems. |
||
== Accomplishments: == |
=== Accomplishments: === |
||
* Discussed the integration of AI into the old POS systems. |
* Discussed the integration of AI into the old POS systems. |
||
* Set up the development environment with .NET and Visual Studio Code through Microsoft's Extensions. |
* Set up the development environment with .NET and Visual Studio Code through Microsoft's Extensions. |
||
| Line 15: | Line 14: | ||
* Agreed on testing the system using simulated transactions in the lab. |
* Agreed on testing the system using simulated transactions in the lab. |
||
== To-Do: == |
=== To-Do: === |
||
* Review the provided Conexxus specification documents. |
* Review the provided Conexxus specification documents. |
||
== Week 2 09/23/2024 == |
|||
-------------------------------------------------------------------- |
|||
'''Attendance:''' Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL |
'''Attendance:''' Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL |
||
<br> |
<br> |
||
== Summary: == |
=== Summary: === |
||
Initially, the team began by implementing a TCP client-server console application to simulate the loyalty system. After thorough scrutiny of the provided JSON documents through Swagger, we decided to shift focus to implementing the system using a Web API. |
|||
| ⚫ | |||
* Currently, we are building the loyalty system’s API and Transaction system, moving away from the initial console app approach, and integrating key features defined in the Swagger documentation. |
|||
| ⚫ | |||
* Implemented a TransactionService with routes to start, add details, and complete transactions. |
* Implemented a TransactionService with routes to start, add details, and complete transactions. |
||
* Developed a custom JSON converter (TransactionLineConverter) to handle polymorphic deserialization for different transaction line types (ItemLine and FuelLine). |
* Developed a custom JSON converter (TransactionLineConverter) to handle polymorphic deserialization for different transaction line types (ItemLine and FuelLine). |
||
| Line 37: | Line 32: | ||
* Successfully handled ItemLine and FuelLine objects within transactions. |
* Successfully handled ItemLine and FuelLine objects within transactions. |
||
== To-Do: == |
=== To-Do: === |
||
* Implement loyalty and discount processing within the CompleteTransaction route. |
* Implement loyalty and discount processing within the CompleteTransaction route. |
||
* Extend the functionality to handle tax calculations more comprehensively |
* Extend the functionality to handle tax calculations more comprehensively (both per line and for the whole transaction). |
||
* Finalize documentation with a detailed sequence using PlantUML to illustrate the transaction process flow, including loyalty, discount, and POSJournal handling. |
* Finalize documentation with a detailed sequence using PlantUML to illustrate the transaction process flow, including loyalty, discount, and POSJournal handling. |
||
''<big><big>Week 3 10/03/2024</big></big>'' |
|||
-------------------------------------------------------------------- |
|||
== Week 3 10/08/2024 == |
|||
| ⚫ | |||
| ⚫ | |||
<br> |
<br> |
||
== Summary: == |
=== Summary: === |
||
| ⚫ | * This week, our team focused on implementing the TransactionService and loyalty system functionality. We ensured dynamic, line-level loyalty processing for each transaction detail. The handling of transaction lines (ItemLine, FuelLine, and DiscountLine) was also completed, ensuring that loyalty is correctly applied to each line. |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
* Investigated the openapi.json file to explore ways to connect hardware and software by analyzing components like POS Terminal Identification, TerminalStatus, and Register |
|||
| ⚫ | This week, our team focused on implementing the TransactionService and loyalty system functionality. We ensured dynamic, line-level loyalty processing for each transaction detail. The handling of transaction lines (ItemLine, FuelLine, and DiscountLine) was also completed, ensuring that loyalty is correctly applied to each line. |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
Created documentation from the openapi.json file provided for hardware-to-software connections. |
|||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
Implement the remaining five transaction line types: MerchandiseCodeLine, FuelPrepayLine, TransactionTax, TenderInfo, and AgeVerificationLine. |
* Implement the remaining five transaction line types: MerchandiseCodeLine, FuelPrepayLine, TransactionTax, TenderInfo, and AgeVerificationLine. |
||
Simulate a POS machine to test our implementations. |
* Simulate a POS machine to test our implementations. |
||
Revision as of 03:12, 9 October 2024
Week 1 09/18/2024
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL
Summary:
The primary objective for our project group is to integrate AI with older POS (Point of Sale) registers and to build the foundation of the loyalty system’s API based on Conexxus specifications, using XML as the data interchange format for communication between systems.
Accomplishments:
- Discussed the integration of AI into the old POS systems.
- Set up the development environment with .NET and Visual Studio Code through Microsoft's Extensions.
- Started watching Certificate Courses and gained experience in backend development technologies such as C#, .NET, and XML.
- Established that Denis will be responsible for setting up the customer database to track purchases and discounts in our development environment.
- Agreed on testing the system using simulated transactions in the lab.
To-Do:
- Review the provided Conexxus specification documents.
Week 2 09/23/2024
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL
Summary:
Initially, the team began by implementing a TCP client-server console application to simulate the loyalty system. After thorough scrutiny of the provided JSON documents through Swagger, we decided to shift focus to implementing the system using a Web API.
Accomplishments:
- Implemented a TransactionService with routes to start, add details, and complete transactions.
- Developed a custom JSON converter (TransactionLineConverter) to handle polymorphic deserialization for different transaction line types (ItemLine and FuelLine).
- Structured the system to centralize POSJournal data, aiming to incorporate discount, tax, and loyalty functionalities.
- Successfully handled ItemLine and FuelLine objects within transactions.
To-Do:
- Implement loyalty and discount processing within the CompleteTransaction route.
- Extend the functionality to handle tax calculations more comprehensively (both per line and for the whole transaction).
- Finalize documentation with a detailed sequence using PlantUML to illustrate the transaction process flow, including loyalty, discount, and POSJournal handling.
Week 3 10/08/2024
Attendance: Emre DEMIR, Dogukan ATAKUR, Mert Can VURAL
Summary:
- This week, our team focused on implementing the TransactionService and loyalty system functionality. We ensured dynamic, line-level loyalty processing for each transaction detail. The handling of transaction lines (ItemLine, FuelLine, and DiscountLine) was also completed, ensuring that loyalty is correctly applied to each line.
Accomplishments:
- Created the AssignLoyaltyToTransaction feature, allowing the system to attach loyalty info to a transaction and generate specific loyalty details for each relevant transaction line.
- Enhanced the TransactionLineController (renamed the ItemLineController) so it can now return mock data for FuelLine, ItemLine, and DiscountLine, making our API more robust and versatile.
- Investigated the openapi.json file to explore ways to connect hardware and software by analyzing components like POS Terminal Identification, TerminalStatus, and Register
- Built the CreateLineLevelLoyalty function to automatically generate line-level loyalty for each ItemLine or FuelLine and integrated it into both the AddTransactionDetail and AssignLoyaltyToTransaction processes.
- CompleteTransaction now prints a summary of each line's original amount and loyalty.
To-Do:
- Implement the remaining five transaction line types: MerchandiseCodeLine, FuelPrepayLine, TransactionTax, TenderInfo, and AgeVerificationLine.
- Simulate a POS machine to test our implementations.