电子档案
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

100 lines
5.1 KiB

  1. <div class="subheader editor-toolbar" id="editor-header">
  2. <div class="fixed-container">
  3. <div class="btn-group">
  4. <div class="btn-toolbar pull-left" ng-controller="DecisionTableToolbarController" ng-cloak>
  5. <button id="{{item.id}}"dec
  6. title="{{item.title | translate}}"
  7. ng-repeat="item in items"
  8. ng-switch on="item.type"
  9. class="btn btn-inverse" ng-class="{'separator': item.type == 'separator'}"
  10. ng-disabled="item.type == 'separator' || item.enabled == false || (readOnly && item.disableOnReadonly)"
  11. ng-click="toolbarButtonClicked($index)">
  12. <i ng-switch-when="button" ng-class="item.cssClass" class="toolbar-button" data-toggle="tooltip"
  13. title="{{item.title | translate}}"></i>
  14. <div ng-switch-when="separator" ng-class="item.cssClass"></div>
  15. </button>
  16. </div>
  17. </div>
  18. <div class="btn-group pull-right" ng-show="!secondaryItems.length">
  19. <div class="btn-toolbar pull-right" ng-controller="DecisionTableToolbarController">
  20. <button title="{{item.title | translate}}" ng-repeat="item in secondaryItems" ng-switch on="item.type"
  21. class="btn btn-inverse" ng-class="{'separator': item.type == 'separator'}"
  22. ng-disabled="item.type == 'separator' || (readOnly && item.disableOnReadonly)"
  23. ng-click="toolbarSecondaryButtonClicked($index)" id="{{item.id}}">
  24. <i ng-switch-when="button" ng-class="item.cssClass" class="toolbar-button" data-toggle="tooltip"
  25. title="{{item.title | translate}}"></i>
  26. <div ng-switch-when="separator" ng-class="item.cssClass"></div>
  27. </button>
  28. </div>
  29. </div>
  30. </div>
  31. </div>
  32. <div class="container-fluid content decision-table" auto-height offset="40">
  33. <br/>
  34. <div class="row">
  35. <div class="col-xs-12 text-right">
  36. <div class="dropdown">
  37. <button class="btn btn-default dropdown-toggle" type="button" id="actionsMenu" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
  38. {{"DECISION-TABLE-EDITOR.BUTTON-ACTIONS-LABEL" | translate}}
  39. <span class="caret"></span>
  40. </button>
  41. <ul class="dropdown-menu dropdown-menu-right" aria-labelledby="actionsMenu">
  42. <li><a href ng-click="addRule()">{{"DECISION-TABLE-EDITOR.BUTTON-ADD-RULE-LABEL" | translate}}</a></li>
  43. <li ng-if="model.selectedRow !== undefined && model.rulesData.length >= 2 && model.selectedRow >= 1"><a href ng-click="moveRuleUpwards()">{{"DECISION-TABLE-EDITOR.BUTTON-MOVE-RULE-UPWARDS-LABEL" | translate}}</a></li>
  44. <li ng-if="model.selectedRow !== undefined && model.selectedRow !== model.rulesData.length - 1"><a href ng-click="moveRuleDownwards()">{{"DECISION-TABLE-EDITOR.BUTTON-MOVE-RULE-DOWNWARDS-LABEL" | translate}}</a></li>
  45. <li class="danger" ng-if="model.selectedRow !== undefined && model.rulesData.length > 1"><a href ng-click="removeRule()">{{"DECISION-TABLE-EDITOR.BUTTON-REMOVE-RULE-LABEL" | translate}}</a></li>
  46. </ul>
  47. </div>
  48. </div>
  49. </div>
  50. <div class="decision-table-grid-wrapper" id="decisionTableGrid">
  51. <div class="decision-name-container">
  52. <div class="decision-name">
  53. {{currentDecisionTable.name}}
  54. </div>
  55. </div>
  56. <hot-table hot-auto-destroy
  57. hot-id="decision-table-editor"
  58. settings="model.hotSettings"
  59. columns="model.columnDefs"
  60. row-headers="true"
  61. datarows="model.rulesData"
  62. auto-row-size="'true'"
  63. on-after-get-col-header=doAfterGetColHeader
  64. on-modify-col-width=doAfterModifyColWidth
  65. on-after-render=doAfterRender
  66. on-after-on-cell-mouse-down=doAfterOnCellMouseDown
  67. on-after-scroll-horizontally=doAfterScroll
  68. on-after-scroll-vertically=doAfterScroll
  69. current-row-class-name="'currentRow'"
  70. on-after-validate=doAfterValidate
  71. height="500">
  72. </hot-table>
  73. </div>
  74. </div>
  75. <script>
  76. function triggerExpressionEditor(expressionType, expressionPos, newExpression) {
  77. if (expressionType === 'input') {
  78. extScope.openInputExpressionEditor(expressionPos, newExpression);
  79. } else {
  80. extScope.openOutputExpressionEditor(expressionPos, newExpression);
  81. }
  82. }
  83. function triggerRemoveExpression(expressionType, expressionPos) {
  84. if (expressionType === 'input') {
  85. extScope.removeInputExpression(expressionPos);
  86. } else {
  87. extScope.removeOutputExpression(expressionPos);
  88. }
  89. }
  90. function triggerHitPolicyEditor() {
  91. extScope.openHitPolicyEditor();
  92. }
  93. </script>