public SurveyAnswerResponse GetSurveyAnswerAncestor(SurveyAnswerRequest pRequest)
 {
     try
     {
         SurveyAnswerResponse result = _iDataService.GetAncestorResponseIdsByChildId(pRequest);
         return(result);
     }
     catch (FaultException <CustomFaultException> cfe)
     {
         throw cfe;
     }
     catch (FaultException fe)
     {
         throw fe;
     }
     catch (CommunicationException ce)
     {
         throw ce;
     }
     catch (TimeoutException te)
     {
         throw te;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 2
0
        public void UpdateResponseStatus(SurveyAnswerRequest request)
        {
            try
            {
                Epi.Web.Interfaces.DataInterfaces.ISurveyResponseDao SurveyResponseDao = new EF.EntitySurveyResponseDao();
                Epi.Web.Interfaces.DataInterfaces.ISurveyInfoDao     ISurveyInfoDao    = new EF.EntitySurveyInfoDao();
                Epi.Web.BLL.SurveyResponse Implementation = new Epi.Web.BLL.SurveyResponse(SurveyResponseDao, ISurveyInfoDao);


                //SurveyAnswerResponse response = new SurveyAnswerResponse(request.RequestId);
                SurveyResponseBO SurveyResponse = Mapper.ToSurveyResponseBOList(request.SurveyAnswerList, request.Criteria.UserId)[0];



                List <SurveyResponseBO> SurveyResponseBOList = Implementation.GetSurveyResponseById(request.Criteria.SurveyAnswerIdList, Guid.Empty);

                SurveyResponseBO ResultList = Implementation.UpdateSurveyResponse(SurveyResponse);
            }
            catch (Exception ex)
            {
                CustomFaultException customFaultException = new CustomFaultException();
                customFaultException.CustomMessage = ex.Message;
                customFaultException.Source        = ex.Source;
                customFaultException.StackTrace    = ex.StackTrace;
                customFaultException.HelpLink      = ex.HelpLink;
                throw new FaultException <CustomFaultException>(customFaultException);
            }
        }
Ejemplo n.º 3
0
        public ActionResult Delete(string responseId)
        {
            var rootFormId      = GetStringSessionValue(UserSession.Key.RootFormId);
            int userId          = GetIntSessionValue(UserSession.Key.UserId);
            int orgId           = GetIntSessionValue(UserSession.Key.CurrentOrgId);
            var responseContext = new ResponseContext
            {
                ResponseId     = responseId,
                RootResponseId = responseId,
                FormId         = rootFormId,
                UserOrgId      = orgId,
                UserId         = userId
            }.ResolveMetadataDependencies() as ResponseContext;

            SurveyAnswerRequest surveyAnswerRequest = responseContext.ToSurveyAnswerRequest();

            surveyAnswerRequest.SurveyAnswerList.Add(responseContext.ToSurveyAnswerDTOLite());
            surveyAnswerRequest.Criteria.UserOrganizationId = orgId;
            surveyAnswerRequest.Criteria.UserId             = userId;
            surveyAnswerRequest.Criteria.IsSqlProject       = GetBoolSessionValue(UserSession.Key.IsSqlProject);
            surveyAnswerRequest.Criteria.SurveyId           = rootFormId;
            surveyAnswerRequest.Criteria.StatusChangeReason = RecordStatusChangeReason.DeleteResponse;
            surveyAnswerRequest.Action = RequestAction.Delete;
            SurveyAnswerResponse surveyAnswerResponse = _surveyFacade.DeleteResponse(surveyAnswerRequest);

            return(Json(string.Empty));
        }
 public SurveyAnswerResponse GetResponsesByRelatedFormId(SurveyAnswerRequest FormResponseReq)
 {
     try
     {
         SurveyAnswerResponse result = _iDataService.GetResponsesByRelatedFormId(FormResponseReq);
         return(result);
     }
     catch (FaultException <CustomFaultException> cfe)
     {
         throw cfe;
     }
     catch (FaultException fe)
     {
         throw fe;
     }
     catch (CommunicationException ce)
     {
         throw ce;
     }
     catch (TimeoutException te)
     {
         throw te;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 5
0
        public ActionResult PostAnswers([FromBody] SurveyAnswerRequest req) {

            SurveyTaker taker = new SurveyTaker();
            taker.Uid = Guid.NewGuid().ToString();
            taker.Turk = req.Turk;
            taker.SurveyUid = req.SurveyUid;
            var answerList = req.AnswerList;
            _context.SurveyTaker.Add(taker);

            for (int i = 0; i < answerList.Length; i++)
            {
                if (answerList[i] != null)
                {
                    SurveyAnswer answer = new SurveyAnswer();
                    answer.Uid = Guid.NewGuid().ToString();
                    answer.SurveyTakerUid = taker.Uid;
                    answer.SurveyUid = req.SurveyUid;
                    answer.Answer = answerList[i];
                    answer.DateCompleted = DateTime.Now;
                    answer.Qid = i;
                    _context.SurveyAnswer.Add(answer);
                }
            }

            _context.SaveChanges();

            return Ok(new { message = "Success!" });
        }
 public SurveyAnswerResponse SetChildRecord(SurveyAnswerRequest SurveyAnswerRequest)
 {
     try
     {
         SurveyAnswerResponse result = _iDataService.SetSurveyAnswer(SurveyAnswerRequest);
         return(result);
     }
     catch (FaultException <CustomFaultException> cfe)
     {
         throw cfe;
     }
     catch (FaultException fe)
     {
         throw fe;
     }
     catch (CommunicationException ce)
     {
         throw ce;
     }
     catch (TimeoutException te)
     {
         throw te;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
 public SurveyAnswerResponse GetFormResponseList(SurveyAnswerRequest pRequest)
 {
     try
     {
         //SurveyResponseResponse result = Client.GetSurveyResponse(pRequest);
         SurveyAnswerResponse result = _iDataService.GetFormResponseList(pRequest);
         return(result);
     }
     catch (FaultException <CustomFaultException> cfe)
     {
         throw cfe;
     }
     catch (FaultException fe)
     {
         throw fe;
     }
     catch (CommunicationException ce)
     {
         throw ce;
     }
     catch (TimeoutException te)
     {
         throw te;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        protected ActionResult UnlockResponse(String responseId, bool recoverLastRecordVersion = false)
        {
            try
            {
                int userId          = GetIntSessionValue(UserSession.Key.UserId);
                int orgId           = GetIntSessionValue(UserSession.Key.CurrentOrgId);
                var responseContext = InitializeResponseContext(responseId: responseId);

                var surveyAnswerDTO = new SurveyAnswerDTO(responseContext.ToFormResponseDetail())
                {
                    UserId    = userId,
                    UserOrgId = orgId
                };
                surveyAnswerDTO.ResolveMetadataDependencies();

                SurveyAnswerRequest surveyAnswerRequest = new SurveyAnswerRequest {
                    ResponseContext = surveyAnswerDTO
                };
                surveyAnswerRequest.SurveyAnswerList.Add(surveyAnswerDTO);
                surveyAnswerRequest.Criteria.StatusId = recoverLastRecordVersion ? RecordStatus.RecoverLastRecordVersion : RecordStatus.Saved;
                SetSessionValue(UserSession.Key.RecoverLastRecordVersion, recoverLastRecordVersion);
                _surveyFacade.UpdateResponseStatus(surveyAnswerRequest);
            }
            catch (Exception ex)
            {
                return(Json("Error"));
            }
            return(Json("Success"));
        }
Ejemplo n.º 9
0
        public SurveyAnswerResponse DeleteResponse(SurveyAnswerRequest surveyAnswerRequest)
        {
            try
            {
                SurveyAnswerResponse result = new SurveyAnswerResponse(surveyAnswerRequest.RequestId);

                SurveyResponseProvider surveyResponseImplementation = new SurveyResponseProvider(_surveyResponseDao);
                foreach (var response in surveyAnswerRequest.SurveyAnswerList)
                {
                    if (surveyAnswerRequest.Criteria.IsEditMode)
                    {
                        surveyResponseImplementation.DeleteSurveyResponseInEditMode(response.ToSurveyResponseBO(surveyAnswerRequest.Criteria.UserId), RecordStatus.RecoverLastRecordVersion);
                    }
                    else
                    {
                        if (surveyAnswerRequest.Action != null && surveyAnswerRequest.Action.Equals(RequestAction.DontSave, StringComparison.OrdinalIgnoreCase))
                        {
                            surveyResponseImplementation.DeleteSurveyResponseInEditMode(response.ToSurveyResponseBO(surveyAnswerRequest.Criteria.UserId), RecordStatus.RecoverLastRecordVersion);
                        }
                        else
                        {
                            surveyResponseImplementation.DeleteSurveyResponse(response.ToSurveyResponseBO(surveyAnswerRequest.Criteria.UserId));
                        }
                    }
                }

                return(result);
            }
            catch (Exception ex)
            {
                throw new FaultException <CustomFaultException>(new CustomFaultException(ex));
            }
        }
 public void UpdateResponseStatus(SurveyAnswerRequest Request)
 {
     try
     {
         _iDataService.UpdateResponseStatus(Request);
     }
     catch (FaultException <CustomFaultException> cfe)
     {
         throw cfe;
     }
     catch (FaultException fe)
     {
         throw fe;
     }
     catch (CommunicationException ce)
     {
         throw ce;
     }
     catch (TimeoutException te)
     {
         throw te;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
 public static SurveyAnswerRequest ToSurveyAnswerRequest(this IResponseContext responseContext, SurveyAnswerRequest surveyAnswerRequest = null)
 {
     if (surveyAnswerRequest == null)
     {
         surveyAnswerRequest = new SurveyAnswerRequest();
     }
     surveyAnswerRequest.ResponseContext = responseContext;
     return(surveyAnswerRequest);
 }
        protected SurveyAnswerStateDTO GetSurveyAnswerState(IResponseContext responseContext)
        {
            var surveyAnswerRequest = new SurveyAnswerRequest {
                ResponseContext = responseContext.CloneResponseContext()
            };
            SurveyAnswerStateDTO result = _surveyFacade.GetSurveyAnswerState(surveyAnswerRequest);

            return(result);
        }
Ejemplo n.º 13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="pRequest"></param>
        /// <returns></returns>
        public SurveyAnswerResponse GetSurveyAnswer(SurveyAnswerRequest pRequest)
        {
            try
            {
                SurveyAnswerResponse result = new SurveyAnswerResponse(pRequest.RequestId);
                //Epi.Web.Interfaces.DataInterfaces.ISurveyResponseDao surveyInfoDao = new EF.EntitySurveyResponseDao();
                //Epi.Web.BLL.SurveyResponse Implementation = new Epi.Web.BLL.SurveyResponse(surveyInfoDao);

                Epi.Web.Interfaces.DataInterfaces.IDaoFactory        entityDaoFactory   = new EF.EntityDaoFactory();
                Epi.Web.Interfaces.DataInterfaces.ISurveyResponseDao ISurveyResponseDao = entityDaoFactory.SurveyResponseDao;
                Epi.Web.Interfaces.DataInterfaces.ISurveyInfoDao     ISurveyInfoDao     = entityDaoFactory.SurveyInfoDao;
                Epi.Web.BLL.SurveyResponse Implementation = new Epi.Web.BLL.SurveyResponse(ISurveyResponseDao, ISurveyInfoDao);


                // Validate client tag, access token, and user credentials
                if (!ValidRequest(pRequest, result, Validate.All))
                {
                    return(result);
                }

                var    criteria = pRequest.Criteria as SurveyAnswerCriteria;
                string sort     = criteria.SortExpression;

                //if (request.LoadOptions.Contains("SurveyInfos"))
                //{
                //    IEnumerable<SurveyInfoDTO> SurveyInfos;
                //    if (!criteria.IncludeOrderStatistics)
                //    {
                //        SurveyInfos = Implementation.GetSurveyInfos(sort);
                //    }
                //    else
                //    {
                //        SurveyInfos = Implementation.GetSurveyInfosWithOrderStatistics(sort);
                //    }

                //    response.SurveyInfos = SurveyInfos.Select(c => Mapper.ToDataTransferObject(c)).ToList();
                //}

                //if (pRequest.LoadOptions.Contains("SurveyInfo"))
                //{
                List <SurveyResponseBO> List = Implementation.GetSurveyResponseById(pRequest.Criteria.SurveyAnswerIdList, pRequest.Criteria.UserPublishKey);
                result.SurveyResponseList = Mapper.ToDataTransferObject(List);
                //}

                return(result);
            }
            catch (Exception ex)
            {
                CustomFaultException customFaultException = new CustomFaultException();
                customFaultException.CustomMessage = ex.Message;
                customFaultException.Source        = ex.Source;
                customFaultException.StackTrace    = ex.StackTrace;
                customFaultException.HelpLink      = ex.HelpLink;
                throw new FaultException <CustomFaultException>(customFaultException);
            }
        }
Ejemplo n.º 14
0
 public bool HasResponse(SurveyAnswerRequest surveyAnswerRequest)
 {
     try
     {
         var hasResponse = _surveyResponseProvider.HasResponse(surveyAnswerRequest.ResponseContext);
         return(hasResponse);
     }
     catch (Exception ex)
     {
         throw;
     }
 }
        protected SurveyAnswerDTO GetSurveyAnswer(string responseId, string formId = "")
        {
            SurveyAnswerDTO result = null;

            string rootResponseId = GetStringSessionValue(UserSession.Key.RootResponseId);
            string rootFormId     = GetStringSessionValue(UserSession.Key.RootFormId);
            int    userId         = GetIntSessionValue(UserSession.Key.UserId);
            int    orgId          = GetIntSessionValue(UserSession.Key.CurrentOrgId);
            string userName       = GetStringSessionValue(UserSession.Key.UserName);

            ResponseContext responseContext = GetSessionValue <ResponseContext>(UserSession.Key.ResponseContext);

            if (responseContext == null)
            {
                responseContext = new ResponseContext();
            }

            if (!string.IsNullOrEmpty(formId))
            {
                responseContext.FormId       = formId;
                responseContext.FormName     = MetadataAccessor.GetFormName(formId);
                responseContext.RootFormId   = MetadataAccessor.GetRootFormId(formId);
                responseContext.RootFormName = MetadataAccessor.GetFormName(responseContext.RootFormId);
            }
            else
            {
                formId = responseContext.FormId;
            }


            if (!string.IsNullOrEmpty(responseId))
            {
                responseContext.ResponseId = responseId;
            }

            responseContext.ResolveMetadataDependencies();

            SetSessionValue(UserSession.Key.ResponseContext, responseContext);

            SetSessionValue(UserSession.Key.RootResponseId, responseContext.RootResponseId);

            var surveyAnswerRequest = new SurveyAnswerRequest {
                ResponseContext = responseContext
            };

            result             = _surveyFacade.GetSurveyAnswerDTO(surveyAnswerRequest);
            result.FormOwnerId = MetadataAccessor.GetFormDigest(formId).OwnerUserId;

            return(result);
        }
Ejemplo n.º 16
0
        public SurveyAnswerResponse GetSurveyAnswerHierarchy(SurveyAnswerRequest pRequest)
        {
            Epi.Web.Interfaces.DataInterfaces.IDaoFactory entityDaoFactory = new EF.EntityDaoFactory();
            SurveyAnswerResponse SurveyAnswerResponse = new SurveyAnswerResponse();

            Epi.Web.Interfaces.DataInterfaces.ISurveyResponseDao SurveyResponseDao = entityDaoFactory.SurveyResponseDao;
            Epi.Web.Interfaces.DataInterfaces.ISurveyInfoDao     ISurveyInfoDao    = entityDaoFactory.SurveyInfoDao;
            Epi.Web.BLL.SurveyResponse Implementation       = new Epi.Web.BLL.SurveyResponse(SurveyResponseDao, ISurveyInfoDao);
            List <SurveyResponseBO>    SurveyResponseBOList = Implementation.GetResponsesHierarchyIdsByRootId(pRequest.SurveyAnswerList[0].ResponseId);

            SurveyAnswerResponse.SurveyResponseList = Mapper.ToDataTransferObject(SurveyResponseBOList);

            return(SurveyAnswerResponse);
        }
Ejemplo n.º 17
0
        public SurveyAnswerResponse GetAncestorResponseIdsByChildId(SurveyAnswerRequest pRequest)
        {
            Epi.Web.Interfaces.DataInterfaces.IDaoFactory entityDaoFactory = new EF.EntityDaoFactory();
            SurveyAnswerResponse SurveyAnswerResponse = new SurveyAnswerResponse();

            Epi.Web.Interfaces.DataInterfaces.ISurveyResponseDao SurveyResponseDao = entityDaoFactory.SurveyResponseDao;
            Epi.Web.Interfaces.DataInterfaces.ISurveyInfoDao     ISurveyInfoDao    = entityDaoFactory.SurveyInfoDao;
            Epi.Web.BLL.SurveyResponse Implementation       = new Epi.Web.BLL.SurveyResponse(SurveyResponseDao, ISurveyInfoDao);
            List <SurveyResponseBO>    SurveyResponseBOList = Implementation.GetAncestorResponseIdsByChildId(pRequest.Criteria.SurveyAnswerIdList[0]);

            SurveyAnswerResponse.SurveyResponseList = Mapper.ToDataTransferObject(SurveyResponseBOList);

            return(SurveyAnswerResponse);
        }
Ejemplo n.º 18
0
        /// <summary>
        /// Creates the first survey response in the response table
        /// </summary>
        /// <param name="surveyId"></param>
        /// <param name="responseId"></param>
        /// <param name="surveyAnswerRequest"></param>
        /// <param name="surveyAnswerDTO"></param>
        /// <param name="surveyResponseXML"></param>
        /// <param name="iSurveyAnswerRepository"></param>
        public static Epi.Web.Common.DTO.SurveyAnswerDTO CreateSurveyResponse(string surveyId, string responseId, SurveyAnswerRequest surveyAnswerRequest1,
                                                                              Common.DTO.SurveyAnswerDTO surveyAnswerDTO,
                                                                              SurveyResponseXML surveyResponseXML, ISurveyAnswerRepository iSurveyAnswerRepository, int UserId, bool IsChild = false, string RelateResponseId = "", bool IsEditMode = false, int CurrentOrgId = -1)
        {
            bool AddRoot = false;
            SurveyAnswerRequest surveyAnswerRequest = new SurveyAnswerRequest();

            surveyAnswerRequest.Criteria.SurveyAnswerIdList.Add(responseId.ToString());
            surveyAnswerDTO.ResponseId = responseId.ToString();
            //surveyAnswerDTO.DateCompleted = DateTime.Now;
            surveyAnswerDTO.DateCreated    = DateTime.Now;
            surveyAnswerDTO.SurveyId       = surveyId;
            surveyAnswerDTO.Status         = (int)Constant.Status.InProgress;
            surveyAnswerDTO.RecordSourceId = 4;
            if (IsEditMode)
            {
                surveyAnswerDTO.ParentRecordId = RelateResponseId;
            }
            //if (IsEditMode)
            //    {
            //    surveyAnswerDTO.Status = (int)Constant.Status.Complete;
            //    }
            //else
            //    {
            //    surveyAnswerDTO.Status = (int)Constant.Status.InProgress;
            //    }
            surveyAnswerDTO.XML                             = surveyResponseXML.CreateResponseXml(surveyId, AddRoot, 0, "0").InnerXml;
            surveyAnswerDTO.RelateParentId                  = RelateResponseId;
            surveyAnswerRequest.Criteria.UserId             = UserId;
            surveyAnswerRequest.Criteria.UserOrganizationId = CurrentOrgId;
            surveyAnswerRequest.SurveyAnswerList.Add(surveyAnswerDTO);
            if (!IsChild)
            {
                surveyAnswerRequest.Action = Epi.Web.MVC.Constants.Constant.CREATE;
            }
            else
            {
                if (IsEditMode)
                {
                    surveyAnswerRequest.SurveyAnswerList[0].ParentRecordId = null;
                }

                surveyAnswerRequest.Action = Epi.Web.MVC.Constants.Constant.CREATECHILD;
            }

            iSurveyAnswerRepository.SaveSurveyAnswer(surveyAnswerRequest);

            return(surveyAnswerDTO);
        }
 public void UpdateRecordStatus(SurveyAnswerRequest pRequestMessage)
 {
     try
     {
         Epi.Web.Enter.Interfaces.DataInterfaces.ISurveyResponseDao SurveyResponseDao = new EF.EntitySurveyResponseDao();
         Epi.Web.BLL.SurveyResponse Implementation = new Epi.Web.BLL.SurveyResponse(SurveyResponseDao);
         foreach (SurveyAnswerDTO DTO in pRequestMessage.SurveyAnswerList)
         {
             Implementation.UpdateRecordStatus(Mapper.ToBusinessObject(DTO));
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 20
0
        public ActionResult DeleteBranch(string ResponseId)//List<FormInfoModel> ModelList, string formid)
        {
            SurveyAnswerRequest surveyAnswerRequest = new SurveyAnswerRequest();

            surveyAnswerRequest.SurveyAnswerList.Add(new SurveyAnswerDTO()
            {
                ResponseId = ResponseId
            });
            surveyAnswerRequest.Criteria.UserId       = GetIntSessionValue(UserSession.Key.UserId);
            surveyAnswerRequest.Criteria.IsEditMode   = false;
            surveyAnswerRequest.Criteria.IsDeleteMode = false;
            surveyAnswerRequest.Criteria.IsSqlProject = GetBoolSessionValue(UserSession.Key.IsSqlProject);
            surveyAnswerRequest.Criteria.SurveyId     = GetStringSessionValue(UserSession.Key.RootFormId);
            SurveyAnswerResponse saResponse = _surveyFacade.DeleteResponse(surveyAnswerRequest);

            return(Json(string.Empty));
        }
        public ActionResult Delete(string ResponseId)
        {
            SurveyAnswerRequest SARequest = new SurveyAnswerRequest();

            SARequest.SurveyAnswerList.Add(new SurveyAnswerDTO()
            {
                ResponseId = ResponseId
            });
            string Id = Session["UserId"].ToString();

            SARequest.Criteria.UserId       = SurveyHelper.GetDecryptUserId(Id);
            SARequest.Criteria.IsSqlProject = (bool)Session["IsSqlProject"];
            SARequest.Criteria.SurveyId     = Session["RootFormId"].ToString();
            SurveyAnswerResponse SAResponse = _isurveyFacade.DeleteResponse(SARequest);

            return(Json(string.Empty));
        }
        public void SetSurveyAnswerStatus(SurveyAnswerRequest pRequest)
        {
            SurveyAnswerResponse SurveyAnswerResponse = new SurveyAnswerResponse();

            Epi.Web.Enter.Interfaces.DataInterfaces.IDaoFactory        entityDaoFactory   = new EF.EntityDaoFactory();
            Epi.Web.Enter.Interfaces.DataInterfaces.ISurveyResponseDao ISurveyResponseDao = entityDaoFactory.SurveyResponseDao;
            Epi.Web.BLL.SurveyResponse Implementation   = new Epi.Web.BLL.SurveyResponse(ISurveyResponseDao);
            List <SurveyResponseBO>    SurveyAnswerList = new List <SurveyResponseBO>();

            SurveyAnswerList = Implementation.GetResponsesHierarchyIdsByRootId(pRequest.Criteria.SurveyAnswerIdList[0].ToString());

            foreach (var response in SurveyAnswerList)
            {
                var obj = Mapper.ToBusinessObject(Mapper.ToDataTransferObject(response), pRequest.Criteria.UserId);
                obj.Status = pRequest.Criteria.StatusId;
                Implementation.UpdateRecordStatus(obj);
            }
        }
Ejemplo n.º 23
0
        public SurveyAnswerResponse UpdateResponseStatus(SurveyAnswerRequest surveyAnswerRequest)
        {
            SurveyAnswerResponse surveyAnswerResponse = new SurveyAnswerResponse();

            try
            {
                SurveyResponseProvider surveyResponseImplementation = new SurveyResponseProvider(_surveyResponseDao);

                var responseContext = surveyAnswerRequest.ResponseContext;
                List <SurveyResponseBO> surveyResponseBOList = surveyResponseImplementation.GetSurveyResponseById(responseContext, surveyAnswerRequest.Criteria);
                foreach (var surveyResponseBO in surveyResponseBOList)
                {
                    try
                    {
                        if (surveyAnswerRequest.IsChildResponse)
                        {
                            surveyResponseBO.ActiveChildResponseDetail = surveyResponseBO.ResponseDetail.FindFormResponseDetail(surveyAnswerRequest.ResponseId);
                        }
                        surveyResponseBO.IsNewRecord           = surveyAnswerRequest.IsNewRecord;
                        surveyResponseBO.UserOrgId             = surveyAnswerRequest.Criteria.UserOrganizationId;
                        surveyResponseBO.CurrentOrgId          = surveyAnswerRequest.Criteria.UserOrganizationId;
                        surveyResponseBO.UserId                = surveyAnswerRequest.Criteria.UserId;
                        surveyResponseBO.UserName              = surveyAnswerRequest.Criteria.UserName;
                        surveyResponseBO.LastSaveLogonName     = surveyAnswerRequest.Criteria.UserName;
                        surveyResponseBO.LastSaveTime          = DateTime.UtcNow;
                        surveyResponseBO.RecStatus             = surveyAnswerRequest.Criteria.StatusId;
                        surveyResponseBO.ReasonForStatusChange = surveyAnswerRequest.Criteria.StatusChangeReason;
                    }
                    finally
                    {
                        surveyResponseBO.ActiveChildResponseDetail = null;
                    }
                }

                List <SurveyResponseBO> resultList = surveyResponseImplementation.UpdateSurveyResponse(surveyResponseBOList, surveyAnswerRequest.Criteria.StatusId, surveyAnswerRequest.Criteria.StatusChangeReason);
                surveyAnswerResponse.SurveyResponseList = resultList.Select(bo => bo.ToSurveyAnswerDTO()).ToList();
                surveyAnswerResponse.NumberOfResponses  = surveyAnswerResponse.SurveyResponseList.Count();
            }
            catch (Exception ex)
            {
                throw new FaultException <CustomFaultException>(new CustomFaultException(ex));
            }
            return(surveyAnswerResponse);
        }
Ejemplo n.º 24
0
        public SurveyAnswerResponse GetFormResponseList(SurveyAnswerRequest surveyAnswerRequest)
        {
            try
            {
                SurveyAnswerResponse result = new SurveyAnswerResponse(surveyAnswerRequest.RequestId);

                SurveyResponseProvider surveyResponseImplementation = new SurveyResponseProvider(_surveyResponseDao);

                SurveyAnswerCriteria criteria = surveyAnswerRequest.Criteria;
                criteria.GridPageSize = AppSettings.GetIntValue(criteria.IsMobile ? AppSettings.Key.MobileResponsePageSize : AppSettings.Key.ResponsePageSize);

                ResponseGridQueryResultBO responseGridQueryResultBO = surveyResponseImplementation.GetFormResponseListByFormId(surveyAnswerRequest.ResponseContext, criteria);
                //Query The number of records
                result.NumberOfResponses        = responseGridQueryResultBO.NumberOfResponsesReturnedByQuery;
                result.NumberOfPages            = responseGridQueryResultBO.NumberOfPages;
                result.NumberOfResponsesPerPage = responseGridQueryResultBO.NumberOfResponsesPerPage;
                result.QuerySetToken            = responseGridQueryResultBO.QuerySetToken;

                var surveyResponseList = responseGridQueryResultBO.SurveyResponseBOList;
                result.SurveyResponseList = surveyResponseList.ToSurveyAnswerDTOList();

                surveyAnswerRequest.Criteria.FormResponseCount = result.NumberOfResponses;

                //Query The number of records
                //result.NumberOfPages = surveyResponseImplementation.GetNumberOfPages(surveyAnswerRequest.Criteria);

                //Get form info
                Epi.Cloud.BLL.FormInfo formInfoImplementation = new Epi.Cloud.BLL.FormInfo(_formInfoDao);
                var formInfoBO = formInfoImplementation.GetFormInfoByFormId(surveyAnswerRequest.Criteria.SurveyId, surveyAnswerRequest.Criteria.UserId);
                result.FormInfo = formInfoBO.ToFormInfoDTO();

                return(result);
            }
            catch (Exception ex)
            {
                CustomFaultException customFaultException = new CustomFaultException();
                customFaultException.CustomMessage = ex.Message;
                customFaultException.Source        = ex.Source;
                customFaultException.StackTrace    = ex.StackTrace;
                customFaultException.HelpLink      = ex.HelpLink;
                return(null);
            }
        }
Ejemplo n.º 25
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SurveyAnswerStateDTO GetSurveyAnswerState(SurveyAnswerRequest request)
        {
            try
            {
                SurveyAnswerResponse result = new SurveyAnswerResponse();

                SurveyResponseProvider surveyResponseImplementation = new SurveyResponseProvider(_surveyResponseDao);

                var responseContext = request.ResponseContext;
                int loggedInUserId  = request.UserId;
                SurveyResponseBO     surveyResponseBO     = surveyResponseImplementation.GetSurveyResponseStateById(responseContext);
                SurveyAnswerStateDTO surveyAnswerStateDTO = surveyResponseBO != null?surveyResponseBO.ToSurveyAnswerStateDTO(loggedInUserId) : null;

                return(surveyAnswerStateDTO);
            }
            catch (Exception ex)
            {
                throw new FaultException <CustomFaultException>(new CustomFaultException(ex));
            }
        }
Ejemplo n.º 26
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public SurveyAnswerResponse GetSurveyAnswer(SurveyAnswerRequest request)
        {
            try
            {
                SurveyAnswerResponse result = new SurveyAnswerResponse(request.RequestId);
                Epi.Cloud.DataEntryServices.SurveyResponseProvider surveyResponseProvider = new SurveyResponseProvider(_surveyResponseDao);

                var responseContext = request.ResponseContext;
                var criteria        = request.Criteria as SurveyAnswerCriteria;
                List <SurveyResponseBO> surveyResponseList = surveyResponseProvider.GetSurveyResponseById(responseContext, request.Criteria);
                result.SurveyResponseList = surveyResponseList.ToSurveyAnswerDTOList();
                SurveyInfoBO surveyInfoBO = _surveyInfoService.GetSurveyInfoByFormId(request.FormId ?? request.RootFormId);
                result.FormInfo = surveyInfoBO.ToFormInfoDTO();

                return(result);
            }
            catch (Exception ex)
            {
                throw new FaultException <CustomFaultException>(new CustomFaultException(ex));
            }
        }
Ejemplo n.º 27
0
        private string GetChildRecordId(SurveyAnswerDTO surveyAnswerDTO)
        {
            SurveyAnswerRequest  SurveyAnswerRequest  = new SurveyAnswerRequest();
            SurveyAnswerResponse SurveyAnswerResponse = new SurveyAnswerResponse();
            string ChildId = Guid.NewGuid().ToString();

            surveyAnswerDTO.ParentResponseId      = surveyAnswerDTO.ResponseId;
            surveyAnswerDTO.ResponseId            = ChildId;
            surveyAnswerDTO.Status                = RecordStatus.InProcess;
            surveyAnswerDTO.ReasonForStatusChange = RecordStatusChangeReason.CreateMulti;
            SurveyAnswerRequest.SurveyAnswerList.Add(surveyAnswerDTO);
            string result;

            //responseId = TempData[TempDataKeys.ResponseId].ToString();
            SurveyAnswerRequest.Criteria.UserId = GetIntSessionValue(UserSession.Key.UserId);
            SurveyAnswerRequest.RequestId       = ChildId;
            SurveyAnswerRequest.Action          = RequestAction.CreateMulti;
            SurveyAnswerResponse = _surveyFacade.SetChildRecord(SurveyAnswerRequest);
            result = SurveyAnswerResponse.SurveyResponseList[0].ResponseId.ToString();
            return(result);
        }
        /// <summary>
        /// Calling the proxy client to fetch a SurveyResponseResponse object
        /// </summary>
        /// <param name="surveyid"></param>
        /// <returns></returns>
        public SurveyAnswerResponse GetSurveyAnswer(SurveyAnswerRequest pRequest)
        {
            try
            {
                //SurveyResponseResponse result = Client.GetSurveyResponse(pRequest);
                //SurveyAnswerResponse result = _iDataService.GetSurveyAnswer(pRequest);

                SurveyAnswerResponse result = new SurveyAnswerResponse();
                if (!pRequest.Criteria.IsDownLoadFromApp)
                {
                    result = _iDataService.GetSurveyAnswer(pRequest);
                }
                else
                {
                    result = _iManagerService.GetSurveyAnswer(pRequest);
                }

                return(result);
            }
            catch (FaultException <CustomFaultException> cfe)
            {
                throw cfe;
            }
            catch (FaultException fe)
            {
                throw fe;
            }
            catch (CommunicationException ce)
            {
                throw ce;
            }
            catch (TimeoutException te)
            {
                throw te;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public ActionResult Unlock(String ResponseId, bool RecoverLastRecordVersion)
 {
     try
     {
         int UserId = SurveyHelper.GetDecryptUserId(Session["UserId"].ToString());
         SurveyAnswerRequest SurveyAnswerRequest = new SurveyAnswerRequest();
         SurveyAnswerRequest.SurveyAnswerList.Add(new SurveyAnswerDTO()
         {
             ResponseId = ResponseId
         });
         SurveyAnswerRequest.Criteria.StatusId = 2;
         SurveyAnswerRequest.Criteria.SurveyAnswerIdList.Add(ResponseId);
         SurveyAnswerRequest.Criteria.UserId = UserId;
         Session["RecoverLastRecordVersion"] = RecoverLastRecordVersion;
         _isurveyFacade.UpdateResponseStatus(SurveyAnswerRequest);
     }
     catch (Exception ex)
     {
         return(Json("Erorr"));
     }
     return(Json("Success"));
 }
        private string GetChildRecordId(SurveyAnswerDTO surveyAnswerDTO)
        {
            SurveyAnswerRequest  SurveyAnswerRequest  = new SurveyAnswerRequest();
            SurveyAnswerResponse SurveyAnswerResponse = new SurveyAnswerResponse();
            string ChildId = Guid.NewGuid().ToString();

            surveyAnswerDTO.ParentRecordId = surveyAnswerDTO.ResponseId;
            surveyAnswerDTO.ResponseId     = ChildId;
            surveyAnswerDTO.Status         = 1;
            SurveyAnswerRequest.SurveyAnswerList.Add(surveyAnswerDTO);
            string result;

            //responseId = TempData[Epi.Web.MVC.Constants.Constant.RESPONSE_ID].ToString();
            string Id = Session["UserId"].ToString();

            SurveyAnswerRequest.Criteria.UserId = SurveyHelper.GetDecryptUserId(Id);//_UserId;
            SurveyAnswerRequest.RequestId       = ChildId;
            SurveyAnswerRequest.Action          = "CreateMulti";
            SurveyAnswerResponse = _isurveyFacade.SetChildRecord(SurveyAnswerRequest);
            result = SurveyAnswerResponse.SurveyResponseList[0].ResponseId.ToString();
            return(result);
        }
Ejemplo n.º 31
0
        /// <summary>
        /// Initiates a full import on a single form
        /// </summary>
        private void DoImport(SurveyAnswerRequest Request)
        {
            {
                try
                {
                    stopwatch = new Stopwatch();
                    stopwatch.Start();

                        int recordCount = 0; // Result.SurveyResponseList.Count; // sourceView.GetRecordCount();
                        int gridRowCount = 0;

                        // Grids not supported

                        //foreach (GridField gridField in sourceView.Fields.GridFields)
                        //{
                        //    IDataReader reader = sourceProjectDataDriver.GetTableDataReader(gridField.TableName);
                        //    while (reader.Read())
                        //    {
                        //        gridRowCount++;
                        //    }
                        //}

                        progressBar.Maximum = recordCount * (destinationView.Pages.Count + 1);
                        progressBar.Maximum = progressBar.Maximum + gridRowCount;

                        string importTypeDescription = "Records with matching ID fields will be updated and unmatched records will be appended.";
                        //if (cmbImportType.SelectedIndex == 0)
                        //{
                        //    update = true;
                        //    append = true;
                        //}
                        //else if (cmbImportType.SelectedIndex == 1)
                        //{
                        //    update = true;
                        //    append = false;
                        //    importTypeDescription = "Records with matching ID fields will be updated. Unmatched records will be ignored.";
                        //}
                        //else
                        //{
                        //    update = false;
                        //    append = true;
                        //    importTypeDescription = "Records with no matching ID fields will be appended. Records with matching ID fields will be ignored.";
                        //}

                        update = false;
                        append = true;
                        importTypeDescription = "Records with no matching ID fields will be appended. Records with matching ID fields will be ignored.";
                        DownLoadType = cmbImportType.SelectedIndex;
                        AddStatusMessage("Import initiated for form " + textProject.Text + ". " + importTypeDescription);

                        btnCancel.Enabled = false;
                        btnOK.Enabled = false;
                        //cmbImportType.Enabled = false;
                        textProject.Enabled = false;
                        textData.Enabled = false;
                        textOrganization.Enabled = false;

                        if (importWorker.WorkerSupportsCancellation)
                        {
                            importWorker.CancelAsync();
                        }

                        this.Cursor = Cursors.WaitCursor;

                        importWorker = new BackgroundWorker();
                        importWorker.WorkerSupportsCancellation = true;
                        importWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(worker_DoWork);
                        importWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(worker_WorkerCompleted);
                        importWorker.RunWorkerAsync(Request);
                        //}
                }
                catch (System.ServiceModel.CommunicationException ex)
                {
                    this.BeginInvoke(new SetStatusDelegate(AddErrorStatusMessage), "Couldn't properly communicate with web service. Import halted.");

                    if (stopwatch != null)
                    {
                        stopwatch.Stop();
                    }

                    btnCancel.Enabled = true;
                    btnOK.Enabled = true;
                    //cmbImportType.Enabled = true;
                    textProject.Enabled = true;
                    textData.Enabled = true;
                    textOrganization.Enabled = true;
                    progressBar.Visible = false;

                    importFinished = true;

                    this.Cursor = Cursors.Default;
                }
                catch (Exception ex)
                {
                    this.BeginInvoke(new SetStatusDelegate(AddErrorStatusMessage), "Import from web failed.");

                    if (stopwatch != null)
                    {
                        stopwatch.Stop();
                    }

                    btnCancel.Enabled = true;
                    btnOK.Enabled = true;
                    //cmbImportType.Enabled = true;
                    textProject.Enabled = true;
                    progressBar.Visible = false;

                    importFinished = true;

                    this.Cursor = Cursors.Default;
                }
            }
        }