Esempio n. 1
0
        /// <summary>
        /// 判断当前节点是否已存在相同的
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public int  ExistNum(InquiryProductEntity entity)
        {
            ///id=0,判断总数,ID>0判断除自己之外的总数
            string sql = @"Select count(1) from dbo.[InquiryProduct] WITH(NOLOCK) ";

            string where = "where ";
            if (entity.Id == 0)
            {
                where = where + "  (ProductName=@ProductName) ";
                where = where + "  (ProductUnitName=@ProductUnitName) ";
            }
            else
            {
                where = where + " id<>@Id and  (ProductName=@ProductName) ";
                where = where + " id<>@Id and  (ProductUnitName=@ProductUnitName) ";
            }
            sql = sql + where;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            if (entity.Id > 0)
            {
                db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id);
            }

            db.AddInParameter(cmd, "@ProductName", DbType.String, entity.ProductName);

            db.AddInParameter(cmd, "@ProductUnitName", DbType.String, entity.ProductUnitName);
            object identity = db.ExecuteScalar(cmd);

            if (identity == null || identity == DBNull.Value)
            {
                return(0);
            }
            return(Convert.ToInt32(identity));
        }
Esempio n. 2
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <InquiryProductEntity> GetInquiryProductAll(string ordercode)
        {
            string where = "where InquiryOrderCode=@InquiryOrderCode ";

            string sql = @"SELECT    [Id],[InquiryOrderCode],[ProductCode],[ClassesId],ClassesName,ProductId,[ProductName],[ProductNum],[ProductUnitName],[Remark] from dbo.[InquiryProduct] WITH(NOLOCK)	"+ where;
            IList <InquiryProductEntity> entityList = new List <InquiryProductEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@InquiryOrderCode", DbType.String, ordercode);
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    InquiryProductEntity entity = new InquiryProductEntity();
                    entity.Id = StringUtils.GetDbInt(reader["Id"]);
                    entity.InquiryOrderCode = StringUtils.GetDbString(reader["InquiryOrderCode"]);
                    entity.ProductCode      = StringUtils.GetDbString(reader["ProductCode"]);
                    entity.ClassesId        = StringUtils.GetDbInt(reader["ClassesId"]);
                    entity.ClassesName      = StringUtils.GetDbString(reader["ClassesName"]);
                    entity.ProductId        = StringUtils.GetDbInt(reader["ProductId"]);
                    entity.ProductName      = StringUtils.GetDbString(reader["ProductName"]);
                    entity.ProductNum       = StringUtils.GetDbInt(reader["ProductNum"]);
                    entity.ProductUnitName  = StringUtils.GetDbString(reader["ProductUnitName"]);
                    entity.Remark           = StringUtils.GetDbString(reader["Remark"]);
                    entityList.Add(entity);
                }
            }
            return(entityList);
        }
Esempio n. 3
0
        /// <summary>
        /// 根据主键值读取记录。如果数据库不存在这条数据将返回null
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public InquiryProductEntity GetInquiryProduct(int id)
        {
            string    sql = @"SELECT  [Id],[InquiryOrderCode],[ProductCode],[ClassesId],[ClassesName],[ProductId],[ProductName],[ProductNum],[ProductUnitName],[Remark]
							FROM
							dbo.[InquiryProduct] WITH(NOLOCK)	
							WHERE [Id]=@id"                            ;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@Id", DbType.Int32, id);
            InquiryProductEntity entity = new InquiryProductEntity();

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    entity.Id = StringUtils.GetDbInt(reader["Id"]);
                    entity.InquiryOrderCode = StringUtils.GetDbString(reader["InquiryOrderCode"]);
                    entity.ProductCode      = StringUtils.GetDbString(reader["ProductCode"]);
                    entity.ClassesId        = StringUtils.GetDbInt(reader["ClassesId"]);
                    entity.ClassesName      = StringUtils.GetDbString(reader["ClassesName"]);
                    entity.ProductId        = StringUtils.GetDbInt(reader["ProductId"]);
                    entity.ProductName      = StringUtils.GetDbString(reader["ProductName"]);
                    entity.ProductNum       = StringUtils.GetDbInt(reader["ProductNum"]);
                    entity.ProductUnitName  = StringUtils.GetDbString(reader["ProductUnitName"]);
                    entity.Remark           = StringUtils.GetDbString(reader["Remark"]);
                }
            }
            return(entity);
        }
