Полный календарь событий о часовых поясах на местном и опубликовать - PullRequest
0 голосов
/ 16 мая 2018

Когда полный календарь реализован на локальном компьютере, он работает должным образом. Но когда я пытаюсь разместить на сервере, расположенном в Великобритании, временные события, не назначенные должным образом. Причиной является проблема времени. Примечание: изменение параметра часового пояса с локального на utc или наоборот наоборот не помогает.

Backend : c# MVC

Используемые плагины версия:

FullCalendar v3.6.1

Moment.js :version : 2.19.2

Требования:

Событие должно отображаться правильно для пользователя в Индии и пользователя с другим часовым поясом

var calendar = $('#calendarForGDiary');
calendar.fullCalendar(fullCalendarOptions());  
function fullCalendarOptions() {

            var options = {
                lazyFetching: false,
                editable: true, // Don't allow editing of events
                handleWindowResize: true,
                weekends: true, // Hide weekends
                defaultView: 'agendaWeek', // Only show week view
                header: true, // Hide buttons/titles
                minTime: '00:00:00', // Start time for the calendar
                maxTime: '24:00:00', // End time for the calendar
                overlap: false,
                timezone: 'local',              
                eventConstraint: {
                    start: '0:00',
                    end: '24:00'
                },
                droppable: true,
                drop: function (date) {
                },
                timeFormat: 'HH:mm',
                defaultTimedEventDuration: '01:00',
                axisFormat: 'HH:mm',
                slotLabelFormat: "HH:mm",
                eventOverlap: false,
                allDaySlot: false,
                slotDuration: '00:05',
                slotLabelInterval: '01:00',
                header: {
                    left: 'title',
                    center: '',
                    right: 'today prev,next, Date'
                },
                firstDay: 1,
                businessHours: {
                    // days of week. an array of zero-based day of week integers (0=Sunday)
                    dow: [1, 2, 3, 4, 5],

                    start: '00:00', // a start time
                    end: '7:30', // an end time
                },
                displayEventTime: true,
                views: {
                    agenda: {
                        timeFormat: 'HH:mm', // uppercase H for 24-hour clock
                        columnFormat: 'ddd DD/MM/YY',
                    }
                },
                dragRevertDuration: 0,
                events:{
                    url: '@Url.Action("GetIssueLogsByDate")',
                    type: 'POST',
                    success: function ()
                    {
                        $.fullCalendar.moment().stripZone()
                    },
                    error: function () { ShowErrorModal("Unable To Load Log Details") }
                },
                scrollTime: "00:00:00",
                eventDrop: function (event, delta, revertFunc) {
                    ChangeIssueLogDate(event);
                },
                eventReceive: function (event) {
                    addNewEvent(event);
                },
                loading: function (bool) {
                    $('#imgLoadingForGemini').modal('show');
                },
                eventAfterAllRender: function (view)
                {                   
                    modifyCalendarForTimeOverflow();
                    $('.eventButtons').attr('disabled', 'disabled');
                    $('#imgLoadingForGemini').modal('hide');
                },

                eventClick: function (event, jsEvent) {
                    ShowEventDetailsModal(event, jsEvent);
                },
                eventResize: function (event, delta, revertFunc) {
                    UpdateLogTimeByLogID(delta._data, event.id);
                },
                eventRender: function (event, element, view)
                {                    
                   // moment(event._d.start, 'DD.MM.YYYY').format('YYYY-MM-DD')
                    //$.fullCalendar.moment(event.d).stripZone()
                    console.log(event)

                },
                moment: { stripZone:true },

            }
            return options
        }

Код контроллера публичная асинхронная задача GetIssueLogsByDate (DateTime start) { пытаться { start = DateTime.Parse (start.ToString ("MM-dd-yyyy")); // DateTime monday = Date.start.Date; Log activeDates = новый журнал (); activeDates.Date = start.Date; activeLogs = await GDiaryBLL.GetUserLogsByUserID (activeDates);

это то же самое событие в локальной сети, которое отображается при публикации разницы в датах на сервере Великобритании. Проверьте даты, а также событие

то же событие на локальной машине

1 Ответ

0 голосов
/ 17 мая 2018

Исправлена ​​ошибка, связанная с изменением часового пояса: «UTC» Изменение формата данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...