create-myexam-app 1.0.21 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/index.js +25 -17
  2. package/package.json +1 -1
  3. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/README.md +84 -0
  4. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/.env +3 -0
  5. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/config/db.js +13 -0
  6. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/authController.js +115 -0
  7. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/employeeController.js +97 -0
  8. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/payrollController.js +113 -0
  9. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/reportController.js +35 -0
  10. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/middleware/authMiddleware.js +9 -0
  11. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Employee.js +52 -0
  12. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Payroll.js +50 -0
  13. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/User.js +19 -0
  14. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package-lock.json +1509 -0
  15. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package.json +19 -0
  16. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/authRoutes.js +18 -0
  17. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/employeeRoutes.js +19 -0
  18. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/payrollRoutes.js +19 -0
  19. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/reportRoutes.js +9 -0
  20. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/server.js +71 -0
  21. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/index.html +12 -0
  22. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package-lock.json +2888 -0
  23. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package.json +23 -0
  24. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/postcss.config.js +6 -0
  25. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/App.jsx +57 -0
  26. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/apiClient.js +16 -0
  27. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/authApi.js +26 -0
  28. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/employeeApi.js +26 -0
  29. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/payrollApi.js +26 -0
  30. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/reportApi.js +6 -0
  31. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Header.jsx +17 -0
  32. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Layout.jsx +17 -0
  33. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Message.jsx +15 -0
  34. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/ProtectedRoute.jsx +41 -0
  35. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Sidebar.jsx +38 -0
  36. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/index.css +30 -0
  37. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/main.jsx +13 -0
  38. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/DashboardPage.jsx +64 -0
  39. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/EmployeePage.jsx +166 -0
  40. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/LoginPage.jsx +73 -0
  41. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/PayrollPage.jsx +198 -0
  42. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/RecoverPasswordPage.jsx +69 -0
  43. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/RegisterPage.jsx +69 -0
  44. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/ReportsPage.jsx +113 -0
  45. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/tailwind.config.js +13 -0
  46. package/projects/EPMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/vite.config.js +9 -0
  47. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/README.md +106 -0
  48. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/01_Introduction.md +8 -0
  49. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/02_Problem_Statement.md +12 -0
  50. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/03_Objectives.md +17 -0
  51. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/04_Technologies_Used.md +23 -0
  52. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/05_ERD.md +60 -0
  53. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/06_Database_Design.md +71 -0
  54. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/07_System_Architecture.md +28 -0
  55. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/08_API_Documentation.md +43 -0
  56. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/09_Testing.md +43 -0
  57. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/10_Challenges.md +12 -0
  58. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/REPORT/11_Conclusion.md +8 -0
  59. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/.env.example +4 -0
  60. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/config/db.js +16 -0
  61. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/deliveryController.js +145 -0
  62. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/shipmentController.js +149 -0
  63. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/supplierController.js +56 -0
  64. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/userController.js +158 -0
  65. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/middleware/authMiddleware.js +9 -0
  66. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Delivery.js +34 -0
  67. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Shipment.js +34 -0
  68. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Supplier.js +38 -0
  69. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/User.js +21 -0
  70. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package-lock.json +1540 -0
  71. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package.json +22 -0
  72. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/deliveryRoutes.js +11 -0
  73. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/shipmentRoutes.js +11 -0
  74. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/supplierRoutes.js +9 -0
  75. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/userRoutes.js +11 -0
  76. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/server.js +70 -0
  77. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/.env.example +2 -0
  78. package/projects/{SCMS/frontend → SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project}/index.html +2 -2
  79. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package-lock.json +2944 -0
  80. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package.json +23 -0
  81. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/postcss.config.js +6 -0
  82. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/App.jsx +72 -0
  83. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/apiClient.js +14 -0
  84. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/deliveryApi.js +17 -0
  85. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/shipmentApi.js +17 -0
  86. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/supplierApi.js +9 -0
  87. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/userApi.js +21 -0
  88. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Layout.jsx +16 -0
  89. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Message.jsx +15 -0
  90. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/PageHeader.jsx +12 -0
  91. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Sidebar.jsx +40 -0
  92. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/main.jsx +13 -0
  93. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Dashboard.jsx +62 -0
  94. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Delivery.jsx +212 -0
  95. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Login.jsx +158 -0
  96. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Logout.jsx +24 -0
  97. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Reports.jsx +221 -0
  98. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Shipment.jsx +212 -0
  99. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/Supplier.jsx +118 -0
  100. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/styles.css +27 -0
  101. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/tailwind.config.js +8 -0
  102. package/projects/SCMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/vite.config.js +6 -0
  103. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/README.md +84 -0
  104. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/.env +3 -0
  105. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/config/db.js +13 -0
  106. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/productController.js +29 -0
  107. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/reportController.js +52 -0
  108. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/stockTransactionController.js +128 -0
  109. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/userController.js +115 -0
  110. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/controllers/warehouseController.js +29 -0
  111. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/middleware/authMiddleware.js +9 -0
  112. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Product.js +44 -0
  113. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/StockTransaction.js +33 -0
  114. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/User.js +19 -0
  115. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/models/Warehouse.js +25 -0
  116. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package-lock.json +1509 -0
  117. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/package.json +19 -0
  118. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/productRoutes.js +10 -0
  119. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/reportRoutes.js +9 -0
  120. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/stockTransactionRoutes.js +17 -0
  121. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/userRoutes.js +18 -0
  122. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/routes/warehouseRoutes.js +10 -0
  123. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/backend-project/server.js +73 -0
  124. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/index.html +12 -0
  125. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package-lock.json +2888 -0
  126. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/package.json +23 -0
  127. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/postcss.config.js +6 -0
  128. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/App.jsx +66 -0
  129. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/apiClient.js +16 -0
  130. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/productApi.js +11 -0
  131. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/reportApi.js +6 -0
  132. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/transactionApi.js +21 -0
  133. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/userApi.js +26 -0
  134. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/api/warehouseApi.js +11 -0
  135. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Header.jsx +17 -0
  136. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Layout.jsx +17 -0
  137. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Message.jsx +15 -0
  138. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/ProtectedRoute.jsx +41 -0
  139. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/components/Sidebar.jsx +39 -0
  140. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/index.css +30 -0
  141. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/main.jsx +13 -0
  142. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/DashboardPage.jsx +64 -0
  143. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/LoginPage.jsx +73 -0
  144. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/ProductPage.jsx +107 -0
  145. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/RecoverPasswordPage.jsx +69 -0
  146. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/RegisterPage.jsx +69 -0
  147. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/ReportsPage.jsx +152 -0
  148. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/TransactionPage.jsx +195 -0
  149. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/src/pages/WarehousePage.jsx +93 -0
  150. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/tailwind.config.js +13 -0
  151. package/projects/SHMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026/frontend-project/vite.config.js +9 -0
  152. package/projects/SMS-/frontend-project/src/pages/Reports.jsx +179 -23
  153. package/projects/SRMS/frontend/src/pages/Reports.jsx +170 -58
  154. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/README.md +49 -0
  155. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/.env +3 -0
  156. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/middleware/authMiddleware.js +19 -0
  157. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/models/Customer.js +11 -0
  158. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/models/Product.js +10 -0
  159. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/models/Sale.js +19 -0
  160. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/models/User.js +8 -0
  161. package/projects/{SCMS/backend → SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project}/package-lock.json +1609 -2190
  162. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/package.json +20 -0
  163. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/routes/authRoutes.js +75 -0
  164. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/routes/customerRoutes.js +42 -0
  165. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/routes/productRoutes.js +41 -0
  166. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/routes/reportRoutes.js +129 -0
  167. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/routes/saleRoutes.js +107 -0
  168. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/backend-project/server.js +49 -0
  169. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/dist/assets/index-DZxY56Bj.js +75 -0
  170. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/dist/assets/index-J8MKb3Fq.css +1 -0
  171. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/dist/index.html +13 -0
  172. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/index.html +12 -0
  173. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/package-lock.json +2029 -0
  174. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/package.json +21 -0
  175. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/App.jsx +77 -0
  176. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/index.css +333 -0
  177. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/main.jsx +10 -0
  178. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Customers.jsx +85 -0
  179. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Dashboard.jsx +75 -0
  180. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Login.jsx +65 -0
  181. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Products.jsx +91 -0
  182. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Register.jsx +82 -0
  183. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Reports.jsx +138 -0
  184. package/projects/SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project/src/pages/Sales.jsx +154 -0
  185. package/projects/{SCMS/frontend → SRMS(Ely)/KALIWABO_SHEMA_ELYSEE_National_Practical_Examination_2026(/frontend-project}/vite.config.js +5 -3
  186. package/projects/SCMS/backend/.env +0 -5
  187. package/projects/SCMS/backend/config/db.js +0 -12
  188. package/projects/SCMS/backend/controllers/authController.js +0 -90
  189. package/projects/SCMS/backend/controllers/deliveryController.js +0 -79
  190. package/projects/SCMS/backend/controllers/productController.js +0 -74
  191. package/projects/SCMS/backend/controllers/reportsController.js +0 -77
  192. package/projects/SCMS/backend/controllers/shipmentController.js +0 -80
  193. package/projects/SCMS/backend/controllers/supplierController.js +0 -58
  194. package/projects/SCMS/backend/middleware/auth.js +0 -32
  195. package/projects/SCMS/backend/models/User.js +0 -28
  196. package/projects/SCMS/backend/models/delivery.js +0 -33
  197. package/projects/SCMS/backend/models/product.js +0 -43
  198. package/projects/SCMS/backend/models/shipment.js +0 -34
  199. package/projects/SCMS/backend/models/supplier.js +0 -36
  200. package/projects/SCMS/backend/package.json +0 -23
  201. package/projects/SCMS/backend/routes/SupplierRoutes.js +0 -15
  202. package/projects/SCMS/backend/routes/authRoutes.js +0 -11
  203. package/projects/SCMS/backend/routes/deliveryRoutes.js +0 -18
  204. package/projects/SCMS/backend/routes/productRoutes.js +0 -15
  205. package/projects/SCMS/backend/routes/protectedRoutes.js +0 -10
  206. package/projects/SCMS/backend/routes/reportsRoutes.js +0 -8
  207. package/projects/SCMS/backend/routes/shipmentRoutes.js +0 -18
  208. package/projects/SCMS/backend/server.js +0 -35
  209. package/projects/SCMS/frontend/README.md +0 -16
  210. package/projects/SCMS/frontend/eslint.config.js +0 -21
  211. package/projects/SCMS/frontend/package-lock.json +0 -3053
  212. package/projects/SCMS/frontend/package.json +0 -31
  213. package/projects/SCMS/frontend/public/favicon.svg +0 -1
  214. package/projects/SCMS/frontend/src/App.jsx +0 -35
  215. package/projects/SCMS/frontend/src/components/DashboardLayout.jsx +0 -103
  216. package/projects/SCMS/frontend/src/components/ProtectedRoute.jsx +0 -30
  217. package/projects/SCMS/frontend/src/index.css +0 -114
  218. package/projects/SCMS/frontend/src/main.jsx +0 -10
  219. package/projects/SCMS/frontend/src/pages/DashboardHome.jsx +0 -34
  220. package/projects/SCMS/frontend/src/pages/Delivery.jsx +0 -183
  221. package/projects/SCMS/frontend/src/pages/Login.jsx +0 -81
  222. package/projects/SCMS/frontend/src/pages/Profile.jsx +0 -62
  223. package/projects/SCMS/frontend/src/pages/Register.jsx +0 -110
  224. package/projects/SCMS/frontend/src/pages/Reports.jsx +0 -94
  225. package/projects/SCMS/frontend/src/pages/Shipment.jsx +0 -182
  226. package/projects/SCMS/frontend/src/pages/Supplier.jsx +0 -165
@@ -1,74 +0,0 @@
1
- const Product = require('../models/Product');
2
-
3
-
4
- exports.getproduct = async (req, res) => {
5
- try {
6
- const products = await Product.find().populate('Supplier');
7
- if (!products) {
8
- return res.status(404).json({ message: 'Products not found' });
9
- }
10
- res.json(products);
11
- } catch (err) {
12
- res.status(500).json({ message: err.message });
13
- }
14
- }
15
-
16
- exports.getproductbyid = async (req, res) => {
17
- try {
18
- const productById = await Product.findById(req.params.id).populate('Supplier');
19
- if (!productById) {
20
- return res.status(404).json({ message: 'Product not found' });
21
- }
22
- res.json(productById);
23
- } catch (err) {
24
- res.status(500).json({ message: err.message });
25
- }
26
- };
27
-
28
- exports.addproduct = async (req, res) => {
29
- try {
30
- const { productCode, productName, category, unitPrice, quantity, expiryDate } = req.body
31
- const newproduct = await Product.create({
32
- productCode,
33
- productName,
34
- category,
35
- unitPrice,
36
- quantity,
37
- expiryDate,
38
- Supplier: req.user._id
39
- });
40
-
41
- res.status(201).json(newproduct);
42
- } catch (err) {
43
- res.status(500).json({ message: err.message });
44
- }
45
- }
46
-
47
- exports.updateproduct = async (req, res) => {
48
- try {
49
- const updateproducts = await Product.findByIdAndUpdate(
50
- req.params.id,
51
- req.body,
52
- { new: true }
53
- );
54
- if (!updateproducts) return res.status(404).json({ msg: " product not found" })
55
-
56
- res.json({ msg: "Products updated Syccessfully", data: updateproducts });
57
- } catch (err) {
58
- res.status(500).json({ message: err.message });
59
- }
60
- }
61
-
62
- exports.deleteproduct = async (req, res) => {
63
- try {
64
- const deleteproduct = await Product.findByIdAndDelete(
65
- req.params.id
66
- );
67
- if (!deleteproduct) {
68
- return res.status(404).json({ message: 'product not found' });
69
- }
70
- res.json({ message: 'Product deleted successfully' });
71
- } catch (err) {
72
- res.status(500).json({ message: err.message });
73
- }
74
- }
@@ -1,77 +0,0 @@
1
- const Supplier = require('../models/Supplier');
2
- const Shipment = require('../models/shipment');
3
- const Delivery = require('../models/delivery');
4
-
5
- function getStartDate(days) {
6
- const date = new Date();
7
- date.setHours(0, 0, 0, 0);
8
- date.setDate(date.getDate() - days);
9
- return date;
10
- }
11
-
12
- exports.getReportSummary = async (req, res) => {
13
- try {
14
- const now = new Date();
15
- const dailyStart = getStartDate(1);
16
- const weeklyStart = getStartDate(7);
17
- const monthlyStart = getStartDate(30);
18
-
19
- const [
20
- totalSuppliers,
21
- dailySuppliers,
22
- weeklySuppliers,
23
- monthlySuppliers,
24
- totalShipments,
25
- dailyShipments,
26
- weeklyShipments,
27
- monthlyShipments,
28
- totalDeliveries,
29
- dailyDeliveries,
30
- weeklyDeliveries,
31
- monthlyDeliveries,
32
- recentShipments,
33
- recentDeliveries,
34
- ] = await Promise.all([
35
- Supplier.countDocuments(),
36
- Supplier.countDocuments({ createdAt: { $gte: dailyStart } }),
37
- Supplier.countDocuments({ createdAt: { $gte: weeklyStart } }),
38
- Supplier.countDocuments({ createdAt: { $gte: monthlyStart } }),
39
- Shipment.countDocuments(),
40
- Shipment.countDocuments({ createdAt: { $gte: dailyStart } }),
41
- Shipment.countDocuments({ createdAt: { $gte: weeklyStart } }),
42
- Shipment.countDocuments({ createdAt: { $gte: monthlyStart } }),
43
- Delivery.countDocuments(),
44
- Delivery.countDocuments({ createdAt: { $gte: dailyStart } }),
45
- Delivery.countDocuments({ createdAt: { $gte: weeklyStart } }),
46
- Delivery.countDocuments({ createdAt: { $gte: monthlyStart } }),
47
- Shipment.find().sort({ createdAt: -1 }).limit(5).populate('supplier'),
48
- Delivery.find().sort({ createdAt: -1 }).limit(5).populate({ path: 'shipment', populate: 'supplier' }),
49
- ]);
50
-
51
- res.status(200).json({
52
- suppliers: {
53
- total: totalSuppliers,
54
- daily: dailySuppliers,
55
- weekly: weeklySuppliers,
56
- monthly: monthlySuppliers,
57
- },
58
- shipments: {
59
- total: totalShipments,
60
- daily: dailyShipments,
61
- weekly: weeklyShipments,
62
- monthly: monthlyShipments,
63
- },
64
- deliveries: {
65
- total: totalDeliveries,
66
- daily: dailyDeliveries,
67
- weekly: weeklyDeliveries,
68
- monthly: monthlyDeliveries,
69
- },
70
- recentShipments,
71
- recentDeliveries,
72
- generatedAt: now,
73
- });
74
- } catch (error) {
75
- res.status(500).json({ msg: 'Failed to generate report', error: error.message });
76
- }
77
- };
@@ -1,80 +0,0 @@
1
- const Shipment = require('../models/shipment');
2
- const Supplier = require('../models/Supplier');
3
-
4
- exports.addShipment = async (req, res) => {
5
- try {
6
- const { shipmentNumber, shipmentDate, shipmentStatus, destination, supplierId } = req.body;
7
-
8
- if (supplierId) {
9
- const supplier = await Supplier.findById(supplierId);
10
- if (!supplier) return res.status(404).json({ msg: 'Supplier not found' });
11
- }
12
-
13
- const newShipment = await Shipment.create({
14
- shipmentNumber,
15
- shipmentDate,
16
- shipmentStatus,
17
- destination,
18
- supplier: supplierId || null,
19
- });
20
-
21
- res.status(201).json(newShipment);
22
- } catch (error) {
23
- res.status(500).json({ msg: 'Failed to add shipment', error: error.message });
24
- }
25
- };
26
-
27
- exports.getShipments = async (req, res) => {
28
- try {
29
- const shipments = await Shipment.find().populate('supplier');
30
- res.status(200).json(shipments);
31
- } catch (error) {
32
- res.status(500).json({ msg: 'Failed to fetch shipments', error: error.message });
33
- }
34
- };
35
-
36
- exports.getShipmentById = async (req, res) => {
37
- try {
38
- const shipment = await Shipment.findById(req.params.id).populate('supplier');
39
- if (!shipment) return res.status(404).json({ msg: 'Shipment not found' });
40
- res.status(200).json(shipment);
41
- } catch (error) {
42
- res.status(500).json({ msg: 'Failed to fetch shipment', error: error.message });
43
- }
44
- };
45
-
46
- exports.updateShipment = async (req, res) => {
47
- try {
48
- const { supplierId } = req.body;
49
-
50
- if (supplierId) {
51
- const supplier = await Supplier.findById(supplierId);
52
- if (!supplier) return res.status(404).json({ msg: 'Supplier not found' });
53
- }
54
-
55
- const updatedShipment = await Shipment.findByIdAndUpdate(
56
- req.params.id,
57
- {
58
- ...req.body,
59
- supplier: supplierId || null,
60
- },
61
- { new: true }
62
- );
63
-
64
- if (!updatedShipment) return res.status(404).json({ msg: 'Shipment not found' });
65
-
66
- res.status(200).json(updatedShipment);
67
- } catch (error) {
68
- res.status(500).json({ msg: 'Failed to update shipment', error: error.message });
69
- }
70
- };
71
-
72
- exports.deleteShipment = async (req, res) => {
73
- try {
74
- const deletedShipment = await Shipment.findByIdAndDelete(req.params.id);
75
- if (!deletedShipment) return res.status(404).json({ msg: 'Shipment not found' });
76
- res.status(200).json({ msg: 'Shipment deleted successfully' });
77
- } catch (error) {
78
- res.status(500).json({ msg: 'Failed to delete shipment', error: error.message });
79
- }
80
- };
@@ -1,58 +0,0 @@
1
- const supplier = require('../models/Supplier');
2
-
3
- exports.addsupplier = async (req, res) => {
4
- try {
5
- const newsupplier = new supplier(req.body);
6
- await newsupplier.save();
7
- res.status(200).json({ msg: 'Supplier added successful' });
8
- } catch (error) {
9
- res.status(500).json({ msg: 'Failed to add supplier', error: error.message });
10
- }
11
- };
12
-
13
- exports.getsupplierbyid = async (req, res) => {
14
- try {
15
- const singlesupplier = await supplier.findById(req.params.id);
16
-
17
- if (!singlesupplier) return res.status(404).json({ msg: 'Supplier not found' });
18
-
19
- res.status(200).json(singlesupplier);
20
- } catch (error) {
21
- res.status(500).json({ msg: 'failed to fetch', error: error.message });
22
- }
23
- };
24
-
25
- exports.getsupplier = async (req, res) => {
26
- try {
27
- const getsupplier = await supplier.find();
28
- res.status(200).json(getsupplier);
29
- } catch (error) {
30
- res.status(500).json({ error: error.message });
31
- }
32
- };
33
-
34
- exports.updatesupplier = async (req, res) => {
35
- try {
36
- const updatesupplier = await supplier.findByIdAndUpdate(req.params.id, req.body, {
37
- new: true,
38
- });
39
-
40
- if (!updatesupplier) return res.status(404).json({ msg: 'Supplier not found' });
41
-
42
- res.status(200).json({ msg: 'updated successfully' });
43
- } catch (error) {
44
- res.status(500).json({ msg: 'Failed to update', error: error.message });
45
- }
46
- };
47
-
48
- exports.deletesupplier = async (req, res) => {
49
- try {
50
- const deletesupplier = await supplier.findByIdAndDelete(req.params.id);
51
-
52
- if (!deletesupplier) return res.status(404).json({ msg: 'Supplier not found' });
53
-
54
- res.status(200).json({ msg: 'Deleted successfully' });
55
- } catch (error) {
56
- res.status(500).json({ msg: 'Failed to delete', error: error.message });
57
- }
58
- };
@@ -1,32 +0,0 @@
1
- // this middleware is helping us to protect our routes so that only authenticated users can access the routes
2
- //it is checking if the user is authenticated by checking the token in the header(the header is the part of the request that contains the token)
3
- //if the user is not authenticated, it will return a 401 status code and a message that the user is not authorized
4
- //if the user is authenticated, it will return the user object
5
- //and the user object is the user that is authenticated
6
-
7
- const jwt = require('jsonwebtoken');
8
- const User = require('../models/User');
9
- const JWT_SECRET = 'change_this_to_a_long_random_secret';
10
-
11
- exports.protect = async (req, res, next) => {
12
- try {
13
- const header = req.headers.authorization;
14
-
15
- if (!header || !header.startsWith('Bearer ')) {
16
- return res.status(401).json({ message: 'Not authorized' });
17
- }
18
-
19
- const token = header.split(' ')[1];
20
- const decoded = jwt.verify(token, JWT_SECRET);
21
- const user = await User.findById(decoded.userId).select('-password');
22
-
23
- if (!user) {
24
- return res.status(401).json({ message: 'Not authorized' });
25
- }
26
-
27
- req.user = user;
28
- next();
29
- } catch (err) {
30
- return res.status(401).json({ message: 'Not authorized' });
31
- }
32
- };
@@ -1,28 +0,0 @@
1
- const mongoose = require('mongoose');
2
-
3
- const userSchema = new mongoose.Schema(
4
- {
5
- name: {
6
- type: String,
7
- required: true,
8
- trim: true,
9
- },
10
- email: {
11
- type: String,
12
- required: true,
13
- unique: true,
14
- lowercase: true,
15
- trim: true,
16
- },
17
- password: {
18
- type: String,
19
- required: true,
20
- minlength: 6,
21
- },
22
- },
23
- { timestamps: true }
24
- );
25
-
26
- const User = mongoose.model('User', userSchema);
27
-
28
- module.exports = User;
@@ -1,33 +0,0 @@
1
- const mongoose = require('mongoose');
2
-
3
- const deliverySchema = new mongoose.Schema(
4
- {
5
- deliveryCode: {
6
- type: String,
7
- required: true,
8
- trim: true,
9
- unique: true,
10
- },
11
- deliveryDate: {
12
- type: Date,
13
- required: true,
14
- },
15
- quantityDelivered: {
16
- type: Number,
17
- required: true,
18
- },
19
- deliveryStatus: {
20
- type: String,
21
- required: true,
22
- trim: true,
23
- },
24
- shipment: {
25
- type: mongoose.Schema.Types.ObjectId,
26
- ref: 'Shipment',
27
- required: false,
28
- },
29
- },
30
- { timestamps: true }
31
- );
32
-
33
- module.exports = mongoose.model('Delivery', deliverySchema);
@@ -1,43 +0,0 @@
1
- const mongoose = require('mongoose');
2
- const Supplier = require('./Supplier');
3
-
4
- const productSchema = new mongoose.Schema(
5
- {
6
- productCode: {
7
- type: String,
8
- required: true,
9
- trim: true,
10
- },
11
- productName: {
12
- type: String,
13
- default: '',
14
- trim: true,
15
- },
16
- category: {
17
- type: String,
18
- required: true,
19
- trim: true
20
- },
21
-
22
- unitPrice: {
23
- type: String,
24
- required: true,
25
- trim: true
26
- },
27
- quantity: {
28
- type: String,
29
- required: true,
30
- trim: true
31
- },
32
- expiryDate: {
33
- type: String
34
- },
35
- Supplier: {
36
- type: mongoose.Schema.Types.ObjectId,
37
- ref: 'Supplier'
38
- }
39
-
40
- }
41
- );
42
-
43
- module.exports = mongoose.model('Product', productSchema);
@@ -1,34 +0,0 @@
1
- const mongoose = require('mongoose');
2
-
3
- const shipmentSchema = new mongoose.Schema(
4
- {
5
- shipmentNumber: {
6
- type: String,
7
- required: true,
8
- trim: true,
9
- unique: true,
10
- },
11
- shipmentDate: {
12
- type: Date,
13
- required: true,
14
- },
15
- shipmentStatus: {
16
- type: String,
17
- required: true,
18
- trim: true,
19
- },
20
- destination: {
21
- type: String,
22
- required: true,
23
- trim: true,
24
- },
25
- supplier: {
26
- type: mongoose.Schema.Types.ObjectId,
27
- ref: 'Supplier',
28
- required: false,
29
- },
30
- },
31
- { timestamps: true }
32
- );
33
-
34
- module.exports = mongoose.model('Shipment', shipmentSchema);
@@ -1,36 +0,0 @@
1
- const mongoose = require('mongoose');
2
-
3
- const supplierSchema = new mongoose.Schema(
4
- {
5
- supplierCode: {
6
- type: String,
7
- required: true,
8
- trim: true,
9
- unique: true,
10
- },
11
- supplierName: {
12
- type: String,
13
- required: true,
14
- trim: true,
15
- },
16
- telephone: {
17
- type: String,
18
- required: true,
19
- trim: true,
20
- },
21
- address: {
22
- type: String,
23
- required: true,
24
- trim: true,
25
- },
26
- email: {
27
- type: String,
28
- required: true,
29
- trim: true,
30
- lowercase: true,
31
- },
32
- },
33
- { timestamps: true }
34
- );
35
-
36
- module.exports = mongoose.model('Supplier', supplierSchema);
@@ -1,23 +0,0 @@
1
- {
2
- "name": "blueprint-backend",
3
- "version": "1.0.0",
4
- "description": "Blueprint API — Node, Express, MongoDB",
5
- "main": "server.js",
6
- "scripts": {
7
- "dev": "nodemon server.js",
8
- "start": "node server.js"
9
- },
10
- "keywords": [],
11
- "license": "MIT",
12
- "dependencies": {
13
- "bcrypt": "^5.1.1",
14
- "cors": "^2.8.5",
15
- "dotenv": "^16.4.7",
16
- "express": "^4.21.2",
17
- "jsonwebtoken": "^9.0.2",
18
- "mongoose": "^8.9.3"
19
- },
20
- "devDependencies": {
21
- "nodemon": "^3.1.9"
22
- }
23
- }
@@ -1,15 +0,0 @@
1
- const express = require('express')
2
-
3
- const router = express.Router()
4
-
5
- // const {protect} =require('../middleware/auth')
6
- const {addsupplier,getsupplierbyid,getsupplier,updatesupplier,deletesupplier} = require('../controllers/supplierController')
7
-
8
- // router.use(protect)
9
- router.post('/addsupplier',addsupplier)
10
- router.get('/getsupplier',getsupplier)
11
- router.get('/getsupplierbyid/:id',getsupplierbyid)
12
- router.put('/updatesupplier/:id',updatesupplier)
13
- router.delete('/deletesupplier/:id',deletesupplier)
14
-
15
- module.exports =router
@@ -1,11 +0,0 @@
1
- const express = require('express');
2
- const { register, login, getMe } = require('../controllers/authController');
3
- const { protect } = require('../middleware/auth');
4
-
5
- const router = express.Router();
6
-
7
- router.post('/register', register);
8
- router.post('/login', login);
9
- router.get('/me', protect, getMe);
10
-
11
- module.exports = router;
@@ -1,18 +0,0 @@
1
- const express = require('express');
2
- const {
3
- addDelivery,
4
- getDeliveries,
5
- getDeliveryById,
6
- updateDelivery,
7
- deleteDelivery,
8
- } = require('../controllers/deliveryController');
9
-
10
- const router = express.Router();
11
-
12
- router.post('/adddelivery', addDelivery);
13
- router.get('/getdeliveries', getDeliveries);
14
- router.get('/getdeliverybyid/:id', getDeliveryById);
15
- router.put('/updatedelivery/:id', updateDelivery);
16
- router.delete('/deletedelivery/:id', deleteDelivery);
17
-
18
- module.exports = router;
@@ -1,15 +0,0 @@
1
- const express = require("express")
2
- const router = express.Router()
3
- const { protect } = require('../middleware/auth');
4
- const{addproduct,getproduct,getproductbyid,deleteproduct,updateproduct} = require('../controllers/productController')
5
-
6
- router.use(protect)
7
-
8
- router.post('/addproduct',addproduct)
9
- router.get('/getproduct',getproduct)
10
- router.get('/getproductbyid/:id',getproductbyid)
11
- router.delete('/deleteproduct/:id',deleteproduct)
12
- router.put('/updateproduct/:id',updateproduct)
13
-
14
-
15
- module.exports = router
@@ -1,10 +0,0 @@
1
- const express = require('express');
2
- const router = express.Router();
3
- const { protect } = require('../middleware/auth');
4
-
5
- // GET /api/protected - simple protected endpoint
6
- router.get('/', protect, (req, res) => {
7
- res.json({ message: 'Protected content', user: req.user });
8
- });
9
-
10
- module.exports = router;
@@ -1,8 +0,0 @@
1
- const express = require('express');
2
- const { getReportSummary } = require('../controllers/reportsController');
3
-
4
- const router = express.Router();
5
-
6
- router.get('/summary', getReportSummary);
7
-
8
- module.exports = router;
@@ -1,18 +0,0 @@
1
- const express = require('express');
2
- const {
3
- addShipment,
4
- getShipments,
5
- getShipmentById,
6
- updateShipment,
7
- deleteShipment,
8
- } = require('../controllers/shipmentController');
9
-
10
- const router = express.Router();
11
-
12
- router.post('/addshipment', addShipment);
13
- router.get('/getshipments', getShipments);
14
- router.get('/getshipmentbyid/:id', getShipmentById);
15
- router.put('/updateshipment/:id', updateShipment);
16
- router.delete('/deleteshipment/:id', deleteShipment);
17
-
18
- module.exports = router;
@@ -1,35 +0,0 @@
1
- const express = require('express');
2
- const cors = require('cors');
3
-
4
- const connectDB = require('./config/db');
5
-
6
- const authRoutes = require('./routes/authRoutes');
7
-
8
- const productRoutes = require('./routes/productRoutes');
9
- const SupplierRoutes = require('./routes/SupplierRoutes');
10
- const shipmentRoutes = require('./routes/shipmentRoutes');
11
- const deliveryRoutes = require('./routes/deliveryRoutes');
12
- const reportsRoutes = require('./routes/reportsRoutes');
13
- const protectedRoutes = require('./routes/protectedRoutes');
14
-
15
- const app = express();
16
-
17
- app.use(cors());
18
- app.use(express.json());
19
- connectDB();
20
-
21
- app.use('/api/product', productRoutes);
22
- app.use('/api/supplier', SupplierRoutes);
23
- app.use('/api/auth', authRoutes);
24
-
25
- app.use('/api/shipment', shipmentRoutes);
26
- app.use('/api/delivery', deliveryRoutes);
27
- app.use('/api/reports', reportsRoutes);
28
- app.use('/api/protected', protectedRoutes);
29
-
30
- const PORT = 5001;
31
- app.listen(PORT, () => {
32
- console.log(`Server running on http://localhost:${PORT}`);
33
- });
34
-
35
-
@@ -1,16 +0,0 @@
1
- # React + Vite
2
-
3
- This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4
-
5
- Currently, two official plugins are available:
6
-
7
- - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Oxc](https://oxc.rs)
8
- - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/)
9
-
10
- ## React Compiler
11
-
12
- The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).
13
-
14
- ## Expanding the ESLint configuration
15
-
16
- If you are developing a production application, we recommend using TypeScript with type-aware lint rules enabled. Check out the [TS template](https://github.com/vitejs/vite/tree/main/packages/create-vite/template-react-ts) for information on how to integrate TypeScript and [`typescript-eslint`](https://typescript-eslint.io) in your project.