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.

breakuptenure.component.js 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Apps;
  4. (function (Apps) {
  5. let TM;
  6. (function (TM) {
  7. let Targets;
  8. (function (Targets) {
  9. let Controls;
  10. (function (Controls) {
  11. class BreakupTenure extends Unibase.Platform.Core.BaseComponent {
  12. constructor() {
  13. super();
  14. this.datetimehelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
  15. }
  16. init(formpropertyid, prop, callback) {
  17. var container = "control-container-" + formpropertyid;
  18. BreakupTenure.instance.BreakupTenuteDatesList = [];
  19. $("#" + $("#div_section" + prop.SectionId + " div div div div")[0].children[1].id).change(function () {
  20. if ($("#" + $("#div_section" + prop.SectionId + " div div div div")[0].children[1].id + " :selected").text() == "Yearly") {
  21. $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id).empty();
  22. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.Instance().loadBreakupTenureForYearly(prop);
  23. }
  24. else {
  25. $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id).empty();
  26. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.Instance().loadBreakupTenureForMonthly(prop);
  27. }
  28. });
  29. $('.date_todate,.date_fromdate,.divCustomProperties_breakuptenureid,.divCustomProperties_tenuretypeid').change(function () {
  30. if ($('.date_todate').val() != "") {
  31. var breakuptenureid = $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id + " :selected").text();
  32. var breakuptenure = $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id + " :selected").val();
  33. var formdate = $("#" + container).find('.date_fromdate').val();
  34. var todate = $("#" + container).find('.date_todate').val();
  35. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.Instance().loadBreakupTenureDates(container, 0, breakuptenureid, prop, breakuptenure);
  36. }
  37. });
  38. if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) {
  39. $('.divCustomProperties_breakuptenureid').trigger('change');
  40. }
  41. $('.divCustomProperties_tenuretypeid').change(function () {
  42. $('.tblBreakupTenure').addClass("hidden");
  43. return false;
  44. });
  45. }
  46. loadControl(containerid, prop) {
  47. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/membership/infos/identity.js", function () {
  48. });
  49. var html = '<div class="row m-t-lg">' +
  50. '<input type="hidden" id="hdn_customcontrol" class="value-control" value="Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.Instance().getobj();">' +
  51. '<div class="col-sm-12 TableBreakupTenure" >' +
  52. '<div class="tblBreakupTenure"></div>' +
  53. '</div>' +
  54. '</div >';
  55. $("#" + containerid).html(html);
  56. if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) {
  57. $('[data-formuniquekey="Bizgaze_Extension_TM_Targets_App_Targets_CreateForm"]').find('#btnDynamicSave').addClass('d-none').after(`<button type="button" id="btnTargetVerification_${containerid}" class="btn btn-sm btn-primary" onclick=" Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.Instance().editFormVerification();">Save</button>`);
  58. }
  59. }
  60. loadControlSettings(controlsettingjson, formpropertyid) {
  61. return null;
  62. }
  63. loadPropertySettings(propertysettings, formpropertyid) {
  64. return null;
  65. }
  66. validate() {
  67. var fd;
  68. var td;
  69. $(".date_fromdate,.date_todate").val("");
  70. $(".date_fromdate,.date_todate").text("");
  71. fd = $(".date_fromdate").parent('floating-label-form-group');
  72. var a = fd.prevObject[0].id.replace('date', 'div');
  73. $("#" + a).removeClass('floating-label-form-group-with-value');
  74. td = $(".date_todate").parent('floating-label-form-group');
  75. var b = td.prevObject[0].id.replace('date', 'div');
  76. $("#" + b).removeClass('floating-label-form-group-with-value');
  77. }
  78. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  79. return null;
  80. }
  81. loadBreakupTenureDates(container, targetdefid, brname, prop, breakuptenure) {
  82. var errormsg = $("#" + container).find(".bizgaze_FormErrorMessages").attr('id');
  83. var Pdid = targetdefid;
  84. var btname = "";
  85. if (brname == null || brname == undefined)
  86. btname = $("#'" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id + "' :selected").text();
  87. else
  88. btname = brname;
  89. var instance = this;
  90. var fromdate = this.datetimehelper.formatServerDate($('.date_fromdate').val());
  91. var todate = this.datetimehelper.formatServerDate($('.date_todate').val());
  92. if (fromdate != "Invalid date") {
  93. if (fromdate > todate) {
  94. $(".tblBreakupTenure").html("");
  95. alert("ToDate should be greater than From Date");
  96. $(".date_fromdate,.date_todate").text("");
  97. $(".date_fromdate,.date_todate").val("");
  98. this.f = $(".date_fromdate").parent('floating-label-form-group');
  99. var a = this.f.prevObject[0].id.replace('date', 'div');
  100. $("#" + a).removeClass('floating-label-form-group-with-value');
  101. this.t = $(".date_todate").parent('floating-label-form-group');
  102. var b = this.t.prevObject[0].id.replace('date', 'div');
  103. $("#" + b).removeClass('floating-label-form-group-with-value');
  104. return false;
  105. }
  106. }
  107. fromdate = fromdate.toString();
  108. todate = todate.toString();
  109. var fdate = fromdate.replace('/', '-').replace('/', '-');
  110. var tdate = todate.replace('/', '-').replace('/', '-');
  111. this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
  112. Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().getBreakupTenureDates(fdate, tdate, targetdefid, btname).then(function (response) {
  113. if (response.result.length > 0) {
  114. $('.brkd-active').remove();
  115. for (var i = 0; i < response.result.length; i++) {
  116. var len = $('.tblBreakupTenure').length;
  117. var html = " ";
  118. html = '<div id="divBreakupTenure-' + len + '" class="trBreakupTenure brkd-active added-row divBreakupTenure-' + len + '">' +
  119. '<div class="row">' +
  120. '<div class="col-sm-4">' +
  121. '<div class="floating-label-form-group floating-label-form-group-with-value focus" id="div_BreakupTenure">' +
  122. '<input type="hidden" id="hf_BreakupTenureId" value = ' + breakuptenure + ' />' +
  123. '<label for="txt_BreakupTenure" id="lbl_BreakupTenure">Breakup Tenure<span class="text-danger"> *</span></label>' +
  124. '<input type="text" id="BreakupTenureName" disabled value="' + response.result[i].BreakupTenureName + '" class="form-control required floating-label-control text-danger BreakupTenureName" data-placeholder="Breakup Tenure" data-label="Breakup Tenure*" placeholder="Breakup Tenure*" />' +
  125. '<input type="hidden" id="hfBreakupTenureId" value = ' + response.result[i].BreakupTenureId + ' />' +
  126. '<label for="Validation" id="lblValidation_BreakupTenure"></label>' +
  127. '<input type = "hidden" id = "hfFormPropertyId"/>' +
  128. '</div>' +
  129. '</div>' +
  130. '<div class="col-sm-4">' +
  131. '<div class="floating-label-form-group floating-label-form-group-with-value focus" id="div_FromDate">' +
  132. '<label for="txt_FromDate" id="lbl_FromDate">From Date<span class="text-danger"> *</span></label>' +
  133. '<div class="input-group">' +
  134. '<input type="text" disabled id="txt_FromDate-' + len + '" placeholder="From Date *" value=' + moment(response.result[i].FromDate).format('DD/MM/YYYY') + ' class="form-control floating-label-control datepicker-input brkfromdate FromDate" data-placeholder="dd/mm/yyyy" data-label="From Date*" /><span class="input-group-addon bg-white no-border spndate"><a href="#"><i class="fa fa-calendar"></i></a></span>' +
  135. '<input type="hidden" id="hf_FromDate" />' +
  136. '<label for="Validation" id="lblValidation_FromDate"></label>' +
  137. '<input type="hidden" id="hfFormPropertyId" />' +
  138. '</div>' +
  139. '</div>' +
  140. '</div>' +
  141. '<div class="col-sm-4">' +
  142. '<div class="floating-label-form-group floating-label-form-group-with-value focus" id = "div_ToDate">' +
  143. '<label for="txt_ToDate" id="lbl_ToDate">To Date<span class="text-danger"> *</span></label>' +
  144. '<div class="input-group">' +
  145. '<input type="text" disabled id="txt_ToDate-' + len + '" placeholder="To Date *" value=' + moment(response.result[i].Todate).format('DD/MM/YYYY') + ' class="form-control floating-label-control datepicker-input ToDate brktodate" data-placeholder="dd/mm/yyyy" data-label="To Date*" /><span class="input-group-addon bg-white no-border spndate"><a href="#"><i class="fa fa-calendar open-datetimepicker" aria-hidden="true"></i></a></span>' +
  146. '<input type = "hidden" id = "hf_ToDate" />' +
  147. '<label for="Validation" id="lblValidation_ToDate"></label>' +
  148. '<input type="hidden" id="hfFormPropertyId" />' +
  149. '</div>' +
  150. '</div>' +
  151. '</div>' +
  152. '</div>' +
  153. '</div>';
  154. $(".tblBreakupTenure:first").after(html);
  155. $(".spndate").click(function () {
  156. $(this).parent().find("input").focus();
  157. });
  158. }
  159. $('.TableBreakupTenure').removeClass("hidden");
  160. $(".bizgaze_FormErrorMessages").val("");
  161. }
  162. else {
  163. if (btname == "Daily") {
  164. $(".tblBreakupTenure").html("");
  165. $('.TableBreakupTenure').addClass("hidden");
  166. alert("Check Dates ! Daily BreakupTenure allows below 31 Days only");
  167. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.instance.validate();
  168. return false;
  169. }
  170. if (btname == "Weekly") {
  171. $(".tblBreakupTenure").html("");
  172. $('.TableBreakupTenure').addClass("hidden");
  173. alert("Check Dates ! Weekly BreakupTenure allows below 4 weeks only");
  174. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.instance.validate();
  175. return false;
  176. }
  177. if (btname == "Monthly") {
  178. $(".tblBreakupTenure").html("");
  179. $('.TableBreakupTenure').addClass("hidden");
  180. alert("Check Dates ! Monthly BreakupTenure allows below 12 Monthly only");
  181. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.instance.validate();
  182. return false;
  183. }
  184. if (btname == "HalfYearly") {
  185. $(".tblBreakupTenure").html("");
  186. $('.TableBreakupTenure').addClass("hidden");
  187. alert("Check Dates ! HalfYearly BreakupTenure allows below 12 Monthly only");
  188. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.instance.validate();
  189. return false;
  190. }
  191. if (btname == "Quarterly") {
  192. $(".tblBreakupTenure").html("");
  193. $('.TableBreakupTenure').addClass("hidden");
  194. alert("Check Dates ! Quarterly BreakupTenure allows below 12 Monthly only");
  195. Bizgaze.Apps.TM.Targets.Controls.BreakupTenure.instance.validate();
  196. return false;
  197. }
  198. if (btname == "-Select-") {
  199. $(".tblBreakupTenure").html("");
  200. $('.TableBreakupTenure').addClass("hidden");
  201. return false;
  202. }
  203. }
  204. });
  205. });
  206. }
  207. loadBreakupTenureForYearly(prop) {
  208. var YearWiseOptions = ['-Select-', 'HalfYearly', 'Quarterly', 'Monthly'];
  209. var r = 12;
  210. for (var i = 0; i < YearWiseOptions.length; i++) {
  211. if (i == 0) {
  212. var item = new Option(YearWiseOptions[i], "");
  213. }
  214. else {
  215. var item = new Option(YearWiseOptions[i], r.toString());
  216. r += 1;
  217. }
  218. $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id).append(item);
  219. }
  220. }
  221. loadBreakupTenureForMonthly(prop) {
  222. var MonthlyWiseOptions = ['-Select-', 'Weekly', 'Daily'];
  223. var r = 15;
  224. for (var i = 0; i < MonthlyWiseOptions.length; i++) {
  225. if (i == 0) {
  226. var item = new Option(MonthlyWiseOptions[i], "");
  227. }
  228. else {
  229. var item = new Option(MonthlyWiseOptions[i], r.toString());
  230. r += 1;
  231. }
  232. $("#" + $("#div_section" + prop.SectionId + " div div div div")[5].children[1].id).append(item);
  233. }
  234. }
  235. editFormVerification() {
  236. var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  237. var targetdefinitionid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetdefinitionid").Value);
  238. var targetdefinitionname = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetdefinitionname").Value;
  239. var targetgroupid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetgroupid").Value);
  240. var lobid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_lobid").Value);
  241. var providerid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_providerid").Value);
  242. var tagparentid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_tagparentid").Value);
  243. var allowothercontacts = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_allowothercontacts").Value);
  244. var contacttagparentid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_contacttagparentid").Value);
  245. var tenuretypeid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_tenuretypeid").Value);
  246. var fromdate = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_fromdate").Value;
  247. var todate = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_todate").Value;
  248. var breakuptenureid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_breakuptenureid").Value);
  249. var TargetDefinitionName = $(".txt_targetdefinitionname").val();
  250. var TargetGroupid = Number($(".hfAutoCompleteId_targetgroupid").val());
  251. var LobId = Number($(".hfAutoCompleteId_lobid").val());
  252. var ProviderId = Number($(".hfAutoCompleteId_providerid").val());
  253. var TagParentId = Number($(".hfAutoCompleteId_tagparentid").val());
  254. var AllowOtherContacts = Number($(".dropdown_allowothercontacts").val());
  255. var ContactTagParentId = Number($(".hfAutoCompleteId_contacttagparentid").val());
  256. var TenureTypeId = Number($(".dropdown_tenuretypeid").val());
  257. var FromDate = $(".date_fromdate").val();
  258. var ToDate = $(".date_todate").val();
  259. var BreakupTenureId = Number($(".dropdown_breakuptenureid").val());
  260. if (lobid != LobId || providerid != ProviderId || tagparentid != TagParentId || allowothercontacts != AllowOtherContacts || contacttagparentid != ContactTagParentId || tenuretypeid != TenureTypeId || fromdate != FromDate || todate != ToDate || breakuptenureid != BreakupTenureId) {
  261. bootbox.confirm({
  262. message: "Are You Sure Do You Whant to Delete Contact Target Planning?",
  263. buttons: {
  264. confirm: {
  265. label: 'Yes',
  266. className: 'btn-success'
  267. },
  268. cancel: {
  269. label: 'No',
  270. className: 'btn-danger'
  271. }
  272. },
  273. callback: function (result) {
  274. if (result) {
  275. $('[data-formuniquekey="Bizgaze_Extension_TM_Targets_App_Targets_CreateForm"]').find('#btnDynamicSave').trigger('click');
  276. }
  277. }
  278. });
  279. }
  280. else {
  281. $('[data-formuniquekey="Bizgaze_Extension_TM_Targets_App_Targets_CreateForm"]').find('#btnDynamicSave').trigger('click');
  282. }
  283. }
  284. getobj() {
  285. var instance = this;
  286. $(".TableBreakupTenure").find(".trBreakupTenure").each(function () {
  287. var breakuptenuredatename = $(this).find("#BreakupTenureName").val();
  288. var fromdate = $(this).find(".FromDate").val();
  289. var todate = $(this).find(".ToDate").val();
  290. var breakuptenureid = $(this).find('#hfBreakupTenureId').val();
  291. instance.breakuptenuredates(breakuptenuredatename, fromdate, todate, breakuptenureid);
  292. });
  293. return instance.BreakupTenuteDatesList;
  294. }
  295. breakuptenuredates(breakuptenuredatename, fromdate, todate, breakuptenureid) {
  296. var instance = this;
  297. instance.BreakupTenuteDatesList.push({
  298. BreakupTenureDateName: breakuptenuredatename,
  299. FromDate: Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDate(fromdate),
  300. Todate: Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDate(todate),
  301. BreakupTenureId: breakuptenureid
  302. });
  303. }
  304. static Instance() {
  305. if (this.instance === undefined) {
  306. this.instance = new BreakupTenure();
  307. }
  308. return this.instance;
  309. }
  310. }
  311. Controls.BreakupTenure = BreakupTenure;
  312. })(Controls = Targets.Controls || (Targets.Controls = {}));
  313. })(Targets = TM.Targets || (TM.Targets = {}));
  314. })(TM = Apps.TM || (Apps.TM = {}));
  315. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  316. })(Bizgaze || (Bizgaze = {}));