API Docs for:
Show:

File: Ticket\TicketAdministrationReassign.js

/*================================================================================================================\
+
+ Project     : GoData-Eicher
+ Filename    : TicketAdministrationReassign.js
+ Module Name : Ticket 
+ Purpose     : For ticket reassign          
+ Coded By    : Parul Gupta
+
+================================================================================================================*/

/**
* For ticketing
* @module Ticket
*/

/**
* This class contains functionality of Ticket Reassign for CCE.
* @class TicketReassign
* @constructor
*/

//Global variables
var xhr_addNewTicket;
var breakdownLocLatLng;
var breakdownMarker;
var _ccplMap = null;
var _geoCoder;
var _defaultLat = 26.912285124827,
    _defaultLng = 75.7873203125

//initialize markers
var _availableVansMarkers = '../../Content/css/images/avil-van.png';         //marker for available vans
var _unavailableVansMarkers = '../../Content/css/images/unavl-van.png';      //marker for unavailable vans
var _dealerMarker = '../../Content/css/images/dealer-icon.png';              //marker for dealers

var breakdownLat, breakdownLng, breakdownState, ticketId, defaultSlatime, vRegistrationNo;

//Google Distance MAtrix Service API
var _service = new google.maps.DistanceMatrixService();

var _detailsListOfVanDealer = [];        //array of objects of details of nearest vans and dealers 
var _vanDealerLatLngArr = [];            //array of nearest vans and dealers lat lng
var _copyResulEls = [];


