123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326 |
- var Bizgaze;
- (function (Bizgaze) {
- let Apps;
- (function (Apps) {
- let Support;
- (function (Support) {
- let Controls;
- (function (Controls) {
- class LevelMembers extends Unibase.Platform.Core.BaseComponent {
- constructor() {
- super(...arguments);
- this.deletedEmployees = [];
- this.roleemp = [];
- this.postdataemp = [];
- this.flag = false;
- this.isalreadyemp = false;
- }
- init(formpropertyid, prop, callback) {
- var instance = this;
- instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId);
- instance.loadPropertySettings(prop.PropertySettings, prop.FormPropertyId);
- if (callback != null) {
- callback();
- }
- }
- getdata() {
- var instance = this;
- if ($("#txtAutoComplete_EmpId").val() != null) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Add Selected Level Member");
- return false;
- }
- else {
- return instance.postdataemp;
- }
- }
- loadControl(containerid, prop) {
- var instance = this;
- var html = '<div id="Unibase_ValidationSummary" class="clear mt-10"><input type="hidden" class="value-control" value="Bizgaze.Apps.Support.Controls.LevelMembers.Instance().getdata();"/></div><div class="div_LevelMembers"><strong>Level Members</strong></div><div class="row align-items-end div_users mt-15"></div><div class="col-sm-12 div_levmem mt-5"><ul class="ul_levmem list-group list-group-flush"><li class="list-group-item li_header hidden"><div class="col-sm-12 row"><div class="col-sm-4"><strong>User Name</strong></div><div class="col-sm-4"><strong>Designation</strong></div></div></li><li class="list-group-item li_levmem hidden">0</li></ul><div id="levmem_footer_container" class="hidden"><div class="d-flex flex-wrap justify-content-between align-items-center mt-10"><div class="levmem_total_container"><span class="font-weight-500 text-dark">Total : </span><span class="levmem_visibileList">0</span> of <span class="levmem_totalList">0</span></div><a class="levmen_more_btn btn btn-sm btn-success hidden" href="javascript:;" onclick="Bizgaze.Apps.Support.Controls.LevelMembers.Instance().loadMoreLvlMemList()">More</a></div></div></div>';
- $("#" + containerid).html(html);
- }
- refreshlevelmembers(roleids) {
- var instance = this;
- $(".li_levmem").empty();
- $('.div_users').empty();
- if ((roleids.length == 0) && (instance.flag == false)) {
- $(".li_header").addClass("hidden");
- }
- var instance = this;
- instance.fileCacheHelper.loadJsFile("apps/support/managers/supportmanager.js", function () {
- Bizgaze.Apps.Support.Managers.SupportManager.Instance().getRoleTicketGroup(roleids).then(function (response) {
- var result = response.result;
- if (result != null) {
- for (var i = 0; i < result.length; i++) {
- var data = result[i];
- var deleteIndex = instance.deletedEmployees.findIndex(x => x.UserId == data.employeeid);
- if (deleteIndex == -1) {
- var postdataIndex = instance.postdataemp.findIndex(x => x.UserId == data.employeeid);
- if (postdataIndex == -1) {
- instance.postdataemp.push({
- UserId: data.employeeid, UserName: data.employeename, DesignationId: data.designationid, DesignationName: data.designationname, RoleId: data.roleid, Status: 1, LevelMemberId: 0, IsRole: true, UserInstalledAppId: data.installedappid
- });
- }
- var roleempIndex = instance.roleemp.findIndex(x => x.UserId == data.employeeid);
- if (roleempIndex == -1) {
- instance.roleemp.push({
- RoleId: data.roleid, UserId: data.employeeid
- });
- }
- }
- }
- }
- });
- instance.getuserdata();
- });
- }
- listemp() {
- var instance = this;
- $(".levmem").remove();
- $(".li_header").removeClass("hidden");
- $('#levmem_footer_container').removeClass('hidden');
- for (let j = 0; j < instance.postdataemp.length; j++) {
- var data = instance.postdataemp;
- if (data[j].IsRole == false) {
- if ($(".ul_levmem li.levmem").length >= 5) {
- $("#levmem_footer_container .levmen_more_btn").removeClass('hidden');
- }
- else {
- $("#levmem_footer_container .levmen_more_btn").addClass('hidden');
- }
- var Html = '<li class="list-group-item levmem li_' + j + '" >' +
- '<div class="d-none d-md-block">' +
- '<div class="row col-sm-12">' +
- '<input type="hidden" class="hdempid" value="' + data[j].UserId + '"/>' +
- '<input type="hidden" class="hddesignationid" value="' + data[j].DesignationId + '"/>' +
- '<input type="hidden" class="hduserinstalledappid" value="' + data[j].UserInstalledAppId + '"/>' +
- '<div class="col-sm-4"><span class="employeename" value="">' + data[j].UserName + '</span></div>' +
- '<div class="col-sm-4"><span class="designationname" value"">' + data[j].DesignationName + '</span></div>' +
- '<div class="col-sm-2" > <a href="javascript:;" class="pull-right btn-danger btn-sm fa fa-trash delete-emp" id = "deleteEmployee" href = "javascript:;" onclick = "Bizgaze.Apps.Support.Controls.LevelMembers.Instance().deleteEmployee(' + data[j].UserId + ',' + data[j].DesignationId + ',' + data[j].RoleId + ');" > </a></div >' +
- '</div></div>' +
- '<div class="d-block d-sm-none">' +
- '<div class="row ml-5"><div class="col-11 row">' +
- '<input type="hidden" class="hdempid" value="' + data[j].UserId + '"/>' +
- '<input type="hidden" class="hddesignationid" value="' + data[j].DesignationId + '"/>' +
- '<input type="hidden" class="hduserinstalledappid" value="' + data[j].UserInstalledAppId + '"/>' +
- '<div class="col-sm-4"><span class="employeename" value="">' + data[j].UserName + '</span></div>' +
- '<div class="col-sm-4"><span class="designationname" value="">' + data[j].DesignationName + '</span></div></div>' +
- '<div class="col-1" > <a href="javascript:;" class="btn-danger btn-sm mr-20 fa fa-trash delete-emp" id = "deleteEmployee" href = "javascript:;" onclick = "Bizgaze.Apps.Support.Controls.LevelMembers.Instance().deleteEmployee(' + data[j].UserId + ',' + data[j].DesignationId + ',' + data[j].RoleId + ');" > </a></div ></div>' +
- '</div></div> ' +
- '</li>';
- $('.li_levmem:last').after(Html);
- $(".ul_levmem li.levmem").each(function (i, e) {
- if (i < 5) {
- $(e).removeClass('hidden');
- }
- else {
- $(e).addClass('hidden');
- }
- });
- let totalRowsCount = $(".ul_levmem li.levmem").length;
- $("#levmem_footer_container .levmem_totalList").text(totalRowsCount);
- let visibleRowsCount = totalRowsCount - $(".ul_levmem li.levmem.hidden").length;
- $("#levmem_footer_container .levmem_visibileList").text(visibleRowsCount);
- }
- if ((instance.postdataemp.length == 0) && (data[j].IsRole == true)) {
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- instance.flag = true;
- }
- else {
- $(".li_header").removeClass("hidden");
- $('#levmem_footer_container').removeClass('hidden');
- instance.flag = true;
- }
- }
- if (instance.flag == false) {
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- }
- else if (instance.flag == true) {
- $(".li_header").removeClass("hidden");
- $('#levmem_footer_container').removeClass('hidden');
- instance.flag = true;
- }
- }
- loadMoreLvlMemList() {
- $(".ul_levmem li.levmem.hidden").each(function (index, item) {
- if (index < 5) {
- $(item).removeClass('hidden');
- let totalRowsCount = $(".ul_levmem li.levmem").length;
- let visibleRowsCount = totalRowsCount - $(".ul_levmem li.levmem.hidden").length;
- $("#levmem_footer_container .levmem_visibileList").text(visibleRowsCount);
- if (visibleRowsCount == totalRowsCount) {
- $("#levmem_footer_container .levmen_more_btn").addClass('hidden');
- }
- }
- });
- }
- getuserdata() {
- var instance = this;
- var html = '<div class="div_SearchEmp col-sm-8"> ' +
- '<label for="lbl" id="lbl_EmpId" style="color:grey"></label>' +
- '<select id="txtAutoComplete_EmpId" class="form-control text-control txtAutoComplete_EmpId" style="width:100%">Select</select>' +
- '<input type="hidden" id="hfAutoComplete_EmpId" class="form-control value-control" data-isdynamic="true"/>' +
- '<input type="hidden" id="hd_empid" value=""/>' +
- '<input type="hidden" id="hd_designationid" value=""/>' +
- '<input type="hidden" id="hd_employeename" value=""/>' +
- '<input type="hidden" id="hd_designationname" value=""/>' +
- '<input type="hidden" id="hd_userinstalledappid" value=""/>' +
- '</div>';
- $('.div_users').append(html);
- instance.fileCacheHelper.loadJsFile("apps/support/managers/supportmanager.js", function () {
- AutoCompleteHelper.getHelper().Create("#txtAutoComplete_EmpId", "#hfAutoComplete_EmpId", _appsettings.server_url() + "/apis/v4/bizgaze/crm/employees/getemployees", function (result) {
- var data = result;
- $("#hd_empid").val(data.id);
- Bizgaze.Apps.Support.Managers.SupportManager.Instance().getRoleEmployee(data.id).then(function (response) {
- var res = response.result;
- if (res.length == 1) {
- $("#hd_empid").val(res[0].employeeid);
- $("#hd_designationid").val(res[0].designationid);
- $("#hd_employeename").val(res[0].employeename);
- $("#hd_designationname").val(res[0].designationname);
- $("#hd_userinstalledappid").val(res[0].installedappid);
- }
- });
- });
- var html1 = '<div class="col-sm-4 mt-15 mt-sm-0"><button type="button" id="addEmployeeBtn" class="btn btn-sm btn-primary mr-15">Add</button><button type="button" id="clrEmployeeBtn" class="btn btn-sm btn-primary">Clear</button></div>';
- $(".div_users").append(html1);
- instance.bindEmployeeEvents();
- });
- }
- bindEmployeeEvents() {
- var instance = this;
- $("#addEmployeeBtn").click(function () {
- instance.addEmployee();
- return false;
- });
- $("#clrEmployeeBtn").click(function () {
- instance.clearEmployee();
- });
- }
- deleteEmployee(employeeid, designationid, roleid) {
- var instance = this;
- instance.deletedEmployees.push({
- UserId: employeeid, DesignationId: designationid, RoleId: roleid
- });
- var postEmp = instance.postdataemp.filter(x => x.UserId == employeeid);
- instance.postdataemp = instance.postdataemp.filter(ar => !postEmp.find(rm => (rm.UserId === ar.UserId)));
- var roles = $(".select2_roleids ").val().toString();
- if (instance.editdata == 0) {
- instance.refreshlevelmembers(roles);
- }
- else {
- instance.listemp();
- }
- if (instance.postdataemp.length == 0) {
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- }
- for (var i = 0; i < instance.postdataemp.length; i++) {
- if ((instance.postdataemp[i].IsRole == true) && (instance.flag == true)) {
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- }
- else {
- $(".li_header").removeClass("hidden");
- $('#levmem_footer_container').removeClass('hidden');
- }
- }
- }
- addEmployee() {
- var instance = this;
- instance.isalreadyemp = false;
- var employeeid = Number($("#hd_empid").val());
- var designationid = Number($("#hd_designationid").val());
- var userinstalledappid = Number($("#hd_userinstalledappid").val());
- var employeename = $("#hd_employeename").val();
- var designationname = $("#hd_designationname").val();
- if (employeeid != 0) {
- var arrayIndex = instance.postdataemp.findIndex(x => x.UserId == employeeid);
- if (arrayIndex != -1) {
- var isroleid = instance.postdataemp[arrayIndex].IsRole;
- }
- if (arrayIndex == -1) {
- instance.postdataemp.push({
- UserId: employeeid, UserName: employeename, DesignationId: designationid, DesignationName: designationname, RoleId: 0, Status: 1, LevelMemberId: 0, IsRole: false, UserInstalledAppId: userinstalledappid
- });
- }
- else if (isroleid == false) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Employee already Exists");
- instance.isalreadyemp = true;
- return false;
- }
- else if (isroleid == true) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Employee already Exists for the role");
- instance.isalreadyemp = true;
- return false;
- }
- if (instance.isalreadyemp == false) {
- instance.listemp();
- }
- }
- if ($("#txtAutoComplete_EmpId").val() == null) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Contact");
- return false;
- }
- $("#txtAutoComplete_EmpId").val(null).trigger("change");
- }
- clearEmployee() {
- this.postdataemp = [];
- this.deletedEmployees = [];
- this.refreshlevelmembers($(".select2_roleids ").val().toString());
- $(".levmem").remove();
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- }
- loadControlSettings(controlsettingjson, formpropertyid) {
- var instance = this;
- instance.deletedEmployees = [];
- instance.postdataemp = [];
- instance.roleemp = [];
- $(".select2_roleids").on('select2:select', function (e) {
- }).on('select2:unselect', function (e) {
- let roleid = e.params.data.id;
- var delEmp = instance.deletedEmployees.filter(x => x.RoleId == roleid);
- instance.deletedEmployees = instance.deletedEmployees.filter(ar => !delEmp.find(rm => (rm.RoleId === ar.RoleId)));
- var postEmp = instance.postdataemp.filter(x => x.RoleId == roleid);
- instance.postdataemp = instance.postdataemp.filter(ar => !postEmp.find(rm => (rm.RoleId === ar.RoleId)));
- });
- }
- loadPropertySettings(propertysettings, formpropertyid) {
- return null;
- }
- bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
- var instance = this;
- var levelid = Number(propval);
- instance.editdata = levelid;
- instance.fileCacheHelper.loadJsFile("apps/support/managers/supportmanager.js", function () {
- Bizgaze.Apps.Support.Managers.SupportManager.Instance().getLevelMembers(levelid).then(function (response) {
- var res = response.result;
- instance.postdataemp = [];
- for (let i = 0; i < res.length; i++) {
- instance.postdataemp.push({
- UserId: res[i].UserId, UserName: res[i].UserName, DesignationId: res[i].DesignationId, DesignationName: res[i].DesignationName, RoleId: res[i].RoleId, Status: res[i].Status, LevelMemberId: res[i].LevelMemberId, IsRole: res[i].IsRole, UserInstalledAppId: res[i].UserInstalledAppId
- });
- }
- instance.listemp();
- var isroleindex = instance.postdataemp.findIndex(x => x.IsRole == false);
- if (isroleindex == -1) {
- $(".li_header").addClass("hidden");
- $('#levmem_footer_container').addClass('hidden');
- }
- });
- });
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new LevelMembers();
- }
- return this.instance;
- }
- }
- Controls.LevelMembers = LevelMembers;
- })(Controls = Support.Controls || (Support.Controls = {}));
- })(Support = Apps.Support || (Apps.Support = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|