コード例 #1
0
        public override bool Save(DCAnalyticsObject obj)
        {
            QuestionProvider provider = new QuestionProvider(DbInfo);

            SubSection subsection = obj as SubSection;

            var    exists = RecordExists("dsto_subsections", subsection.Key);
            string query  = string.Empty;

            if (!exists)
            {
                query = $"insert into dsto_subsections([guid],Name,[created_by],[yref_section]) values('{subsection.Key}','{subsection.Name}','Admin','{subsection.SectionKey}')";
            }
            else
            {
                //update
                query = $"UPDATE dsto_subsections SET [Name]='{subsection.Name}', " +
                        $"[Deleted]='{subsection.Deleted}' " +
                        $"WHERE [guid] = '{subsection.Key}'";
            }
            if (DbInfo.ExecuteNonQuery(query) > -1)
            {
                //save questions
                foreach (var qn in subsection.Questions)
                {
                    qn.SubSectionKey = subsection.Key;
                    provider.Save(qn);
                }
                return(true);
            }

            return(false);
        }
コード例 #2
0
        public override bool Save(DCAnalyticsObject obj)
        {
            QuestionProvider   qnProvider = new QuestionProvider(DbInfo);
            SubSectionProvider sbProvider = new SubSectionProvider(DbInfo);

            Section section = obj as Section;

            var complete = section.IsCompleted ? 1 : 0;

            var exists = RecordExists("dsto_sections", section.Key);

            string query = string.Empty;

            if (!exists)
            {
                if (!string.IsNullOrEmpty(section.QuestionaireKey))
                {
                    query = $"insert into dsto_sections([guid],[Name],[Description],[created_by],[isCompleted],[yref_questionaire]) values('{section.Key}','{section.Name}','{section.Description}','Admin',{complete},'{section.QuestionaireKey}')";
                }
                else if (!string.IsNullOrEmpty(section.CertificationKey))
                {
                    query = $"insert into dsto_sections([guid],[Name],[Description],[created_by],[isCompleted],[yref_certification]) values('{section.Key}','{section.Name}','{section.Description}','Admin',{complete},'{section.CertificationKey}')";
                }
                else if (!string.IsNullOrEmpty(section.InspectionKey))
                {
                    query = $"insert into dsto_sections([guid],[Name],[Description],[created_by],[isCompleted],[yref_field_inspection]) values('{section.Key}','{section.Name}','{section.Description}','Admin',{complete},'{section.InspectionKey}')";
                }
                else if (!string.IsNullOrEmpty(section.TemplateKey))
                {
                    query = $"insert into dsto_sections([guid],[Name],[Description],[created_by],[isCompleted],[yref_template]) values('{section.Key}','{section.Name}','{section.Description}','Admin',{complete},'{section.TemplateKey}')";
                }
            }
            else
            {
                //update
                query = $"UPDATE dsto_sections SET [Name]='{section.Name}', " +
                        $"[Description]='{section.Description}', " +
                        $"[iscompleted]='{complete}', " +
                        $"[Deleted]='{section.Deleted}' " +
                        $"WHERE [guid] = '{section.Key}'";
            }

            if (DbInfo.ExecuteNonQuery(query) > -1)
            {
                //save subsections
                foreach (var sb in section.SubSections)
                {
                    sb.SectionKey = section.Key;
                    sbProvider.Save(sb);
                }
                //save questions
                foreach (var qn in section.Questions)
                {
                    qn.SectionKey = section.Key;
                    qnProvider.Save(qn);
                }
                return(true);
            }

            return(false);
        }