コード例 #1
0
        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());
        }
コード例 #2
0
    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();
                }
            }
        }
    }
コード例 #3
0
        /// <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);
        }
コード例 #4
0
        /// <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);
        }
コード例 #5
0
        /// <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);
        }
コード例 #6
0
        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);
            }
        }