public async Task <List <DomainId>?> SearchAsync(IAppEntity app, TextQuery query, SearchScope scope) { var(queryText, filter) = query; if (string.IsNullOrWhiteSpace(queryText)) { return(EmptyResults); } if (filter == null) { return(await SearchByAppAsync(queryText, app, scope, Limit)); } else if (filter.Must) { return(await SearchBySchemaAsync(queryText, app, filter, scope, Limit)); } else { var(bySchema, byApp) = await AsyncHelper.WhenAll( SearchBySchemaAsync(queryText, app, filter, scope, LimitHalf), SearchByAppAsync(queryText, app, scope, LimitHalf)); return(bySchema.Union(byApp).Distinct().ToList()); } }
public async Task <List <DomainId> > SearchAsync(IAppEntity app, TextQuery query, SearchScope scope, CancellationToken ct = default) { Guard.NotNull(app, nameof(app)); Guard.NotNull(query, nameof(query)); var parsed = queryParser.Parse(query.Text); if (parsed == null) { return(null); } var result = new List <(DomainId Id, double Score)>(); if (query.RequiredSchemaIds?.Count > 0) { await SearchBySchemaAsync(result, parsed.Text, query.RequiredSchemaIds, scope, query.Take, 1, ct); } else if (query.PreferredSchemaId == null) { await SearchByAppAsync(result, parsed.Text, app, scope, query.Take, 1, ct); } else { var halfTake = query.Take / 2; var schemaIds = Enumerable.Repeat(query.PreferredSchemaId.Value, 1); await SearchBySchemaAsync(result, parsed.Text, schemaIds, scope, halfTake, 1.1, ct); await SearchByAppAsync(result, parsed.Text, app, scope, halfTake, 1, ct); } return(result.OrderByDescending(x => x.Score).Select(x => x.Id).Distinct().ToList()); }
public async Task <SearchResults> SearchAsync(string query, Context context) { var result = new SearchResults(); var searchFilter = await CreateSearchFilterAsync(context); if (searchFilter == null) { return(result); } var textQuery = new TextQuery($"{query}~", searchFilter); var ids = await contentTextIndexer.SearchAsync(context.App, textQuery, context.Scope()); if (ids == null || ids.Count == 0) { return(result); } var appId = context.App.NamedId(); var contents = await contentQuery.QueryAsync(context, Q.Empty.WithIds(ids)); foreach (var content in contents) { var url = urlGenerator.ContentUI(appId, content.SchemaId, content.Id); var name = FormatName(content, context.App.Languages.Master); result.Add(name, SearchResultType.Content, url, content.SchemaDisplayName); } return(result); }
protected void BtnQuery_Click(object sender, DirectEventArgs e) { string sql = "SELECT a.pif_ic, b.apptst_patrefid, b.apptst_flr, b.apptst_sec, b.apptst_bed, b.apptst_mactyp, b.apptst_wktyp, b.apptst_daytyp, b.apptst_timetyp FROM pat_info a "; sql += "LEFT JOIN appointment_setup b ON a.pif_ic=b.apptst_patic "; sql += "WHERE pif_mrn='" + TextQuery.Text + "' "; sql += "AND b.apptst_flr='" + sFLOOR.Text + "' "; sql += "AND b.apptst_timetyp='" + sTIME.Text + "' "; sql += "AND b.apptst_daytyp='" + sWEEK.Text + "'"; DataTable dt = db.Query(sql); if (dt.Rows.Count > 0) { string pid = dt.Rows[0]["pif_ic"].ToString(); string pname = dt.Rows[0]["apptst_patrefid"].ToString(); string bedno = dt.Rows[0]["apptst_bed"].ToString(); string mactype = dt.Rows[0]["apptst_mactyp"].ToString(); string area = dt.Rows[0]["apptst_sec"].ToString(); Common._NotificationShow("开始报到"); string url = "Patient_detail.aspx?personid=" + pid + "&patient_name=" + pname + "&machine_type=" + mactype + "&floor=" + sFLOOR.Text; url += "&area=" + area + "&time=" + sTIME.Text + "&bedno=" + bedno + "&daytyp=" + sWEEK.Text + "&sdate=" + sDATE.Text; X.Redirect(url); } else { Common._NotificationShow("查无此人或已逾时" + TextQuery.Text); } TextQuery.Text = ""; TextQuery.Focus(false, 100); }
protected new void Page_Load(object sender, EventArgs e) { if (!X.IsAjaxRequest) { if (Session["USER_NAME"] == null || Session["USER_RIGHT"] == null) { X.Redirect("../login.aspx"); } else { if (Session["sDATE"] == null) { DateTime now = DateTime.Now; sDATE.Text = now.ToString("yyyy-MM-dd"); } else { sDATE.Text = Session["sDATE"].ToString(); } GetWeek(); Label1.Text = sDATE.Text + " " + txtWEEK.Text; Show_TimeSec(); //顯示時段 Show_FloorArea(); //顯示樓層,床區 TextQuery.Focus(true, 100); } } }
public virtual async Task <List <DomainId>?> SearchAsync(IAppEntity app, TextQuery query, SearchScope scope, CancellationToken ct = default) { Guard.NotNull(app, nameof(app)); Guard.NotNull(query, nameof(query)); var(search, take) = query; if (string.IsNullOrWhiteSpace(search)) { return(null); } var result = new List <(DomainId Id, double Score)>(); if (query.RequiredSchemaIds?.Count > 0) { await SearchBySchemaAsync(result, search, app, query.RequiredSchemaIds, scope, take, 1, ct); } else if (query.PreferredSchemaId == null) { await SearchByAppAsync(result, search, app, scope, take, 1, ct); } else { var halfBucket = take / 2; var schemaIds = Enumerable.Repeat(query.PreferredSchemaId.Value, 1); await SearchBySchemaAsync(result, search, app, schemaIds, scope, halfBucket, 1.1, ct); await SearchByAppAsync(result, search, app, scope, halfBucket, 1, ct); } return(result.OrderByDescending(x => x.Score).Select(x => x.Id).Distinct().ToList()); }
public async Task <string> SearchTextQueryonApp(string cacheName, string searchText) { try { var repeat = ""; do { var cache = await GetIConstructionCacheStore(cacheName); var textquery = new TextQuery(typeof(CommonConstruction), "Metric"); var cursor = cache.Query(textquery).GetAll(); foreach (var cacheEntry in cursor) { Console.WriteLine(cacheEntry.Value); } Console.WriteLine("do you want to repeat(y/n)"); repeat = Console.ReadLine(); } while (repeat == "y"); //var sqlquery = new SqlFieldsQuery("select uuid from CommonConstruction"); //var cursor = cache.Query(sqlquery).GetAll(); Console.WriteLine("End of query"); } catch (Exception ex) { Console.WriteLine(ex); } string res = ""; return(await Task.FromResult(res)); }
public override int GetHashCode() { int hashCode = 1871698487; if (SortedAttributeQuery != null) { hashCode += SortedAttributeQuery.GetHashCode(); } if (ExactQuery != null) { hashCode += ExactQuery.GetHashCode(); } if (SetQuery != null) { hashCode += SetQuery.GetHashCode(); } if (PrefixQuery != null) { hashCode += PrefixQuery.GetHashCode(); } if (RangeQuery != null) { hashCode += RangeQuery.GetHashCode(); } if (TextQuery != null) { hashCode += TextQuery.GetHashCode(); } if (ItemsForTaxQuery != null) { hashCode += ItemsForTaxQuery.GetHashCode(); } if (ItemsForModifierListQuery != null) { hashCode += ItemsForModifierListQuery.GetHashCode(); } if (ItemsForItemOptionsQuery != null) { hashCode += ItemsForItemOptionsQuery.GetHashCode(); } if (ItemVariationsForItemOptionValuesQuery != null) { hashCode += ItemVariationsForItemOptionValuesQuery.GetHashCode(); } return(hashCode); }
protected void Show_Checkin() { sDATE.Text = DateTime.Now.ToString("yyyy-MM-dd"); GetWeek(); Label_Date.Text = sDATE.Text + " " + txtWEEK.Text; Show_TimeSec(); //顯示時段 Show_FloorArea(); //顯示樓層,床區 FormPanel2.Enabled = true; TextQuery.Focus(true, 100); }
public void TestTextQuery([Values(true, false)] bool loc, [Values(true, false)] bool keepBinary) { var cache = Cache(); // 1. Populate cache with data, calculating expected count in parallel. var exp = PopulateCache(cache, loc, MaxItemCnt, x => x.ToString().StartsWith("1")); // 2. Validate results. var qry = new TextQuery(typeof(QueryPerson), "1*", loc); ValidateQueryResults(cache, qry, exp, keepBinary); }
protected void ToString(List <string> toStringOutput) { toStringOutput.Add($"SortedAttributeQuery = {(SortedAttributeQuery == null ? "null" : SortedAttributeQuery.ToString())}"); toStringOutput.Add($"ExactQuery = {(ExactQuery == null ? "null" : ExactQuery.ToString())}"); toStringOutput.Add($"SetQuery = {(SetQuery == null ? "null" : SetQuery.ToString())}"); toStringOutput.Add($"PrefixQuery = {(PrefixQuery == null ? "null" : PrefixQuery.ToString())}"); toStringOutput.Add($"RangeQuery = {(RangeQuery == null ? "null" : RangeQuery.ToString())}"); toStringOutput.Add($"TextQuery = {(TextQuery == null ? "null" : TextQuery.ToString())}"); toStringOutput.Add($"ItemsForTaxQuery = {(ItemsForTaxQuery == null ? "null" : ItemsForTaxQuery.ToString())}"); toStringOutput.Add($"ItemsForModifierListQuery = {(ItemsForModifierListQuery == null ? "null" : ItemsForModifierListQuery.ToString())}"); toStringOutput.Add($"ItemsForItemOptionsQuery = {(ItemsForItemOptionsQuery == null ? "null" : ItemsForItemOptionsQuery.ToString())}"); toStringOutput.Add($"ItemVariationsForItemOptionValuesQuery = {(ItemVariationsForItemOptionValuesQuery == null ? "null" : ItemVariationsForItemOptionValuesQuery.ToString())}"); }
/// <summary> /// Check text query. /// </summary> /// <param name="cnt">Amount of cache entries to create.</param> /// <param name="loc">Local query flag.</param> /// <param name="keepBinary">Keep binary flag.</param> private void CheckTextQuery(int cnt, bool loc, bool keepBinary) { var cache = Cache(); // 1. Populate cache with data, calculating expected count in parallel. var exp = PopulateCache(cache, loc, cnt, x => x.ToString().StartsWith("1")); // 2. Validate results. TextQuery qry = loc ? new TextQuery(typeof(QueryPerson), "1*", true) : new TextQuery(typeof(QueryPerson), "1*"); ValidateQueryResults(cache, qry, exp, keepBinary); }
protected void BtnQuery_Click(object sender, DirectEventArgs e) { string sql = "SELECT a.pif_ic, b.apptst_patrefid, b.apptst_flr, b.apptst_sec, b.apptst_bed, b.apptst_mactyp, b.apptst_wktyp, b.apptst_daytyp, b.apptst_timetyp FROM pat_info a "; sql += "LEFT JOIN appointment_setup b ON a.pif_ic=b.apptst_patic "; sql += "WHERE pif_mrn='" + TextQuery.Text + "' "; sql += "AND b.apptst_flr='" + sFLOOR.Text + "' "; sql += "AND b.apptst_timetyp='" + sTIME.Text + "' "; sql += "AND b.apptst_daytyp='" + sWEEK.Text + "'"; DataTable dt = db.Query(sql); if (dt.Rows.Count > 0) { string pid = dt.Rows[0]["pif_ic"].ToString(); string pname = dt.Rows[0]["apptst_patrefid"].ToString(); string bedno = dt.Rows[0]["apptst_bed"].ToString(); string mactype = dt.Rows[0]["apptst_mactyp"].ToString(); string area = dt.Rows[0]["apptst_sec"].ToString(); Common._NotificationShow("开始报到"); string url = "checkin/Patient_detail.aspx?personid=" + pid + "&patient_name=" + pname + "&machine_type=" + mactype + "&floor=" + sFLOOR.Text; url += "&area=" + area + "&time=" + sTIME.Text + "&bedno=" + bedno + "&daytyp=" + sWEEK.Text + "&sdate=" + sDATE.Text; _PAT_IC = pid; Session["PAT_IC"] = pid; _PIF_NAME = pname; _USER_NAME = Session["USER_NAME"].ToString(); FormPanel2.Enabled = false; Panel_Loader1.Hidden = false; Panel_Loader2.Hidden = true; Panel_Loader3.Hidden = true; Store istore = grdBED_LIST.GetStore(); istore.RemoveAll(); Panel_Loader1.Loader.SuspendScripting(); Panel_Loader1.Loader.Url = url; Panel_Loader1.Loader.DisableCaching = true; Panel_Loader1.LoadContent(); Refreach_Label(); } else { Common._NotificationShow("查无此人或已逾时" + TextQuery.Text); } TextQuery.Text = ""; TextQuery.Focus(false, 100); }
public async Task <List <DomainId>?> SearchAsync(IAppEntity app, TextQuery query, SearchScope scope) { Guard.NotNull(app, nameof(app)); Guard.NotNull(query, nameof(query)); var queryText = query.Text; if (string.IsNullOrWhiteSpace(queryText)) { return(null); } var isFuzzy = queryText.EndsWith("~", StringComparison.OrdinalIgnoreCase); if (isFuzzy) { queryText = queryText[..^ 1];
protected IndexOperation SearchText(List <DomainId>?expected, string text, SearchScope target = SearchScope.All) { return(async p => { var query = new TextQuery(text, TextFilter.ShouldHaveSchemas(schemaId.Id)); var result = await p.TextIndex.SearchAsync(app, query, target); if (expected != null) { result.Should().BeEquivalentTo(expected.ToHashSet()); } else { result.Should().BeEmpty(); } }); }
protected void Page_Load(object sender, EventArgs e) { if (!X.IsAjaxRequest) { if (Session["USER_NAME"] == null || Session["USER_RIGHT"] == null) { X.Redirect("index.aspx"); } else { if (Session["USER_RIGHT"].ToString() != "DC" && Session["USER_RIGHT"].ToString() != "DH") { Session["USER_RIGHT"] = ""; X.Redirect("index.aspx"); } } if (Session["sDATE"] == null) { if (Request.QueryString["sdate"] != null) { txtTIME.Text = Request.QueryString["sdate"]; } else { DateTime now = DateTime.Now; txtTIME.Text = now.ToString("yyyy-MM-dd"); } sDATE.Text = DateTime.Parse(txtTIME.Text).ToString("yyyy-MM-dd"); } else { sDATE.Text = Session["sDATE"].ToString(); txtTIME.Text = sDATE.Text; } //txtTIME日期 Show_TimeSec(); //顯示時段 //Show_Week(); //顯示星期 Show_FloorArea(); //顯示樓層,床區 TextQuery.Focus(true, 100); } }
/// <summary> /// Adds <see cref="TextQuery"/> to query. /// </summary> /// <param name="wrapper">Query wrapper.</param> /// <param name="query">Query object.</param> /// <param name="paths">Expression path to querying field.</param> public static QueryWrapper <T> Text <T>(this QueryWrapper <T> wrapper, TextQuery query, params Expression <Func <T, object> >[] paths) where T : class { if (query == null || !query.IsSpecified) { return(wrapper); } return(wrapper.AddQuery(descriptor => { var container = null as QueryContainer; foreach (var value in query.Values) { if (string.IsNullOrEmpty(value)) { continue; } var c = descriptor.SimpleQueryString(q => q.Query(value).Fields(f => paths.Aggregate(f, (ff, p) => ff.Field(p))).DefaultOperator(query.Mode == QueryMatchMode.All ? Operator.And : Operator.Or)); if (container == null) { container = c; } else { switch (query.Mode) { case QueryMatchMode.Any: container |= c; break; case QueryMatchMode.All: container &= c; break; } } } return container; })); }
protected async Task SearchText(List <DomainId>?expected, string text, SearchScope target = SearchScope.All) { var query = new TextQuery(text, 1000) { RequiredSchemaIds = new List <DomainId> { schemaId.Id } }; var result = await Sut.TextIndex.SearchAsync(app, query, target); if (expected != null) { result.Should().BeEquivalentTo(expected.ToHashSet()); } else { result.Should().BeEmpty(); } }
private async Task TransformFilterAsync(ClrQuery query, Context context, ISchemaEntity?schema) { if (query.Filter != null && schema != null) { query.Filter = await GeoQueryTransformer.TransformAsync(query.Filter, context, schema, textIndex); } if (!string.IsNullOrWhiteSpace(query.FullText)) { if (schema == null) { throw new InvalidOperationException(); } var textQuery = new TextQuery(query.FullText, 1000) { PreferredSchemaId = schema.Id }; var fullTextIds = await textIndex.SearchAsync(context.App, textQuery, context.Scope()); var fullTextFilter = ClrFilter.Eq("id", "__notfound__"); if (fullTextIds?.Any() == true) { fullTextFilter = ClrFilter.In("id", fullTextIds.Select(x => x.ToString()).ToList()); } if (query.Filter != null) { query.Filter = ClrFilter.And(query.Filter, fullTextFilter); } else { query.Filter = fullTextFilter; } query.FullText = null; } }
public async Task <string> SearchRecordAsync(string cacheName, string searchText) { try { var cache = await GetICustomStoreCache(cacheName, ""); var textquery = new TextQuery("Student", "Good"); var cursor = cache.Query(textquery).GetAll(); foreach (var cacheEntry in cursor) { Console.WriteLine(cacheEntry.Value); } Console.WriteLine("End of query"); } catch (Exception ex) { Console.WriteLine(ex); } string res = ""; return(await Task.FromResult(res)); }
public override bool Equals(object obj) { if (obj == null) { return(false); } if (obj == this) { return(true); } return(obj is CatalogQuery other && ((SortedAttributeQuery == null && other.SortedAttributeQuery == null) || (SortedAttributeQuery?.Equals(other.SortedAttributeQuery) == true)) && ((ExactQuery == null && other.ExactQuery == null) || (ExactQuery?.Equals(other.ExactQuery) == true)) && ((SetQuery == null && other.SetQuery == null) || (SetQuery?.Equals(other.SetQuery) == true)) && ((PrefixQuery == null && other.PrefixQuery == null) || (PrefixQuery?.Equals(other.PrefixQuery) == true)) && ((RangeQuery == null && other.RangeQuery == null) || (RangeQuery?.Equals(other.RangeQuery) == true)) && ((TextQuery == null && other.TextQuery == null) || (TextQuery?.Equals(other.TextQuery) == true)) && ((ItemsForTaxQuery == null && other.ItemsForTaxQuery == null) || (ItemsForTaxQuery?.Equals(other.ItemsForTaxQuery) == true)) && ((ItemsForModifierListQuery == null && other.ItemsForModifierListQuery == null) || (ItemsForModifierListQuery?.Equals(other.ItemsForModifierListQuery) == true)) && ((ItemsForItemOptionsQuery == null && other.ItemsForItemOptionsQuery == null) || (ItemsForItemOptionsQuery?.Equals(other.ItemsForItemOptionsQuery) == true)) && ((ItemVariationsForItemOptionValuesQuery == null && other.ItemVariationsForItemOptionValuesQuery == null) || (ItemVariationsForItemOptionValuesQuery?.Equals(other.ItemVariationsForItemOptionValuesQuery) == true))); }
public static QueryWrapper <T> Text <T>(this QueryWrapper <T> wrapper, TextQuery query, Expression <Func <T, object> > path = null) where T : class => wrapper.QueryInternal( query, descriptor => { var container = null as QueryContainer; foreach (var value in query.Values) { /*switch (query.Mode) * { * default:*/ var c = descriptor.SimpleQueryString(q => { // path = null signifies all fields if (path != null) { q.Fields(f => f.Field(path)); } q.Query(value); return(q); }); /* break; * * case TextQueryMode.Match: * if (paths.Length == 1) * c = descriptor.Match(q => q.Field(paths[0]) * .Query(value)); * else * c = descriptor.MultiMatch(q => q.Fields(paths) * .Query(value)); * * break; * * case TextQueryMode.Phrase: * c = descriptor.MatchPhrase(q => q.Field(paths[0]) // always use first * .Query(value)); * * break; * }*/ if (container == null) { container = c; } else { switch (query.Mode) { default: container &= c; break; case QueryMatchMode.Any: container |= c; break; } } } return(container); });
protected void FILL_BED() { //Show_Week(); GetWeek(); string sSQL = ""; sSQL = "SELECT M.mac_sec AS AREA, M.mac_bedno AS BED_NO, "; sSQL += "CASE "; sSQL += "WHEN EXISTS(SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.apptst_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "THEN (SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.apptst_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "ELSE (SELECT cln1_col2 FROM clinical1_doc_henan WHERE cln1_patic=A.apptst_patic AND cln1_diadate='base') "; sSQL += "END AS MAC_MODEL, "; sSQL += "M.mac_typ AS MAC_TYPE, "; sSQL += "case UPPER(M.mac_status) when 'Y' then '正常' when 'N' then '保养中' end AS MAC_STATE, "; sSQL += "P.pif_name AS PERSON_NAME, A.apptst_patic AS PERSON_ID, "; sSQL += "case P.pif_sex when 'M' then '男' when 'F' then '女' end as PERSON_SEX, "; sSQL += "P.pif_height AS PERSON_HEIGHT, "; sSQL += "N.cln1_col5 AS PERSON_WEIGHT, "; sSQL += "IF(STRCMP(N.cln1_col5,''), 'V', '') as PERSON_STATE "; sSQL += "FROM mac_setup M "; sSQL += "LEFT JOIN appointment_setup A ON M.mac_flr=A.apptst_flr "; sSQL += "AND M.mac_sec=A.apptst_sec AND M.mac_bedno=A.apptst_bed AND A.apptst_daytyp='" + sWEEK.Text + "' AND A.apptst_timetyp='" + sTIME.Text + "' "; sSQL += "LEFT JOIN pat_visit V ON A.apptst_patic=V.pv_ic AND V.pv_datevisit='" + sDATE.Text + "' "; sSQL += "LEFT JOIN general_setup G ON M.mac_brand=G.genst_code AND G.genst_ctg='macbrd' "; sSQL += "LEFT JOIN pat_info P ON A.apptst_patic=P.pif_ic "; sSQL += "LEFT JOIN clinical1_nurse N ON A.apptst_patic=N.cln1_patic AND N.cln1_diadate='" + sDATE.Text + "' "; //淨化參數表格 sSQL += "WHERE M.mac_flr='" + sFLOOR.Text + "' "; if (cb_patlist.Text != "") { sSQL += "AND P.pif_name LIKE '" + cb_patlist.Text + "%' "; } if (sAREA.Text.Trim() != "全区") { sSQL += "AND M.mac_sec='" + sAREA.Text + "' "; } sSQL += "ORDER BY M.mac_bedno "; DataTable dt = db.Query(sSQL); //補上臨時預約 sSQL = "SELECT A.ah_bed, A.ah_patic, A.ah_flr, A.ah_sec, A.ah_bed, A.ah_timetyp, P.pif_name, "; sSQL += "case P.pif_sex when 'M' then '男' when 'F' then '女' end as PERSON_SEX, "; sSQL += "P.pif_height, V.pv_weight, "; sSQL += "case V.pv_macstat when 'A' then '开' when 'S' then '关' end as PERSON_STATE, "; sSQL += "N.cln1_col5 "; sSQL += "FROM appointment_change A "; sSQL += "LEFT JOIN pat_info P ON A.ah_patic=P.pif_ic "; sSQL += "LEFT JOIN pat_visit V ON A.ah_patic=V.pv_ic AND V.pv_datevisit='" + sDATE.Text + "' "; sSQL += "LEFT JOIN clinical1_nurse N ON A.ah_patic=N.cln1_patic AND N.cln1_diadate='" + sDATE.Text + "' "; //淨化參數表格 sSQL += "WHERE ah_date='" + sDATE.Text + "' AND ah_timetyp='" + sTIME.Text + "' "; //if (cb_patlist.Text != "") //{ // sSQL += "AND P.pif_name LIKE '" + cb_patlist.Text + "%' "; //} //if (sAREA.Text.Trim() != "全区") //{ // sSQL += "AND M.mac_sec='" + sAREA.Text + "' "; //} DataTable dt2 = db.Query(sSQL); System.Data.DataView dv = dt.DefaultView; for (int i = 0; i < dt2.Rows.Count; i++) { //dv.RowFilter = "PERSON_ID='" + dt2.Rows[i]["ah_patic"].ToString() + "' "; //if (dv.Count > 0) //{ // dv[0]["PERSON_NAME"] = ""; // dv[0]["PERSON_WEIGHT"] = ""; // dv[0]["PERSON_STATE"] = ""; // dv[0]["PERSON_ID"] = ""; // dv[0]["PERSON_HEIGHT"] = ""; // dv[0]["PERSON_SEX"] = ""; //} dv.RowFilter = "BED_NO='" + dt2.Rows[i]["ah_bed"].ToString() + "' "; if (dv.Count > 0) { dv[0]["PERSON_NAME"] = dt2.Rows[i]["pif_name"].ToString(); dv[0]["PERSON_WEIGHT"] = dt2.Rows[i]["cln1_col5"].ToString(); dv[0]["PERSON_STATE"] = dt2.Rows[i]["PERSON_STATE"].ToString(); dv[0]["PERSON_ID"] = dt2.Rows[i]["ah_patic"].ToString(); dv[0]["PERSON_SEX"] = dt2.Rows[i]["PERSON_SEX"].ToString(); dv[0]["PERSON_HEIGHT"] = dt2.Rows[i]["pif_height"].ToString(); } } Session.Add("PAD_TIME", sTIME.Text); Session.Add("PAD_FLOOR", sFLOOR.Text); Session.Add("PAD_AREA", sAREA.Text); ROW_CNT.Text = dt.Rows.Count.ToString(); Store istore = grdBED_LIST.GetStore(); istore.DataSource = db.GetDataArray(dt); istore.DataBind(); TextQuery.Focus(false, 100); }
protected void cboFLOOR_Click(object sender, DirectEventArgs e) { sFLOOR.Text = Common.GetComboBoxValue(this.cboFLOOR); FILL_BED(); TextQuery.Focus(false, 100); }
protected void FILL_BED() { string sp_pic = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAAxJREFUGFdj+P//PwAF/gL+pzWBhAAAAABJRU5ErkJggg=="; GetWeek(); string sSQL = ""; sSQL = "SELECT M.mac_sec AS AREA, M.mac_bedno AS BED_NO, "; sSQL += "CASE "; sSQL += "WHEN EXISTS(SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.apptst_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "THEN (SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.apptst_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "ELSE (SELECT cln1_col2 FROM clinical1_doc_henan WHERE cln1_patic=A.apptst_patic AND cln1_diadate='base') "; sSQL += "END AS MAC_MODEL, "; sSQL += "M.mac_typ AS MAC_TYPE, "; sSQL += "case UPPER(M.mac_status) when 'Y' then '正常' when 'N' then '保养中' end AS MAC_STATE, "; sSQL += "P.pif_name AS PERSON_NAME, A.apptst_patic AS PERSON_IC, "; sSQL += "case P.pif_sex when 'M' then '男' when 'F' then '女' end as PERSON_SEX, "; sSQL += "P.pif_height AS PERSON_HEIGHT, "; sSQL += "IFNULL(N.cln1_col5, V.pv_weight) AS PERSON_WEIGHT, "; sSQL += "IF(STRCMP(N.cln1_col5,''), 'images/tick_16.png', '" + sp_pic + "') as img_url, "; sSQL += "case V.pv_macstat when '' then '" + sp_pic + "' when 'A' then 'images/start_16.png' when 'S' then 'images/stop_16.png' end as PERSON_STATE, "; sSQL += "P.pif_id AS PERSON_ID "; sSQL += "FROM mac_setup M "; sSQL += "LEFT JOIN appointment_setup A ON M.mac_flr=A.apptst_flr "; sSQL += "AND M.mac_sec=A.apptst_sec AND M.mac_bedno=A.apptst_bed AND A.apptst_daytyp='" + sWEEK.Text + "' AND A.apptst_timetyp='" + sTIME.Text + "' "; sSQL += "LEFT JOIN pat_info P ON A.apptst_patic=P.pif_ic "; sSQL += "LEFT JOIN clinical1_nurse N ON A.apptst_patic=N.cln1_patic AND N.cln1_diadate='" + sDATE.Text + "' "; //淨化參數表格 sSQL += "LEFT JOIN general_setup G ON M.mac_brand=G.genst_code AND G.genst_ctg='macbrd' "; sSQL += "LEFT JOIN pat_visit V ON A.apptst_patic=V.pv_ic AND V.pv_datevisit='" + sDATE.Text + "' "; sSQL += "WHERE M.mac_flr='" + sFLOOR.Text + "' "; if (cb_patlist.Text != "") { sSQL += "AND P.pif_name LIKE '" + cb_patlist.Text + "%' "; } if (sAREA.Text.Trim() != "全区") { sSQL += "AND M.mac_sec='" + sAREA.Text + "' "; } sSQL += "ORDER BY M.mac_bedno"; DataTable dt = db.Query(sSQL); //補上更換床資料 sSQL = "SELECT A.ah_bed, A.ah_patic AS PERSON_IC, A.ah_flr, A.ah_sec, A.ah_bed, A.ah_timetyp, P.pif_name AS PERSON_NAME, "; sSQL += "case P.pif_sex when 'M' then '男' when 'F' then '女' end as PERSON_SEX, "; sSQL += "P.pif_height AS PERSON_HEIGHT, "; sSQL += "N.cln1_col5 AS PERSON_WEIGHT, "; sSQL += "IF(STRCMP(N.cln1_col5,''), 'images/tick_16.png', '" + sp_pic + "') as img_url, "; sSQL += "case V.pv_macstat when '' then '" + sp_pic + "' when 'A' then 'images/start_16.png' when 'S' then 'images/stop_16.png' end as PERSON_STATE, "; sSQL += "CASE "; sSQL += "WHEN EXISTS(SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.ah_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "THEN (SELECT R.cln1_col26 FROM clinical1_nurse R WHERE A.ah_patic=R.cln1_patic AND R.cln1_diadate='" + sDATE.Text + "') "; sSQL += "ELSE (SELECT cln1_col2 FROM clinical1_doc_henan WHERE A.ah_patic=cln1_patic AND cln1_diadate='base') "; sSQL += "END AS MAC_MODEL, "; sSQL += "P.pif_id AS PERSON_ID "; sSQL += "FROM appointment_change A "; sSQL += "LEFT JOIN pat_info P ON A.ah_patic=P.pif_ic "; sSQL += "LEFT JOIN pat_visit V ON A.ah_patic=V.pv_ic AND V.pv_datevisit='" + sDATE.Text + "' "; sSQL += "LEFT JOIN clinical1_nurse N ON A.ah_patic=N.cln1_patic AND N.cln1_diadate='" + sDATE.Text + "' "; //淨化參數表格 sSQL += "WHERE ah_date='" + sDATE.Text + "' AND ah_timetyp='" + sTIME.Text + "' "; DataTable dt2 = db.Query(sSQL); if (dt2.Rows.Count > 0) { System.Data.DataView dv = dt.DefaultView; for (int i = 0; i < dt2.Rows.Count; i++) { dv.RowFilter = "BED_NO='" + dt2.Rows[i]["ah_bed"].ToString() + "' "; if (dv.Count > 0) { if (dt2.Rows[i]["PERSON_ID"].ToString() != "") { dv[0]["PERSON_ID"] = dt2.Rows[i]["PERSON_ID"].ToString(); } dv[0]["PERSON_IC"] = dt2.Rows[i]["PERSON_IC"].ToString(); dv[0]["PERSON_NAME"] = dt2.Rows[i]["PERSON_NAME"].ToString(); dv[0]["PERSON_SEX"] = dt2.Rows[i]["PERSON_SEX"].ToString(); dv[0]["PERSON_HEIGHT"] = dt2.Rows[i]["PERSON_HEIGHT"].ToString(); dv[0]["PERSON_WEIGHT"] = dt2.Rows[i]["PERSON_WEIGHT"].ToString(); dv[0]["PERSON_STATE"] = dt2.Rows[i]["PERSON_STATE"].ToString(); dv[0]["img_url"] = dt2.Rows[i]["img_url"].ToString(); dv[0]["PERSON_STATE"] = dt2.Rows[i]["PERSON_STATE"].ToString(); dv[0]["MAC_MODEL"] = dt2.Rows[i]["MAC_MODEL"].ToString(); } } } if (CheckinEmpty == "false") { for (int i = 0; i < dt.Rows.Count; i++) { if (dt.Rows[i]["PERSON_NAME"].ToString() == "") { dt.Rows[i].Delete(); } } dt.AcceptChanges(); } Session.Add("PAD_TIME", sTIME.Text); Session.Add("PAD_FLOOR", sFLOOR.Text); Session.Add("PAD_AREA", sAREA.Text); ROW_CNT.Text = dt.Rows.Count.ToString(); Store istore = grdBED_LIST.GetStore(); istore.DataSource = db.GetDataArray(dt); istore.DataBind(); TextQuery.Focus(false, 100); }
public override async Task <List <DomainId>?> SearchAsync(IAppEntity app, TextQuery query, SearchScope scope, CancellationToken ct = default) { Guard.NotNull(app); Guard.NotNull(query); var(search, take) = query; if (string.IsNullOrWhiteSpace(search)) { return(null); } var luceneQuery = QueryParser.Parse(search); var serveField = scope == SearchScope.All ? "fa" : "fp"; var compound = new BsonDocument { ["must"] = new BsonArray { QueryVisitor.Visit(luceneQuery) }, ["filter"] = new BsonArray { new BsonDocument { ["text"] = new BsonDocument { ["path"] = "_ai", ["query"] = app.Id.ToString() } }, new BsonDocument { ["equals"] = new BsonDocument { ["path"] = serveField, ["value"] = true } } } }; if (query.PreferredSchemaId != null) { compound["should"] = new BsonArray { new BsonDocument { ["text"] = new BsonDocument { ["path"] = "_si", ["query"] = query.PreferredSchemaId.Value.ToString() } } }; } else if (query.RequiredSchemaIds?.Count > 0) { compound["should"] = new BsonArray(query.RequiredSchemaIds.Select(x => new BsonDocument { ["text"] = new BsonDocument { ["path"] = "_si", ["query"] = x.ToString() } })); compound["minimumShouldMatch"] = 1; } var searchQuery = new BsonDocument { ["compound"] = compound, }; if (index != null) { searchQuery["index"] = index; } var results = await Collection.Aggregate().Search(searchQuery).Limit(take) .Project <MongoTextResult>( Projection.Include(x => x.ContentId) ) .ToListAsync(ct); return(results.Select(x => x.ContentId).ToList()); }
public async Task <List <DomainId> > SearchAsync(IAppEntity app, TextQuery query, SearchScope scope, CancellationToken ct = default) { Guard.NotNull(app); Guard.NotNull(query); var parsed = queryParser.Parse(query.Text); if (parsed == null) { return(null); } var serveField = GetServeField(scope); var elasticQuery = new { query = new { @bool = new { filter = new List <object> { new { term = new Dictionary <string, object> { ["appId.keyword"] = app.Id.ToString() } }, new { term = new Dictionary <string, string> { [serveField] = "true" } } }, must = new { query_string = new { query = parsed.Text } }, should = new List <object>() } }, _source = new[] { "contentId" }, size = query.Take }; if (query.RequiredSchemaIds?.Count > 0) { var bySchema = new { terms = new Dictionary <string, object> { ["schemaId.keyword"] = query.RequiredSchemaIds.Select(x => x.ToString()).ToArray() } }; [email protected](bySchema); } else if (query.PreferredSchemaId.HasValue) { var bySchema = new { terms = new Dictionary <string, object> { ["schemaId.keyword"] = query.PreferredSchemaId.ToString() } }; [email protected](bySchema); } var json = JsonConvert.SerializeObject(elasticQuery, Formatting.Indented); return(await SearchAsync(elasticQuery, ct)); }