Esempio n. 1
0
        /// <summary>
        /// Method for update Resume/Suspend system schedule
        /// </summary>
        /// <param name="UpdateType"></param>
        /// <param name="ServiceUpdateTime"></param>
        /// <returns></returns>
        public ActionResult CMS040_UpdateSystemConfig(string UpdateType, DateTime ServiceUpdateTime)
        {
            string strServiceUpdateTime = ServiceUpdateTime.ToString("HH:mm"); // What's type of format ?? --> "HH:mm"
            bool   bResult = false;

            ObjectResultData res = new ObjectResultData();

            try
            {
                ICommonHandler handler = ServiceContainer.GetService <ICommonHandler>() as ICommonHandler;

                var    currentStatus      = handler.GetSystemStatus();
                string strNextResumeTime  = ((DateTime)currentStatus[0].ResumeServiceDateTime).ToString("HH:mm");
                string strNextSuspendTime = ((DateTime)currentStatus[0].SuspendServiceDateTime).ToString("HH:mm");

                if (UpdateType == "SUSPEND")
                {
                    if (strServiceUpdateTime == strNextResumeTime)
                    {
                        res.MessageType = MessageModel.MESSAGE_TYPE.WARNING;
                        res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0029);
                        return(Json(res));
                    }

                    bResult = handler.UpdateSystemConfig(ConfigName.C_CONFIG_SUSPEND_SERVICE_TIME, strServiceUpdateTime);
                }
                else if (UpdateType == "RESUME")
                {
                    if (strServiceUpdateTime == strNextSuspendTime)
                    {
                        res.MessageType = MessageModel.MESSAGE_TYPE.WARNING;
                        res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0030);
                        return(Json(res));
                    }

                    bResult = handler.UpdateSystemConfig(ConfigName.C_CONFIG_RESUME_SERVICE_TIME, strServiceUpdateTime);
                }

                List <doSystemStatus> l    = new List <doSystemStatus>();
                doSystemStatus        item = new doSystemStatus();

                var list = handler.GetSystemStatus();

                if (list.Count > 0)
                {
                    string strOnline  = CommonUtil.GetLabelFromResource("Common", "CMS040", "lblOnline");;
                    string strOffline = CommonUtil.GetLabelFromResource("Common", "CMS040", "lblOffline");

                    item.CompleteFlag               = bResult;
                    item.UpdateType                 = UpdateType;
                    item.SystemStatus               = (list[0].SuspendFlag == true) ? "Offline" : "Online";
                    item.SystemStatusDisplayName    = (list[0].SuspendFlag == true) ? strOffline : strOnline;
                    item.NextResumeServiceDateTime  = ((DateTime)list[0].ResumeServiceDateTime).ToString("dd-MMM-yyyy HH:mm:ss");
                    item.NextSuspendServiceDateTime = ((DateTime)list[0].SuspendServiceDateTime).ToString("dd-MMM-yyyy HH:mm:ss");


                    l.Add(item);
                }

                return(Json(l));
            }
            catch (Exception ex)
            {
                res.MessageType = MessageModel.MESSAGE_TYPE.INFORMATION;
                res.AddErrorMessage(ex);
                return(Json(res));
            }
        }