Skip to content
Snippets Groups Projects
Commit 1a94513a authored by Sebastian Listl's avatar Sebastian Listl :speech_balloon:
Browse files

merged origin/2020.2-sn_1068641_Gesamtrabatt_Offer into 2020.2

parents f783603d e151196b
No related branches found
No related tags found
No related merge requests found
Showing
with 252 additions and 20 deletions
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="s.garb" id="995a11c7-fb16-4c33-b5ad-0c35f44905c3">
<addColumn tableName="OFFER">
<column name="DISCOUNT" type="NUMERIC(14,2)" />
<column name="DISCOUNTED_NET" type="NUMERIC(14,2)" />
</addColumn>
</changeSet>
<changeSet author="s.garb" id="801708bd-91f0-4468-bed9-0bbab7e46997">
<addColumn tableName="OFFER">
<column name="DISCOUNTED_VAT" type="NUMERIC(14,2)" />
</addColumn>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<include file="addColumnOffer.xml" relativeToChangelogFile="true" />
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<include relativeToChangelogFile="true" file="Offer/changelog.xml"/>
<include relativeToChangelogFile="true" file="insert_commMediumTitleKeywordAttribute.xml"/>
<include relativeToChangelogFile="true" file="Knowledgemanagement/changelog_knowledgeManagement.xml"/>
<include relativeToChangelogFile="true" file="insert_employeeCountAttribute.xml"/>
......
......@@ -3108,6 +3108,48 @@
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>DISCOUNT</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="3" />
<size v="14" />
<scale v="2" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>DISCOUNTED_NET</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="3" />
<size v="14" />
<scale v="2" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>DISCOUNTED_VAT</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="3" />
<size v="14" />
<scale v="2" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
</entityFields>
</entityDb>
<entityDb>
......
......@@ -98,6 +98,7 @@
<contentType>NUMBER</contentType>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/vat/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/vat/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
......@@ -145,6 +146,10 @@
<name>Language_param</name>
<valueProcess>%aditoprj%/entity/Offer_entity/entityfields/offeritems/children/language_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>Discount_param</name>
<valueProcess>%aditoprj%/entity/Offer_entity/entityfields/offeritems/children/discount_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
<dependency>
<name>dependency</name>
......@@ -164,7 +169,7 @@
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<groupable v="true" />
<groupable v="false" />
<state>READONLY</state>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/net/displayValueProcess.js</displayValueProcess>
</entityField>
......@@ -1056,6 +1061,45 @@
<entityField>
<name>ACTIVE</name>
</entityField>
<entityField>
<name>DISCOUNT</name>
<title>Discount</title>
<contentType>NUMBER</contentType>
<outputFormat>0.00'%'</outputFormat>
<inputFormat>0.00</inputFormat>
<valueProcess>%aditoprj%/entity/Offer_entity/entityfields/discount/valueProcess.js</valueProcess>
<onValueChange>%aditoprj%/entity/Offer_entity/entityfields/discount/onValueChange.js</onValueChange>
<onValueChangeTypes>
<element>MASK</element>
</onValueChangeTypes>
<onValidation>%aditoprj%/entity/Offer_entity/entityfields/discount/onValidation.js</onValidation>
</entityField>
<entityField>
<name>DISCOUNTED_NET</name>
<title>discounted Price</title>
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_net/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_net/displayValueProcess.js</displayValueProcess>
</entityField>
<entityParameter>
<name>Discount_param</name>
<expose v="true" />
<description>PARAMETER</description>
</entityParameter>
<entityField>
<name>DiscountChanged</name>
</entityField>
<entityField>
<name>DISCOUNTED_VAT</name>
<title>discounted Vat</title>
<contentType>NUMBER</contentType>
<inputFormat>#,##0.00</inputFormat>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_vat/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_vat/displayValueProcess.js</displayValueProcess>
</entityField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......@@ -1308,6 +1352,18 @@
<name>ACTIVE.value</name>
<expression>%aditoprj%/entity/Offer_entity/recordcontainers/db/recordfieldmappings/active.value/expression.js</expression>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNTED_NET.value</name>
<recordfield>OFFER.DISCOUNTED_NET</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNT.value</name>
<recordfield>OFFER.DISCOUNT</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNTED_VAT.value</name>
<recordfield>OFFER.DISCOUNTED_VAT</recordfield>
</dbRecordFieldMapping>
</recordFieldMappings>
<filterExtensions>
<filterExtensionSet>
......
import("system.vars");
import("system.neon");
import("Offer_lib");
var offerId = vars.getString("$field.OFFERID");
var fieldValues = {
contactId: vars.getString("$field.CONTACT_ID"),
language: vars.getString("$field.ISOLANGUAGE"),
......@@ -12,7 +12,9 @@ var fieldValues = {
deliveryTerm: vars.getString("$field.DELIVERYTERMS"),
paymentTerm: vars.getString("$field.PAYMENTTERMS"),
objectRowId: vars.getString("$field.OBJECT_ROWID"),
objectType: vars.getString("$field.OBJECT_TYPE")
objectType: vars.getString("$field.OBJECT_TYPE"),
discount: vars.getString("$field.DISCOUNT")
};
OfferUtils.copyOffer(offerId, fieldValues);
import("system.result");
import("system.vars");
import("Util_lib");
import("Entity_lib");
var value = vars.get("local.value");
var validationResult = NumberUtils.validateIsBetweenFloat("Discount", value, 0, 100);
if (validationResult)
result.string(validationResult);
\ No newline at end of file
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon. OPERATINGSTATE_EDIT){
neon.setFieldValue("$field.DiscountChanged", "true");
}
\ No newline at end of file
import("system.neon");
import("system.vars");
import("system.result");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.exists("$param.Discount_param")
&& vars.get("$param.Discount_param")){
result.string(vars.get("$param.Discount_param"));
}
\ No newline at end of file
import("Util_lib");
import("system.vars");
import("system.translate");
import("system.result");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.DISCOUNTED_NET"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
import("system.vars");
import("system.neon");
import("system.result");
var discount = vars.get("$field.DISCOUNT");
if(parseInt(discount) == parseInt("0") || !discount)
result.string(neon.COMPONENTSTATE_INVISIBLE);
else
result.string(neon.COMPONENTSTATE_READONLY);
\ No newline at end of file
import("Util_lib");
import("system.vars");
import("system.translate");
import("system.result");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.DISCOUNTED_VAT"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
import("system.vars");
import("system.neon");
import("system.result");
var discount = vars.get("$field.DISCOUNT");
if(parseInt(discount) == parseInt("0") || !discount)
result.string(neon.COMPONENTSTATE_INVISIBLE);
else
result.string(neon.COMPONENTSTATE_READONLY);
\ No newline at end of file
......@@ -15,6 +15,7 @@ var params = {
"OfferHeader_param" : vars.get("$field.HEADER"),
"OfferFooter_param" : vars.get("$field.FOOTER"),
"OfferDeliveryTerm_param" : vars.get("$field.DELIVERYTERMS"),
"OfferPaymentTerm_param" : vars.get("$field.PAYMENTTERMS")
"OfferPaymentTerm_param" : vars.get("$field.PAYMENTTERMS"),
"Discount_param": vars.get("$field.DISCOUNT")
}
neon.openContext("Offer", null, null, neon.OPERATINGSTATE_NEW, params);
\ No newline at end of file
import("system.neon");
import("system.vars");
import("system.db");
import("system.result");
import("Context_lib");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$field.OBJECT_ROWID") == null) {
result.string("");
} else if (vars.exists("$field.OBJECT_TYPE") && vars.get("$field.OBJECT_TYPE")) {
result.string(ContextUtils.getTitleByContext(vars.get("$field.OBJECT_TYPE"), vars.get("$field.OBJECT_ROWID")));
}
\ No newline at end of file
//import("system.neon");
//import("system.vars");
//import("system.db");
//import("system.result");
//import("Context_lib");
//
//if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$field.OBJECT_ROWID") == null) {
// result.string("");
//} else if (vars.exists("$field.OBJECT_TYPE") && vars.get("$field.OBJECT_TYPE")) {
// result.string(ContextUtils.getTitleByContext(vars.get("$field.OBJECT_TYPE"), vars.get("$field.OBJECT_ROWID")));
//}
\ No newline at end of file
import("system.result");
import("system.vars");
result.string(vars.get("$field.DISCOUNT"));
\ No newline at end of file
......@@ -2,7 +2,8 @@ import("system.result");
import("system.vars");
import("system.eMath");
var netValue = vars.get("$field.NET");
var vatValue = vars.get("$field.VAT");
var discount = vars.get("$field.DISCOUNT");
var netValue = discount && parseInt(discount) != parseInt("0") ? vars.get("$field.DISCOUNTED_NET") : vars.get("$field.NET")
var vatValue = discount && parseInt(discount) != parseInt("0") ? vars.get("$field.DISCOUNTED_VAT") : vars.get("$field.VAT");
result.string( eMath.addDec(netValue, vatValue) );
\ No newline at end of file
import("system.neon");
import("system.result");
import("system.vars");
var discount = vars.get("$field.DISCOUNT");
if(discount && parseInt(discount) != parseInt("0")){
result.string(neon.COMPONENTSTATE_INVISIBLE);
}
else
result.string(neon.COMPONENTSTATE_READONLY)
\ No newline at end of file
import("Context_lib");
import("system.workflow");
import("Workflow_lib");
import("system.db");
import("system.datetime");
import("system.util");
import("system.neon");
import("system.vars");
import("Offer_lib");
import("Sql_lib");
var rowdata = vars.get("$local.rowdata");
if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{
var offerId = vars.get("$local.uid");
if (vars.exists("$param.OfferOriginal_Id_param"))
OfferUtils.copyOfferItems(vars.getString("$param.OfferOriginal_Id_param"), offerId);
var discount = rowdata["OFFER.DISCOUNT"];
if (vars.exists("$param.OfferOriginal_Id_param") && vars.get("$param.OfferOriginal_Id_param"))
OfferUtils.copyOfferItems(vars.getString("$param.OfferOriginal_Id_param"), offerId, discount);
var activityId = vars.get("$param.ActivityId_param");
if (activityId)
......
import("system.entities");
import("Offer_lib");
import("system.vars");
import("Workflow_lib");
var rowdata = vars.get("$local.rowdata");
var oid = rowdata["OFFER.OFFERID"];
if(vars.get("$field.DiscountChanged") == "true" && oid){
var discount = rowdata["OFFER.DISCOUNT"];
var oiUtils = new OfferItemUtils(oid);
var vals = oiUtils.getNetAndVat();
var discountedVals = OfferItemUtils.getDiscountedNet(null, oid, discount);
let config = entities.createConfigForUpdatingRows();
config.entity("Offer_entity");
if(discountedVals){
config.fieldValues({
"NET": vals[0],
"VAT": vals[1],
"DISCOUNTED_NET": discountedVals[0],
"DISCOUNTED_VAT": discountedVals[1]
});
}
else
{
config.fieldValues({
"NET": vals[0],
"VAT": vals[1]
});
}
config.uid(oid);
entities.updateRow(config);
}
WorkflowSignalSender.updated();
\ No newline at end of file
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