/**
* Load google map on page.
* @method initMap
* @param {String} id HTML element id where map is loaded.
* @for TicketReassign
*/
function _initMap(id) {
    var _mapOptions = {
        center: new google.maps.LatLng(_defaultLat, _defaultLng),
        zoom: 12,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    //initialize map
    _ccplMap = new google.maps.Map(document.getElementById(id), _mapOptions);
}

/**
* Function to reassign ticket
* @method reassignTicket
* @for TicketReassign
*/
function reassignTicket() {

    breakdownLat = $("#breakdownLattitude").val();
    breakdownLng = $("#breakdownLongitude").val();
    breakdownState = $("#breakdownState").val();
    ticketId = $("#ticketid").val();
    defaultSlatime = $("#defaultSlaTime").val();
    vRegistrationNo = $("#vRegistrationNo").val();

    breakdownLocLatLng = new google.maps.LatLng(breakdownLat, breakdownLng);

    $.ajax({
        type: "GET",
        url: "/Ticket/TicketAdministration_ReassignTicket/",
        success: function (data) {
            $("#divReassignTicket").html('');
            $("#divReassignTicket").html(data);
            //open form in new dialog box
            $("#divReassignTicket").data("kendoWindow").open();
        },
        complete: function () {
            setTimeout(function () { /* get all nearest vans and dealers */ getAllNearestVansDealers(breakdownState); }, 1500);
        },
        error: function (data) {
            console.log(data);
        }
    });
}


/**
* Function to close kendo window
* @method closeWindow
* @param {String} divId HTML element id where window is loaded
* @for TicketReassign
*/
function closeWindow(divId) {
    $(divId).data("kendoWindow").close();
}


/**
* Function to empty van dealer array
* @method emptyVanDealerArray
* @for TicketReassign
*/
function emptyVanDealerArray() {

    if (nearestVansDealersMarks.length > 0) {
        //console.log(nearestVansDealersMarks.length);
        for (var counter = 0; counter < nearestVansDealersMarks.length; counter++) {
            nearestVansDealersMarks[counter].setMap(null);
            //set address text field empty here
            nearestVansDealersMarks[counter] = "";
        }
        nearestVansDealersMarks = [];
    }
}


/**
* Function to remove markers if any
* @method removeMarker
* @for TicketReassign
*/
function removeMarker() {
    //Remove previous marker if present
    if (breakdownMarker) {
        breakdownMarker.setMap(null);
        //set address text field empty here
        breakdownMarker = "";
    }
}

//Global variables to get more than 25 vans/dealers
var _arrOf25VanDealerLatLng = [];
var _arrOf25VanDealerDetails = [];
var _LIMIT = 100;

/**
* Function to get all nearest vans and dealers for reassign ticket
* @method getAllNearestVansDealers
* @param {String} state The name of selected state
* @for TicketReassign
*/
function getAllNearestVansDealers(state) {
    var stateName, stateId, vanDealerLatlng, type, VDId, vanDealerLat, vanDealerLng, vanDealerCity,
        vanDealerName, vanDealerState, deviceAlias, vanRemainingTime, deviceStatus, noOfAssignedTickets, description;
    stateName = state;

    //empty van dealer lat lng array
    if (_vanDealerLatLngArr.length > 0) {
        _vanDealerLatLngArr = [];
    }
    //empty details list of van dealer array
    if (_detailsListOfVanDealer.length > 0) {
        _detailsListOfVanDealer = [];
    }
    //empty array to get next 25 vans/dealers details.
    _copyResulEls = [];

    removeMarker();
    emptyVanDealerArray();

    //Create a new Marker on the position click on the map
    breakdownMarker = new google.maps.Marker({
        position: breakdownLocLatLng,
        map: _ccplMap
    });
    $.ajax({
        type: "GET",
        url: "/Ticket/GetAllNearestVansDealers/",
        data: { StateName: stateName, limit: _LIMIT },
        success: function (data) {
            console.log(data.NearestVansDealers);
            if (data.NearestVansDealers.length > 0) {
                _vanDealerLatLngArr.length = 0;
                for (var counter = 0; counter < data.NearestVansDealers.length; counter++) {
                    var title, markerIcon, backgroundColor;
                    var updatedDeviceStatus = "";
                    var _vanDealerObj = {};

                    vanDealerLatlng = new google.maps.LatLng(data.NearestVansDealers[counter].DealerVanLattitude, data.NearestVansDealers[counter].DealerVanLongitude);
                    type = data.NearestVansDealers[counter].Type;
                    VDId = data.NearestVansDealers[counter].DealerVanId;
                    vanDealerLat = data.NearestVansDealers[counter].DealerVanLattitude;
                    vanDealerLng = data.NearestVansDealers[counter].DealerVanLongitude;
                    vanDealerCity = data.NearestVansDealers[counter].DealerVanCity;
                    noOfAssignedTickets = data.NearestVansDealers[counter].NoOfAssignedTicket;
                    vanDealerName = data.NearestVansDealers[counter].DealerVanName;
                    vanDealerState = data.NearestVansDealers[counter].DealerVanState;
                    deviceAlias = data.NearestVansDealers[counter].DeviceAlias;
                    vanRemainingTime = data.NearestVansDealers[counter].RemainingTime;
                    deviceStatus = data.NearestVansDealers[counter].DeviceStatus;

                    //check if remaining time is negative
                    if (vanRemainingTime == null || vanRemainingTime == "") {
                        vanRemainingTime = "0";
                    }
                    else {
                        if (vanRemainingTime.indexOf('-') === -1) {
                            vanRemainingTime = vanRemainingTime;
                        } else {
                            vanRemainingTime = "0";
                        }
                    }
                    if ((deviceStatus == "True") && (type == "van")) {
                        updatedDeviceStatus = "green-circle";
                    }
                    else if ((deviceStatus == "False") && (type == "van")) {
                        updatedDeviceStatus = "red-circle";
                    } else {
                        updatedDeviceStatus = "";
                    }

                    if (vanRemainingTime == "0") {
                        backgroundColor = "green";
                    }
                    else {
                        backgroundColor = "red";
                    }
                    //push van dealer lat lng in array
                    _vanDealerLatLngArr.push(vanDealerLatlng);

                    _vanDealerObj.type = type;
                    _vanDealerObj.id = VDId;
                    _vanDealerObj.lat = vanDealerLat;
                    _vanDealerObj.lng = vanDealerLng;
                    _vanDealerObj.city = vanDealerCity;
                    _vanDealerObj.assignedTickets = noOfAssignedTickets;
                    _vanDealerObj.name = vanDealerName;
                    _vanDealerObj.state = vanDealerState;
                    _vanDealerObj.alias = deviceAlias;
                    _vanDealerObj.remainingTime = vanRemainingTime;
                    _vanDealerObj.deviceStatus = updatedDeviceStatus;
                    _vanDealerObj.backGroundColor = backgroundColor;

                    //push van dealer details in array
                    _detailsListOfVanDealer.push(_vanDealerObj);
                }

                var forLoopLength, multiplier = 1, waitIndex = 0, setTimeOutSeconds;
                var vanDealerLatLngArrLength = _vanDealerLatLngArr.length;

                if (breakdownLocLatLng != "") {

                    if (_vanDealerLatLngArr.length < 25 && _vanDealerLatLngArr.length > 0) {
                        forLoopLength = 1;
                    } else {
                        if ((_vanDealerLatLngArr.length % 25) > 0) {
                            forLoopLength = parseInt((_vanDealerLatLngArr.length / 25), 10) + 1;
                        } else if ((_vanDealerLatLngArr.length % 25) == 0) {
                            forLoopLength = parseInt((_vanDealerLatLngArr.length / 25), 10);
                        }
                    }
                    var z;
                    if (forLoopLength == 1) {
                        _arrOf25VanDealerLatLng = [];
                        _arrOf25VanDealerDetails = [];
                        for (var i = 0; i < _vanDealerLatLngArr.length; i++) {
                            _arrOf25VanDealerLatLng.push(_vanDealerLatLngArr[i]);
                            _arrOf25VanDealerDetails.push(_detailsListOfVanDealer[i]);
                        }
                        _calcRouteDistance(breakdownLocLatLng, _arrOf25VanDealerLatLng, _arrOf25VanDealerDetails);
                        setTimeout(function () {
                            _createVanDealerSortedList();
                        }, 1000);
                    } else {
                        for (var i = 0; i < forLoopLength; i++) {
                                setTimeOutSeconds = waitIndex * multiplier;
                                if (vanDealerLatLngArrLength < 25) { z = 0; } else { z = vanDealerLatLngArrLength - 25; }

                                _arrOf25VanDealerLatLng = [];
                                _arrOf25VanDealerDetails = [];
                                for (var j = vanDealerLatLngArrLength; j > z; j--) {
                                    _arrOf25VanDealerLatLng.push(_vanDealerLatLngArr[j - 1]);
                                    _arrOf25VanDealerDetails.push(_detailsListOfVanDealer[j - 1]);
                                }
                                vanDealerLatLngArrLength = vanDealerLatLngArrLength - 25;
                                _calculateDistanceInSetTimeOut(breakdownLocLatLng, _arrOf25VanDealerLatLng, _arrOf25VanDealerDetails, setTimeOutSeconds);
                            waitIndex++;
                        }
                        _createVanDealerList();
                    }
                }
            }
        },
        error: function (data) {
            console.log(data);
        }
    });
}

/**
* SetTimeOut function to calculate distance between van and dealer using google distance matrix api
* @method _calculateDistanceInSetTimeOut
* @param {String} breakDownLatLng LatLng of breakdown vehicle
* @param {array} arrVanDealerLatLng LatLng of vans / dealers
* @param {array} arrVanDealerDetails details of vans/dealers
* @param {String} timeOutSeconds time in seconds for setTimeout function
* @for TicketReassign
*/
function _calculateDistanceInSetTimeOut(breakDownLatLng, arrVanDealerLatLng, arrVanDealerDetails, timeOutSeconds) {
    setTimeout(function () {
        _calcRouteDistance(breakDownLatLng, arrVanDealerLatLng, arrVanDealerDetails);
    }, timeOutSeconds);
}

/**
* setTimeOut function to create sorted van dealer list
* @method _createVanDealerList
* @for TicketReassign
*/
function _createVanDealerList() {
    setTimeout(function () {
        _createVanDealerSortedList();
    }, 1000);
}

/**
* Function to reassign ticket to a van / dealer
* @method reAssignVan
* @param {String} index The index no. of selected van / dealer
* @for TicketReassign
*/
function reAssignVan(index) {
    $("#displayVansDealersTable_reassign").find('tr').removeClass('showMarked');
    $("#displayVansDealersTable_reassign").find('tr:nth-child(' + (index + 2) + ')').addClass('showMarked');
    //create object of ticket model
    var TicketModel = {};
    TicketModel.TicketId = ticketId;
    TicketModel.Description = "";
    TicketModel.listDescription = {};
    TicketModel.AssignedTo = $('#displayVansDealersTable_reassign tr:eq(' + (index + 1) + ') > td:eq(1)').text();
    TicketModel.ReportedVia = "";

    if (TicketModel.AssignedTo == "van") {
        TicketModel.TicketStatus = 1;
    }
    else {
        TicketModel.TicketStatus = 2;
    }

    TicketModel.Priority = 0;
    TicketModel.CustomerScore = "";
    TicketModel.CreatedBy = "";
    TicketModel.CreationTime = "";
    TicketModel.LastModifiedBy = "";
    TicketModel.LastModifiedTime = "";
    TicketModel.BreakdownLocation = "";
    TicketModel.BreakdownLongitude = "";
    TicketModel.BreakdownLattitude = "";
    TicketModel.AssignedToUserId = $('#displayVansDealersTable_reassign tr:eq(' + (index + 1) + ') > td:eq(2)').text();
    TicketModel.AssignedToUserLattitude = _copyResulEls[index].lat;
    TicketModel.AssignedToUserLongitude = _copyResulEls[index].lng;
    TicketModel.Isdeclined = false;
    TicketModel.EstimatedTimeForJobCompletion = "";
    TicketModel.TotalTicketLifecycleTimeSla = "";
    TicketModel.EstimatedTimeForJobCompletionSubmitTime = "";
    TicketModel.VehicleRegisterNumber = "";
    TicketModel.BreakdownLocationLandmark = "";
    TicketModel.RouteId = "";
    TicketModel.CustomerContactNo = "";
    TicketModel.TicketStatusAlias = "";
    TicketModel.Token = "";
    TicketModel.Status = "";
    TicketModel.Message = "";
    TicketModel.UtcMinute = 0;
    TicketModel.RepairCost = "";
    TicketModel.DefaultSlaTime = defaultSlatime;
    TicketModel.SlaMissedReason = "";
    TicketModel.SuggestionComment = "";
    TicketModel.JobCompleteResponseTime = "";
    TicketModel.DefaultCol2 = "";
    TicketModel.DefaultCol3 = "";

    //distance 
    var distanceInKm = $('#displayVansDealersTable_reassign tr:eq(' + (index + 1) + ') > td:eq(5)').text();
    var lastIndex = distanceInKm.lastIndexOf(" km");
    var distance = distanceInKm.substring(0, lastIndex);
    TicketModel.EstimateDistance = distance;

    //Send POST request with the ticket data
    if (xhr_addNewTicket && xhr_addNewTicket.readystate != 4) {
        xhr_addNewTicket.abort();
    }

    xhr_addNewTicket = $.ajax({
        type: "POST",
        url: "/Ticket/TicketAdministration_UpdateTicketOpenClose/",
        data: TicketModel,
        success: function (data) {
            if (data.success == true) {
                $.ajax({
                    type: "POST",
                    url: "/Ticket/TicketAdministration_GetTicketHistory/",
                    data: { registrationNo: vRegistrationNo, mobileNo: "", complaintNo: "" },
                    success: function (data) {
                        if (data.fillFieldMesseage) {
                            jAlert(data.fillFieldMesseage, 'Message');
                        }
                        else {
                            $("#divCheckHistory").html(data);
                            if (document.getElementById('tableTicketHistory')) {
                                $("#tableTicketHistory > tbody > tr[id='" + (ticketId).toUpperCase() + "']").trigger("click");
                            }
                        }
                    },
                    error: function (data) {
                        console.log(data);
                    }
                });
            }
        },
        complete: function () {
            closeWindow("#divReassignTicket");
        },
        error: function (data) {
            console.log(data);
        }
    });
}

/**
* Function to calculate route distance
* @method _calcRouteDistance
* @param {String} origin The location of origin(van / dealer)
* @param {String} destinationArr The location of destination(vehicle's breakdown)
* @for TicketReassign
*/
function _calcRouteDistance(origin, destinationArr, vanDealerDetailsArr) {
    _service.getDistanceMatrix({
        origins: [origin],
        destinations: destinationArr,
        travelMode: google.maps.TravelMode.DRIVING,
        unitSystem: google.maps.UnitSystem.METRIC,
        avoidHighways: false,
        avoidTolls: false
    }, _distanceMatrixCallback);
    //Callback for Distance Matrix API
    function _distanceMatrixCallback(response, status) {
        //If Status was an error, throw alert
        if (status != google.maps.DistanceMatrixStatus.OK) {
            alert('Error was: ' + status);
        } else {
            //Result ELements response from Distance Matrinx
            var _resultEls = response.rows[0].elements;
            //Add vanId and vanAddress to the response
            for (var i = 0; i < _resultEls.length; i++) {
                if (_resultEls[i].status == "OK") {
                    _resultEls[i].vanDealerAddress = response.destinationAddresses[i];
                    _resultEls[i].vanDealerID = vanDealerDetailsArr[i].id;
                    _resultEls[i].type = vanDealerDetailsArr[i].type;
                    _resultEls[i].lat = vanDealerDetailsArr[i].lat;
                    _resultEls[i].lng = vanDealerDetailsArr[i].lng;
                    _resultEls[i].city = vanDealerDetailsArr[i].city;
                    _resultEls[i].assignedTicketsToVanDealer = vanDealerDetailsArr[i].assignedTickets;
                    _resultEls[i].name = vanDealerDetailsArr[i].name;
                    _resultEls[i].state = vanDealerDetailsArr[i].state;
                    _resultEls[i].alias = vanDealerDetailsArr[i].alias;
                    _resultEls[i].remainingTime = vanDealerDetailsArr[i].remainingTime;
                    _resultEls[i].deviceStatus = vanDealerDetailsArr[i].deviceStatus;
                    _resultEls[i].backgroundColor = vanDealerDetailsArr[i].backGroundColor;
                }
            }
            for (var counter = 0; counter < _resultEls.length; counter++) {
                if (_resultEls[counter].status == "OK") {
                    _copyResulEls.push(_resultEls[counter]);
                }
            }
        }
    }
}

/**
* This fn create sorted van dealer list
* @method _createVanDealerSortedList
* @for TicketReassign
*/
function _createVanDealerSortedList() {
    //Sort our Array according to the duration values in ascending order. [See: https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort for more reference]
    _copyResulEls.sort(function (a, b) {
        var reg = new RegExp('^[0-9]+$');
        if (a.status == "OK" && b.status == "OK") {
            //console.log(a, b);
            var k1 = a.duration.value;
            var k2 = b.duration.value;
            if (reg.test(k1) == true && reg.test(k2) == true) {
                if (k1 > k2) {
                    return 1;
                } else {
                    return -1;
                }
            }
        }
        else {
            return -1;
        }
        return 0;
    });

    $("#tableVansDealers_reassign").html('');
    //var to hold table String to show in dialog-form
    var _trString = '';
    //Loop through length of result vans array values of resultEl 
    for (var i = 0; i < _copyResulEls.length; i++) {
        //if i===0, add html for table.
        if (_copyResulEls[i].status == "OK") {
            var _markerIcon;
            if (i === 0) {
                _trString += '<table id="displayVansDealersTable_reassign" class="modalTable"><thead><tr><th>S. No.</th><th>Van/Dealer</th><th style="display:none;">Van/Dealer Id</th><th>Van/Dealer Name</th><th style="width:25%;">Van/Dealer Location</th><th>Distance</th><th>Duration</th><th>No. of Open Tickets</th><th>Remaining Time(in mins)</th><th>Is Connected</th><th ></th></tr></thead><tbody>';
            }
            //add each row
            _trString += '<tr id="' + _copyResulEls[i].vanDealerID + '"><td style="box-shadow: 4px 0px 0px ' + _copyResulEls[i].backgroundColor + ' inset;" >' + (i + 1) + '</td><td >' + _copyResulEls[i].type + '</td><td style="display:none;">' + _copyResulEls[i].vanDealerID + '</td><td>' + _copyResulEls[i].name + '</td><td>' + _copyResulEls[i].vanDealerAddress + '</td><td>' + _copyResulEls[i].distance.text + '</td><td>' + _copyResulEls[i].duration.text + '</td><td>' + _copyResulEls[i].assignedTicketsToVanDealer + '</td><td>' + _copyResulEls[i].remainingTime + '</td><td><span class="' + _copyResulEls[i].deviceStatus + '"></span></td><td><button class="button_blue", style="width:77px;" onclick="reAssignVan(' + i + ');">Re-Assign</button></td></tr>';
            //if i===2, end table tag.
            if (i === _copyResulEls.length) {
                $("#tableVansDealers_reassign").append('</tbody></table>');
            }

            //add content to info window
            var description = '<div id="divInfoWindow">' +
                    '<div class="">' +
                       ' <div class="">' +
                            '<h2 class="EngName_heading"><span id="spanVanDealerName">' + _copyResulEls[i].name + '</span></h2>' +
                            '<table width="100%" cellpadding="0" cellspacing="0" class="InfoWindowTbl">' +
                                '<tbody>' +
                                    '<tr>' +
                                        '<td class=""><span>Van/Dealer Location</span></td><td colspan="5"><span id="spanVanDealerLocation">' + _copyResulEls[i].vanDealerAddress + '</span>' +
                                        '</td></tr><tr><td><span>Distance</span></td> <td> <span id="spanVanDealerDistance">' + _copyResulEls[i].distance.text + '</span></td><td><span>Duration</span> </td><td><span id="spanVanDealerDuration">' + _copyResulEls[i].duration.text + '</span>' +
                                        '</td><td class=""> <span>No. of Open Tickets</span> </td> <td> <span id="spanNoOfAssignedTickets">' + _copyResulEls[i].assignedTicketsToVanDealer + '</span></td></tr></tbody></table></div></div></div>';

            if (_copyResulEls[i].type == "dealer") {
                _markerIcon = dealerMarker;
            }
            else {
                if (_copyResulEls[i].backgroundColor == 'green') {
                    _markerIcon = _availableVansMarkers;
                } else {
                    _markerIcon = _unavailableVansMarkers;
                }
            }
            var _vanDealerLatlng = new google.maps.LatLng(_copyResulEls[i].lat, _copyResulEls[i].lng);
            //create marker at position
            createMarker(_vanDealerLatlng, _markerIcon, _copyResulEls[i].vanDealerID, description, _ccplMap);
        }
    }
    var _bounds = new google.maps.LatLngBounds();
    for (var count = 0; count < nearestVansDealersMarks.length; count++) {
        _bounds.extend(nearestVansDealersMarks[count].position);
    }
    _ccplMap.fitBounds(_bounds);
    //Append the _trString created in the dialog-form
    $("#tableVansDealers_reassign").append(_trString);
    //On click of row of Vans / dealers table
    $("#displayVansDealersTable_reassign > tbody > tr").click(function (e) {
        var rowId = e.currentTarget.id;
        if (infowindow) {
            infowindow.close();
        }
        $("#displayVansDealersTable_reassign").find('tr').removeClass('showMarked');
        $("#displayVansDealersTable_reassign").find('tr[id=' + rowId + ']').addClass('showMarked');

        var _selectedVanDealerLat, _selectedVanDealerLng, _vehicleLatLng, _selectedVanDealerLatLng, _selectedVanDealerType;
        var _selectedVanDealerId = e.currentTarget.id;
        for (var counter = 0; counter < nearestVansDealersMarks.length; counter++) {
            if (nearestVansDealersMarks[counter].customInfo == _selectedVanDealerId) {
                stopMarkerBounce();
                getMarkerBounce(nearestVansDealersMarks[counter]);
            }
        }
        for (var count = 0; count < _copyResulEls.length; count++) {
            if (_copyResulEls[count].vanDealerID == _selectedVanDealerId) {
                _selectedVanDealerLat = _copyResulEls[count].lat;
                _selectedVanDealerLng = _copyResulEls[count].lng;
                _selectedVanDealerType = _copyResulEls[count].type;
            }
        }
        vehicleLatLng = breakdownLocLatLng;
        _selectedVanDealerLatLng = new google.maps.LatLng(_selectedVanDealerLat, _selectedVanDealerLng);
        calcRoute(vehicleLatLng, _selectedVanDealerLatLng, _selectedVanDealerType, _ccplMap);
    });

    //start marker bounce
    function getMarkerBounce(vanDealerMarker) {
        if (vanDealerMarker.getAnimation() != null) {
            vanDealerMarker.setAnimation(null);
        } else {
            vanDealerMarker.setAnimation(google.maps.Animation.BOUNCE);
        }
    }

    //stop marker bounce
    function stopMarkerBounce() {
        for (var count = 0; count < nearestVansDealersMarks.length; count++) {
            if (nearestVansDealersMarks[count].getAnimation() != null) {
                nearestVansDealersMarks[count].setAnimation(null);
            }
        }
    }
}