using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DeiNiu.wms.Data.Model;
using System.Data;
using System.Transactions;
namespace DeiNiu.wms.Logical
{
   public class lNode
    {
        Node _obj;
        public lNode()
        {
           
            initialize();
        }
        public Node getNode
        {
            get
            {
                return _obj;
            }
        }
		
		/// 
		/// get all data
		/// 
        public DataSet getAllData()
        {
           return _obj.Query();
        }
        /// 
        /// get all data
        /// 
        public DataSet getAllActiveData()
        {
            return _obj.QueryActived();
        }
		/// 
		/// get a record by id
		/// 
        public void initialize(int id)
		{
            _obj = id != 0 ? new Node(id) : new Node();
		}
        /// 
		/// get a record by id 0
		/// 
        public void initialize()
        {
            initialize(0);
        }
        /// 
        /// get a record by id
        /// 
        public void initialize(DataRow dr)
        {
            _obj =   new Node(dr);
        }
       
        //begin cust db operation, query, excute sql etc.
        public DataSet Query(string goodsName, int rownumStart, int rownumEnd)
        {
            if (rownumEnd > rownumStart && rownumStart > 0)
            {
                _obj.rownumStart = rownumStart;
                _obj.rownumEnd = rownumEnd;
            }
            DataSet ds = string.IsNullOrEmpty(goodsName) ? _obj.Query()  : _obj.QueryByName(goodsName) ;
            return ds;
        //    return string.IsNullOrEmpty(goodsName) ? _obj.Query().Tables[0] : _obj.QueryByName(goodsName).Tables[0];
        }
        public int getCntByName(string name)
        {
            return _obj.getCntByName(name);
        }
       
        private bool valid()
        { 
            return true;
        }
        /// 
        /// query dic that has flag
        /// used for building combox
        /// 
        /// 
        public DataTable QueryByFlags()
        {
            return _obj.QueryByFlags();
        }
    }
}