/// <summary> /// 通过OrderId和Coordinate搜索 /// </summary> private bool _searchByOrderIdAndCoordinate(string s, StockSearcher ss) { bool isHas = false; try { using (OleDbCommand cmd = new OleDbCommand("SELECT * FROM stock_new WHERE [coordinate]=@v1", m_connection)) { cmd.Parameters.AddWithValue("v1", s); using (OleDbDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { NnStock ns = new NnStock(); ns.InitStockNewByDb(reader); ns.OriginalString = s; ss.Add(ns); return(true); } } cmd.CommandText = "SELECT * FROM stock_new WHERE [orderId]=@v1"; using (OleDbDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { NnStock ns = new NnStock(); ns.InitStockNewByDb(reader); ns.OriginalString = s; isHas = true; ss.Add(ns); } } cmd.CommandText = "SELECT * FROM stock_old WHERE [orderId]=@v1"; using (OleDbDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { NnStock ns = new NnStock(); ns.InitStockOldByDb(reader); ns.OriginalString = s; ss.Add(ns); } } } } catch (Exception e) { Console.WriteLine(e.ToString()); } return(isHas); }
/// <summary> /// 在库存中搜索 /// </summary> private void _searchStock(List <SearchItem> list, NnExcel ne) { StockSearcher stSearcher = new StockSearcher(); foreach (var v in list) { _getSearchValues(v.Value, stSearcher); } object[][] vs = stSearcher.GetValues(); ne.AddValueWithName(vs, 1, 11, "库存"); ne.AutoFit(new int[] { 2, 3, 4 }); ne.SetColor(NPoint.GetPoint(1, 1), NPoint.GetPoint(1, 9), NnExcel.ColorType.Blue); ne.SetColor(NPoint.GetPoint(stSearcher.CountNormal + 2, 1), NPoint.GetPoint(stSearcher.CountNormal + 3, 11), NnExcel.ColorType.Blue); }
private void _getSearchValues(string s, StockSearcher ss) { bool isHas; if (!s.Contains('-'))// 如果是workNo { isHas = _searchByWorkNo(s, ss); } else// 否则 { isHas = _searchByOrderIdAndCoordinate(s, ss); } if (!isHas) { NnStock ns = new NnStock() { StockSearchState = SearchState.None, OriginalString = s }; ss.Add(ns); } }