Built files from Bizgaze WebServer
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

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 = {}));