public function SaveAnalyst($analystModel, $loginUserID) { $response = new ServiceResponse(); $messages = array('required' => trans('messages.PropertyRequired'), 'min' => trans('messages.PropertyMin')); $isEditMode = $analystModel['AnalystID'] > 0; $analystEntity = new AnalystEntity(); $validator = Validator::make((array) $analystModel, $isEditMode ? $analystEntity::$Add_rules : $analystEntity::$Add_rules, $messages); $validator->setAttributeNames($analystEntity::$niceNameArray); if ($validator->fails()) { $response->Message = Common::getValidationMessagesFormat($validator->messages()); return $response; } $searchParams = array(); $searchValueData = new SearchValueModel(); $searchValueData->Name = "Title"; $searchValueData->Value = Common::GetDataWithTrim($analystModel['Title']); $searchValueData->CheckStartWith = Constants::$CheckStartWith; array_push($searchParams, $searchValueData); $searchValueData = new SearchValueModel(); $searchValueData->Name = "IsEnable"; $searchValueData->Value = Constants::$IsEnableValue; array_push($searchParams, $searchValueData); if ($isEditMode) { $customWhere = "AnalystID NOT IN ({$analystModel['AnalystID']})"; } else { $customWhere = ""; } $checkUnique = $this->GetEntityCount($analystEntity, $searchParams, "", "", $customWhere); if ($checkUnique == 0) { $dateTime = date(Constants::$DefaultDateTimeFormat); if ($isEditMode) { $analystEntity = $this->GetEntityForUpdateByPrimaryKey($analystEntity, $analystModel['AnalystID']); if ($analystEntity->IsEnable == Constants::$Value_True) { $users = UserEntity::where('IsEnable', Constants::$Value_True)->lists('UserID'); if (count($users) > 0) { foreach ($users as $userID) { $notificationEntity = new NotificationEntity(); $notificationEntity->UserID = $userID; $notificationEntity->NotificationType = Constants::$NotificationType['Analyst']; $notificationEntity->Message = 'Correction - ' . $analystEntity->Title; $notificationEntity->ImageUrl = $analystEntity->Image ? Constants::$Path_AnalystImages . $analystEntity->AnalystID . '/' . rawurlencode($analystEntity->Image) : ''; $notificationEntity->Key = $analystEntity->AnalystID; $notificationEntity->CreatedDate = date(Constants::$DefaultDateTimeFormat); $notificationEntity->save(); } } } } $analystEntity->Title = Common::GetDataWithTrim($analystModel['Title']); $analystEntity->Description = $analystModel['Description']; if (!$isEditMode) { $analystEntity->CreatedDate = $dateTime; } $analystEntity->ModifiedDate = $dateTime; if ($analystdetails = $this->SaveEntity($analystEntity)) { if ($analystdetails) { $response->IsSuccess = true; if ($analystModel['Image']) { if (!is_dir(public_path(Constants::$Path_AnalystImages . $analystEntity->AnalystID))) { mkdir(public_path(Constants::$Path_AnalystImages . $analystEntity->AnalystID), 0755); } else { $path = public_path(Constants::$Path_AnalystImages . $analystEntity->AnalystID . '/'); foreach (glob($path . "*.*") as $file) { unlink($file); } } $destinationPath = public_path(Constants::$Path_AnalystImages . $analystEntity->AnalystID); /* $fileName = $analystModel['Image']->getClientOriginalName(); $originalFileName = Input::file()['Image']->getClientOriginalName(); $resizeFile = $originalFileName->resize(120, 120);*/ $fileName = $analystModel['Image']->getClientOriginalName(); $success = $analystModel['Image']->move($destinationPath, $fileName); if ($success) { $analystEntity->Image = $fileName; $analystEntity->save(); } } } } else { $response->Message = trans('messages.ErrorOccured'); } if (!$isEditMode) { $response->Message = trans('messages.AnalystAddedSuccess'); } else { $response->Message = trans('messages.AnalystUpdateSuccess'); } } else { $response->Message = "'" . Common::GetDataWithTrim($analystEntity['Title']) . "' " . trans('messages.AnalystAlreadyExist'); } return $response; }
public function SavePayment($paymentModel) { $response = new ServiceResponse(); $paymentEntity = new PaymentPlansHistoryEntity(); $validator = Validator::make((array) $paymentModel, $paymentEntity::$AddPayment_rules); $validator->setAttributeNames($paymentEntity::$niceNameArray); if ($validator->fails()) { $response->Message = Common::getValidationMessagesFormat($validator->messages()); return $response; } $searchParams = array(); $searchValueData = new SearchValueModel(); $searchValueData->Name = "PlanID"; $searchValueData->Value = $paymentModel->PlanID; array_push($searchParams, $searchValueData); $planDetails = $this->GetEntity(new PlanEntity(), $searchParams); $dateTime = date(Constants::$DefaultDateTimeFormat); $planName = $planDetails->PlanName; $discount = $planDetails->Amount * $planDetails->Discount / 100; $amount = $planDetails->Amount - $discount; $noOfDays = $planDetails->NoOfDays - 1; $startDate = $paymentModel->StartDate; $trial = $planDetails->IsTrial; $endDate = date(Constants::$DefaultDateTimeFormat, strtotime($startDate . "+" . $noOfDays . " days")); if ($planDetails) { $paymentEntity->UserID = $paymentModel->UserID; $paymentEntity->SubscriptionAmount = $paymentModel->SubscriptionAmount; $paymentEntity->Amount = $amount; $paymentEntity->PlanName = Common::GetDataWithTrim($planName); $paymentEntity->NoOfDays = $planDetails->NoOfDays; $paymentEntity->StartDate = $startDate; $paymentEntity->EndDate = $endDate; $paymentEntity->PaymentDate = $dateTime; $paymentEntity->IsTrial = $trial; $dateTime = date("Y-m-d"); if (strtotime($startDate) <= strtotime($dateTime)) { $paymentEntity->IsActive = Constants::$Value_True; } else { $paymentEntity->IsActive = Constants::$Value_False; } $lastPlan = DB::table('paymentplanshistory')->where("UserID", $paymentModel->UserID)->orderBy("EndDate", "desc")->first(); if (empty($lastPlan) || $lastPlan && strtotime($lastPlan->EndDate) < strtotime($startDate)) { $response->Data = $this->SaveEntity($paymentEntity); $response->IsSuccess = true; $response->Message = trans('messages.addpayment'); if ($paymentEntity->IsActive) { $userNotificationEntity = new UserNotificationEntity(); $userNotificationEntity->Description = trans("messages.PlanActivated", array('startDate' => date(Constants::$SortDisplayDateFormat, strtotime($paymentEntity->StartDate)), 'endDate' => date(Constants::$SortDisplayDateFormat, strtotime($paymentEntity->EndDate)))); $userNotificationEntity->UserID = $paymentEntity->UserID; $userNotificationEntity->CreatedDate = date(Constants::$DefaultDateTimeFormat); $userNotificationEntity->save(); $notificationEntity = new NotificationEntity(); $notificationEntity->UserID = $paymentEntity->UserID; $notificationEntity->NotificationType = Constants::$NotificationType['General']; $notificationEntity->Message = trans("messages.PlanActivated", array('startDate' => date(Constants::$SortDisplayDateFormat, strtotime($paymentEntity->StartDate)), 'endDate' => date(Constants::$SortDisplayDateFormat, strtotime($paymentEntity->EndDate)))); $notificationEntity->Key = (int) Constants::$PaidGroupID; $notificationEntity->CreatedDate = date(Constants::$DefaultDateTimeFormat); $notificationEntity->save(); } } else { $response->Message = "Your Last Plan will end on " . date(Constants::$DefaultDisplayDateFormat, strtotime($lastPlan->EndDate)) . ", Please select future date than this"; } } else { $response->IsSuccess = false; $response->Message = trans('messages.ErrorOccured'); } return $response; }
public function SaveScript($scriptModel, $cUser) { $response = new ServiceResponse(); $messages = array('required' => trans('messages.PropertyRequired'), 'min' => trans('messages.PropertyMin'), 'max' => trans('messages.PropertyMax')); $isEditMode = $scriptModel['ScriptID'] > 0; $scriptEntity = new ScriptEntity(); $validator = Validator::make((array) $scriptModel, $scriptEntity::$Add_rules, $messages); $validator->setAttributeNames($scriptEntity::$niceNameArray); if ($validator->fails()) { $response->Message = Common::getValidationMessagesFormat($validator->messages()); return $response; } $checkUnique = ScriptEntity::where("Script", trim($scriptModel['Script']))->where("SegmentID", $scriptModel['SegmentID'])->where('ScriptID', '!=', $scriptModel['ScriptID'])->first(); if ($checkUnique == null) { $dateTime = date(Constants::$DefaultDateTimeFormat); if ($isEditMode) { $scriptEntity = $this->GetEntityForUpdateByPrimaryKey($scriptEntity, $scriptModel['ScriptID']); } $scriptEntity->Script = Common::GetDataWithTrim($scriptModel['Script']); $scriptEntity->SegmentID = $scriptModel['SegmentID']; if ($scriptDetails = $this->SaveEntity($scriptEntity)) { if ($scriptModel['Image']) { if (!is_dir(public_path(Constants::$Path_ScriptImages . $scriptEntity->ScriptID))) { mkdir(public_path(Constants::$Path_ScriptImages . $scriptEntity->ScriptID), 0755); } else { $path = public_path(Constants::$Path_ScriptImages . $scriptEntity->ScriptID . '/'); foreach (glob($path . "*.*") as $file) { unlink($file); } } $destinationPath = public_path(Constants::$Path_ScriptImages . $scriptEntity->ScriptID); $fileName = $scriptModel['Image']->getClientOriginalName(); $success = $scriptModel['Image']->move($destinationPath, $fileName); if ($success) { $scriptEntity->Image = $fileName; $scriptEntity->save(); } } $response->Message = !$isEditMode ? trans('messages.ScriptAddedSuccess') : trans('messages.ScriptUpdateSuccess'); $response->IsSuccess = true; } else { $response->Message = trans('messages.ErrorOccured'); } } else { $response->Message = "'" . Common::GetDataWithTrim($scriptModel['Script']) . "' " . trans('messages.ScriptAlreadyExist'); } return $response; }
public function SavePlan($planModel, $loginUserID) { $response = new ServiceResponse(); $messages = array('required' => trans('messages.PropertyRequired'), 'min' => trans('messages.PropertyMin'), 'max' => trans('messages.PropertyMax')); $isEditMode = $planModel->PlanID > 0; $planEntity = new PlanEntity(); $validator = Validator::make((array) $planModel, $isEditMode ? $planEntity::$Add_rules : $planEntity::$Add_rules, $messages); $validator->setAttributeNames($planEntity::$niceNameArray); if ($validator->fails()) { $response->Message = Common::getValidationMessagesFormat($validator->messages()); return $response; } $searchParams = array(); $searchValueData = new SearchValueModel(); $searchValueData->Name = "PlanName"; $searchValueData->Value = Common::GetDataWithTrim($planModel->PlanName); $searchValueData->CheckStartWith = Constants::$CheckStartWith; array_push($searchParams, $searchValueData); $searchValueData = new SearchValueModel(); $searchValueData->Name = "IsEnable"; $searchValueData->Value = Constants::$IsEnableValue; array_push($searchParams, $searchValueData); if ($isEditMode) { $customWhere = "PlanID NOT IN ({$planModel->PlanID})"; } else { $customWhere = ""; } $checkUniquePlan = $this->GetEntityCount($planEntity, $searchParams, "", "", $customWhere); if ($checkUniquePlan == 0) { $dateTime = date(Constants::$DefaultDateTimeFormat); if ($isEditMode) { $planEntity = $this->GetEntityForUpdateByPrimaryKey($planEntity, $planModel->PlanID); } $planEntity->PlanName = Common::GetDataWithTrim($planModel->PlanName); $planEntity->Amount = $planModel->Amount; if (isset($planModel->Discount)) { $planEntity->Discount = $planModel->Discount; } $planEntity->NoOfDays = $planModel->NoOfDays; $planEntity->IsEnable = Constants::$IsEnableValue; if (!empty($planModel->IsTrial)) { $planEntity->IsTrial = $planModel->IsTrial; } else { $planEntity->IsTrial = Constants::$Value_False; } if (!$isEditMode) { $planEntity->CreatedDate = $dateTime; } $planEntity->ModifiedDate = $dateTime; if ($this->SaveEntity($planEntity)) { $response->IsSuccess = true; } else { $response->Message = trans('messages.ErrorOccured'); } if (!$isEditMode) { $response->Message = trans('messages.PlanAddedSuccess'); } else { $response->Message = trans('messages.PlanUpdateSuccess'); } } else { $response->Message = "'" . Common::GetDataWithTrim($planModel->PlanName) . "' " . trans('messages.PlanAlreadyExist'); } return $response; }
public function SaveGroup($groupModel, $loginUserID) { $response = new ServiceResponse(); $isEditMode = $groupModel->GroupID > 0; $groupEntity = new GroupEntity(); $searchParams = array(); $searchValueData = new SearchValueModel(); $searchValueData->Name = "GroupName"; $searchValueData->Value = Common::GetDataWithTrim($groupModel->GroupName); $searchValueData->CheckStartWith = Constants::$CheckStartWith; array_push($searchParams, $searchValueData); $searchValueData = new SearchValueModel(); $searchValueData->Name = "IsEnable"; $searchValueData->Value = Constants::$IsEnableValue; array_push($searchParams, $searchValueData); if ($isEditMode) { $customWhere = "GroupID NOT IN ({$groupModel->GroupID})"; } else { $customWhere = ""; } $checkUniqueEmail = $this->GetEntityCount($groupEntity, $searchParams, "", "", $customWhere); if ($checkUniqueEmail == 0) { $dateTime = date(Constants::$DefaultDateTimeFormat); if ($isEditMode) { $groupEntity = $this->GetEntityForUpdateByPrimaryKey($groupEntity, $groupModel->GroupID); } $groupEntity->GroupName = Common::GetDataWithTrim($groupModel->GroupName); $groupEntity->IsEnable = Constants::$IsEnableValue; if (!$isEditMode) { $groupEntity->CreatedDate = $dateTime; $groupEntity->CreatedBy = $loginUserID; } $groupEntity->ModifiedDate = $dateTime; $groupEntity->ModifiedBy = $loginUserID; if ($this->SaveEntity($groupEntity)) { $response->IsSuccess = true; } else { $response->Message = trans('messages.ErrorOccured'); } if (!$isEditMode) { $response->Message = trans('messages.GroupAddedSuccess'); } else { $response->Message = trans('messages.GroupUpdateSuccess'); } } else { $response->Message = "'" . Common::GetDataWithTrim($groupModel->GroupName) . "' " . trans('messages.GroupAlreadyExist'); } return $response; }