From 4bb2f34d7f5886c56cd8f270a55cf48cc18989f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20Schr=C3=B6ger?= <m.schroeger@adito.de> Date: Thu, 4 Oct 2018 11:41:10 +0200 Subject: [PATCH] Modul Vertrag erweitert --- entity/Contract_entity/Contract_entity.aod | 36 +++++++++++++ .../valueProcess.js | 10 ++++ .../children/rowid_param/code.js | 4 ++ .../contractstatus/possibleItemsProcess.js | 8 +++ .../contracttype/possibleItemsProcess.js | 8 +++ .../payment/possibleItemsProcess.js | 8 +++ .../relation_id/possibleItemsProcess.js | 0 entity/History_entity/History_entity.aod | 12 +++++ .../ContractEdit_view/ContractEdit_view.aod | 50 +++++++++++++++++++ .../ContractMain_view/ContractMain_view.aod | 18 +++++++ .../ContractPreview_view.aod | 48 ++++++++++++++++++ process/Keyword_lib/process.js | 23 +++++++++ 12 files changed, 225 insertions(+) create mode 100644 entity/Contract_entity/entityfields/contractcode_display_fieldgroup/valueProcess.js create mode 100644 entity/Contract_entity/entityfields/contracthistory_dfo/children/rowid_param/code.js create mode 100644 entity/Contract_entity/entityfields/contractstatus/possibleItemsProcess.js create mode 100644 entity/Contract_entity/entityfields/contracttype/possibleItemsProcess.js create mode 100644 entity/Contract_entity/entityfields/payment/possibleItemsProcess.js create mode 100644 entity/Contract_entity/entityfields/relation_id/possibleItemsProcess.js diff --git a/entity/Contract_entity/Contract_entity.aod b/entity/Contract_entity/Contract_entity.aod index 9805f70690..c06d034aae 100644 --- a/entity/Contract_entity/Contract_entity.aod +++ b/entity/Contract_entity/Contract_entity.aod @@ -17,11 +17,15 @@ <name>CONTRACTDUE</name> <tableName>CONTRACT</tableName> <columnName>CONTRACTDUE</columnName> + <contentType>DATE</contentType> + <resolution>DAY</resolution> </entityField> <entityField> <name>CONTRACTEND</name> <tableName>CONTRACT</tableName> <columnName>CONTRACTEND</columnName> + <contentType>DATE</contentType> + <resolution>DAY</resolution> </entityField> <entityField> <name>CONTRACTID</name> @@ -32,16 +36,20 @@ <name>CONTRACTSTART</name> <tableName>CONTRACT</tableName> <columnName>CONTRACTSTART</columnName> + <contentType>DATE</contentType> + <resolution>DAY</resolution> </entityField> <entityField> <name>CONTRACTSTATUS</name> <tableName>CONTRACT</tableName> <columnName>CONTRACTSTATUS</columnName> + <possibleItemsProcess>%aditoprj%/entity/Contract_entity/entityfields/contractstatus/possibleItemsProcess.js</possibleItemsProcess> </entityField> <entityField> <name>CONTRACTTYPE</name> <tableName>CONTRACT</tableName> <columnName>CONTRACTTYPE</columnName> + <possibleItemsProcess>%aditoprj%/entity/Contract_entity/entityfields/contracttype/possibleItemsProcess.js</possibleItemsProcess> </entityField> <entityField> <name>DATE_EDIT</name> @@ -63,12 +71,16 @@ <name>PAYMENT</name> <tableName>CONTRACT</tableName> <columnName>PAYMENT</columnName> + <mandatory v="true" /> + <possibleItemsProcess>%aditoprj%/entity/Contract_entity/entityfields/payment/possibleItemsProcess.js</possibleItemsProcess> </entityField> <entityField> <name>RELATION_ID</name> <tableName>CONTRACT</tableName> <columnName>RELATION_ID</columnName> + <mandatory v="true" /> <outgoingField></outgoingField> + <possibleItemsProcess>%aditoprj%/entity/Contract_entity/entityfields/relation_id/possibleItemsProcess.js</possibleItemsProcess> <valueProcess>%aditoprj%/entity/Contract_entity/entityfields/relation_id/valueProcess.js</valueProcess> </entityField> <entityField> @@ -123,6 +135,30 @@ <contentType>IMAGE</contentType> <valueProcess>%aditoprj%/entity/Contract_entity/entityfields/image/valueProcess.js</valueProcess> </entityField> + <entityFieldGroup> + <name>CONTRACTCODE_DISPLAY_fieldGroup</name> + <valueProcess>%aditoprj%/entity/Contract_entity/entityfields/contractcode_display_fieldgroup/valueProcess.js</valueProcess> + <description>FIELDGROUP</description> + <fields> + <element>CONTRACTTYPE</element> + <element>CONTRACTCODE</element> + </fields> + </entityFieldGroup> + <entityOutgoingField> + <name>ContractHistory_dfo</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>History_entity</entityName> + <fieldName>ContractHistory_dfi</fieldName> + </dependency> + <children> + <entityParameter> + <name>RowId_param</name> + <code>%aditoprj%/entity/Contract_entity/entityfields/contracthistory_dfo/children/rowid_param/code.js</code> + </entityParameter> + </children> + </entityOutgoingField> </entityFields> <linkInformation> <linkInformation> diff --git a/entity/Contract_entity/entityfields/contractcode_display_fieldgroup/valueProcess.js b/entity/Contract_entity/entityfields/contractcode_display_fieldgroup/valueProcess.js new file mode 100644 index 0000000000..b6a434814e --- /dev/null +++ b/entity/Contract_entity/entityfields/contractcode_display_fieldgroup/valueProcess.js @@ -0,0 +1,10 @@ +import("system.vars"); +import("system.result"); +import("Keyword_lib"); + +var kwdUtils = new KeywordUtils(); + +var cType = vars.get("$field.CONTRACTTYPE"); +var cCode = vars.get("$field.CONTRACTCODE"); + +result.string(kwdUtils.getViewValue("CONTRACT.CONTRACTTYPE", cType) + " : " + cCode); \ No newline at end of file diff --git a/entity/Contract_entity/entityfields/contracthistory_dfo/children/rowid_param/code.js b/entity/Contract_entity/entityfields/contracthistory_dfo/children/rowid_param/code.js new file mode 100644 index 0000000000..6a98694895 --- /dev/null +++ b/entity/Contract_entity/entityfields/contracthistory_dfo/children/rowid_param/code.js @@ -0,0 +1,4 @@ +import("system.vars"); +import("system.result"); + +result.string(vars.get("$field.CONTRACTID")); \ No newline at end of file diff --git a/entity/Contract_entity/entityfields/contractstatus/possibleItemsProcess.js b/entity/Contract_entity/entityfields/contractstatus/possibleItemsProcess.js new file mode 100644 index 0000000000..4ee17a5e31 --- /dev/null +++ b/entity/Contract_entity/entityfields/contractstatus/possibleItemsProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("Keyword_lib"); + +var kwdUtils, items; + +kwdUtils = new KeywordUtils(); +items = kwdUtils.getStandardArray("CONTRACT.CONTRACTSTATUS"); +result.object(items); \ No newline at end of file diff --git a/entity/Contract_entity/entityfields/contracttype/possibleItemsProcess.js b/entity/Contract_entity/entityfields/contracttype/possibleItemsProcess.js new file mode 100644 index 0000000000..a0f73ce40b --- /dev/null +++ b/entity/Contract_entity/entityfields/contracttype/possibleItemsProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("Keyword_lib"); + +var kwdUtils, items; + +kwdUtils = new KeywordUtils(); +items = kwdUtils.getStandardArray("CONTRACT.CONTRACTTYPE"); +result.object(items); \ No newline at end of file diff --git a/entity/Contract_entity/entityfields/payment/possibleItemsProcess.js b/entity/Contract_entity/entityfields/payment/possibleItemsProcess.js new file mode 100644 index 0000000000..c743e4350e --- /dev/null +++ b/entity/Contract_entity/entityfields/payment/possibleItemsProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("Keyword_lib"); + +var kwdUtils, items; + +kwdUtils = new KeywordUtils(); +items = kwdUtils.getStandardArray("CONTRACT.PAYMENT"); +result.object(items); \ No newline at end of file diff --git a/entity/Contract_entity/entityfields/relation_id/possibleItemsProcess.js b/entity/Contract_entity/entityfields/relation_id/possibleItemsProcess.js new file mode 100644 index 0000000000..e69de29bb2 diff --git a/entity/History_entity/History_entity.aod b/entity/History_entity/History_entity.aod index d3750669e8..9db560091b 100644 --- a/entity/History_entity/History_entity.aod +++ b/entity/History_entity/History_entity.aod @@ -114,6 +114,18 @@ <contentType>IMAGE</contentType> <valueProcess>%aditoprj%/entity/History_entity/entityfields/direction_icon/valueProcess.js</valueProcess> </entityField> + <entityIncomingField> + <name>ContractHistory_dfi</name> + <fieldType>DEPENDENCY_IN</fieldType> + <dependencies> + <entityDependency> + <name>f47157d9-0cb6-4bcf-a485-08675bd957ee</name> + <entityName>Contract_entity</entityName> + <fieldName>ContractHistory_dfo</fieldName> + <isOutgoing v="false" /> + </entityDependency> + </dependencies> + </entityIncomingField> </entityFields> <linkInformation> <linkInformation> diff --git a/neonView/ContractEdit_view/ContractEdit_view.aod b/neonView/ContractEdit_view/ContractEdit_view.aod index 7156d82590..7dbc60e17a 100644 --- a/neonView/ContractEdit_view/ContractEdit_view.aod +++ b/neonView/ContractEdit_view/ContractEdit_view.aod @@ -2,4 +2,54 @@ <neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.0.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.0"> <name>ContractEdit_view</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <genericViewTemplate> + <name>Generic</name> + <editMode v="true" /> + <entityField>#ENTITY</entityField> + <fields> + <entityFieldLink> + <name>5f2ef7a7-d7b5-49a8-86f3-3644036232fb</name> + <entityField>CONTRACTCODE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>3177f8e9-24e9-441f-8c19-b004935a86a9</name> + <entityField>RELATION_ID</entityField> + </entityFieldLink> + <entityFieldLink> + <name>b4a51794-f04c-4cc5-b0bd-ff89d8f5ada9</name> + <entityField>CONTRACTSTART</entityField> + </entityFieldLink> + <entityFieldLink> + <name>2fb49607-d34c-4a19-8c4e-2ec3db395fa9</name> + <entityField>CONTRACTEND</entityField> + </entityFieldLink> + <entityFieldLink> + <name>e66d7b82-5b48-46f3-b780-06a5f107faca</name> + <entityField>CONTRACTDUE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>f741bfda-5434-42ab-a5e9-ea1f7e4aaf79</name> + <entityField>CONTRACTSTATUS</entityField> + </entityFieldLink> + <entityFieldLink> + <name>ac160ded-1a06-4664-b8bd-333e01468f61</name> + <entityField>CONTRACTTYPE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>02d4e542-f7ed-4900-82b3-b096958e1473</name> + <entityField>PAYMENT</entityField> + </entityFieldLink> + <entityFieldLink> + <name>4390abcd-d47e-40b2-85a9-655d39b17e82</name> + <entityField>REMARK</entityField> + </entityFieldLink> + </fields> + </genericViewTemplate> + </children> </neonView> diff --git a/neonView/ContractMain_view/ContractMain_view.aod b/neonView/ContractMain_view/ContractMain_view.aod index 28ddf433f4..151066bd58 100644 --- a/neonView/ContractMain_view/ContractMain_view.aod +++ b/neonView/ContractMain_view/ContractMain_view.aod @@ -2,4 +2,22 @@ <neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.0.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.0"> <name>ContractMain_view</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <masterSlaveLayout> + <name>layout</name> + <master>50a9de9b-1b4d-4dbd-a2f0-51b376df5b55</master> + </masterSlaveLayout> + </layout> + <children> + <neonViewReference> + <name>50a9de9b-1b4d-4dbd-a2f0-51b376df5b55</name> + <entityField>#ENTITY</entityField> + <view>ContractPreview_view</view> + </neonViewReference> + <neonViewReference> + <name>8c6be607-ccce-4ad7-8dba-875b24d821e7</name> + <entityField>ContractHistory_dfo</entityField> + <view>HistoryFilter_view</view> + </neonViewReference> + </children> </neonView> diff --git a/neonView/ContractPreview_view/ContractPreview_view.aod b/neonView/ContractPreview_view/ContractPreview_view.aod index 60d449bc88..302a4134d6 100644 --- a/neonView/ContractPreview_view/ContractPreview_view.aod +++ b/neonView/ContractPreview_view/ContractPreview_view.aod @@ -2,4 +2,52 @@ <neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.0.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.0"> <name>ContractPreview_view</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <cardViewTemplate> + <name>ContractHeader_template</name> + <iconField>IMAGE</iconField> + <descriptionField>RELATION_ID</descriptionField> + <entityField>#ENTITY</entityField> + </cardViewTemplate> + <genericViewTemplate> + <name>ContractInfo_template</name> + <showDrawer v="true" /> + <entityField>#ENTITY</entityField> + <fields> + <entityFieldLink> + <name>6afd1b0d-4d73-47a0-a0a6-58dac448c783</name> + <entityField>CONTRACTTYPE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>9101eee8-57b1-4bcf-a271-2501b7a3b842</name> + <entityField>CONTRACTSTART</entityField> + </entityFieldLink> + <entityFieldLink> + <name>9cc46e86-0f4b-406a-a702-77e840fc3988</name> + <entityField>CONTRACTEND</entityField> + </entityFieldLink> + <entityFieldLink> + <name>6529a64b-4249-434a-8692-45daad5264e3</name> + <entityField>CONTRACTDUE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>b0ced77c-bd97-4318-8c0b-ad028111f039</name> + <entityField>CONTRACTSTATUS</entityField> + </entityFieldLink> + <entityFieldLink> + <name>aa310f7a-d66b-4128-8af0-3619099605ce</name> + <entityField>PAYMENT</entityField> + </entityFieldLink> + <entityFieldLink> + <name>bb0d44ca-671e-4a0f-87dc-a94e214bca54</name> + <entityField>REMARK</entityField> + </entityFieldLink> + </fields> + </genericViewTemplate> + </children> </neonView> diff --git a/process/Keyword_lib/process.js b/process/Keyword_lib/process.js index 85b57553f3..2b2d13da5c 100644 --- a/process/Keyword_lib/process.js +++ b/process/Keyword_lib/process.js @@ -121,6 +121,29 @@ function KeywordUtils(){ ,createKeywordEntry("o", translate.text("${GENDER_OTHER}")) ]); break; + case "CONTRACT.CONTRACTTYPE": + valueContainer = createKeywordEntriesContainer([ + createKeywordEntry("0", translate.text("Rahmenvertrag")) + ,createKeywordEntry("1", translate.text("Werksvertrag")) + ,createKeywordEntry("2", translate.text("Wartungsvertrag")) + ]); + break; + case "CONTRACT.CONTRACTSTATUS": + valueContainer = createKeywordEntriesContainer([ + createKeywordEntry("0", translate.text("gültig, unbefristet")) + ,createKeywordEntry("1", translate.text("gültig, befristet")) + ,createKeywordEntry("2", translate.text("noch nicht unterschrieben")) + ,createKeywordEntry("3", translate.text("keiner, Einzelberechnung")) + ,createKeywordEntry("4", translate.text("gekündigt")) + ]); + break; + case "CONTRACT.PAYMENT": + valueContainer = createKeywordEntriesContainer([ + createKeywordEntry("0", translate.text("jährlich")) + ,createKeywordEntry("1", translate.text("halbjährlich")) + ,createKeywordEntry("2", translate.text("vierteljährlich")) + ]); + break; default: throw new Error(translate.withArguments("[%0]the given keyword \"%1\" has no match with the possible keywordlist", [ arguments.callee.name, keywordType -- GitLab