Esempio n. 4
0
        /// <summary>
        /// 插入一条记录到表InquiryProduct,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="inquiryProduct">待插入的实体对象</param>
        public int AddInquiryProduct(InquiryProductEntity entity)
        {
            string    sql = @"IF NOT EXISTS ( SELECT  1
                                            FROM    InquiryProduct
                                            WHERE   InquiryOrderCode = @InquiryOrderCode
                                                    AND ProductId = @ProductId ) 
                                BEGIN  
                                    INSERT  INTO InquiryProduct
                                            ( [InquiryOrderCode] ,
                                              ProductId ,
                                              [ProductName] ,
                                              [ProductNum] ,
                                               CreateManId,
                                              CreateTime               
                                            )
                                    VALUES  ( @InquiryOrderCode ,
                                              @ProductId ,
                                              @ProductName ,
                                             @ProductNum,
                                                @CreateManId,
                                                getdate()
                                            ) ;
                                    SELECT  SCOPE_IDENTITY() ;
                                  INSERT INTO [JcOrderInquiry].[dbo].[InquiryProductSub]
                                   ([InquiryOrderCode]
                                   ,[InquiryProductId]
                                   ,[InquiryProductType]
                                   ,[CreateManId]
                                   ,[CreateTime])
                                    SELECT  @InquiryOrderCode ,
                                              @ProductId ,
                                             IsNull(ProductTypeId,1) ,
                                             @CreateManId, 
                                             getdate()
                                           FROM InquiryOrder WHERE Code=@InquiryOrderCode
                                END
                            ELSE 
                                BEGIN
                                    SELECT  id
                                    FROM    InquiryProduct
                                    WHERE   InquiryOrderCode = @InquiryOrderCode
                                            AND ProductId = @ProductId
                                END";
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@InquiryOrderCode", DbType.String, entity.InquiryOrderCode);
            db.AddInParameter(cmd, "@ProductId", DbType.String, entity.ProductId);
            db.AddInParameter(cmd, "@ProductName", DbType.String, entity.ProductName);
            db.AddInParameter(cmd, "@ProductNum", DbType.Int32, entity.ProductNum);
            db.AddInParameter(cmd, "@CreateManId", DbType.Int32, entity.CreateManId);
            object identity = db.ExecuteScalar(cmd);

            if (identity == null || identity == DBNull.Value)
            {
                return(0);
            }
            return(Convert.ToInt32(identity));
        }
Esempio n. 5
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <InquiryProductEntity> GetInquiryProductList(int pagesize, int pageindex, ref int recordCount)
        {
            string sql = @"SELECT   [Id],[InquiryOrderCode],[ProductCode],[ClassesId],ProductId,[ProductName],[ProductNum],[ProductUnitName],[Remark]
						FROM
						(SELECT ROW_NUMBER() OVER (ORDER BY Id ASC) AS ROWNUMBER,
						 [Id],[InquiryOrderCode],[ProductCode],[ClassesId],ProductId,[ProductName],[ProductNum],[ProductUnitName],[Remark] from dbo.[InquiryProduct] WITH(NOLOCK)	
						WHERE  1=1 ) as temp 
						where rownumber BETWEEN ((@PageIndex - 1) * @PageSize + 1) AND @PageIndex * @PageSize"                        ;

            string sql2 = @"Select count(1) from dbo.[InquiryProduct] with (nolock) ";
            IList <InquiryProductEntity> entityList = new List <InquiryProductEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@PageIndex", DbType.Int32, pageindex);
            db.AddInParameter(cmd, "@PageSize", DbType.Int32, pagesize);

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    InquiryProductEntity entity = new InquiryProductEntity();
                    entity.Id = StringUtils.GetDbInt(reader["Id"]);
                    entity.InquiryOrderCode = StringUtils.GetDbString(reader["InquiryOrderCode"]);
                    entity.ProductCode      = StringUtils.GetDbString(reader["ProductCode"]);
                    entity.ClassesId        = StringUtils.GetDbInt(reader["ClassesId"]);
                    entity.ProductId        = StringUtils.GetDbInt(reader["ProductId"]);
                    entity.ProductName      = StringUtils.GetDbString(reader["ProductName"]);
                    entity.ProductNum       = StringUtils.GetDbInt(reader["ProductNum"]);
                    entity.ProductUnitName  = StringUtils.GetDbString(reader["ProductUnitName"]);
                    entity.Remark           = StringUtils.GetDbString(reader["Remark"]);
                    entityList.Add(entity);
                }
            }
            cmd = db.GetSqlStringCommand(sql2);
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    recordCount = StringUtils.GetDbInt(reader[0]);
                }
                else
                {
                    recordCount = 0;
                }
            }
            return(entityList);
        }
