예제 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        private static WaterUserClass CreateWaterUser(DataRow row)
        {
            int    waterUserID      = Convert.ToInt32(row["WaterUserID"]);
            int    waterUserLevelID = Convert.ToInt32(row["WaterUserLevelID"]);
            int    wuTypeID         = Convert.ToInt32(row["WaterUserTypeID"]);
            string name             = row["WaterUserName"].ToString();
            string remark           = row["remark"].ToString();
            float  unitPrice        = GetUnitPriceFromDataRow(row);


            // TODO: 2011-04-08
            // parent wateruser, wulevel, indevice ...
            // init at get property
            //
            // 2. dead loop
            //
            //WaterUserClass parentWaterUser = null;
            //object parentObject = row["ParentWaterUserID"];
            //if (parentObject != DBNull.Value)
            //{
            //    int parentID = Convert.ToInt32(row["ParentWaterUserID"]);
            //    if (parentID != waterUserID)
            //    {
            //        parentWaterUser = CreateWaterUserByID(parentID);
            //    }
            //}
            //wu.ParentWaterUser = CreateWaterUserByID(parentID);
            //wu.ParentWaterUser = parentWaterUser;

            WaterUserLevel wuLevel = WaterUserLevelFactory.CreateWaterUserLevelByID(waterUserLevelID);
            //WaterUserType
            WaterUserType wuType = WaterUserTypeFactory.CreateWaterUserTypeByID(wuTypeID);

            WaterUserClass wu = new WaterUserClass();

            wu.Name           = name;
            wu.WaterUserID    = waterUserID;
            wu.WaterUserLevel = wuLevel;
            wu.WaterUserType  = wuType;
            wu.Remark         = remark;
            wu.UnitPrice      = unitPrice;


            wu.ChannelCollection = ChannelFactory.CreateChannelCollection(waterUserID);

            //wu.InStationCollection
            //wu.InDeviceCollection = CreateInDevice
            //wu.OutStationCollection

            //wu.InDeviceCollection = DeviceFactory.CreateInDeviceCollection(waterUserID);
            //wu.OutDeviceCollection = DeviceFactory.CreateOutDeviceCollection(waterUserID);

            return(wu);
        }
예제 #2
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        internal static WaterUserTypeCollection CreateWaterUserTypeCollection()
        {
            WaterUserTypeCollection wutc = new WaterUserTypeCollection();
            DataTable tbl = WaterUserTypeDBI.GetWaterUserTypeDataTable();

            foreach (DataRow row in tbl.Rows)
            {
                WaterUserType t = CreateWaterUserType(row);
                wutc.Add(t);
            }
            return(wutc);
        }
예제 #3
0
        /// <summary>
        ///
        /// </summary>
        internal static WaterUserType CreateManagerWaterUserType()
        {
            WaterUserType t   = null;
            DataTable     tbl = WaterUserTypeDBI.GetManagerWaterUserDataTable();

            if (tbl.Rows.Count > 0)
            {
                DataRow row = tbl.Rows[0];
                t = CreateWaterUserType(row);
            }
            return(t);
        }
예제 #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        private static WaterUserType CreateWaterUserType(DataRow row)
        {
            WaterUserType wut    = new WaterUserType();
            int           id     = Convert.ToInt32(row["waterUserTypeID"]);
            string        n      = row["WaterUserTypeName"].ToString();
            string        remark = row["WaterUserTypeRemark"].ToString();

            //int isManager = Convert.ToInt32(row["IsManager"]);

            wut.WaterUserTypeID     = id;
            wut.WaterUserTypeName   = n;
            wut.WaterUserTypeRemark = remark;
            //wut.IsManager = isManager;
            return(wut);
        }
예제 #5
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        static public WaterUserType CreateDefaultWaterUserType()
        {
            DataTable tbl = WaterUserTypeDBI.GetDefaultWaterUserTypeDataTable();

            if (tbl.Rows.Count > 0)
            {
                WaterUserType t = CreateWaterUserType(tbl.Rows[0]);
                return(t);
            }
            else
            {
                string exmsg = "cannot find default water user type";
                throw new InvalidOperationException(exmsg);
            }
        }
예제 #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        static public WaterUserType CreateWaterUserTypeByID(int id)
        {
            WaterUserType wut = null;
            DataTable     tbl = WaterUserTypeDBI.GetWaterUserTypeDataTable(id);

            if (tbl.Rows.Count > 0)
            {
                DataRow row = tbl.Rows[0];
                wut = CreateWaterUserType(row);
            }
            else
            {
                string err = string.Format("not find water user type by id '{0}'", id);
                log.Error(err);
            }
            return(wut);
        }
예제 #7
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        private static WaterUserType CreateWaterUserType(DataRow row)
        {
            WaterUserType wut = new WaterUserType();
            int id = Convert.ToInt32(row["waterUserTypeID"]);
            string n = row["WaterUserTypeName"].ToString();
            string remark = row["WaterUserTypeRemark"].ToString();
            //int isManager = Convert.ToInt32(row["IsManager"]);

            wut.WaterUserTypeID = id;
            wut.WaterUserTypeName = n;
            wut.WaterUserTypeRemark = remark;
            //wut.IsManager = isManager;
            return wut;
        }