fixed issues

This commit is contained in:
Ritikesh yadav
2024-06-11 17:42:46 +05:30
parent 2e9a33929c
commit 8765bf0d9e
2 changed files with 97 additions and 26 deletions

View File

@@ -65,56 +65,127 @@ class ManageSubAdminController extends Controller
return view('Admin.sub_admin_list', ['subAdmin' => $subAdmin]);
}
// public function addSubAdmin(Request $request)
public function addSubAdmin(Request $request)
{
$validator = Validator::make($request->all(), [
// dd($request->all());
$validator = Validator::make($request->post(), [
'name' => 'required',
// 'address' => 'required',
'mobile_number' => 'required',
'password' => 'required',
'email' => 'required|email|unique:users,email',
'email' => 'required',
], [
'required' => ':attribute is required',
'unique' => 'The :attribute has already been taken.',
'email' => 'The :attribute must be a valid email address.',
'unique' => ':attribute should be unique',
'required' => ':attribute is required'
]);
if ($validator->fails()) {
return response()->json(['status' => 400, 'message' => $validator->errors()->first()]);
$validationMessage = validationErrorMessage($validator);
if ($validationMessage) {
return response()->json(['status' => 400, 'message' => $validationMessage]);
}
// $principalType = Iam_Principal_Type::find($request->role_type);
$emailAlreadyExists = User::where('email',$request->email)->exists();
$contactAlreadyExists = User::where('contact_number',$request->contact_number)->exists();
if($emailAlreadyExists)
{
return response()->json(['status' => 400, 'message' =>'email should be unique']);
}
if($contactAlreadyExists)
{
return response()->json(['status' => 400, 'message' =>'Mobile number should be unique']);
}
if(User::where('contact_number', $request->mobile_number)->exists()) {
return response()->json(['status' => 400, 'message' => 'Mobile number should be unique']);
// defining user type
if ($request->role_type == 1) {
$roleType = 1;
} else if ($request->role_type == 2) {
$roleType = 2;
} else {
$roleType = 0;
}
$roleType = $request->role_type ?? 0; // Default role type
$user = User::create([
// dd(Hash::make($request->password));
$addUser = User::insertGetId([
// 'principal_type_xid' => $principalType->id,
'name' => $request->name,
'email' => $request->email,
'contact_number' => $request->mobile_number,
'password' => Hash::make($request->password),
'role' => $roleType,
'created_at' => Carbon::now(),
'updated_at' => Carbon::now(),
]);
if (!$user) {
return response()->json(['status' => 400, 'message' => 'Something went wrong!']);
// $addUser = null;
if ($addUser == null) {
return response()->json(['status' => 400, 'message' => 'Something error!']);
}
// Assuming $request->resource_ids is an array of resource IDs to assign to the user
foreach ($request->resource_ids ?? [] as $resourceId) {
$appResource = Iam_App_Resources::find($resourceId);
if ($appResource) {
// dd('hello');
foreach ($request->all() as $key => $value) {
if ($key == '_token' || $key == 'name' || $key == 'email' || $key == 'mobile_number' || $key == 'role_type' || $key == 'password') {
continue;
} else {
// dd($value );
$appResource = Iam_App_Resources::find((int)$value);
$addAppResourceActionLink = Iam_App_Resource_Action_Link::create([
'user_xid' => $user->id,
'user_xid' => $addUser,
'app_resource_xid' => $appResource->id,
]);
}
}
return response()->json(['status' => 200, 'message' => 'User Added!']);
}
// old not running code
// {
// $validator = Validator::make($request->all(), [
// 'name' => 'required',
// 'mobile_number' => 'required',
// 'password' => 'required',
// 'email' => 'required|email|unique:users,email',
// ], [
// 'required' => ':attribute is required',
// 'unique' => 'The :attribute has already been taken.',
// 'email' => 'The :attribute must be a valid email address.',
// ]);
// if ($validator->fails()) {
// return response()->json(['status' => 400, 'message' => $validator->errors()->first()]);
// }
// if(User::where('contact_number', $request->mobile_number)->exists()) {
// return response()->json(['status' => 400, 'message' => 'Mobile number should be unique']);
// }
// $roleType = $request->role_type ?? 0; // Default role type
// $user = User::create([
// 'name' => $request->name,
// 'email' => $request->email,
// 'contact_number' => $request->mobile_number,
// 'password' => Hash::make($request->password),
// 'role' => $roleType,
// ]);
// if (!$user) {
// return response()->json(['status' => 400, 'message' => 'Something went wrong!']);
// }
// // Assuming $request->resource_ids is an array of resource IDs to assign to the user
// foreach ($request->resource_ids ?? [] as $resourceId) {
// $appResource = Iam_App_Resources::find($resourceId);
// if ($appResource) {
// $addAppResourceActionLink = Iam_App_Resource_Action_Link::create([
// 'user_xid' => $user->id,
// 'app_resource_xid' => $appResource->id,
// ]);
// }
// }
// return response()->json(['status' => 200, 'message' => 'User Added!']);
// }
public function viewSubAdmin(Request $request)
{