Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

autocomplete.settings.js 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. var Unibase;
  2. (function (Unibase) {
  3. let Forms;
  4. (function (Forms) {
  5. let Controls;
  6. (function (Controls) {
  7. class autocomplete_settings {
  8. constructor() {
  9. this.Id = 0;
  10. this.TextFormPropertyId = 0;
  11. }
  12. loadControlPropertiesHtml(Container) {
  13. }
  14. bindPropertySettings(prop) {
  15. var propertySettings = prop.PropertySettings;
  16. if (propertySettings != null && propertySettings != undefined) {
  17. var i = 0;
  18. $(".Controlproperties-Element").each(function () {
  19. if (propertySettings[i].ControlPropertyName == "IsCreateNew") {
  20. $(this).attr("data-controlpropertyid", propertySettings[i].ControlPropertyId);
  21. $(this).attr("data-controlpropertyname", propertySettings[i].ControlPropertyName);
  22. $(this).attr("data-propertysettingid", propertySettings[i].PropertySettingId);
  23. if (propertySettings[i].ControlPropertyValue == "true") {
  24. $("#IsCreateNew").prop("checked", true);
  25. }
  26. else {
  27. $("#IsCreateNew").prop("checked", false);
  28. }
  29. }
  30. i += 1;
  31. });
  32. }
  33. }
  34. savePropertySettings(prop) {
  35. var propertySettings = prop.PropertySettings;
  36. var propSettingReq = [];
  37. $(".Controlproperties-Element").each(function () {
  38. var data = {
  39. FormPropertyId: Number(prop.FormPropertyId),
  40. ControlPropertyId: Number($(this).attr("data-controlpropertyid")),
  41. ControlPropertyValue: $(this).children().find("input").prop("checked").toString(),
  42. ControlPropertyName: $(this).attr("data-controlpropertyname"),
  43. ControlId: Number(prop.ControlId),
  44. PropertySettingId: Number($(this).attr("data-propertysettingid")),
  45. };
  46. propSettingReq.push(data);
  47. });
  48. return propSettingReq;
  49. }
  50. loadSettingHtml(Container) {
  51. var html = `<section class=""><div class="card AutoProperties"><div class="card-header"><h6>AutoCompleteSetting Details</h6></div><div class="card-body" id="DivAutocomplete"><div class="row"><div class="col-sm-6 form-group"><label class="font-bold" style="color:grey">Report <span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control required" id="loadReport"/><input type="hidden" id="hfloadReportId"/></div><div class="col-sm-6 form-group"><label class="font-bold" style="color:grey">Text Column <span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control required" id="reporttextColumns"/><input type="hidden" id="hfreporttextColumnsId"/></div></div><div class="row align-items-end"><div class="col-sm-6 form-group"><label class="font-bold" style="color:grey">Id Column<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control required" id="reportIdColumns"/><input type="hidden" id="hfreportIdColumnsId"/></div><div class="col-sm-6 form-group"><div class="floating-label-form-group"><label for="lbl" id="lblparameterName" class="font-bold">Parameter Name <span class="text-danger">*</span></label><input type="text" id="txt_Parameter" class="form-control value-control floating-label-control" placeholder="Enter Parameter" data-placeholder="Enter Parameter" data-label="Enter Parameter"></div></div></div><div class="row align-items-end mt-5"><div class="col-sm-6 form-group"><label for="frmchkIsDefault">Allow Free Text</label><label id="lblIsTagSelect" class="switch m-t m-0 form-inline pull-right" style="color:grey"><input id="chkIsTagSelect" data-group="IsRequired" type="checkbox" data-controlpropertyname="IsTagSelect"><span/></label></div><div class="col-sm-6 form-group" id="divControlProps"><label for="frmchkIsDefault" >Enable IsCreateNew Option</label><label id="lblIsCreateNew" class="switch m-t m-0 form-inline pull-right" style="color:grey"><input id="IsCreateNew" data-group="IsRequired" type="checkbox" data-controlpropertyname="IsCreateNew"><span/></label></div></div><div class="row"><div class="form-group hidden col-sm-6" id="divApps"><label id="lbl_DocType">Apps<span class="text-danger" id="spnIsRequired_DocType"> *</span></label><select class="form-control" placeholder="form group" id="selectInstalledApps"><option selected value="">Select Apps</option></select></div><div class="form-group hidden col-sm-6" id="divAppConfiguration"><label id="lbl_DocType">AppConfigurations<span class="text-danger" id="spnIsRequired_DocType"> *</span></label><select class="form-control" placeholder="form group" id="selectAppConfigurations"><option selected value="">Select configurations</option></select></div></div><div class="row align-items-end"><div class="col-sm-6 form-group hidden"><div id="divRoleSettings"><label id="lbl_RoleSettings">Role Settings<span class="text-danger" id="spnIsRequired_RoleSettings"> *</span></label><select class="form-control" placeholder="form group" id="selectRoleSettings"><option selected value="">Select RoleSetting</option></select></div></div><div class="col-sm-6 form-group"><div id="divButton"><label for="frmchkIsDefault">Show Total ReportData</label><label id="lblEnableButton" class="switch m-t m-0 form-inline pull-right" style="color:grey"><input id="chkShowTotalReportData" data-group="IsRequired" type="checkbox" data-controlpropertyname="EnableButton"><span/></label></div></div><div class="col-sm-6 form-group"><label class="font-bold" style="color:grey">Additional Data Column</label><select class="form-control" id="reportAddlDataColumns"/></select><input type="hidden" id="hfreportAddlDataColumnsId"/></div></div><div class="row hidden" id="divTotalReportData"><div class="col-sm-6 form-group"><label class="font-blod" style="color:grey">TotalData Report<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control" id="totalDataReportId"/><input type="hidden" id="hftotalDataReportId"/></div><div class="col-sm-6 form-group"><label class="font-blod" style="color:grey">Mapping IdColumn<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control" id="mappingIdColumn"/></select><input type="hidden" id="hfMappingColumnId"/></div><div class="col-sm-6 form-group"><label class="font-bold" style="color:grey">Mapping Text Column<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control" id="mappingTextColumn"/></select><input type="hidden" id="hfMappingTextColumnId"/></div></div>` +
  52. `</div></section>`;
  53. $(Container).html(html);
  54. autocomplete_settings._instance.LoadReports();
  55. autocomplete_settings._instance.LoadTotalDataReports();
  56. $("#totalDataReportId").next('.select2-container').css('width', '100%');
  57. $('#chkShowTotalReportData').on('change', function () {
  58. if ($('#chkShowTotalReportData').prop('checked')) {
  59. $("#divTotalReportData").removeClass('hidden');
  60. $("#totalDataReportId").addClass('required');
  61. $("#mappingIdColumn").addClass('required');
  62. $("#mappingTextColumn").addClass('required');
  63. }
  64. else {
  65. $("#divTotalReportData").addClass('hidden');
  66. $("#totalDataReportId").removeClass('required');
  67. $("#mappingIdColumn").removeClass('required');
  68. $("#mappingTextColumn").removeClass('required');
  69. }
  70. });
  71. var installedAppId = Unibase.Platform.Forms.Components.FormBuilder.Instance().InstalledAppId;
  72. Unibase.Platform.Permissions.Managers.PermissionManager.Instance().getRoleSettingsbyAppId(installedAppId).then(function (response) {
  73. for (let i = 0; i < response.result.length; i++) {
  74. $('#selectRoleSettings').append('<option value="' + response.result[i].AppPermissionId + '">' + response.result[i].SystemName + '</option>');
  75. }
  76. });
  77. Unibase.Platform.Apps.Managers.AppManager.Instance().getInstalledApps().then(function (response) {
  78. for (let i = 0; i < response.result.length; i++) {
  79. $('#selectInstalledApps').append('<option value="' + response.result[i].InstalledAppId + '">' + response.result[i].AppTitle + '</option>');
  80. }
  81. });
  82. $("#divApps").change(function () {
  83. $('#selectAppConfigurations').val("");
  84. var InstaledAppId = Number($("#divApps option:selected").val());
  85. Unibase.Platform.Apps.Managers.AppManager.Instance().getFormAppConfigurations(InstaledAppId).then(function (response) {
  86. for (let i = 0; i < response.result.length; i++) {
  87. $('#selectAppConfigurations').append('<option value="' + response.result[i].AppConfigurationId + '">' + response.result[i].SettingName + '</option>');
  88. }
  89. });
  90. });
  91. $("#IsCreateNew").on("change", function () {
  92. if ($("#IsCreateNew").is(':checked')) {
  93. $("#divApps").removeClass('hidden');
  94. $("#divAppConfiguration").removeClass('hidden');
  95. $("#selectInstalledApps").addClass('required');
  96. $("#selectAppConfigurations").addClass('required');
  97. }
  98. else {
  99. $("#divApps").addClass('hidden');
  100. $("#divAppConfiguration").addClass('hidden');
  101. $("#selectInstalledApps").removeClass('required');
  102. $("#selectAppConfigurations").removeClass('required');
  103. }
  104. });
  105. }
  106. LoadTotalDataReports() {
  107. var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reports';
  108. AutoCompleteHelper.getHelper().Create($("#totalDataReportId"), $("#hftotalDataReportId"), url, function (response) {
  109. $("#totalDataReportId").change(function () {
  110. var Id = $("#totalDataReportId option:selected").val().toString();
  111. var ReportId = Number(Id);
  112. $("#mappingIdColumn").empty().trigger('change');
  113. $("#mappingTextColumn").empty().trigger('change');
  114. var colurl = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reportcolumnsautocomplete/reportid/' + ReportId;
  115. AutoCompleteHelper.getHelper().Create($("#mappingIdColumn"), $("#hfMappingColumnId"), colurl, function (response) { });
  116. AutoCompleteHelper.getHelper().Create($("#mappingTextColumn"), $("#hfMappingTextColumnId"), colurl, function (response) { });
  117. });
  118. });
  119. }
  120. LoadReports() {
  121. var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reports';
  122. AutoCompleteHelper.getHelper().Create($("#loadReport"), $("#hfloadReportId"), url, function (response) {
  123. $("#loadReport").change(function () {
  124. $("#reportIdColumns").text('');
  125. $("#reporttextColumns").text('');
  126. var Id = $("#loadReport option:selected").val().toString();
  127. var ReportId = Number(Id);
  128. autocomplete_settings._instance.LoadReportCoulmns(ReportId);
  129. });
  130. });
  131. }
  132. LoadReportCoulmns(ReportId) {
  133. var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reportcolumnsautocomplete/reportid/' + ReportId;
  134. AutoCompleteHelper.getHelper().Create($("#reportIdColumns"), $("#hfreportIdColumnsId"), url, function (response) { });
  135. AutoCompleteHelper.getHelper().Create($("#reporttextColumns"), $("#hfreporttextColumnsId"), url, function (response) { });
  136. AutoCompleteHelper.getHelper().Create($("#reportAddlDataColumns"), $("#hfreportAddlDataColumnsId"), url, function (response) { });
  137. }
  138. bindControlData(controldatajson) {
  139. var data = controldatajson;
  140. autocomplete_settings._instance.Id = data.AutoCompletePropertyId;
  141. autocomplete_settings._instance.TextFormPropertyId = data.TextFormPropertyId;
  142. autocomplete_settings._instance.LoadReportCoulmns(data.ReportId);
  143. var datalist = new Option(data.DataListName, data.ReportId, true);
  144. $("#loadReport").append(datalist);
  145. $("#loadReport").val(data.ReportId);
  146. autocomplete_settings._instance.LoadReports();
  147. var reportIdColumns = new Option(data.AutoCompleteIdColumn, data.AutoCompleteIdColumn, true);
  148. $("#reportIdColumns").append(reportIdColumns);
  149. $("#reportIdColumns").val(data.AutoCompleteIdColumn);
  150. var reporttextColumns = new Option(data.AutoCompleteTextColumn, data.AutoCompleteTextColumn, true);
  151. $("#reporttextColumns").append(reporttextColumns);
  152. $("#reporttextColumns").val(data.AutoCompleteTextColumn);
  153. $("#txt_Parameter").val(data.Parameters);
  154. $('#chkShowTotalReportData').prop('checked', data.ShowTotalReportData);
  155. $('#chkIsTagSelect').prop('checked', data.IsTagSelect);
  156. var totalreportdata = new Option(data.TotalDataReportName, data.TotalDataReportId, true);
  157. $("#totalDataReportId").append(totalreportdata);
  158. $("#totalDataReportId").val(data.TotalDataReportId);
  159. if (data.MappingIdColumn == "null") {
  160. data.MappingIdColumn = 'Select';
  161. }
  162. var mappingIdColumns = new Option(data.MappingIdColumn, data.MappingIdColumn, true);
  163. $("#mappingIdColumn").append(mappingIdColumns);
  164. if (data.MappingTextColumn == "null") {
  165. data.MappingTextColumn = 'Select';
  166. }
  167. var mappingTextColumns = new Option(data.MappingTextColumn, data.MappingTextColumn, true);
  168. $("#mappingTextColumn").append(mappingTextColumns);
  169. if (data.AdditionalDataColumn != null && data.AdditionalDataColumn != "") {
  170. var addtitionaldataColumns = new Option(data.AdditionalDataColumn, data.AdditionalDataColumn, true);
  171. $("#reportAddlDataColumns").append(addtitionaldataColumns);
  172. }
  173. if ($('#chkShowTotalReportData').prop('checked')) {
  174. $("#divTotalReportData").removeClass('hidden');
  175. }
  176. else {
  177. $("#divTotalReportData").addClass('hidden');
  178. }
  179. }
  180. SaveControlData(controldatajson) {
  181. var controldatajson1 = [];
  182. if (controldatajson != null && controldatajson != "") {
  183. controldatajson1[0].AutoCompletePropertyId = $("#hdnAutocompletePropertyId").val();
  184. controldatajson1[0].DocPropertyId = $("#hdnPropertyId").val();
  185. controldatajson1[0].ReportId = $("#hfloadReportId").val();
  186. controldatajson1[0].AutoCompleteTextColumn = $("#reporttextColumns option:selected").val();
  187. controldatajson1[0].AutoCompleteIdColumn = $("#reportIdColumns option:selected").val();
  188. controldatajson1[0].IsTagSelect = $("#chkIsTagSelect").prop('checked');
  189. controldatajson1[0].IsIncludeAllOption = false;
  190. controldatajson1[0].FormId = $("#hdnFormId").val();
  191. controldatajson1[0].AutoCompleteFilterColumn = $("#hdnAutocompleteFilterColumn").val();
  192. controldatajson1[0].AppConfigId = $('#selectAppConfigurations option:selected').val();
  193. controldatajson1[0].IsMultiSelect = false;
  194. controldatajson1[0].Parameters = $("#txt_Parameter").val();
  195. controldatajson1[0].DataListName = $("#loadReport option:selected").text();
  196. controldatajson = JSON.stringify(controldatajson1[0]);
  197. controldatajson1[0].FormuniqueId = $('#txt_FormUniqueId').val(),
  198. controldatajson1[0].ShowTotalReportData = $('#chkShowTotalReportData').prop('checked');
  199. controldatajson1[0].AdditionalDataColumn = $("#reportAddlDataColumns option:selected").text();
  200. }
  201. else {
  202. var totalDataReportId = Number($("#totalDataReportId option:selected").val());
  203. controldatajson1[0] = {
  204. AutoCompletePropertyId: Number(autocomplete_settings._instance.Id),
  205. DocPropertyId: Number(Unibase.Platform.Forms.Components.PropertyEditor.Instance().DocPropertyId),
  206. ReportId: Number($("#loadReport option:selected").val()),
  207. AutoCompleteTextColumn: $("#reporttextColumns option:selected").text(),
  208. AutoCompleteIdColumn: $("#reportIdColumns option:selected").text(),
  209. IsTagSelect: $("#chkIsTagSelect").prop('checked'),
  210. IsIncludeAllOption: false,
  211. FormId: Number(Unibase.Platform.Forms.Components.FormBuilder.instance.FormId),
  212. AutoCompleteFilterColumn: "",
  213. AppConfigId: Number($('#selectAppConfigurations option:selected').val()),
  214. IsMultiSelect: false,
  215. Parameters: $("#txt_Parameter").val(),
  216. DataListName: $("#loadReport option:selected").text(),
  217. FormUniqueId: $('#txt_FormUniqueId').val(),
  218. TextFormPropertyId: Number(autocomplete_settings._instance.TextFormPropertyId == null ? 0 : autocomplete_settings._instance.TextFormPropertyId),
  219. RoleSetting: $('#selectRoleSettings option:selected').text() == "Select RoleSetting" ? null : $('#selectRoleSettings option:selected').text(),
  220. ShowTotalReportData: $('#chkShowTotalReportData').prop('checked'),
  221. TotalDataReportId: isNaN(totalDataReportId) ? 0 : totalDataReportId,
  222. MappingIdColumn: $("#mappingIdColumn option:selected").text(),
  223. MappingTextColumn: $("#mappingTextColumn option:selected").text(),
  224. AdditionalDataColumn: $("#reportAddlDataColumns option:selected").text(),
  225. };
  226. controldatajson = JSON.stringify(controldatajson1[0]);
  227. }
  228. return controldatajson;
  229. }
  230. static Instance() {
  231. if (this._instance === undefined)
  232. this._instance = new autocomplete_settings();
  233. return this._instance;
  234. }
  235. }
  236. Controls.autocomplete_settings = autocomplete_settings;
  237. })(Controls = Forms.Controls || (Forms.Controls = {}));
  238. })(Forms = Unibase.Forms || (Unibase.Forms = {}));
  239. })(Unibase || (Unibase = {}));