public IActionResult createwinfunction([FromBody] WindowFunctionalityModel winfuncModel)
 {
     try
     {
         string msg         = string.Empty;
         var    winfunction = _winfuncService.CreateWinfunction(winfuncModel, out msg);
         return(Ok(new { status = (winfunction == null) ? Constants.Failed : Constants.Success, message = msg, windowfunctionality = winfunction }));
     }
     catch (Exception ex)
     {
         //TODO: Log the exception
         return(Ok(new { status = Constants.Error, message = Constants.ErrorMessage, windowfunctionality = "" }));
     }
 }
        /// <summary>
        /// Create or update the window functionality
        /// </summary>
        /// <param name="winfuncModel"></param>
        /// <param name="message"></param>
        /// <returns></returns>
        public TWindowsfunctionality CreateWinfunction(WindowFunctionalityModel winfuncModel, out string message)
        {
            message = string.Empty;
            if (winfuncModel == null || winfuncModel.FunctionalityName == null || winfuncModel.FunctionalityName.Trim() == string.Empty)
            {
                return(null);
            }

            TWindowsfunctionality winfuncEntity = null;
            bool isExisitngItem = (winfuncModel.WindowFuncId != null && winfuncModel.WindowFuncId != 0);

            if (isExisitngItem)
            {
                winfuncEntity = _winfuncRepository.Get(winfuncModel.WindowFuncId.Value);
                if (winfuncEntity == null)
                {
                    message = MessageResource.UpdateInvalidWinfunction;
                    return(null);
                }
            }
            else
            {
                winfuncEntity = new TWindowsfunctionality();
            }

            //Map the model to entity
            winfuncEntity.Functionalityname = winfuncModel.FunctionalityName;


            if (!isExisitngItem)
            {
                _winfuncRepository.Insert(winfuncEntity);
                message = MessageResource.CreateWinfunction + winfuncEntity.Winfuncid;
            }
            else
            {
                //Its an existing item, update it
                _winfuncRepository.Update(winfuncEntity);
                message = MessageResource.UpdateWinfunction;
            }

            return(winfuncEntity);
        }