Esempio n. 6
0
        /// <summary>
        /// 根据主键值更新记录的全部字段(注意:该方法不会对自增字段、timestamp类型字段以及主键字段更新!如果要更新主键字段,请使用Update方法)。
        /// 如果数据库有数据被更新了则返回True,否则返回False
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="inquiryProduct">待更新的实体对象</param>
        public int UpdateInquiryProduct(InquiryProductEntity entity)
        {
            string    sql = @" UPDATE dbo.[InquiryProduct] SET
                       [InquiryOrderCode]=@InquiryOrderCode,[ProductCode]=@ProductCode,[ClassesId]=@ClassesId,[ClassesName]=@ClassesName,[ProductId]=@ProductId,[ProductName]=@ProductName,[ProductNum]=@ProductNum,[ProductUnitName]=@ProductUnitName,[Remark]=@Remark
                       WHERE [Id]=@id";
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id);
            db.AddInParameter(cmd, "@InquiryOrderCode", DbType.String, entity.InquiryOrderCode);
            db.AddInParameter(cmd, "@ProductCode", DbType.String, entity.ProductCode);
            db.AddInParameter(cmd, "@ClassesId", DbType.Int32, entity.ClassesId);
            db.AddInParameter(cmd, "@ClassesName", DbType.String, entity.ClassesName);
            db.AddInParameter(cmd, "@ProductId", DbType.String, entity.ProductId);
            db.AddInParameter(cmd, "@ProductName", DbType.String, entity.ProductName);
            db.AddInParameter(cmd, "@ProductNum", DbType.Int32, entity.ProductNum);
            db.AddInParameter(cmd, "@ProductUnitName", DbType.String, entity.ProductUnitName);
            db.AddInParameter(cmd, "@Remark", DbType.String, entity.Remark);
            return(db.ExecuteNonQuery(cmd));
        }
Esempio n. 7
0
 /// <summary>
 /// 更新一条InquiryProduct记录。
 /// 该方法提供给界面等UI层调用
 /// </summary>
 /// <param name="inquiryProduct">待更新的实体对象</param>
 /// <param name="columns">要更新的列名,不提供任何列名时默认将更新主键之外的所有列</param>
 public int UpdateInquiryProduct(InquiryProductEntity inquiryProduct)
 {
     return(InquiryProductDA.Instance.UpdateInquiryProduct(inquiryProduct));
 }
Esempio n. 8
0
 /// <summary>
 /// 插入一条记录到表InquiryProduct,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0。
 /// 该方法提供给界面等UI层调用
 /// </summary>
 /// <param name="inquiryProduct">要添加的InquiryProduct数据实体对象</param>
 public int AddInquiryProduct(InquiryProductEntity inquiryProduct)
 {
     return(InquiryProductDA.Instance.AddInquiryProduct(inquiryProduct));
 }
Esempio n. 9
0
 /// <summary>
 /// 判断对象是否存在
 /// </summary>
 /// <param name="dicEnum"></param>
 /// <returns></returns>
 public bool IsExist(InquiryProductEntity inquiryProduct)
 {
     return(InquiryProductDA.Instance.ExistNum(inquiryProduct) > 0);
 }