diff --git a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.html b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.html index fd08ecce31414333aebbf3a8a03cc20622e2c4f4..3e47d755a79b31367401bcb16d7db08c0246e0fa 100644 --- a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.html +++ b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.html @@ -132,6 +132,7 @@ + diff --git a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts index 5e620b08d8a2846f539af13d83b61be4fa29320b..e3214ec0ebfcbab24324908d9c3383d08dc1859b 100644 --- a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts +++ b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts @@ -609,6 +609,22 @@ export class ServiceRuleDesignComponent implements OnInit { return [code, Blockly.Java.ORDER_ATOMIC]; }; + + Blockly.Java['text_format_multi'] = function(block: { getFieldValue: (arg0: string) => any; }) { + // Text value. + + var atext = Blockly.Java.valueToCode(block, 'TEXT', Blockly.Java.ORDER_NONE) || '""'; + //atext = '"""\n' + block.getFieldValue('TEXT') + '\n"""\n'; + + var objects = Blockly.Java.valueToCode(block, 'VARIABLES', Blockly.Java.ORDER_NONE) || null; + + objects = objects.replace('[', ' ,'); + objects = objects.replace(']', ' '); + + + var code = 'String.format(' + atext + objects + ')'; + return [code, Blockly.Java.ORDER_ATOMIC]; + }; Blockly.Java['changecharacteristicvalue'] = function (block: any) { // Print statement. diff --git a/src/assets/blockly/custom_blocks.js b/src/assets/blockly/custom_blocks.js index 4a834e1ae84d15bd6311b412d9387f4fcb207d29..51d44d03862e662826f4ead578e8937d2795a5f3 100644 --- a/src/assets/blockly/custom_blocks.js +++ b/src/assets/blockly/custom_blocks.js @@ -81,6 +81,44 @@ Blockly.defineBlocksWithJsonArray([ return new Blockly.FieldImage(Blockly.pathToMedia + file, 12, 12, '"'); } }; + + + + Blockly.Blocks['text_format_multi'] = { + /** + * Block for text value. + * @this Blockly.Block + */ + init: function() { + + this.appendValueInput("TEXT") + .setCheck("String") + .setAlign(Blockly.ALIGN_RIGHT) + .appendField("Input(String)"); + this.appendValueInput("VARIABLES") + .setCheck("Array") + .setAlign(Blockly.ALIGN_RIGHT) + .appendField("Variables(Array)"); + + this.setOutput(true, 'String'); + this.setColour(160); + this.setTooltip("A formatted text replacing variables from a list\n %s for Strings\n %n for Numbers, etc"); + }, + /** + * Create an image of an open or closed quote. + * @param {boolean} open True if open quote, false if closed. + * @return {!Blockly.FieldImage} The field image of the quote. + * @private + */ + newQuote_: function(open) { + if (open == Blockly.RTL) { + var file = 'quote1.png'; + } else { + var file = 'quote0.png'; + } + return new Blockly.FieldImage(Blockly.pathToMedia + file, 12, 12, '"'); + } + }; /*************************************************************************** *