За последние 24 часа нас посетили 22568 программистов и 1209 роботов. Сейчас ищут 676 программистов ...

Расчет времени поступления обращения, закрытия, расчет времени обработки.

Тема в разделе "Сделайте за меня", создана пользователем Tresheron, 4 авг 2017.

  1. Tresheron

    Tresheron Новичок

    С нами с:
    18 янв 2017
    Сообщения:
    10
    Симпатии:
    0
    Привет, я как бы не кодер, но по работе вот помогаю немного, чай не кодом, а так идеи подкидываю ) но не получается реализовать данные расчеты. смысл такой есть обращения оно поступает на оператора, тот его выполнять и отправляет на второго оператора и второй оператор его закрывает, нужно определить даты и рассчитать время сколько обращение находилось у первого оператора. Но вся проблема в том что у первого оператора есть обед с 12.00 до 13.00 график работы с 08.00 до 17.00, в выходные суббота и воскресенье не рабочие дни, пятница день сокращенный до 15.45, и еще часовой пояс +5. И это должно быть универсальное решение так как другой первый оператор может быть с другого города с другими временными ограничениями. нарисовал схемку как оно должно высчитываться. если кому интересна интересная задачка, покумекайте ) 11111.jpg

    в итоге должно получиться 3 переменные
    Дата и время поступления обращения;
    Дата и время оправки на второго оператора (закрытия обращения);
    Время обработки от начала до закрытия (оправки на второго оператора).

    если обращение пришло в не рабочее время или выходные то время поступления должно начинаться со следующего рабочего дня согласно графика. Но если оператор ответил то время поступления должно быть указано реальное когда пришло даже если это вне рабочего.

    За начальные данные можно взять:
    Дата поступления 04.08.2017 14.10
    Дата отправки на второго оператора (закрытия) 08.08.2017 11.20
    График работы с 08.00 до 17.00
    Пятница с 08.00 до 17.00
    Суббота и воскресенье выходной.
     
  2. Познающий php

    Познающий php Новичок

    С нами с:
    23 мар 2017
    Сообщения:
    381
    Симпатии:
    74
    Сделайте за меня. целая система, коммерческий продукт какой-то ЛОЛ
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    неееа, тривиальная схема if условий. в школе по математике такие задачки решали
     
  4. Tresheron

    Tresheron Новичок

    С нами с:
    18 янв 2017
    Сообщения:
    10
    Симпатии:
    0
    тоже скажешь коммерческий это просто пара функций, кто знает как легко соберет, но тут не просто if надо же учесть выходные и праздники плюс часовой пояс может быть разный так что немного посложней.
     
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    тогда вопрос - сколько ? или большой болт
     
  6. Познающий php

    Познающий php Новичок

    С нами с:
    23 мар 2017
    Сообщения:
    381
    Симпатии:
    74
    Сначала пишет, что как бы не кодер, но уверен что тут всего пара функций, тыжпрограммист - для тебя написать фейсбук пара пустяков. Стереотипное мышление рулит :D

    По-моему тут целая система логирования работы операторов, которая требует создание базы данных, планирования ее организации и т.д. и т.п.
    Делать это за кого-то бесплатно для организации, судя по всему имеющей бюджет, которая содержит штат операторов в разных городах, ну ну... :confused: Не прокатит чет такое :mad:
     
  7. Tresheron

    Tresheron Новичок

    С нами с:
    18 янв 2017
    Сообщения:
    10
    Симпатии:
    0
    да вы о чем вообще ? какая база и прочее, вопрос то звучит конкретно функция нужна рас читать несколько переменных и причем тут организация ? нет не большая, и кодер там 1 и это не я, ну худо бедно понимаю основы, да и тема "Сделай за меня" я как бы сюда не просто так написал, от Вас то я конкретно ничего не хочу, что тут флудите то ?
    --- Добавлено ---
    и база данных тут не нужна определение выходных и праздников как и часового пояса есть в самом PHP.
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    @Tresheron он не флудит, просто расписал довольно подробно почему это не совсем простая задача.
    Всё из-за того, что нужно сопоставлять дату начала и дату окончания, значит должна быть база данных, хоть в текстовом файле, но должна.
    График работы для каждого оператора по каждому дню если они по разным работают.
    Нужно уточнить если всего будет 2 оператора, их всё равно нужно как-то прописать в базе, чтобы пояс указать например и кто первый кто второй.
    Возможно операторов не 2 на всю систему, а больше, это то же нужно учитывать.
    Хоть раздел "сделайте за меня", сложные задачи тут почти не решают. Пока не понятно какая у тебя.
     
  9. Tresheron

    Tresheron Новичок

    С нами с:
    18 янв 2017
    Сообщения:
    10
    Симпатии:
    0
    Ну я ж все подробно описал с указанием дат и времени и схему привел, мне просто основа нужна, зачем база если там указана начальные данные и прочее? Мне не нужно прям систему создавать, а накидать примерный алгоритм, да и столько коментариев и ни одного совета или ссылки с примером все флуд один блин.
     
  10. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    PHP:
    1. <?php
    2. // https://secure.php.net/manual/ru/timezones.php
    3. $start = DateTime::createFromFormat('Y-m-d H:i:s', '2009-02-15 12:10:10', new DateTimeZone('Europe/Chisinau'));
    4. $end = DateTime::createFromFormat('Y-m-d H:i:s', '2009-02-15 09:15:55', new DateTimeZone('Europe/London'));
    5. $diff = $start->diff($end); // https://secure.php.net/manual/ru/class.dateinterval.php
    6. var_export($diff);
     
    Tresheron нравится это.
  11. Tresheron

    Tresheron Новичок

    С нами с:
    18 янв 2017
    Сообщения:
    10
    Симпатии:
    0
    спасибо.