Skip to content
Snippets Groups Projects
Commit 2eceded6 authored by S.Listl's avatar S.Listl
Browse files

Serial letter generate and download optimized

parent 3d6261b4
No related branches found
No related tags found
No related merge requests found
Showing
with 103 additions and 43 deletions
......@@ -4,6 +4,7 @@
<majorModelMode>DISTRIBUTED</majorModelMode>
<documentation>%aditoprj%/entity/Document_entity/documentation.adoc</documentation>
<title>Document</title>
<grantCreateProcess>%aditoprj%/entity/Document_entity/grantCreateProcess.js</grantCreateProcess>
<iconId>VAADIN:FILE</iconId>
<titlePlural>Documents</titlePlural>
<recordContainer>jdito</recordContainer>
......@@ -308,6 +309,37 @@
<name>AssignmentTable_param</name>
<expose v="true" />
</entityParameter>
<entityParameter>
<name>DisallowCreate_param</name>
<expose v="false" />
</entityParameter>
</children>
</entityProvider>
<entityParameter>
<name>DisallowCreate_param</name>
<expose v="true" />
</entityParameter>
<entityProvider>
<name>SingleDocument</name>
<titlePlural>Document</titlePlural>
<dependencies>
<entityDependency>
<name>91f87622-d0e8-43c6-99a0-5f9cebf79aaf</name>
<entityName>SerialLetter_entity</entityName>
<fieldName>Documents</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies>
<children>
<entityParameter>
<name>AssignmentName_param</name>
<valueProcess>%aditoprj%/entity/Document_entity/entityfields/singledocument/children/assignmentname_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>DisallowCreate_param</name>
<valueProcess>%aditoprj%/entity/Document_entity/entityfields/singledocument/children/disallowcreate_param/valueProcess.js</valueProcess>
<expose v="false" />
</entityParameter>
</children>
</entityProvider>
</entityFields>
......
import("system.result");
result.string("DOCUMENT");
\ No newline at end of file
import("system.result");
result.string(true);
\ No newline at end of file
import("system.vars");
import("system.result");
result.string(!vars.get("$param.DisallowCreate_param"));
\ No newline at end of file
......@@ -149,10 +149,8 @@
<title>Download letter</title>
<onActionProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/downloadletter/onActionProcess.js</onActionProcess>
<iconId>VAADIN:DOWNLOAD_ALT</iconId>
<iconIdProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/downloadletter/iconIdProcess.js</iconIdProcess>
<stateProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/downloadletter/stateProcess.js</stateProcess>
<titleProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/downloadletter/titleProcess.js</titleProcess>
<tooltipProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/downloadletter/tooltipProcess.js</tooltipProcess>
<tooltip>Download letter</tooltip>
</entityActionField>
<entityActionField>
<name>downloadTemplate</name>
......@@ -172,6 +170,36 @@
<name>generated</name>
<valueProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/generated/valueProcess.js</valueProcess>
</entityField>
<entityConsumer>
<name>Documents</name>
<refreshParent v="true" />
<dependency>
<name>dependency</name>
<entityName>Document_entity</entityName>
<fieldName>SingleDocument</fieldName>
</dependency>
<children>
<entityParameter>
<name>AssignmentRowId_param</name>
<valueProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/documents/children/assignmentrowid_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>AssignmentTable_param</name>
<valueProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/documents/children/assignmenttable_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>AssignmentName_param</name>
<valueProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/documents/children/assignmentname_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
</entityConsumer>
<entityActionField>
<name>generateLetter</name>
<title>Generate letter</title>
<onActionProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/generateletter/onActionProcess.js</onActionProcess>
<iconId>VAADIN:FILE_PROCESS</iconId>
<tooltip>Generate letter</tooltip>
</entityActionField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......
import("system.result");
result.string("SERIALLETTERFILE");
\ No newline at end of file
import("system.vars");
import("system.result");
result.string(vars.get("$field.SERIALLETTERID"));
\ No newline at end of file
import("system.result");
result.string("SERIALLETTER");
\ No newline at end of file
import("system.vars");
import("system.result");
if (vars.get("$field.generated") == "1")
result.string("VAADIN:DOWNLOAD_ALT");
else
result.string("VAADIN:FILE_PROCESS");
\ No newline at end of file
......@@ -8,19 +8,12 @@ import("system.notification");
import("Employee_lib");
var letterId = vars.get("$field.SERIALLETTERID");
if (vars.get("$field.generated") == "1")
if (vars.get("$field.generated"))
{
var metadata = SingleBinaryUtils.getMetadata("SERIALLETTER", "DOWNLOADFILE", letterId);
var metadata = SingleBinaryUtils.getMetadata("SERIALLETTER", "SERIALLETTERFILE", letterId);
if (metadata)
{
var document = SingleBinaryUtils.get("SERIALLETTER", "DOWNLOADFILE", letterId);
SingleBinaryUtils.remove("SERIALLETTER", "DOWNLOADFILE", letterId);
var document = SingleBinaryUtils.get("SERIALLETTER", "SERIALLETTERFILE", letterId);
neon.download(document, metadata.filename);
neon.setFieldValue("$field.generated", "2");
//neon.refreshAll();
}
}
else
{
SerialLetterUtils.buildSerialLetterOnServer(letterId);
}
}
\ No newline at end of file
......@@ -2,4 +2,4 @@ import("system.neon");
import("system.vars");
import("system.result");
result.string(vars.get("$field.generated") == "2" ? neon.COMPONENTSTATE_DISABLED : neon.COMPONENTSTATE_EDITABLE);
\ No newline at end of file
result.string(vars.get("$field.generated") ? neon.COMPONENTSTATE_EDITABLE : neon.COMPONENTSTATE_DISABLED);
\ No newline at end of file
import("system.vars");
import("system.translate");
import("system.result");
if (vars.get("$field.generated") == "1")
result.string(translate.text("Download letter"));
else
result.string(translate.text("Generate letter"));
\ No newline at end of file
import("system.vars");
import("system.translate");
import("system.result");
if (vars.get("$field.generated") == "1")
result.string(translate.text("Download letter"));
else
result.string(translate.text("Generate letter"));
\ No newline at end of file
......@@ -3,5 +3,5 @@ import("system.neon");
import("system.vars");
import("system.result");
result.string(vars.get("$sys.viewmode") == neon.FRAME_VIEWMODE_DATASET && SingleBinaryUtils.checkExistsOneTime("SERIALLETTER", "DOWNLOADFILE", vars.get("$field.SERIALLETTERID"))
? "1" : "0");
\ No newline at end of file
result.string(vars.get("$sys.viewmode") == neon.FRAME_VIEWMODE_DATASET && SingleBinaryUtils.checkExistsOneTime("SERIALLETTER", "SERIALLETTERFILE", vars.get("$field.SERIALLETTERID"))
? "true" : "");
\ No newline at end of file
import("system.vars");
import("Bulkmail_lib");
SerialLetterUtils.buildSerialLetterOnServer(vars.get("$field.SERIALLETTERID"));
\ No newline at end of file
......@@ -6,4 +6,4 @@ newWhere("LETTERRECIPIENT.SERIALLETTER_ID", "$local.uid").deleteData();
var uid = vars.get("$local.uid");
SingleBinaryUtils.remove("SERIALLETTER", "DOCUMENT", uid);
SingleBinaryUtils.remove("SERIALLETTER", "DOWNLOADFILE", uid);
\ No newline at end of file
SingleBinaryUtils.remove("SERIALLETTER", "SERIALLETTERFILE", uid);
\ No newline at end of file
......@@ -24,6 +24,11 @@
<entityField>Activities</entityField>
<view>ActivityFilter_view</view>
</neonViewReference>
<neonViewReference>
<name>88fb3d1b-585b-4289-92c9-4a5c70e3748a</name>
<entityField>Documents</entityField>
<view>DocumentFilter_view</view>
</neonViewReference>
<neonViewReference>
<name>5cba2de9-e00b-4548-8477-5fc76b1e3cb6</name>
<entityField>LogHistories</entityField>
......
......@@ -13,7 +13,8 @@
<iconField>ICON</iconField>
<titleField>TITLE</titleField>
<subtitleField>STATUS</subtitleField>
<favoriteAction1>downloadLetter</favoriteAction1>
<favoriteAction1>generateLetter</favoriteAction1>
<favoriteAction2>downloadLetter</favoriteAction2>
<entityField>#ENTITY</entityField>
</cardViewTemplate>
<genericViewTemplate>
......
......@@ -17,7 +17,7 @@ var document = SerialLetterUtils.buildSerialLetter(letterId, recipientIds)
//if (document)
// neon.download(document, template.filename);
SingleBinaryUtils.set("SERIALLETTER", "DOWNLOADFILE", letterId, document.content, document.filename, "");
SingleBinaryUtils.set("SERIALLETTER", "SERIALLETTERFILE", letterId, document.content, document.filename, "");
var message = translate.text("Download ready");
var description = translate.withArguments("Serial letter \"%0\" can now be downloaded", [document.title]);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment