public override IList GetDataSource() { ICriteria crit = DBConnection.Session.CreateCriteria(PersistentType); if (tipos == null || tipos.Count == 0) { crit.Add(new EqExpression("Supertipo", tipo)); } else if (tipos.Count == 1) { crit.Add(new EqExpression("Supertipo", tipos[0])); } else { /*EqExpression eqTipo1 = new EqExpression("Supertipo", tipo); * EqExpression eqTipoNC = new EqExpression("Supertipo", TiposComprobantesList.NotaCredito); * OrExpression orExp = new OrExpression(eqTipo1, eqTipoNC); * crit.Add(orExp);*/ if (tipos.Count > 1) { OrExpression orExp = null; ICriterion eqTipo1; EqExpression eqTipo2; int i = 0; for (int j = 0; j < tipos.Count - 1; j++) { if (orExp == null) { eqTipo1 = new EqExpression("Supertipo", tipos[j]); } else { eqTipo1 = orExp; } eqTipo2 = new EqExpression("Supertipo", tipos[j + 1]); orExp = new OrExpression(eqTipo1, eqTipo2); } crit.Add(orExp); /*EqExpression eqTipo1 = new EqExpression("Supertipo", tipo); * EqExpression eqTipoNC = new EqExpression("Supertipo", TiposComprobantesList.NotaCredito); * OrExpression orExp = new OrExpression(eqTipo1, eqTipoNC); * crit.Add(orExp);*/ } } if (!String.IsNullOrEmpty(estado)) { crit.Add(new EqExpression("Estado", estado)); } if (emisionHoy) { DateTime fechaDesde = DateTime.Now.Date; DateTime fechaHasta = DateTime.Now.Date.AddDays(1); crit.Add(Expression.Between("Emision", fechaDesde, fechaHasta)); } emisionHoy = false; return(crit.List()); }
protected void QueryPanel1_CreateValueElement(object sender, Korzh.EasyQuery.WebControls.CreateValueElementEventArgs e) { // this method demonstrates an ability to change value elelements at run-time // for example in this case we change element from ListRowElement to EditRowElement if list of available values is too long if (e.ConditionRow.Condition is SimpleCondition) { EqExpression baseExpr = ((SimpleCondition)e.ConditionRow.Condition).BaseExpr; EntityAttr attr = ((EntityAttrExpr)baseExpr).Attribute; if (attr.DefaultEditor is SqlListValueEditor) { string sql = ((SqlListValueEditor)attr.DefaultEditor).SQL; if (ResultSetIsTooBig(sql)) //or put your condition here { e.Element = new EditXElement(); } } } }
/// <summary>Adds an equality expression for the Password.</summary> /// <param name="password">The password.</param> private void AddCriterionPassword(string password) { EqExpression expression = new EqExpression("Password", password); Icriteria.Add(expression); }
/// <summary>Adds an equality expression for the Username.</summary> /// <param name="username">The username.</param> private void AddCriterionUsername(string username) { EqExpression expression = new EqExpression("Username", username); Icriteria.Add(expression); }
/// <summary> /// Adds a criterion to the NHibernate <see cref="ICriteria"/> that filters by name. /// </summary> /// <param name="name">The name to use as a filter.</param> private void AddCriterionName(string name) { EqExpression expression = new EqExpression("Name", name); _iCriteria.Add(expression); }
public static Salebills[] getBillsByCondition(int year, int month, string cable, string customername) { try { Cable[] cb; Salebills[] bills; Customer cus; if (!string.IsNullOrEmpty(cable)) //根据电路代码模糊查询 { cb = CableDao.FindAll(new EqExpression("Isdeleted", (int)EnmIsdeleted.使用中), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.未完工)), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.已拆机)), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.取消)), new LikeExpression("Cablenumber", "%" + cable + "%")); } else //查找全部电路代码 { cb = CableDao.FindAll(new EqExpression("Isdeleted", (int)EnmIsdeleted.使用中), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.未完工)), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.已拆机)), new NotExpression(new EqExpression("Cablestatus", (int)EnmCableStatus.取消))); } if (cb != null || cb.Length > 0) { object[] cableids = new object[cb.Length]; for (int i = 0; i < cb.Length; i++) { cableids[i] = cb[i].Id; } InExpression inexpress = new InExpression("Cableid", cableids); //将所有电路代码作为查询条件 if (!string.IsNullOrEmpty(customername)) { cus = CustomerBusiness.findCustomerByName(customername); if (cus != null) { EqExpression cuseqex = new EqExpression("Customerid", cus.Id); //只查正常结算和预结算的账单信息 bills = SalebillsDao.FindAll(new EqExpression("Isdeleted", (int)EnmIsdeleted.使用中), new OrExpression(new EqExpression("Flag", (int)EnmWriteOffFlag.正常结算), new EqExpression("Flag", (int)EnmWriteOffFlag.预结算)), new EqExpression("Year", year), new EqExpression("Month", month), inexpress, cuseqex); } else { //只查正常结算和预结算的账单信息 bills = SalebillsDao.FindAll(new EqExpression("Isdeleted", (int)EnmIsdeleted.使用中), new OrExpression(new EqExpression("Flag", (int)EnmWriteOffFlag.正常结算), new EqExpression("Flag", (int)EnmWriteOffFlag.预结算)), new EqExpression("Year", year), new EqExpression("Month", month), inexpress); } } else { //只查正常结算和预结算的Excel账单信息 bills = SalebillsDao.FindAll(new EqExpression("Isdeleted", (int)EnmIsdeleted.使用中), new OrExpression(new EqExpression("Flag", (int)EnmWriteOffFlag.正常结算), new EqExpression("Flag", (int)EnmWriteOffFlag.预结算)), new EqExpression("Year", year), new EqExpression("Month", month), inexpress); } return(bills); } return(null); } catch (Exception ex) { Log.Error(ex.Message); MessageHelper.ShowMessage("E999", ex.Message); return(null); } }