Updated ERP with new modules and features
This commit is contained in:
@@ -79,6 +79,8 @@ class NetworkOperatorsController extends Controller
|
||||
$request->validate([
|
||||
'name' => 'required|string|max:200',
|
||||
'country' => 'required|string',
|
||||
'contract_auto_renew' => 'required|boolean',
|
||||
'next_renewal_date' => 'nullable|required_if:contract_auto_renew,0|date',
|
||||
]);
|
||||
|
||||
$operator->update([
|
||||
@@ -98,6 +100,10 @@ class NetworkOperatorsController extends Controller
|
||||
'rate_type' => $request->rate_type,
|
||||
'payment_terms' => $request->payment_terms,
|
||||
'connection_type' => $request->connection_type,
|
||||
'contract_type' => $request->contract_type,
|
||||
'contract_validity' => $request->contract_validity,
|
||||
'contract_auto_renew' => $request->contract_auto_renew,
|
||||
'next_renewal_date' => $request->contract_auto_renew ? null : $request->next_renewal_date,
|
||||
]);
|
||||
|
||||
return response()->json(['message' => 'MNO Partner updated successfully!']);
|
||||
@@ -112,7 +118,8 @@ class NetworkOperatorsController extends Controller
|
||||
public function show($id)
|
||||
{
|
||||
$operator = NetworkOperator::findOrFail($id);
|
||||
return view('network_operators.show', compact('operator'));
|
||||
$staffMembers = \App\Models\StaffMember::orderBy('name')->get();
|
||||
return view('network_operators.show', compact('operator', 'staffMembers'));
|
||||
}
|
||||
|
||||
public function storeConnection(Request $request, $operatorId)
|
||||
@@ -171,5 +178,45 @@ class NetworkOperatorsController extends Controller
|
||||
return redirect()->back()->with('success', 'Connection detail removed.');
|
||||
}
|
||||
|
||||
public function storeDocument(Request $request, $operatorId)
|
||||
{
|
||||
$request->validate([
|
||||
'document_names' => 'required|array',
|
||||
'document_names.*' => 'required|string|max:255',
|
||||
'documents' => 'required|array',
|
||||
'documents.*' => 'required|file|mimes:pdf,doc,docx,xlsx,xls,png,jpg,jpeg|max:10240', // 10MB limit
|
||||
]);
|
||||
|
||||
foreach ($request->document_names as $index => $name) {
|
||||
if ($request->hasFile("documents.$index")) {
|
||||
$filePath = $request->file("documents.$index")->store('mno_documents', 'public');
|
||||
|
||||
\App\Models\NetworkOperatorDocument::create([
|
||||
'network_operator_id' => $operatorId,
|
||||
'name' => $name,
|
||||
'file_path' => $filePath,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'message' => 'Documents uploaded successfully!'
|
||||
]);
|
||||
}
|
||||
|
||||
public function destroyDocument($id)
|
||||
{
|
||||
$document = \App\Models\NetworkOperatorDocument::findOrFail($id);
|
||||
|
||||
// Optionally delete the file from storage
|
||||
if (\Illuminate\Support\Facades\Storage::disk('public')->exists($document->file_path)) {
|
||||
\Illuminate\Support\Facades\Storage::disk('public')->delete($document->file_path);
|
||||
}
|
||||
|
||||
$document->delete();
|
||||
|
||||
return redirect()->back()->with('success', 'Document deleted successfully.');
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user