Показать сообщение отдельно
  #9 (permalink)  
Старый 10.02.2022, 14:07
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,794

var array = {
  "2685": {
    "deal_title": "Настроить телефонию",
    "COMPANY_ID": "1709",
    "deadline": "",
    "COMPANY_TITLE": "ГК Оптимум",
    "full_time": " - "
  },
  "3531": {
    "deal_title": "CRG Внедрение Битркис24 + Коробка",
    "COMPANY_ID": "2009",
    "deadline": "",
    "COMPANY_TITLE": "ПРОЕКТНЫЙ ИНСТИТУТ \"ГЕОПЛАН\"",
    "full_time": " - "
  },
  "5037": {
    "deal_title": "Приложение для Битрикс24",
    "COMPANY_ID": "2009",
    "deadline": "",
    "COMPANY_TITLE": "ПРОЕКТНЫЙ ИНСТИТУТ \"ГЕОПЛАН\"",
    "full_time": " - "
  },
  "5575": {
    "deal_title": "Базовое внедрение (54)",
    "COMPANY_ID": "1336",
    "deadline": "",
    "COMPANY_TITLE": "ИП Лебедев Максим Андреевич",
    "full_time": " - "
  },
  "6521": {
    "deal_title": "Доработка Битркис24",
    "COMPANY_ID": "1717",
    "deadline": "",
    "COMPANY_TITLE": "АЛЬФА-ГИФТС  ГРУПП",
    "full_time": " - "
  },
  "6551": {
    "deal_title": "Приложение Стоп-работа",
    "COMPANY_ID": "1362",
    "deadline": "",
    "COMPANY_TITLE": "Роско",
    "full_time": " - "
  },
  "6797": {
    "deal_title": "Экспорт остатков по кассам",
    "COMPANY_ID": "1336",
    "deadline": "",
    "COMPANY_TITLE": "ИП Лебедев Максим Андреевич",
    "full_time": " - "
  },
  "10151": {
    "deal_title": "Сопровождение на 2021 год (7 часов в месяц)",
    "COMPANY_ID": "2569",
    "deadline": "",
    "COMPANY_TITLE": "Российское Газовое Общество",
    "full_time": " - "
  },
  "10263": {
    "deal_title": "Купон на УФ (1 год)",
    "COMPANY_ID": "2587",
    "deadline": "",
    "COMPANY_TITLE": "Компас-Р",
    "full_time": " - "
  },
  "10375": {
    "deal_title": "Прием оплат+доработка интеграции",
    "COMPANY_ID": "2191",
    "deadline": "",
    "COMPANY_TITLE": "Комтех",
    "full_time": " - "
  },
  "10749": {
    "deal_title": "Доработки портала (сентябрь)",
    "COMPANY_ID": "1278",
    "deadline": "",
    "COMPANY_TITLE": "ООО \"ТЕРВУД\"",
    "full_time": " - "
  },
  "10835": {
    "deal_title": "Доработки коробки",
    "COMPANY_ID": "3179",
    "deadline": "",
    "COMPANY_TITLE": "ООО \"Много Мебели\"",
    "full_time": " - "
  },
  "10897": {
    "deal_title": "Сопровождение",
    "COMPANY_ID": "3473",
    "deadline": "",
    "COMPANY_TITLE": "ООО \"УПРАВЛЕНЧЕСКИЕ РЕШЕНИЯ\"",
    "full_time": " - "
  },
  "11017": {
    "deal_title": "Техподдержка Битрикс24 с программированием (40 часов)",
    "COMPANY_ID": "2501",
    "deadline": "2022-05-31T03:00:00+03:00",
    "COMPANY_TITLE": "АО «НИИ «ПОЛЮС» ИМ. М.Ф.СТЕЛЬМАХА»",
    "full_time": " - "
  },
  "11183": {
    "deal_title": "Доработки портала (декабрь)",
    "COMPANY_ID": "1278",
    "deadline": "2022-01-13T03:00:00+03:00",
    "COMPANY_TITLE": "ООО \"ТЕРВУД\"",
    "full_time": " - "
  },
  "11213": {
    "deal_title": "Техподдержка Битрикс24 с 1 по 30 июня 2021 года",
    "COMPANY_ID": "1362",
    "deadline": "2022-01-31T03:00:00+03:00",
    "COMPANY_TITLE": "Роско",
    "full_time": " - "
  },
  "11227": {
    "deal_title": "ВН",
    "COMPANY_ID": "52701",
    "deadline": "2022-01-20T03:00:00+03:00",
    "COMPANY_TITLE": "ООО \"РУССКИЙ ТУР\"",
    "full_time": " - "
  },
  "11235": {
    "deal_title": "Доработка способов оплаты в приложении \"Выбор услуг\"",
    "COMPANY_ID": "2335",
    "deadline": "2022-01-31T03:00:00+03:00",
    "COMPANY_TITLE": "ООО \"МОСУСТАНОВКА\"",
    "full_time": " - "
  },
  "11321": {
    "deal_title": "Разработка ТЗ на приложение для Битрикс24",
    "COMPANY_ID": "55227",
    "deadline": "2022-02-16T03:00:00+03:00",
    "COMPANY_TITLE": "ООО \"АКРИТ-СЕРВИС\"",
    "full_time": " - "
  },
  "11331": {
    "deal_title": "Техподдержка Битрикс24 с 1 по 30 июня 2021 года",
    "COMPANY_ID": "1362",
    "deadline": "2022-02-28T03:00:00+03:00",
    "COMPANY_TITLE": "Роско",
    "full_time": " - "
  },
  "11345": {
    "deal_title": "тест 1",
    "COMPANY_ID": "55233",
    "deadline": "2022-02-10T03:00:00+03:00",
    "COMPANY_TITLE": "Тест Роман",
    "task_id": "29191",
    "task_name": "Получить платёж на сумму 1 руб. по статье \"Не заполнено\"",
    "begin_time": "2022-02-07T12:16:45+03:00",
    "comment": "тест",
    "full_time": 56699208
  },
  "11365": {
    "deal_title": "тест 2",
    "COMPANY_ID": "55235",
    "deadline": "2022-02-07T03:00:00+03:00",
    "COMPANY_TITLE": "тест Роман 2",
    "task_id": "29187",
    "task_name": "Получить платёж на сумму 1 руб. по статье \"Не заполнено\"",
    "begin_time": "2022-02-07T12:16:12+03:00",
    "full_time": -202500792
  },
  "11391": {
    "deal_title": "тестовая сделка 3",
    "COMPANY_ID": "55241",
    "deadline": "2022-02-09T03:00:00+03:00",
    "COMPANY_TITLE": "тест Роман 3",
    "task_id": "29183",
    "task_name": "Получить платёж на сумму 1 руб. по статье \"Не заполнено\"",
    "begin_time": "2022-02-07T12:15:24+03:00",
    "full_time": -29700793
  }
}

var sortedArray = Object.values(array).sort((a, b) => {
    const [first, second] = [a, b].map(({full_time: value}) => {
        if (typeof value === 'string' && value.includes('-')) {
            return 0;
        }
        
        return value;
    });
    
    return first - second;
});

console.log(sortedArray);
Ответить с цитированием