Exemple #1
0
        public PreScreenData GetNewPreScreenDataEntity(string sectionCode, string itemCode, string value, string type, string label, long preScreenId)
        {
            PreScreenData preScreenData = new PreScreenData();

            preScreenData.SectionCode = sectionCode;
            preScreenData.ItemCode    = itemCode;
            preScreenData.Value       = value;
            preScreenData.Type        = type;
            preScreenData.Label       = label;
            preScreenData.PreScreenId = preScreenId;

            return(preScreenData);
        }
Exemple #2
0
        public void AddOrUpdatePreScreenData(long preScreenId, string itemType, string label, string sectionCode, string clientCode, string value, string dependsOnCode, string dependsOnValue)
        {
            var entity = PreScreenData.Where(p => p.SectionCode == sectionCode && p.ItemCode == clientCode && p.PreScreenId == preScreenId && p.Deleted == false).SingleOrDefault();

            if (entity == null)
            {
                entity = new PreScreenData();
            }

            entity.PreScreenId          = preScreenId;
            entity.ItemCode             = clientCode;
            entity.Type                 = itemType;
            entity.Value                = value;
            entity.DependsOnCode        = dependsOnCode;
            entity.DependsOnAssertValue = dependsOnValue;
            entity.Label                = label;
        }
Exemple #3
0
        private void SavePatientData(PatientDataModel model)
        {
            _model = new PreScreenModel();

            SetContextLists();
            PopulateAccordions(_model);
            PopulateItems(_model);

            var preScreen = _dataContext.PreScreens.Find(model.PreScreenId);

            ApplyFilter(preScreen.PreScreenType.Name);

            List <PatientData>   lstPatientData;
            List <PreScreenData> lstPreScreenData;

            lstPatientData   = _dataContext.PatientData.Where(p => p.PatientId == model.ContextId && p.SectionCode == model.SectionCode && p.Deleted == false).ToList();
            lstPreScreenData = _dataContext.PreScreenData.Where(p => p.PreScreenId == model.ContextId && p.SectionCode == model.SectionCode && p.Deleted == false).ToList();

            if (model.Items != null)
            {
                foreach (var item in model.Items)
                {
                    CommonPatientData data;

                    switch (model.Context)
                    {
                    case "Patient":
                        data = lstPatientData.Where(p => p.ItemCode == item.Key).SingleOrDefault();

                        if (data == null)
                        {
                            data = new PatientData()
                            {
                                PatientId = model.ContextId
                            };
                            _dataContext.PatientData.Add((PatientData)data);
                        }

                        break;

                    case "PreScreen":
                        data = lstPreScreenData.Where(p => p.ItemCode == item.Key).SingleOrDefault();

                        if (data == null)
                        {
                            data = new PreScreenData()
                            {
                                PreScreenId = model.ContextId
                            };
                            _dataContext.PreScreenData.Add((PreScreenData)data);
                        }

                        break;

                    default:
                        throw new NotImplementedException();
                    }


                    var section = GetSections().Where(p => p.GetUniqueClientCode() == (_prefix + model.SectionCode)).Single();

                    data.ItemCode             = item.Key;
                    data.SectionCode          = model.SectionCode;
                    data.Label                = section.Items.Where(p => p.ClientCode == item.Key).Single().Label;
                    data.Value                = item.Value;
                    data.Type                 = section.Items.Where(p => p.ClientCode == item.Key).Single().ItemType;
                    data.DependsOnCode        = section.Items.Where(p => p.ClientCode == item.Key).Single().DependsOnCode;
                    data.DependsOnAssertValue = section.Items.Where(p => p.ClientCode == item.Key).Single().DependsOnAssertValue;
                }
            }


            if (model.Tables != null)
            {
                foreach (var table in model.Tables)
                {
                    CommonPatientData data;

                    switch (model.Context)
                    {
                    case "Patient":
                        data = lstPatientData.Where(p => p.ItemCode == table.ClientCode).SingleOrDefault();

                        if (data == null)
                        {
                            data = new PatientData()
                            {
                                PatientId = model.ContextId
                            };
                            _dataContext.PatientData.Add((PatientData)data);
                        }

                        break;

                    case "PreScreen":
                        data = lstPreScreenData.Where(p => p.ItemCode == table.ClientCode).SingleOrDefault();

                        if (data == null)
                        {
                            data = new PreScreenData()
                            {
                                PreScreenId = model.ContextId
                            };
                            _dataContext.PreScreenData.Add((PreScreenData)data);
                        }

                        break;

                    default:
                        throw new NotImplementedException();
                    }


                    var section = GetSections().Where(p => p.GetUniqueClientCode() == (_prefix + model.SectionCode)).Single();

                    data.ItemCode             = table.ClientCode;
                    data.SectionCode          = model.SectionCode;
                    data.Label                = section.Items.Where(p => p.ClientCode == table.ClientCode).Single().Label;
                    data.Value                = Common.XmlSerializeType(table.GetType(), table);
                    data.Type                 = section.Items.Where(p => p.ClientCode == table.ClientCode).Single().ItemType;
                    data.DependsOnCode        = section.Items.Where(p => p.ClientCode == table.ClientCode).Single().DependsOnCode;
                    data.DependsOnAssertValue = section.Items.Where(p => p.ClientCode == table.ClientCode).Single().DependsOnAssertValue;
                }
            }
        }