public IServiceResultWrap SaveGeneralDescription([FromBody] Domain.Model.Models.V2.GeneralDescriptions.VmGeneralDescriptionInput model)
 {
     return(serviceManager.CallService(
                () => new ServiceResultWrap {
         Data = GetGeneralDescriptionData(model)
     },
                new Dictionary <Type, string>
     {
         { typeof(string), EntityMessageSaved },
         { typeof(LockException), MessageLockedGeneralDescription },
         { typeof(PtvArgumentException), MessageArgumentException },
         { typeof(RoleActionException), MessageSaveGeneralDescriptionRole }
     }));
 }
        private IVmBase GetGeneralDescriptionData(Domain.Model.Models.V2.GeneralDescriptions.VmGeneralDescriptionInput model)
        {
            VmGeneralDescriptionOutput result = null;

            switch (model.Action)
            {
            case ActionTypeEnum.Save:
                result = generalDescriptionService.SaveGeneralDescription(model);
                break;

            case ActionTypeEnum.SaveAndValidate:
                result = generalDescriptionService.SaveAndValidateGeneralDescription(model);
                break;

            default:
                result = generalDescriptionService.SaveGeneralDescription(model);
                break;
            }
            generalDescriptionService.UnLockGeneralDescription(result.Id.Value);
            return(result);
        }