[Feature] Prevent sending notification to user when bulk reassign

This commit is contained in:
Julien Fastré 2022-10-06 21:44:23 +02:00
parent 86cfd87d71
commit cf0252b469
5 changed files with 11 additions and 9 deletions

View File

@ -39,18 +39,12 @@ function loadDynamicPickers(element) {
apps.forEach(function(el) { apps.forEach(function(el) {
console.log('el', el);
const const
uniqId = el.dataset.uniqid, uniqId = el.dataset.uniqid,
input = document.querySelector(`input[data-input-uniqid="${uniqId}"]`), input = document.querySelector(`input[data-input-uniqid="${uniqId}"]`),
cityIdValue = input.value === '' ? null : input.value cityIdValue = input.value === '' ? null : input.value
; ;
console.log('uniqid', uniqId);
console.log('input', input);
console.log('input value', input.value);
console.log('cityIdValue', cityIdValue);
if (cityIdValue !== null) { if (cityIdValue !== null) {
makeFetch('GET', `/api/1.0/main/postal-code/${cityIdValue}.json`).then(city => { makeFetch('GET', `/api/1.0/main/postal-code/${cityIdValue}.json`).then(city => {
loadOnePicker(el, input, uniqId, city); loadOnePicker(el, input, uniqId, city);

View File

@ -65,7 +65,6 @@ export default {
return (value.code && value.name) ? `${value.name} (${value.code})` : ''; return (value.code && value.name) ? `${value.name} (${value.code})` : '';
}, },
selectCity(city) { selectCity(city) {
console.log('city', city);
this.$emit('selectCity', city); this.$emit('selectCity', city);
}, },
listenInputSearch(query) { listenInputSearch(query) {

View File

@ -62,6 +62,7 @@ class UserRefEventSubscriber implements EventSubscriberInterface
&& $period->getUser() !== $this->security->getUser() && $period->getUser() !== $this->security->getUser()
&& null !== $period->getUser() && null !== $period->getUser()
&& $period->getStep() !== AccompanyingPeriod::STEP_DRAFT && $period->getStep() !== AccompanyingPeriod::STEP_DRAFT
&& !$period->isPreventUserIsChangedNotification()
) { ) {
$this->generateNotificationToUser($period); $this->generateNotificationToUser($period);
} }

View File

@ -127,7 +127,7 @@ class ReassignAccompanyingPeriodController extends AbstractController
$period = $this->courseRepository->find($periodId); $period = $this->courseRepository->find($periodId);
if ($period->getUser() === $userFrom) { if ($period->getUser() === $userFrom) {
$period->setUser($userTo); $period->setUser($userTo, true);
} }
} }

View File

@ -265,6 +265,8 @@ class AccompanyingPeriod implements
*/ */
private ?Comment $pinnedComment = null; private ?Comment $pinnedComment = null;
private bool $preventUserIsChangedNotification = false;
/** /**
* @ORM\Column(type="text") * @ORM\Column(type="text")
* @Groups({"read", "write"}) * @Groups({"read", "write"})
@ -1048,6 +1050,11 @@ class AccompanyingPeriod implements
return false; return false;
} }
public function isPreventUserIsChangedNotification(): bool
{
return $this->preventUserIsChangedNotification;
}
public function isRequestorAnonymous(): bool public function isRequestorAnonymous(): bool
{ {
return $this->requestorAnonymous; return $this->requestorAnonymous;
@ -1343,11 +1350,12 @@ class AccompanyingPeriod implements
return $this; return $this;
} }
public function setUser(?User $user): self public function setUser(?User $user, bool $preventNotification = false): self
{ {
if ($this->user !== $user) { if ($this->user !== $user) {
$this->userPrevious = $this->user; $this->userPrevious = $this->user;
$this->userIsChanged = true; $this->userIsChanged = true;
$this->preventUserIsChangedNotification = $preventNotification;
foreach ($this->userHistories as $history) { foreach ($this->userHistories as $history) {
if (null === $history->getEndDate()) { if (null === $history->getEndDate()) {