예제 #1
0
        public virtual JsonResult Mission(string operationNumber)
        {
            SaveMissionResponse response = new SaveMissionResponse();
            var jsonDataRequest          = PageSerializationHelper.DeserializeJsonForm(Request.Form[0]);
            var viewModel = PageSerializationHelper.DeserializeObject <MissionViewModel>(jsonDataRequest.SerializedData);

            if (viewModel == null)
            {
                viewModel = new MissionViewModel();
            }

            viewModel.UpdateMissionViewModel(jsonDataRequest.ClientFieldData);

            string userName  = IDBContext.Current.UserName;
            string missionId = viewModel.MissionId.ToString();

            response = _missionService.SaveMission(viewModel, operationNumber);

            if (!viewModel.IsNewMission)
            {
                SynchronizationHelper.TryReleaseLock(UrlMission, missionId, userName);
            }

            return(Json(response));
        }
예제 #2
0
        public virtual JsonResult SaveDocuments(string operationNumber)
        {
            SaveMissionResponse response;

            var jsonDataRequest = PageSerializationHelper.DeserializeJsonForm(Request.Form[0]);
            var viewModel       = PageSerializationHelper.DeserializeObject <MissionViewModel>(jsonDataRequest.SerializedData);

            if (viewModel == null)
            {
                viewModel = new MissionViewModel();
            }

            viewModel.UpdateMissionDocuments(jsonDataRequest.ClientFieldData);

            var userName     = IDBContext.Current.UserName;
            var errorMessage = SynchronizationHelper.AccessToResources(SynchronizationHelper.EDIT_MODE, UrlSaveDocuments, viewModel.MissionId.ToString(), userName);

            if (!string.IsNullOrWhiteSpace(errorMessage))
            {
                response = new SaveMissionResponse
                {
                    IsValid      = false,
                    ErrorMessage = errorMessage
                };
            }
            else
            {
                response = _missionService.SaveMissionDocuments(viewModel);

                if (response.IsValid)
                {
                    SynchronizationHelper.TryReleaseLock(UrlSaveDocuments, operationNumber, userName);
                }
            }

            return(Json(response));
        }