#232: MerlinTemplateDO.kt
plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt Класс Kotlin, plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt 144 строки · 75 кода · 48 комментариев · 21 пустая
Назначение: Исходный файл: projectforge/plugins/merlin/MerlinTemplateDO.kt. MerlinTemplateDO.kt является частью приложения управления проектами с открытым исходным кодом ProjectForge.
Исходный код (первые 100 строк)
/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
// www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge распространяется по двойной лицензии.
//
// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
// изменять ее в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) в том виде,
// в котором она опубликована Фондом свободного программного обеспечения; версия 3 Лицензии.
//
// Эта версия для сообщества распространяется в надежде, что она будет полезной,
// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. Стандартную общественную
// лицензию GNU для получения более подробной информации.
//
// Вы должны были получить копию Стандартной общественной лицензии GNU вместе
// с этой программой; если нет, см. http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////
package org.projectforge.plugins.merlin
import com.fasterxml.jackson.annotation.JsonIgnore
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed
import org.projectforge.common.anots.PropertyInfo
import org.projectforge.framework.jcr.AttachmentsInfo
import org.projectforge.Constants
import org.projectforge.framework.persistence.entities.AbstractBaseDO
import java.util.*
import jakarta.persistence.*
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.FullTextField
import org.projectforge.framework.persistence.history.NoHistory
/**
* @author Kai Reinhard (k.reinhard@micromata.de)
*/
@Entity
@Indexed
@Table(name = "t_plugin_merlin_template")
open class MerlinTemplateDO : AbstractBaseDO<Long>(), AttachmentsInfo {
@get:Id
@get:GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "hibernate_sequence")
@get:Column(name = "pk")
@PropertyInfo(i18nKey = "id")
override var id: Long? = null
@PropertyInfo(i18nKey = "plugins.merlin.name")
@get:Column(length = 100, nullable = false)
open var name: String? = null
@PropertyInfo(i18nKey = "description")
@FullTextField
@get:Column(length = Constants.LENGTH_TEXT)
open var description: String? = null
@PropertyInfo(i18nKey = "plugins.merlin.fileNamePattern", tooltip = "plugins.merlin.fileNamePattern.info")
@get:Column(name = "filename_pattern", length = 1000, nullable = false)
open var fileNamePattern: String? = null
@PropertyInfo(i18nKey = "plugins.merlin.forceStrictFilenames", tooltip = "plugins.merlin.forceStrictFilenames.info")
@get:Column(name = "strongly_restricted_filenames")
open var stronglyRestrictedFilenames: Boolean? = null
@PropertyInfo(i18nKey = "plugins.merlin.format.pdf", tooltip = "plugins.merlin.format.pdf.info")
@get:Column(name = "pdf_export")
open var pdfExport: Boolean? = null
/**
* Если отмечено, загрузка шаблона Excel для последовательного выполнения будет также содержать переменные #PersonalBox...
*/
@PropertyInfo(i18nKey = "plugins.merlin.template.dataTransferUsage", tooltip = "plugins.merlin.template.dataTransferUsage.info")
@get:Column(name = "data_transfer_usage")
open var dataTransferUsage: Boolean? = null
/**
* Эти пользователи имеют полный доступ на чтение/запись/выполнение.
*/
@get:Column(name = "admin_ids", length = 4000, nullable = true)
open var adminIds: String? = null
/**
* Участники этих групп имеют доступ на чтение и выполнение.
*/
@get:Column(name = "access_group_ids", length = 4000, nullable = true)
open var accessGroupIds: String? = null
/**
* Эти пользователи имеют доступ на чтение и выполнение.
*/
@get:Column(name = "access_user_ids", length = 4000, nullable = true)
open var accessUserIds: String? = null
@get:Basic
@get:Column(name = "last_variable_update")
open var lastVariableUpdate: Date? = null
История Git
868d6abb7 2025 -> 2026
63081666f Заголовки исходных файлов: 2024-> 2025.
44253baee WIP: Настройка ProjectForge...
66ec668f6 Миграция в процессе...
4c04cfd65 MAJOR-CHANGE! Миграция целочисленных id на Long id (включая внешние ключи и т.д.)
868d6abb7
2025 -> 2026868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
index 489fe3aba..9da5adb56 100644
--- a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
+++ b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
@@ -3,7 +3,7 @@
// Project ProjectForge Community Edition
// www.projectforge.org
//
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge is dual-licensed.
//
63081666f
Заголовки исходных файлов: 2024-> 2025.63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
index 52d12beac..489fe3aba 100644
--- a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
+++ b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
@@ -3,7 +3,7 @@
// Project ProjectForge Community Edition
// www.projectforge.org
//
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge is dual-licensed.
//
44253baee
WIP: Настройка ProjectForge...44253baee2448d0c7b5c60bb672e3594e57f8340
diff --git a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
index 873bd1b15..52d12beac 100644
--- a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
+++ b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
@@ -42,7 +42,7 @@ import org.projectforge.framework.persistence.history.NoHistory
@Table(name = "t_plugin_merlin_template")
open class MerlinTemplateDO : AbstractBaseDO<Long>(), AttachmentsInfo {
@get:Id
- @get:GeneratedValue(strategy = GenerationType.SEQUENCE)
+ @get:GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "hibernate_sequence")
@get:Column(name = "pk")
@PropertyInfo(i18nKey = "id")
override var id: Long? = null 66ec668f6
Миграция в процессе...66ec668f6fadd0eb1a7885b02107d128e91a39d1
diff --git a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
index 4b5032365..873bd1b15 100644
--- a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
+++ b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
@@ -42,7 +42,7 @@ import org.projectforge.framework.persistence.history.NoHistory
@Table(name = "t_plugin_merlin_template")
open class MerlinTemplateDO : AbstractBaseDO<Long>(), AttachmentsInfo {
@get:Id
- @get:GeneratedValue
+ @get:GeneratedValue(strategy = GenerationType.SEQUENCE)
@get:Column(name = "pk")
@PropertyInfo(i18nKey = "id")
override var id: Long? = null 4c04cfd65
MAJOR-CHANGE! Миграция целочисленных id на Long id (включая внешние ключи и т.д.)4c04cfd652210afe373d55f53a5300c85997b109
diff --git a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
index 1cfd59cbb..4b5032365 100644
--- a/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
+++ b/plugins/org.projectforge.plugins.merlin/src/main/kotlin/org/projectforge/plugins/merlin/MerlinTemplateDO.kt
@@ -40,12 +40,12 @@ import org.projectforge.framework.persistence.history.NoHistory
@Entity
@Indexed
@Table(name = "t_plugin_merlin_template")
-open class MerlinTemplateDO : AbstractBaseDO<Int>(), AttachmentsInfo {
+open class MerlinTemplateDO : AbstractBaseDO<Long>(), AttachmentsInfo {
@get:Id
@get:GeneratedValue
@get:Column(name = "pk")
@PropertyInfo(i18nKey = "id")
- override var id: Int? = null
+ override var id: Long? = null
@PropertyInfo(i18nKey = "plugins.merlin.name")
@get:Column(length = 100, nullable = false)