using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Neo.Afx.ComponentModel;
using Neo.Afx.Services.Forms.Entities;
namespace Neo.Afx.Services.Forms
{
///
/// Forms database context container
///
public class FormsDatabase : Database
{
///
/// Initializes a new instance of the class.
///
public FormsDatabase()
: base(new FormContext())
{
}
#region UserName
///
/// Gets the name of the user.
///
///
/// The name of the user.
///
public string UserName
{
get
{
if(HttpContext.Current.User != null && HttpContext.Current.User.Identity.IsAuthenticated)
{
return HttpContext.Current.User.Identity.Name.ToLower();
}
return "";
}
}
#endregion
////#region UpdateChecklistResults
///////
/////// Updates the checklist results.
///////
/////// The results.
/////// The item ID.
////public void UpdateChecklistResults(List results, long itemID)
////{
//// foreach(var checklistResult in results)
//// {
//// Context.Pr_ChecklistResultUpsert(checklistResult.EntityID,
//// itemID,
//// checklistResult.ChecklistTemplateQuestionID,
//// checklistResult.Result, checklistResult.Comments, UserName).SingleOrDefault();
//// }
////}
////#endregion
////#region GetChecklistTemplates
///////
/////// Gets the checklist templates.
///////
/////// The entity ID.
/////// The item ID.
/////// The checklist template status ID.
///////
////public IEnumerable GetChecklistTemplates(int entityID, long itemID, short checklistTemplateStatusID)
////{
//// return from q in Context.ChecklistTemplates
//// where q.EntityID == entityID &&
//// q.ItemID == itemID &&
//// q.ChecklistTemplateStatusID == checklistTemplateStatusID
//// select q;
////}
////#endregion
////#region GetChecklistTemplateQuestions
///////
/////// Gets the checklist template questions.
///////
/////// The checklist template ID.
///////
////public IEnumerable GetChecklistTemplateQuestions(long checklistTemplateID)
////{
//// return from q in Context.ChecklistTemplateQuestions
//// where q.ChecklistTemplateID == checklistTemplateID
//// && q.IsCancelled == false
//// orderby q.OrderBy
//// select q;
////}
////#endregion
////#region GetChecklistTemplateQuestionsAll
///////
/////// Gets the checklist template questions all.
///////
/////// The entity ID.
/////// The item ID.
///////
////public IEnumerable GetChecklistTemplateQuestionsAll(int entityID, long itemID)
////{
//// return from q in Context.ChecklistTemplateQuestions.Include("ChecklistTemplate")
//// where q.ChecklistTemplate.EntityID == entityID &&
//// q.ChecklistTemplate.ItemID == itemID &&
//// q.ChecklistTemplate.ChecklistTemplateStatusID == (short)ChecklistTemplateStatusEnum.Active
//// && q.IsCancelled == false
//// orderby q.OrderBy
//// select q;
////}
////#endregion
////#region GetChecklistResults
///////
/////// Gets the checklist results.
///////
/////// The entity ID.
/////// The item ID.
///////
////public IEnumerable GetChecklistResults(int entityID, long itemID)
////{
//// int[] dateCapureFieldIds = { 4, 5 }; //as defined in Form.CaptureFields
//// var results = from q in Context.ChecklistResults.Include("ChecklistTemplateQuestion").Include("ChecklistTemplateQuestion.ChecklistTemplate")
//// where q.EntityID == entityID && q.ItemID == itemID && q.ChecklistTemplateQuestion.IsCancelled == false
//// orderby q.ChecklistTemplateQuestion.OrderBy
//// select q;
//// //clean out the timezone from the captured date
//// foreach(var r in results)
//// {
//// if(dateCapureFieldIds.Contains(r.ChecklistTemplateQuestion.CaptureFieldID))
//// {
//// if(r.Result != null && r.Result.Contains("T"))
//// {
//// r.Result = Convert.ToDateTime(r.Result).ToString("G"); //get rid of the T
//// }
//// }
//// }
//// return results;
////}
////#endregion
////#region GetChecklistResult
///////
/////// Gets the checklist result.
///////
/////// The checklist result ID.
///////
////public ChecklistResult GetChecklistResult(long checklistResultID)
////{
//// return Context.ChecklistResults.Include("ChecklistTemplateQuestion").Where(a => a.ChecklistResultID == checklistResultID).FirstOrDefault();
////}
////#endregion
#region GetCaptureFields
///
/// Gets the capture fields.
///
///
public IEnumerable GetCaptureFields()
{
return from q in Context.CaptureFields
where !q.IsCancelled
select q;
}
#endregion
////#region GetChecklistTemplateStatuses
///////
/////// Gets the checklist template statuses.
///////
///////
////public IEnumerable GetChecklistTemplateStatuses()
////{
//// return from q in Context.ChecklistTemplateStatuses
//// where !q.IsCancelled
//// select q;
////}
////#endregion
////#region CreateHyperLink
///////
/////// Creates the hyper link.
///////
/////// The entity ID.
/////// The item ID.
/////// The title.
/////// The description.
/////// The URL.
/////// The thumbnail URL.
/////// true if Open in new window; false otherwise.
///////
////public KeyValuePair CreateHyperLink(int entityID, long itemID, string title, string description, string url, string thumbnailUrl, bool openInNewWindow)
////{
//// KeyValuePair returnResult;
//// try
//// {
//// var result = Context.Pr_HyperLinkCreate(entityID, itemID, title, description, url, thumbnailUrl, openInNewWindow, UserName).SingleOrDefault();
//// returnResult = result.HasValue ? new KeyValuePair(result.Value, (result.Value != -1) ? String.Empty : "Unknown error occured") : new KeyValuePair(-1, "Unknown error occured");
//// }
//// catch(Exception ex)
//// {
//// returnResult = new KeyValuePair(-1, ex.InnerException.Message);
//// }
//// return returnResult;
////}
////#endregion
////#region UpdateHyperLink
///////
/////// Updates the hyper link.
///////
/////// The hyper link ID.
/////// The title.
/////// The description.
/////// The URL.
/////// The thumbnail URL.
/////// true if Open in new window; false otherwise.
///////
////public string UpdateHyperLink(long hyperLinkID, string title, string description, string url, string thumbnailUrl, bool openInNewWindow)
////{
//// string error;
//// try
//// {
//// var result = Context.Pr_HyperLinkUpdate(hyperLinkID, title, description, url, thumbnailUrl, openInNewWindow, UserName).SingleOrDefault();
//// if(result.HasValue)
//// {
//// error = (result.Value) ? String.Empty : "Unknown error occured";
//// }
//// else
//// {
//// error = "Unknown error occured";
//// }
//// }
//// catch(Exception ex)
//// {
//// error = ex.InnerException.Message;
//// }
//// return error;
////}
////#endregion
////#region DeleteHyperLink
///////
/////// Deletes the hyper link.
///////
/////// The hyper link ID.
///////
////public string DeleteHyperLink(long hyperLinkID)
////{
//// string error;
//// try
//// {
//// var result = Context.Pr_HyperLinkDelete(hyperLinkID, UserName).SingleOrDefault();
//// if(result.HasValue)
//// {
//// error = (result.Value) ? String.Empty : "Unknown error occured";
//// }
//// else
//// {
//// error = "Unknown error occured";
//// }
//// }
//// catch(Exception ex)
//// {
//// error = ex.InnerException.Message;
//// }
//// return error;
////}
////#endregion
////#region GetHyperlink
///////
/////// Gets the hyperlink.
///////
/////// The hyper link ID.
///////
////public HyperLink GetHyperlink(long hyperLinkID)
////{
//// return Context.HyperLinks.Include("UserCreatedBy").Where(a => a.HyperLinkID == hyperLinkID).FirstOrDefault();
////}
////#endregion
////#region GetHyperlinks
///////
/////// Gets the hyperlinks.
///////
/////// The entity ID.
/////// The item ID.
///////
////public IEnumerable GetHyperlinks(int entityID, long itemID)
////{
//// return from q in Context.HyperLinks.Include("UserCreatedBy")
//// where q.EntityID == entityID &&
//// q.ItemID == itemID && !q.IsCancelled
//// select q;
////}
////#endregion
////#region GetForms
///////
/////// Gets a list of all the forms in the system
///////
///////
////public Form GetFormForWorkflow(long workflowID)
////{
//// var obj = (from q in Context.Forms
//// where q.WorkflowID == workflowID
//// select q).FirstOrDefault();
//// return obj;
////}
////#endregion
////#region GetActiveFormTemplate
///////
/////// Gets the form, including sections and fields.
///////
/////// The form ID.
///////
////public FormTemplate GetActiveFormTemplate(long formID)
////{
//// var obj = (from q in Context.FormTemplates.Include("Form").Include("FormTemplateSections").Include("FormTemplateSections.FormTemplateSectionFields")
//// where q.FormID == formID && q.FormTemplateStatusID == 1 //Active
//// select q).FirstOrDefault();
//// obj.FormTemplateSections = obj.FormTemplateSections.OrderBy(a => a.OrderBy).ToList();
//// foreach (var fs in obj.FormTemplateSections)
//// {
//// fs.FormTemplateSectionFields = fs.FormTemplateSectionFields.OrderBy(a => a.OrderBy).ToList();
//// }
//// return obj;
////}
////#endregion
////#region GetFormTag
////public FormTag GetFormTag(long formTagID)
////{
//// return (from tag in Context.FormTags
//// where tag.FormTagID == formTagID
//// select tag).FirstOrDefault();
////}
////#endregion
////#region GetFormTemplateSectionFields
////public IEnumerable GetFormTemplateSectionFields()
////{
//// return (from tag in Context.FormTemplateSectionFields
//// select tag);
////}
////#endregion
////#region GetFormTemplateChecks
////public IEnumerable GetFormTemplateDocumentChecks()
////{
//// return (from tag in Context.FormTemplateDocumentChecks
//// select tag);
////}
////#endregion
}
}