BusinessManagementController
extends BaseController
in package
Business Management Controller
This controller manages comprehensive business operations including business CRUD, terminal management, business features, operation hours, photo management, review management, and business information management. It provides extensive functionality for managing airport business data with advanced filtering, image management, and review capabilities for airport businesses.
Table of Contents
Methods
- __construct() : void
- Create a new BusinessManagementController instance.
- businessImage() : View
- Display business images management interface.
- create() : View
- Show the form for creating a new business.
- deleteImage() : JsonResponse
- Delete a business image.
- destroy() : RedirectResponse
- Remove the specified business from storage.
- edit() : View
- Show the form for editing the specified business.
- getBusinessImagesByFsqId() : string
- Get business images by Four Square ID.
- getLevelName() : JsonResponse
- Get level names for a specific terminal.
- getReviewDetails() : JsonResponse
- Get review details for a specific business.
- getTerminal() : JsonResponse
- Get terminals for a specific airport location.
- index() : View|JsonResponse
- Display a listing of businesses with DataTables support and advanced filtering.
- reviewDelete() : JsonResponse
- Delete a business review.
- setBusinessImageAsPrimary() : void
- Set a business image as primary.
- show() : void
- Display the specified business details.
- store() : RedirectResponse
- Store a newly created business in storage.
- update() : RedirectResponse
- Update the specified business in storage.
- updateImageOrder() : JsonResponse
- Update image order for a business.
- updateReview() : JsonResponse
- Update a business review.
Methods
__construct()
Create a new BusinessManagementController instance.
public
__construct() : void
Checks if user is logged in and has proper permissions for business management. Redirects to appropriate page if permissions are not met.
businessImage()
Display business images management interface.
public
businessImage(int $id, Request $request) : View
Shows business photo details and management interface for handling business image operations.
Parameters
- $id : int
- $request : Request
Return values
Viewcreate()
Show the form for creating a new business.
public
create(Request $request) : View
Displays the business creation form with available airports and states for assignment and configuration.
Parameters
- $request : Request
Return values
ViewdeleteImage()
Delete a business image.
public
deleteImage(Request $request) : JsonResponse
Soft deletes a business image by setting img_deleted flag. Returns JSON response indicating success or failure.
Parameters
- $request : Request
Return values
JsonResponsedestroy()
Remove the specified business from storage.
public
destroy(int $id) : RedirectResponse
Soft deletes business record by setting is_deleted flag and logs the deletion activity for audit purposes.
Parameters
- $id : int
Return values
RedirectResponseedit()
Show the form for editing the specified business.
public
edit(int $id, Request $request) : View
Displays the business edit form with security key validation. Requires valid security key to prevent unauthorized access. Loads comprehensive business data including features, categories, operation hours, and related information.
Parameters
- $id : int
- $request : Request
Return values
ViewgetBusinessImagesByFsqId()
Get business images by Four Square ID.
public
getBusinessImagesByFsqId(Request $request) : string
Retrieves and displays business images for a specific business. Returns formatted HTML for image gallery with management controls.
Parameters
- $request : Request
Return values
stringgetLevelName()
Get level names for a specific terminal.
public
getLevelName(Request $request) : JsonResponse
Retrieves level information for a given terminal ID. Returns level data in JSON format for AJAX requests.
Parameters
- $request : Request
Return values
JsonResponsegetReviewDetails()
Get review details for a specific business.
public
getReviewDetails(int $businessId) : JsonResponse
Retrieves and displays business review details for a specific business. Returns formatted HTML for review management with edit capabilities.
Parameters
- $businessId : int
Return values
JsonResponsegetTerminal()
Get terminals for a specific airport location.
public
getTerminal(string $locid) : JsonResponse
Retrieves terminal information for a given airport location ID. Returns terminal data in JSON format for AJAX requests.
Parameters
- $locid : string
Return values
JsonResponseindex()
Display a listing of businesses with DataTables support and advanced filtering.
public
index(Request $request) : View|JsonResponse
Provides a paginated list of businesses with comprehensive filtering capabilities. Supports AJAX requests for DataTables with search and filter functionality. Includes advanced filtering by business name, terminal name, and airport code. Features business preview, edit, image management, and review management actions.
Parameters
- $request : Request
Return values
View|JsonResponsereviewDelete()
Delete a business review.
public
reviewDelete(int $id) : JsonResponse
Soft deletes a business review by setting review_delete flag. Returns JSON response indicating success or failure.
Parameters
- $id : int
Return values
JsonResponsesetBusinessImageAsPrimary()
Set a business image as primary.
public
setBusinessImageAsPrimary(Request $request) : void
Updates the primary image status for a business. Unsets current primary image and sets new one as primary.
Parameters
- $request : Request
show()
Display the specified business details.
public
show(int $id, Request $request) : void
Shows detailed business information in a formatted HTML table. Displays comprehensive business data including contact information, location details, and business specifics.
Parameters
- $id : int
- $request : Request
store()
Store a newly created business in storage.
public
store(Request $request) : RedirectResponse
Validates business input, creates new business record, and logs the activity. Supports comprehensive business data including location, contact information, and business details.
Parameters
- $request : Request
Return values
RedirectResponseupdate()
Update the specified business in storage.
public
update(Request $request, int $id) : RedirectResponse
Handles comprehensive business updates including business details, features, operation hours, photo details, related places, categories, and chains. Supports extensive business data management.
Parameters
- $request : Request
- $id : int
Return values
RedirectResponseupdateImageOrder()
Update image order for a business.
public
updateImageOrder(Request $request) : JsonResponse
Updates the order of images for a business based on sortable input. Handles image reordering functionality.
Parameters
- $request : Request
Return values
JsonResponseupdateReview()
Update a business review.
public
updateReview(Request $request) : JsonResponse
Updates review details including description, URL, language, agree/disagree counts, and review date.
Parameters
- $request : Request