Wiki source code of Příklady podmínek

Version 16.1 by Petr Benda on 2024/12/30 08:26

Show last authors
1 {{toc/}}
2
3 = Obecné podmínky na dílo, svazek, čtenáře =
4
5 |(% colspan="1" %)(((
6 (% class="table-bordered" %)
7 (% class="active" %)|**Popis podmínky**|(% colspan="1" %)**Podmínka FOX/SQL**|(% colspan="1" %)**Podmínka v [[TQL - Tritius Query Language>>doc:uzivatelsky-manual.Pro-spravce.TQL-Tritius-Query-Language.WebHome]]**|**PodmínkaSQL**|(% colspan="1" %)**Automatický převod**
8 |Titulová podmínka na druh dokumentu kromě AV Media|(% colspan="1" %)druhdoku<>'AV'|(% colspan="1" %)workTypeId <> -7| |(% colspan="1" %)
9 |(% colspan="1" %) |(% colspan="1" %)tsign like 'TK%' or tsign like 'DH%'|(% colspan="1" %)workLocMark STARTS IN ('TK', 'DH')|(% colspan="1" %) |(% colspan="1" %)
10 |(% colspan="1" %) |(% colspan="1" %)druhdoku='AV' and tsign not like 'DVDB%'|(% colspan="1" %)workTypeId = -7 AND workLocMark NOT STARTS 'DVDB'|(% colspan="1" %) |(% colspan="1" %)
11 |Svazková podmínka na kategorii (kategorie<>N)|(% colspan="1" %)kategorie<>'N'|(% colspan="1" %)itemBorrowCategoryExternalId IS NULL OR itemBorrowCategoryExternalId <> 'N'| |(% colspan="1" %)Ano
12 |(% colspan="1" %)Svazková kategorie je|(% colspan="1" %)inlist(kategorie,'N','L')|(% colspan="1" %)itemBorrowCategoryId IN (4, 1)|(% colspan="1" %) |(% colspan="1" %)
13 |Čtenářská podmínka (kategorie=I)|(% colspan="1" %) |(% colspan="1" %)(((
14 userCategoryCode = 'I'
15
16 nebo
17
18 userCategoryId IN (201, 310, 311, 308)
19 )))| |(% colspan="1" %)
20 |Svazková podmínka (lokace in)|(% colspan="1" %) |(% colspan="1" %)itemLocationExternalId IN ('501H', '501H1', '501H2')|i.location in (1,4,6)|(% colspan="1" %)
21 |(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)itemLocationId IN (40, 29, 43, 39, 42, 1)|(% colspan="1" %) |(% colspan="1" %)
22 |(% colspan="1" %)Svazková podmínka na signaturu|(% colspan="1" %)sign in ('M PK','IS','BI','PE','NA','KA','RE','EK','PK','OS')|(% colspan="1" %)itemLocMarkValueShow IN ('M PK', 'IS', 'BI', 'PE', 'NA', 'KA', 'RE', 'EK', 'PK', 'OS')|(% colspan="1" %) |(% colspan="1" %)
23 |Titulová podmínka druh dokumentu (v tomto případě MVS|(% colspan="1" %) |(% colspan="1" %)itemType = 'ILS'| |(% colspan="1" %)
24 |(% colspan="1" %)Poznámka začíná textem|(% colspan="1" %)poznamka='Novink'|(% colspan="1" %)itemNote STARTS 'Novink'|(% colspan="1" %) |(% colspan="1" %)
25 |Podmínka prezenčnosti posledního čísla periodika|(% colspan="1" %) |(% colspan="1" %)(((
26 workTypeId = -8
27
28 Poslední čísla periodik: 1
29 )))| |(% colspan="1" %)
30 |Čtenářská podmínka (do 15 let)|(% colspan="1" %)DekodVek(rcislo)<15|(% colspan="1" %)userAge < 15| |(% colspan="1" %)Ano
31 |Do 27 let a profese student|(% colspan="1" %) |(% colspan="1" %)userAge < 27 AND userProfessionId = -8| |(% colspan="1" %)
32 |Signatura začíná|(% colspan="1" %) |(% colspan="1" %)itemLocMarkValueShow STARTS 'PK'|lm.value_show like "PK%"|(% colspan="1" %)
33 |Povolání důchodce|(% colspan="1" %) |(% colspan="1" %)userProfessionId = -2| |(% colspan="1" %)
34 |(% colspan="1" %)Povolání Důchodce, Student nebo V domácnosti|(% colspan="1" %)inlist(prof,'d','s','V')|(% colspan="1" %)userProfessionId IN (-2, -8, -11)|(% colspan="1" %) |(% colspan="1" %)
35 |(% colspan="1" %)Škola (id 3)|(% colspan="1" %)skola='b'|(% colspan="1" %)userSchoolId = 3|(% colspan="1" %) |(% colspan="1" %)
36 |Domovské oddělení čtenáře je (kde="D");|(% colspan="1" %) |(% colspan="1" %)userDefaultDepartmentShortcut = 'D'| |(% colspan="1" %)
37 |(((
38 Signatura  je (sign in ('PK','RR','S','X')
39
40
41 )))|(% colspan="1" %) |(% colspan="1" %)itemLocMarkValueShow STARTS IN ('PK', 'RR', 'S', 'X')| |(% colspan="1" %)
42 |Kategorie X, M nebo ccislo > 9999799|(% colspan="1" %)inlist(kategorie,'X','M') or ccislo>9999799|(% colspan="1" %)userCategoryCode IN ('X', 'M') OR userReaderNumberValue > 9999799| |(% colspan="1" %)Ano
43 |Kategorie I, N|(% colspan="1" %)inlist(kategorie,'I','N')|(% colspan="1" %)userCategoryCode IN ('I', 'N')| |(% colspan="1" %)Ano
44 |(% colspan="1" %) |(% colspan="1" %)DekodVek(rcislo)<15|(% colspan="1" %)userAge < 15|(% colspan="1" %) |(% colspan="1" %)Ano
45 |(% colspan="1" %) |(% colspan="1" %)DekodVek(rcislo)<16|(% colspan="1" %)userAge < 16|(% colspan="1" %) |(% colspan="1" %)Ano
46 |(% colspan="1" %) |(% colspan="1" %)prof='s'|(% colspan="1" %)userProfessionId = -8|(% colspan="1" %) |(% colspan="1" %)Ano
47 |(% colspan="1" %) |(% colspan="1" %)prof='d'|(% colspan="1" %)userProfessionId = -2|(% colspan="1" %) |(% colspan="1" %)Ano
48 | |(% colspan="1" %)druhdoku='AV'|(% colspan="1" %)workTypeId = -7| |(% colspan="1" %)Ano
49 | |(% colspan="1" %)druhdoku='PE'|(% colspan="1" %)workTypeId = -8| |(% colspan="1" %)Ano
50 |(% colspan="1" %) |(% colspan="1" %)druhdoku='VS'|(% colspan="1" %)itemType = 'ILS'|(% colspan="1" %) |(% colspan="1" %)Ano
51 |(% colspan="1" %) |(% colspan="1" %)druhdoku<>'AV' and druhdoku<>'VS'|(% colspan="1" %)workTypeId <> -7 AND itemType <> 'ILS'|(% colspan="1" %) |(% colspan="1" %)Ano
52 | |(% colspan="1" %)sign like 'BIS%'|(% colspan="1" %)itemLocMarkValueShow STARTS 'BIS'| |(% colspan="1" %)Ano
53 |(% colspan="1" %) |(% colspan="1" %)sign in ('BIS')|(% colspan="1" %)itemLocMarkValueShow = 'BIS'|(% colspan="1" %) |(% colspan="1" %)
54 |(% colspan="1" %) |(% colspan="1" %)lokace in ('BIS','PK')|(% colspan="1" %)itemLocationExternalId IN ('BIS', 'PK')|(% colspan="1" %) |(% colspan="1" %)Ano
55 |(% colspan="1" %) |(% colspan="1" %)lokace not like '%m%'|(% colspan="1" %)itemLocationCode NOT CONTAINS 'm'|(% colspan="1" %) |(% colspan="1" %)
56 |(% colspan="1" %) |(% colspan="1" %)sign like '%H'|(% colspan="1" %)itemLocMarkValueShow ENDS 'H'|(% colspan="1" %) |(% colspan="1" %)
57 |(% colspan="1" %) |(% colspan="1" %)kategorie='M'|(% colspan="1" %)userCategoryCode = 'M'|(% colspan="1" %) |(% colspan="1" %)Ano
58 |(% colspan="1" %) |(% colspan="1" %)kategore <> M|(% colspan="1" %)userCategoryCode IS NULL OR userCategoryCode <> 'M'|(% colspan="1" %) |(% colspan="1" %)
59 |(% colspan="1" %) |(% colspan="1" %)lokace<>'HO' and kategorie<>'N'|(% colspan="1" %)itemLocationCode <> 'HO' AND (itemBorrowCategoryExternalId IS NULL OR itemBorrowCategoryExternalId <> 'N')|(% colspan="1" %) |(% colspan="1" %)
60 |(% colspan="1" %)Čtenář starší 70 let|(% colspan="1" %)DekodVek(rcislo)>=70|(% colspan="1" %)userAge >= 70|(% colspan="1" %) |(% colspan="1" %)
61 |(% colspan="1" %)Podmínka kategorie operací pro AV média|(% colspan="1" %)druhdoku='AV' and nosic='CD'|(% colspan="1" %)workTypeId = -7 AND workMedium STARTS 'CD'|(% colspan="1" %) |(% colspan="1" %)Ano
62 |(% colspan="1" %)Podmínka webové definice|(% colspan="1" %)S.kategorie<>'*' and S.lokace not in ('VF')|(% colspan="1" %)itemType <> 'ILS' AND itemLibraryId = 1 AND itemLocationId <> 3 AND (itemBorrowCategoryId IS NULL OR itemBorrowCategoryId <> 3)|(% colspan="1" %) |(% colspan="1" %)
63 |(% colspan="1" %)Podmínka prohledávaných oblastí|(% colspan="1" %)S.lokace in ('DOSP')|(% colspan="1" %)itemLocationCode = 'DOSP'|(% colspan="1" %) |(% colspan="1" %)
64 |(% colspan="1" %)~-~- dtto ~-~-|(% colspan="1" %)S.lokace='M'|(% colspan="1" %)itemLocationCode = 'M'|(% colspan="1" %) |(% colspan="1" %)
65 |(% colspan="1" %)~-~- dtto ~-~-|(% colspan="1" %)S.lokace='HUD'|(% colspan="1" %)itemLocationCode = 'HUD'|(% colspan="1" %) |(% colspan="1" %)
66 |(% colspan="1" %) |(% colspan="1" %)cena>=700|(% colspan="1" %)itemPrice >= 700.0|(% colspan="1" %) |(% colspan="1" %)
67 |(% colspan="1" %)Poslední návštěva pod čtenáře.
68 Nastavení - Vlastní informace|(% colspan="1" %) |(% colspan="1" %)UserVisit lastUserVisit = userVisitService.loadLastVisit(reader, department, now);|(% colspan="1" %) |(% colspan="1" %)
69 |(% colspan="1" %)Registrace do(((
70 Nastavení - Vlastní informace
71 )))|(% colspan="1" %) |(% colspan="1" %)(((
72 if (charge != null) {
73
74 result += ", " + readerContainer.translate("Reg_until") + ": " + DateHelper.formatDate(charge.getDateTo());
75
76 }
77 )))|(% colspan="1" %) |(% colspan="1" %)
78 |(% colspan="1" %)Cena svazku je větší než 500|(% colspan="1" %) |(% colspan="1" %)itemPrice > 500|(% colspan="1" %)return item.getPrice() ~!= null && item.getPrice().compareTo(new java.math.BigDecimal(500)) > 0;|(% colspan="1" %)
79 |(% colspan="1" %)tematika =|(% colspan="1" %)tematika='6'|(% colspan="1" %)itemThematicGroupId IS NULL OR itemThematicGroupId = 3|(% colspan="1" %)return item.getThematicGroup() == null ~|~| item.getThematicGroup().getId().equals(3L)
80 |(% colspan="1" %)Nevyplněná adresa čtenáře s vyloučenými kategoriemi a čtenářské číslo menší než 9999000|(% colspan="1" %)(tulice=' ' or tmesto=' ' or tpsc=' ') and  !inlist(kategorie,'h','M','X') and ccislo < 9999000 |(% colspan="1" %)(userStreetNumberPermanent = '' OR userCityPermanent = '' OR userPostNumberPermanent = '')
81 AND (userCategoryCode IS NULL OR userCategoryCode NOT IN ('h', 'M', 'X'))
82 AND userReaderNumberValue < 9999000|(% colspan="1" %)return (user.getStreetNumberPermanent().isEmpty() ~|~| user.getCityPermanent().isEmpty() ~|~| user.getPostNumberPermanent().isEmpty())
83 && !((user.getCategory() ~!= null && user.getCategory().getCode().equals("h")) ~|~| (user.getCategory() ~!= null && user.getCategory().getCode().equals("M")) ~|~| (user.getCategory() ~!= null && user.getCategory().getCode().equals("X"~)~)~)
84 && (user.getReaderNumber() ~!= null && user.getReaderNumber().getValue() < 9999000);
85 |(% colspan="1" %)Nevyplněná občanka u čtenářů starších 15 let s vyloučenými kategoriemi a čtenářské číslo menší než 9999000|(% colspan="1" %)obcanka=' ' and DekodVek(rcislo)>=15 and !inlist(kategorie,'M','h','X') and ccislo < 9999000 |(% colspan="1" %)userIdentityCardNumber IS NULL
86 AND userAge >= 15
87 AND (userCategoryCode IS NULL OR userCategoryCode NOT IN ('h', 'M', 'X'))
88 AND userReaderNumberValue < 9999000|(% colspan="1" %)return !(user.getIdentityCardNumber() ~!= null)
89 && (user.getAge(now) ~!= null && user.getAge(now) >= 15)
90 && !((user.getCategory() ~!= null && user.getCategory().getCode().equals("h")) ~|~| (user.getCategory() ~!= null && user.getCategory().getCode().equals("M")) ~|~| (user.getCategory() ~!= null && user.getCategory().getCode().equals("X"~)~)~)
91 && (user.getReaderNumber() ~!= null && user.getReaderNumber().getValue() < 9999000);
92 |(% colspan="1" %)(((
93 Podmínka na aktuální datum a čas.
94
95 2.3.2020 00:00:00 - 6.3.2020 23:59:59
96 )))|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)boolean afterStart =cz.effectiva.tritius.shared.DateHelper.parse("2.3.2020 00:00:00", "dd.MM.yyyy HH:mm:ss").compareTo(now) <= 0;
97 boolean beforeEnd = cz.effectiva.tritius.shared.DateHelper.parse("6.3.2020 23:59:59", "dd.MM.yyyy HH:mm:ss").compareTo(now) >= 0;
98 return afterStart && beforeEnd;
99 |(% colspan="1" %)Podmínka pro anonymní vracení, kdy svazek není půjčený|(% colspan="1" %) |(% colspan="1" %)userId = -147|(% colspan="1" %)return user.getId() ~!= null && user.getId() == -147;
100 |(% colspan="1" %)Podmínka pro více čtenářských čísel|(% colspan="1" %) |(% colspan="1" %)userReaderNumberValue IN (9999967, 7980, 7981, 7982, 7983, 7984)|(% colspan="1" %)return userResult.getUser().getReaderNumber() ~!= null
101 && java.util.Arrays.asList(9999967L, 7980L, 7981L, 7982L, 7983L,7984L).contains(userResult.getUser().getReaderNumber().getValue());
102 |(% colspan="1" %)Pravidlo registrací na určité datum, rozsah datumů nebo rozsah časů|(% colspan="1" %) |(% colspan="1" %)currentDate = '14.02.2022' OR currentDate BETWEEN ('01.03.2022', '31.03.2022') OR currentTime BETWEEN ('16:00', '17:00')|(% colspan="1" %)return user.isDate("14.02.2022") ~|~| user.isBetweenDate("01.03.2022", "31.03.2022") ~|~| user.isTimeBetween("16:00", "17:00");
103 |(% colspan="1" %)Svazek je starší než dva roky|(% colspan="1" %) |(% colspan="1" %)itemDateCreated <= nowAddMonths(-24)|(% colspan="1" %)return item.isOlderThan("dateCreated", 2, 0, 0);
104 |(% colspan="1" %)Čtenář má 2 a více e-knih (výpůjčka 3. a další e-knihy) ze sklízeného zdroje ID -3, -4 za posledních 31 dní.|(% colspan="1" %) |(% colspan="1" %)(((
105 ~/~/ Titulová podmínka
106 workTypeId = -31
107
108 ~/~/ Čtenářská podmínka
109 userElectronicBorrowingsCount(31, -3, -4) >= 2
110 )))|(% colspan="1" %)(((
111 ~/~/ Titulová podmínka
112 return work.isInWorkType(-31L);
113
114 ~/~/ Čtenářská podmínka
115 return getElectronicBorrowingsCount(user, department, now, 31, -3L, -4L) >= 2;
116 )))
117 |(% colspan="1" %)Čtenář má 2 a více e-knih (výpůjčka 3. a další e-knihy) ze sklízeného zdroje ID -3 a -4 za aktuální kalendářní měsíc.|(% colspan="1" %) |(% colspan="1" %)(((
118 ~/~/ Titulová podmínka
119 workTypeId = -31
120
121 ~/~/ Čtenářská podmínka
122 userElectronicBorrowingsCurrentMonthCount(-3, -4) >= 2
123 )))|(% colspan="1" %)(((
124 ~/~/ Titulová podmínka
125 return work.isInWorkType(-31L);
126
127 ~/~/ Čtenářská podmínka
128 return getElectronicBorrowingsCurrentMonthCount(user, department, now, -3L, -4L) >= 2;
129 )))
130 |(% colspan="1" %)Každá výpůjčka e-knihy ze sklízeného zdroje ID -3 a -4 za posledních 31 dní.|(% colspan="1" %) |(% colspan="1" %)(((
131 ~/~/ Titulová podmínka
132 workTypeId = -31
133
134 ~/~/ Čtenářská podmínka
135 userElectronicBorrowingsCount(31, -3, -4) >= 0
136 )))|(% colspan="1" %)(((
137 ~/~/ Titulová podmínka
138 return work.isInWorkType(-31L);
139
140 ~/~/ Čtenářská podmínka
141 return getElectronicBorrowingsCount(user, department, now, 31, -3L, -4L) >= 0;
142 )))
143 |(% colspan="1" %)Čtenář má dohromady 2 a více e-knih nebo audioknih (výpůjčka 3. a dalšího e-dokumentu) ze sklízeného zdroje ID -6 za aktuální kalendářní měsíc.|(% colspan="1" %) |(% colspan="1" %)(((
144 ~/~/ Titulová podmínka
145 workTypeId IN (-31, -32)
146
147 ~/~/ Čtenářská podmínka
148 userElectronicBorrowingsCurrentMonthCount(-6) >= 2
149 )))|(% colspan="1" %)
150 |(% colspan="1" %)Kontrola abecedy na regálech v revizi|(% colspan="1" %) |(% colspan="1" %)~/~/ V revizi je potřeba povolit použítí regálů
151 ~/~/ Pro každé písmeno abecedy je potřeba vytvořit vlastní regál
152 ~/~/ Titulová podmínka
153 workAuthorShow STARTS 'A' OR (workAuthorShow = '' AND workTitleShow STARTS 'A')|(% colspan="1" %)~/~/ V revizi je potřeba povolit použítí regálů
154 ~/~/ Pro každé písmeno abecedy je potřeba vytvořit vlastní regál
155 ~/~/ Titulová podmínka
156 return work.getAuthorShow() ~!= null && !work.getAuthorShow().isEmpty() ? work.getAuthorShow().startsWith("A") : work.getTitleShow().startsWith("A");
157 |(% colspan="1" %)Dílo/svazek má přiřazený alespoň jeden z uvedených štítků (zadává se ID štítku)|(% colspan="1" %) |(% colspan="1" %)(((
158 ~/~/ Titulová podmínka
159 workHasAnyLabelIds(5, 8)
160
161 ~/~/ Svazková podmínka
162 itemHasAnyLabelIds(5, 8)
163 )))|(% colspan="1" %)
164 |(% colspan="1" %)Dílo/svazek má přiřazené všechny uvedené štítky (zadává se ID štítku)|(% colspan="1" %) |(% colspan="1" %)(((
165 ~/~/ Titulová podmínka
166 workHasAllLabelIds(3, 6)
167
168 ~/~/ Svazková podmínka
169 itemHasAllLabelIds(3, 6)
170 )))|(% colspan="1" %)
171 )))|(% colspan="1" %)
172
173 = SQL podmínky (na díla, svazky, ...) =
174
175 * Používají se u některých definic.
176 ** Např. prohledávané oblasti, webové definice, revize, ...
177 * Takto zadané podmínky musí jít transformovat:
178 *1. Do ujormu - používá používá jiné aliasy než se zadávají v podmínkách.
179 *1. Do javy - svazky/díla se načítají hromadně a pak se teprve vyhodnocuje, zda patří/nepatří k dané definici (revizi, oblasti apod.).
180 * SQL konstrukce tedy nejsou podporovány automaticky, ale musí se pro ně podpora programovat → **ne každé SQL jde vždy použít!**
181
182 == Podmínky na čas ==
183
184 * Může být potřeba omezit např. revizi jen na nové/staré svazky - do svazková podmínka omezená pod data vytvoření.
185 * Příklad: **i.date_created < '2015-06-15'**
186 * Časové podmínky podporují tyto operátory: 
187 ** =, <. <=, >, >=.
188 * Jdou podporovány následující formáty datumu:
189 ** '2020-03-26'
190 ** '2020-03-26 14:50:00'
191 ** '2020-03-26 14:50:00.000'
192
193 * **Pokud bude použit jiný operátor nebo formát datumu, nebude SQL podmínka validní, popř. nemusí fungovat správně!**
194
195 = Pravidla akcí - Změny před/po akci =
196
197 |(((
198 (% class="table-bordered" %)
199 (% class="active" %)|=Popis|=(% colspan="1" %)[[TQL - Tritius Query Language>>doc:uzivatelsky-manual.Pro-spravce.TQL-Tritius-Query-Language.WebHome]] před akcí od verze 6.1.0|=(% colspan="1" %)[[TQL - Tritius Query Language>>doc:uzivatelsky-manual.Pro-spravce.TQL-Tritius-Query-Language.WebHome]] po akci od verze 6.1.0|=(% colspan="1" %)JAVA podmínka před akcí|=JAVA podmínka po akci|=(% colspan="1" %)Poznámka
200 |(% colspan="1" %)Přepůjčení svazku čtenáři s id = 1|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)skipReservations(params);|(% colspan="1" %)borrowToReader(1L, item, department, now);|(% colspan="1" %)Od verze 1.22.0
201 |(% colspan="1" %)Přepůjčení svazku čtenáři s id = 1 pokud neexistuje rezervace|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)borrowToReaderIfNotReserved(1L, item, department, now);|(% colspan="1" %)Od verze 1.28.0
202 |(% colspan="1" %)Změna kategorie svazku po vrácení|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)item.setBorrowCategory(serviceProvider.getBorrowCategoryService().load(1102L));|(% colspan="1" %)-
203 |(% colspan="1" %)Změna lokace svazku po vrácení|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)item.setLocation(serviceProvider.getLocationService().load(1L));|(% colspan="1" %)-
204 |(% colspan="1" %)Změna lokace a vlastnící lokace svazku po vrácení|(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %) |(% colspan="1" %)(((
205 item.setLocation(serviceProvider.getLocationService().load(245L));
206
207 item.setLocationOwner(serviceProvider.getLocationService().load(245L));
208 )))|(% colspan="1" %)-
209
210 (% class="table-bordered" %)
211 (% class="active" %)|=(% style="width: 142px;" %)Popis|=(% style="width: 213px;" %)[[TQL - Tritius Query Language>>doc:uzivatelsky-manual.Pro-spravce.TQL-Tritius-Query-Language.WebHome]]|=(% style="width: 1230px;" %)JAVA podmínka|=Poznámka
212 |(% style="width:142px" %)Čtenářská podmínka, zda má čtenář platnou registraci na oddělení, na které přichází.|(% style="width:213px" %) |(% style="width:1230px" %)cz.effectiva.tritius.server.ao.contexts.ServiceContext context = cz.effectiva.tritius.utils.UserContext.createCurrentContext(now); cz.effectiva.tritius.server.usecase.registration.CheckRegistrationRequest request = cz.effectiva.tritius.server.usecase.registration.CheckRegistrationRequest.lastEndingActiveOf(userResult.getUser(), department, context); return serviceProvider.getRegistrationService().checkRegistration(request).isHasActiveRegistration();|-
213 |(% style="width:142px" %)Čtenářská podmínka, zda má čtenář platnou registraci na oddělení id=123.|(% style="width:213px" %) |(% style="width:1230px" %)cz.effectiva.tritius.server.ao.contexts.ServiceContext context = cz.effectiva.tritius.utils.UserContext.createCurrentContext(now); department = serviceProvider.getDepartmentService().load(123L); cz.effectiva.tritius.server.usecase.registration.CheckRegistrationRequest request = cz.effectiva.tritius.server.usecase.registration.CheckRegistrationRequest.lastEndingActiveOf(userResult.getUser(), department, context); return serviceProvider.getRegistrationService().checkRegistration(request).isHasActiveRegistration();|-
214
215
216 **Automatické přepůjčení na karanténu**
217
218 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2021-3-23_12-8-7.png?version=1&modificationDate=1616497688000&api=v2]]
219 )))
220
221 = Dispečink internetu =
222
223 (% class="table-bordered" %)
224 (% class="active" %)|=Popis příkazu|=(% colspan="1" style="width: 359px;" %)Podmínka v [[TQL - Tritius Query Language>>doc:uzivatelsky-manual.Pro-spravce.TQL-Tritius-Query-Language.WebHome]]|=(% colspan="1" style="width: 1024px;" %)Java podmínka|=(% colspan="1" %)Poznámka
225 |(% colspan="1" %)Podmínka na konkrétního uživatele|(% colspan="1" style="width:359px" %)userReaderNumberValue= 644|(% colspan="1" style="width:1024px" %)return (userResult ~!= null && userResult.getUser() ~!= null && userResult.getUser().getReaderNumber() ~!=null) ? userResult.getUser().getReaderNumber().getValue().equals(644L) : false;|(% colspan="1" %)
226
227 = Vlastní informace =
228
229 Používá se **FreeMarker**. Viz Google a psaní podmínek.
230
231 (% class="table-bordered" %)
232 (% class="active" %)|=(% style="width: 255px;" %)Popis|=(% colspan="1" style="width: 745px;" %)Kód|=(% style="width: 517px;" %)Náhled
233 |(% style="width:255px" %)(((
234 Čtenářské číslo; - Jméno čtenáře
235
236 Datum narození; Datum poslední návštěvy; - Počet čekajících rezervací a odložení; - Text z kolonky POZOR
237 )))|(% colspan="1" style="width:745px" %)(((
238 <#if container.getBirthdate()??>
239 ${container.getBirthdate()?datetime?string('dd.MM.yy')}
240 </#if>
241
242 ${container.getInfoLastVisit()}
243
244 <#if container.getWaitingRequestsCount()!=0>
245 <font color="red"> - ${container.translate("Waiting_reservations/retrievals")} - ${container.getWaitingRequestsCount()}</font>
246 </#if>
247
248 <#if container.hasCautionNote()>
249 - <font color="red"> ${container.getCautionNote()}</font>
250 </#if>
251 )))|(% style="width:517px" %)(((
252 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2019-9-3%209%3A29%3A14.png?version=1&modificationDate=1567495748000&api=v2]]
253 )))
254 |(% colspan="1" style="width:255px" %)(((
255 Čtenářské číslo; - Jméno čtenáře
256
257 Věk čtenáře; @ pokud má čtenář vyplněný email; Datum poslední návštěvy; Datum konce registrace
258 )))|(% colspan="1" style="width:745px" %)<#if container.getAgeFormated()??>
259 Věk: ${container.getAgeFormated()}
260 </#if>
261 ${container.getInfoMailLastVisitEndingRegistration()}|(% colspan="1" style="width:517px" %)(((
262 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2019-9-3%209%3A33%3A56.png?version=1&modificationDate=1567496030000&api=v2]]
263 )))
264 |(% colspan="1" style="width:255px" %)(((
265 Čtenářské číslo; - Jméno čtenáře
266
267 Počet čekajících rezervací a odložení; Datum poslední návštěvy; Datum konce registrace
268 )))|(% colspan="1" style="width:745px" %)(((
269 <#if container.getWaitingRequestsCount()!=0>
270 <font color="red">${container.translate("Waiting_retrievals")}: ${container.getWaitingRequestsCount()}
271 </font>
272 </#if>
273
274 ${container.getInfoMailLastVisitEndingRegistration()}
275 )))|(% colspan="1" style="width:517px" %)(((
276 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2019-9-3%209%3A37%3A5.png?version=1&modificationDate=1567496219000&api=v2]]
277 )))
278 |(% colspan="1" style="width:255px" %)(((
279 Čtenářské číslo; - Jméno čtenáře
280
281 @ pokud má čtenář vyplněný email; Datum poslední návštěvy; Datum konce registrace (zeleně pokud platí, červeně pokud již skončila)
282 )))|(% colspan="1" style="width:745px" %)${container.getInfoMailLastVisit()}
283 <#if container.isRegistrationExpired() && container.loadLastEndingRegistrationCharge()??>
284 <font color="red">${container.loadLastEndingRegistrationCharge()?string("dd.MM.yyyy")}</font>
285 </#if>
286 <#if container.isRegistrationExpired()==false && container.loadLastEndingRegistrationCharge()??>
287 <font color="green">${container.loadLastEndingRegistrationCharge()?string("dd.MM.yyyy")}</font>
288 </#if>|(% colspan="1" style="width:517px" %)(((
289 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2019-9-6%2011%3A1%3A21.png?version=1&modificationDate=1567760475000&api=v2]]
290 )))
291 |(% colspan="1" style="width:255px" %)(((
292 Čtenářské číslo; - Jméno čtenáře
293
294 @ pokud má čtenář vyplněný email; Datum poslední návštěvy; Datum konce registrace (zeleně pokud platí, červeně pokud během 31 dní vyprší)
295 )))|(% colspan="1" style="width:745px" %)(((
296 ${container.getInfoMailLastVisit()}
297
298 <#if container.getWaitingRequestsCount()!=0>
299 <font color="red"> - ${container.translate("Waiting_reservations/retrievals")} - ${container.getWaitingRequestsCount()}</font>
300 </#if>
301
302 <#if container.loadLastEndingRegistrationCharge()?? >
303 Reg. do:
304 <#if container.loadLastEndingRegistrationCharge()?long lt .now?long + (31 * 86400000) >
305 <font color="red">
306 <#else>
307 <font color="green">
308 </#if>
309 ${container.loadLastEndingRegistrationCharge()?string("dd.MM.yyyy")}</font>
310 </#if>
311 )))|(% colspan="1" style="width:517px" %)(((
312 [[image:https://confluence.tritius.cz/download/attachments/35815451/snimek-vlastni-info.png?version=1&modificationDate=1602765335000&api=v2]]
313 )))
314 |(% colspan="1" style="width:255px" %)Věk obarvený podle let. Nad 15 (a zároveň) červený, pod 15 modrý. |(% colspan="1" style="width:745px" %)<#if container.getAgeFormated()??>
315 <#if container.getAgeFormated()?number gte 15>
316 Věk: <font color="red"> ${container.getAgeFormated()}</font>
317 <#else>
318 Věk: <font color="blue"> ${container.getAgeFormated()}</font>
319 </#if>
320 </#if>|(% colspan="1" style="width:517px" %)
321 |(% colspan="1" style="width:255px" %)(((
322 Rozpis počtu čekajících objednávek čtenáře.
323
324 Jednotlivé typy objednávek se oddělují lomenem.
325
326 Odložení z poličky a objednávky ze skladu sčítá dohromady.
327
328 Daný typ se zobrazuje pouze pokud pro daný typ existuje alespoň jedna čekající objednávka.
329
330
331 )))|(% colspan="1" style="width:745px" %)(((
332 ${container.getInfoMailLastVisit()}
333
334 <#if (container.getWaitingRequestsCount() != 0 ||
335 container.getInsertedBoxRetrievalRequestsDepartmentCount() != 0)>
336 <font color="red"> - Ček.
337
338 <#if container.getWaitingReservationCount() != 0>
339 rez. ${container.getWaitingReservationCount()}
340 </#if>
341
342 <#if (container.getWaitingShelfRetrievalRequestsDepartmentCount() != 0 ||
343 container.getWaitingStackRetrievalRequestsDepartmentCount() != 0)>
344 <#if container.getWaitingReservationCount() != 0> / </#if>
345 odl. ${(container.getWaitingShelfRetrievalRequestsDepartmentCount() +
346 container.getWaitingStackRetrievalRequestsDepartmentCount())}
347 </#if>
348
349 <#if container.getInsertedBoxRetrievalRequestsDepartmentCount() != 0>
350 <#if (container.getWaitingReservationCount() != 0 ||
351 container.getWaitingShelfRetrievalRequestsDepartmentCount() != 0 ||
352 container.getWaitingStackRetrievalRequestsDepartmentCount() != 0)> / </#if>
353 box ${container.getInsertedBoxRetrievalRequestsDepartmentCount()}
354 </#if>
355
356 <#if container.getWaitingIlsDepartmentCount() != 0>
357 <#if (container.getWaitingReservationCount() != 0 ||
358 container.getWaitingShelfRetrievalRequestsDepartmentCount() != 0 ||
359 container.getWaitingStackRetrievalRequestsDepartmentCount() != 0 ||
360 container.getInsertedBoxRetrievalRequestsDepartmentCount() != 0)> / </#if>
361 MVS ${container.getWaitingIlsDepartmentCount()}
362 </#if>
363
364 </font>
365 </#if>
366 )))|(% colspan="1" style="width:517px" %)(((
367 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2024-3-14_13-23-44.png?version=1&modificationDate=1710419025000&api=v2||width="500"]]
368 )))
369 |(% colspan="1" style="width:255px" %)Zobrazuje upozornění, že má čtenář dnes narozeniny nebo svátek.|(% colspan="1" style="width:745px" %)(((
370 <#if container.hasBirthday()>
371 <font color="red"> - narozeniny</font>
372 </#if>
373
374 <#if container.hasNameDay()>
375 <font color="red"> - svátek</font>
376 </#if>
377 )))|(% colspan="1" style="width:517px" %)(((
378 [[image:https://confluence.tritius.cz/download/attachments/35815451/image2024-3-14_13-37-46.png?version=1&modificationDate=1710419867000&api=v2||width="400"]]
379 )))
380 |(% colspan="1" style="width:255px" %)(((
381 Výchozí stav ( mail, posl. návštěva, svátek, čekající rez./odl. ) + věk různobarevný podle hranice 15let
382
383 * použito v Domažlice
384 )))|(% colspan="1" style="width:745px" %)(((
385 ${container.getInfoMailLastVisit()} <#if container.hasNameDay()> <font color="red"> - ${container.translate("has_nameday_today")}.</font> </#if> <#if container.getWaitingRequestsCount()!=0> <font color="red"> - ${container.translate("Waiting_reservations/retrievals")} - ${container.getWaitingRequestsCount()}</font> </#if>
386
387 <#if container.getAgeFormated()??>
388 <#if container.getAgeFormated()?number gte 15>
389 Věk: <font color="#95954A"> ${container.getAgeFormated()}</font>
390 <#else>
391 Věk: <font color="blue"> ${container.getAgeFormated()}</font>
392 </#if>
393 </#if>
394 )))|(% colspan="1" style="width:517px" %)
395 |(% colspan="1" style="width:255px" %)(((
396 Mail, posl. návštěva, končící registrace , povolání, vzdělání, škola, svátek a čekající rez./odl.
397
398 * použito v Chotěboř
399 )))|(% colspan="1" style="width:745px" %)(((
400 ${container.getInfoMailLastVisitEndingRegistration()}
401 <#if container.hasProfession()>
402 <font color="green">${container.getProfession()}</font>
403 </#if>
404 <#if container.hasEducationLevel()>
405 <font color="orange">${container.getEducationLevel()}</font>
406 </#if>
407 <#if container.getSchool()??>
408 <font color="yellow">${container.getSchool()}</font>
409 </#if>
410 <#if container.hasNameDay()> <font color="red"> - ${container.translate("has_nameday_today")}.</font> 
411 </#if> <#if container.getWaitingRequestsCount()!=0> <font color="red"> - ${container.translate("Waiting_reservations/retrievals")} - ${container.getWaitingRequestsCount()}</font> </#if>
412
413
414 )))|(% colspan="1" style="width:517px" %)
415 |(% colspan="1" style="width:255px" %)(((
416 Mail, posl. návštěva, vzdělání, povolání, svátek, čekající rez./odl.
417
418 * použito v UNYP
419 )))|(% colspan="1" style="width:745px" %)${container.getInfoMailLastVisit()} 
420 <#if container.hasEducationLevel()>
421 <font color="orange">${container.getEducationLevel()}</font>
422 </#if>
423 <#if container.hasProfession()>
424 <font color="green">${container.getProfession()}</font>
425 </#if>
426 <#if container.hasNameDay()> <font color="red"> - ${container.translate("has_nameday_today")}.</font> </#if> <#if container.getWaitingRequestsCount()~!=0> <font color="red"> - ${container.translate("Waiting_reservations/retrievals")} - ${container.getWaitingRequestsCount()}</font> </#if>|(% colspan="1" style="width:517px" %)