public function editTodo(DashboardEditWorkRequest $request) { $this->permissionSection(function () use($request) { $workID = Crypt::decrypt($request->edit_work_id); $accepted = 0; $situation = 0; if ($request->edit_work_status === 'Kabul Et') { $accepted = 1; } else { if ($request->edit_work_status === 'Tamamla') { $situation = 1; } else { $accepted = -1; } } //Work and senior datas(SMS) $work = DB::table('works as w')->leftJoin('users as u', 'u.id', '=', 'w.created_by')->leftJoin('department_works as dw', 'dw.id', '=', 'w.last_department_work_id')->leftJoin('departments as d', 'd.id', '=', 'dw.department_id')->where('w.id', '=', $workID)->select(['w.title', 'u.phone as workOwnerPhone', 'u.email as workOwnerEmail', 'd.name as departmentName', 'u.first_name', 'u.last_name'])->first(); $senior = DB::table('department_worker as dw')->leftJoin('users as u', 'u.id', '=', 'dw.user_id')->where('dw.department_id', '=', $this->userWithDepartment->department[0]->id)->where('dw.is_senior', '=', 1)->select(['u.phone', 'u.email', 'u.first_name', 'u.last_name'])->first(); $assignedToFullname = mb_strtoupper($this->currentUser->first_name) . " " . mb_strtoupper($this->currentUser->last_name); $departmentName = mb_strtoupper($work->departmentName); //Work and senior datas(EMAIL) $data = ['fullname' => '', 'message' => '']; //If work is accepted or rejected if ($accepted != 0) { DB::transaction(function () use($request, $workID, $accepted, $work, $senior, $assignedToFullname, $data) { DB::table('works as w')->leftJoin('department_works as dw', 'dw.id', '=', 'w.last_department_work_id')->leftJoin('user_works as uw', 'uw.id', '=', 'dw.last_user_work_id')->where('w.id', '=', $workID)->update(['uw.accepted' => $accepted, 'uw.reason' => $request->todo_reason, 'uw.start_date' => time()]); //The work was accepted if ($accepted == 1) { //To department senior $data['message'] = 'Atamış olduğunuz "' . $work->title . '" başlıklı iş ' . $assignedToFullname . ' tarafından kabul edildi.'; $data['fullname'] = mb_strtoupper($senior->first_name) . " " . mb_strtoupper($senior->last_name); CommonController::sendSms('RHPOZTFYAY', [$senior->phone], $data['message']); CommonController::mailSendNotQueue("IS TAKIP SISTEMI", [$senior->email], $data, 'emails.work-mail-template'); } else { //To department senior $data['message'] = 'Atamış olduğunuz "' . $work->title . '" başlıklı iş ' . $assignedToFullname . ' tarafından reddedildi.'; $data['fullname'] = mb_strtoupper($senior->first_name) . " " . mb_strtoupper($senior->last_name); CommonController::sendSms('RHPOZTFYAY', [$senior->phone], $data['message']); CommonController::mailSendNotQueue("IS TAKIP SISTEMI", [$senior->email], $data, 'emails.work-mail-template'); } }); } else { if ($situation == 1) { DB::transaction(function () use($request, $workID, $situation, $work, $senior, $assignedToFullname, $departmentName, $data) { DB::table('works as w')->leftJoin('department_works as dw', 'dw.id', '=', 'w.last_department_work_id')->leftJoin('user_works as uw', 'uw.id', '=', 'dw.last_user_work_id')->where('w.id', '=', $workID)->update(['uw.end_date' => time(), 'uw.situation' => $situation, 'uw.conclusion' => $request->todo_conclusion, 'dw.situation' => $situation, 'dw.conclusion' => $request->todo_conclusion]); //To department senior $data['message'] = 'Atamış olduğunuz "' . $work->title . '" başlıklı iş ' . $assignedToFullname . ' tarafından tamamlandı.'; $data['fullname'] = mb_strtoupper($senior->first_name) . " " . mb_strtoupper($senior->last_name); CommonController::sendSms('RHPOZTFYAY', [$senior->phone], $data['message']); CommonController::mailSendNotQueue("IS TAKIP SISTEMI", [$senior->email], $data, 'emails.work-mail-template'); //To owner of work $data['message'] = 'Atamış olduğunuz "' . $work->title . '" başlıklı iş ' . $departmentName . ' departmanı tarafından tamamlandı.'; $data['fullname'] = mb_strtoupper($work->first_name) . " " . mb_strtoupper($work->last_name); CommonController::sendSms('RHPOZTFYAY', [$work->workOwnerPhone], $data['message']); CommonController::mailSendNotQueue("IS TAKIP SISTEMI", [$work->workOwnerEmail], $data, 'emails.work-mail-template'); }); } } }, 'wts.work.edit'); return response()->json($this->storeResponseMessage); }
public function update(UserRequest $request, $id) { if ($this->currentUser->hasAccess('wts.user.edit')) { DB::transaction(function () use($request) { // Update the user $user = Sentry::findUserById(Crypt::decrypt($request->id)); if ($request->has('send_sms') && $request->send_sms == 1) { if ($request->has('password')) { $user->password = $request->password; CommonController::sendSms('RHPOZTFYAY', $user->phone, 'Merhaba "' . $user->first_name . ' ' . $user->last_name . '" WTS iş takip sistemi için; \\nEmailiniz : ' . $request->email . ' \\nŞifreniz: ' . $request->password . '\\nGüvenliğiniz açısından şifrenizi kimseyle paylaşmamanızı ve en kısa sürede değiştirmenizi önermekteyiz.\\nSite: wts.pinnacle.com.tr'); } else { CommonController::sendSms('RHPOZTFYAY', $user->phone, 'Merhaba "' . $user->first_name . ' ' . $user->last_name . '" WTS iş takip sistemi için; \\nEmailiniz : ' . $request->email . '\\nGüvenliğiniz açısından emailinizi kimseyle paylaşmamanızı ve şifrenizi düzenli aralıklarla değiştirmenizi önermekteyiz.\\nSite: wts.pinnacle.com.tr'); } } $user->email = $request->email; $user->first_name = $request->first_name; $user->last_name = $request->last_name; $user->phone = $request->phone; $user->slug = $request->slug_name; $user->save(); // Find the group using the group id $groupId = Crypt::decrypt($request->group); if ($user->getGroups()[0]->id != $groupId) { $newGroup = Sentry::findGroupById($groupId); $user->updateGroups($newGroup); } if ($request->image_hidden) { $file_path = public_path() . "/uploads/profile-images/" . $user->image; \File::delete($file_path); } if ($request->hasFile('image')) { $file = $request->file('image'); $imageName = CommonController::imageUpload($file, 'uploads/profile-images'); $user->image = $imageName; $user->save(); } }); return response()->json($this->editResponseMessage); } else { abort(403, $this->accessForbidden); } }
/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(WorkFlowTodoWorkRequest $request, $id) { if ($this->currentUser->hasAccess('wts.management.edit')) { DB::transaction(function () use($request) { $editWork = Work::where('id', '=', $request->work_id)->with('departmentWork')->first(); $editWork->slug = $request->slug_name; $editWork->title = $request->title; $editWork->description = $request->description; $editWork->importance = $request->importance; $editWork->deadline = strtotime(str_replace('/', '-', $request->deadline)); if ($request->hasFile('file')) { if ($editWork->file != '') { \File::delete(public_path() . "/uploads/works-files/" . $editWork->file); } $file = $request->file('file'); $fileName = CommonController::fileUpload($file, 'uploads/works-files'); $editWork->file = $fileName; $editWork->save(); } elseif (!$request->hasFile('file') && $request->file_hidden == 1) { if ($editWork->file != '') { \File::delete(public_path() . "/uploads/works-files/" . $editWork->file); $editWork->file = ""; } } if (empty($editWork->departmentWork) || $editWork->departmentWork->department_id != $request->department) { if ($request->department == '') { $editWork->last_department_id = ''; } else { $departmentWork = new DepartmentWork(); $departmentWork->department_id = $request->department; $departmentWork->assign_date = time(); //@todo DATE HATASI !!! BURALAR REVİZE EDİLMELİ $departmentWork->accepted = 0; $departmentWork->save(); $editWork->last_department_work_id = $departmentWork->id; if ($request->is_senior == 1 && $request->has('department_worker')) { $userWork = new UserWork(); $userWork->department_id = $request->department; $userWork->assign_date = time(); //@todo DATE HATASI !!! BURALAR REVİZE EDİLMELİ $userWork->assigned_to = $request->department_worker; $userWork->accepted = 0; $userWork->save(); $departmentWork->accepted = 1; $departmentWork->last_user_work_id = $userWork->id; $departmentWork->save(); /** * İŞ AÇILAN KİŞİYE MAİL ATMA */ $user = User::where('id', '=', $request->department_worker)->first(); $username = $user->first_name . " " . $user->last_name; $username = mb_convert_case($username, MB_CASE_TITLE, 'utf-8'); $workCreator = User::where('id', '=', $editWork->created_by)->first(); $creatorusername = $workCreator->first_name . " " . $workCreator->last_name; $creatorusername = mb_convert_case($creatorusername, MB_CASE_TITLE, 'utf-8'); CommonController::mailSendNotQueue('IS TAKIP SISTEMI', [$user->email], ['fullname' => $username, 'message' => 'Departman lideriniz ' . $creatorusername . ' tarafından size , "' . $editWork->title . '" başlıklı yeni bir iş açıldı. Detaylar için lütfen sisteme gidiniz.'], 'emails.work-mail-template'); CommonController::sendSms('RHPOZTFYAY', $user->phone, 'Merhaba ' . $username . ', departman lideriniz ' . $creatorusername . ' tarafından size yeni bir iş açıldı lütfen sistem üzerinden ayrıntıları inceleyin'); /** * İŞİ OLUŞTURAN KİŞİYE BİLGİLENDİRME */ $departmentWithSenior = Department::where('id', '=', $request->department)->with('senior')->first(); $seniorUser = $departmentWithSenior->senior[0]; $seniorUsername = $seniorUser->first_name . " " . $seniorUser->last_name; $seniorUsername = mb_convert_case($seniorUsername, MB_CASE_TITLE, 'utf-8'); CommonController::mailSendNotQueue('IS TAKIP SISTEMI', [$seniorUser->email], ['fullname' => $seniorUsername, 'message' => 'Departmanınıza "' . $editWork->title . '" başlıklı yeni bir iş açılmış ve bu iş ' . $username . ' kişisine atanmıştır. İşin detayları ve işi atamak için lütfen sisteme gidiniz.'], 'emails.work-mail-template'); CommonController::sendSms('RHPOZTFYAY', $seniorUser->phone, 'Merhaba ' . $seniorUsername . ', departmanınıza "' . $editWork->title . '" başlıklı yeni bir iş açılmış ve bu iş ' . $username . ' kişisine atanmıştır . İşin detayları ve işi atamak için lütfen sisteme gidiniz.'); } else { $workCreator = User::where('id', '=', $editWork->created_by)->first(); $creatorusername = $workCreator->first_name . " " . $workCreator->last_name; $creatorusername = mb_convert_case($creatorusername, MB_CASE_TITLE, 'utf-8'); /** * İŞİ OLUŞTURULAN KİŞİYE BİLGİLENDİRME */ $departmentWithSenior = Department::where('id', '=', $request->department)->with('senior')->first(); $seniorUser = $departmentWithSenior->senior[0]; $username = $seniorUser->first_name . " " . $seniorUser->last_name; $username = mb_convert_case($username, MB_CASE_TITLE, 'utf-8'); CommonController::mailSendNotQueue('IS TAKIP SISTEMI', [$seniorUser->email], ['fullname' => $username, 'message' => 'Departmanınıza ' . $creatorusername . ' kişisi tarafından, "' . $editWork->title . '" başlıklı yeni bir iş açılmıştır. İşin detayları ve işi atamak için lütfen sisteme gidiniz.'], 'emails.work-mail-template'); CommonController::sendSms('RHPOZTFYAY', $seniorUser->phone, 'Merhaba ' . $username . ', departmanınıza ' . $creatorusername . ' kişisi tarafından ,"' . $editWork->title . '" başlıklı yeni bir iş açılmıştır. İşin detayları ve işi atamak için lütfen sisteme gidiniz.'); } } } $editWork->save(); }); return response()->json($this->editResponseMessage); } else { abort(403, $this->accessForbidden); } }
public function revertAssignedWork(RevertAssignedWorkRequest $request) { if ($request->revert == 1) { $work = Work::where('id', '=', $request->work_id)->first(); if ($work->created_by == $this->currentUser->getId()) { /** * İŞİ GERİ ÇEKİLİNCE */ $departmentWork = DepartmentWork::where('id', '=', $work->last_department_work_id)->first(); $departmentWithSenior = Department::where('id', '=', $departmentWork->department_id)->with('senior')->first(); $seniorUser = $departmentWithSenior->senior[0]; $username = $seniorUser->first_name . " " . $seniorUser->last_name; $username = mb_convert_case($username, MB_CASE_TITLE, 'utf-8'); CommonController::mailSendNotQueue('IS TAKIP SISTEMI', [$seniorUser->email], ['fullname' => $username, 'message' => 'Departmanınıza açılan "' . $work->title . '" başlıklı iş geri alınmıştır. Lütfen ' . $this->currentUser->first_name . ' ' . $this->currentUser->last_name . ' ile irtibata geçiniz. '], 'emails.work-mail-template'); CommonController::sendSms('RHPOZTFYAY', $seniorUser->phone, 'Departmanınızdaki "' . $work->title . '" başlıklı iş geri alınmıştır.Lütfen ' . $this->currentUser->first_name . ' ' . $this->currentUser->last_name . ' ile irtibata geçiniz.'); $work->last_department_work_id = null; $work->save(); } else { $workDepartment = DepartmentWork::where('id', '=', $work->last_department_work_id)->first(); $userWork = UserWork::where('id', '=', $workDepartment->last_user_work_id)->first(); $user = User::where('id', '=', $userWork->assigned_to)->first(); $username = $user->first_name . " " . $user->last_name; $username = mb_convert_case($username, MB_CASE_TITLE, 'utf-8'); CommonController::mailSendNotQueue('IS TAKIP SISTEMI', [$user->email], ['fullname' => $username, 'message' => 'Size acılan "' . $work->title . '" başlıklı iş geri alınmıştır. Lütfen departman lideriniz ile irtibata geçiniz. '], 'emails.work-mail-template'); CommonController::sendSms('RHPOZTFYAY', $user->phone, 'Size açılmış "' . $work->title . '" başlıklı iş geri alınmıştır. Lütfen departman lideri ile irtibata geçiniz.'); $workDepartment->last_user_work_id = null; $workDepartment->accepted = null; $workDepartment->save(); } return response()->json(['success' => true, 'messages' => 'İş Geri Alma İşlemi Başarılı', 'revert' => true, 'work_id' => $work->id]); } else { return response()->json(['success' => true, 'messages' => 'İş Geri Alma İşlemi Başarılı', 'revert' => false]); } }
Route::post('works/work-acceptance', 'Admin\\WorkController@acceptWork'); Route::post('works/get-work-detail', 'Admin\\WorkController@getWorkDetail'); Route::get('works/download-project-file/{workId}', 'Admin\\WorkController@downloadFile'); Route::post('works/revert-assigned-work', 'Admin\\WorkController@revertAssignedWork'); //Create slug Route::post('common/slug', 'Admin\\CommonController@postSlug'); /**MY PAGE**/ //Refresh to-do in my page Route::get('/dashboard/to-do-refresh', 'Admin\\DashboardController@refreshTodo'); //Search to-do in my page Route::get('/dashboard/to-do-search', 'Admin\\DashboardController@searchTodo'); //Load done works Route::get('/dashboard/done', 'Admin\\DashboardController@loadDone'); //Refresh done in my page Route::get('/dashboard/done-refresh', 'Admin\\DashboardController@refreshDone'); //Search done in my page Route::get('/dashboard/done-search', 'Admin\\DashboardController@searchDone'); //To-do edit work post Route::post('/dashboard/to-do-edit-work', 'Admin\\DashboardController@editTodo'); //Use User Profile Route::get('users/{slug}/use', 'Admin\\UserGroup\\UserController@useSession'); }); //Profile settings Route::resource('/settings', 'ProfileSettingsController'); Route::get('/deneme', function () { $data = ['fullname' => 'Yasin ÇİNAR']; // CommonController::mailSendNotQueue("IS TAKIP SISTEMI", ["*****@*****.**"], $data, 'emails.work-mail-template'); echo CommonController::sendSms('RHPOZTFYAY', ['05067836141'], 'Deneme mesajı'); }); }); });