// Database Service - Central export for all database-related imports // This file re-exports everything from postgresService to provide a clean abstraction layer // Implementation is the responsibility of postgresService package import { getOrderDetails as getOrderDetailsFromDb } from 'postgresService' import type { AdminOrderDetails } from '@packages/shared' // Re-export database connection export { db } from 'postgresService' // Re-export all schema exports export * from 'postgresService' // Re-export methods from postgresService (implementation lives there) export { // Banner methods getBanners, getBannerById, createBanner, updateBanner, deleteBanner, // Complaint methods getComplaints, resolveComplaint, // Constants methods getAllConstants, upsertConstants, // Coupon methods getAllCoupons, getCouponById, invalidateCoupon, validateCoupon, getReservedCoupons, getUsersForCoupon, createCouponWithRelations, updateCouponWithRelations, generateCancellationCoupon, createReservedCouponWithProducts, createCouponForUser, checkUsersExist, checkCouponExists, checkReservedCouponExists, getOrderWithUser, // Store methods getAllStores, getStoreById, createStore, updateStore, deleteStore, // Staff-user methods getStaffUserByName, getAllStaff, getAllUsers, getUserWithDetails, updateUserSuspensionStatus, checkStaffUserExists, checkStaffRoleExists, createStaffUser, getAllRoles, // User methods createUserByMobile, getUserByMobile, getUnresolvedComplaintsCount, getAllUsersWithFilters, getOrderCountsByUserIds, getLastOrdersByUserIds, getSuspensionStatusesByUserIds, getUserBasicInfo, getUserSuspensionStatus, getUserOrders, getOrderStatusesByOrderIds, getItemCountsByOrderIds, upsertUserSuspension, searchUsers, getAllNotifCreds, getAllUnloggedTokens, getNotifTokensByUserIds, getUserIncidentsWithRelations, createUserIncident, // Vendor-snippets methods checkVendorSnippetExists, getVendorSnippetById, getVendorSnippetByCode, getAllVendorSnippets, createVendorSnippet, updateVendorSnippet, deleteVendorSnippet, getProductsByIds, getVendorSlotById, getVendorOrdersBySlotId, getOrderItemsByOrderIds, getOrderStatusByOrderIds, updateVendorOrderItemPackaging, // Product methods getAllProducts, getProductById, createProduct, updateProduct, toggleProductOutOfStock, getAllUnits, getAllProductTags, getProductReviews, respondToReview, getAllProductGroups, createProductGroup, updateProductGroup, deleteProductGroup, addProductToGroup, removeProductFromGroup, // Slots methods getAllSlots, getSlotById, createSlot, updateSlot, deleteSlot, getSlotProducts, addProductToSlot, removeProductFromSlot, clearSlotProducts, updateSlotCapacity, getSlotDeliverySequence, updateSlotDeliverySequence, // Order methods updateOrderNotes, updateOrderPackaged, updateOrderDelivered, updateOrderItemPackaging, removeDeliveryCharge, getSlotOrders, updateAddressCoords, getAllOrders, rebalanceSlots, cancelOrder, deleteOrderById, } from 'postgresService' export async function getOrderDetails(orderId: number): Promise { return getOrderDetailsFromDb(orderId) } // Re-export all types from shared package export type { // Admin types Banner, Complaint, ComplaintWithUser, Constant, ConstantUpdateResult, Coupon, CouponValidationResult, UserMiniInfo, Store, StaffUser, StaffRole, AdminOrderRow, AdminOrderDetails, AdminOrderUpdateResult, AdminOrderItemPackagingResult, AdminOrderMessageResult, AdminOrderBasicResult, AdminGetSlotOrdersResult, AdminGetAllOrdersResult, AdminGetAllOrdersResultWithUserId, AdminRebalanceSlotsResult, AdminCancelOrderResult, } from '@packages/shared'; export type { // User types User, UserDetails, Address, Product, CartItem, Order, OrderItem, Payment, } from '@packages/shared';