コード例 #1
0
ファイル: WaterUserList.aspx.cs プロジェクト: wwkkww1983/yh
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        private WaterUserLevel GetSelectedWaterUserLevel()
        {
            string selValue = this.ddlNewWaterUserLevel.SelectedValue;
            int    waterUserLevelOrdinal = Convert.ToInt32(selValue);

            return(WaterUserLevel.GetWaterUserLevel((WaterUserLevelEnum)waterUserLevelOrdinal));
        }
コード例 #2
0
ファイル: login.aspx.cs プロジェクト: wwkkww1983/yh
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
        {
            string userName = this.Login1.UserName;
            string pwd      = this.Login1.Password;

            // admin login
            //
            if (userName == "admin")
            {
                if (pwd == "admin")
                {
                    WaterUserLevel level = WaterUserLevelFactory.CreateWaterLevel(WaterUserLevelEnum.Ju);
                    //SessionManager.WaterUserSession.WaterUser = WaterUserFactory.CreateWaterUser(level);
                    SessionManager.LoginSession.WaterUser = WaterUserFactory.CreateWaterUser(level);
                    e.Authenticated = true;
                }
                return;
            }

            int  userID, waterUserID;
            bool b = UserDBI.CanLogin(userName, pwd, out userID, out waterUserID);

            if (b)
            {
                LoginSession ls = SessionManager.LoginSession;
                ls.LoginUserName = userName;
                ls.LoginUserID   = userID;
                ls.WaterUser     = WaterUserFactory.CreateWaterUserByID(waterUserID);
                ls.User          = UserClass.CreateUser(userID);
            }

            e.Authenticated = b;
            Trace.Warn("authenticate : " + b.ToString());
        }
コード例 #3
0
ファイル: WaterUserList.aspx.cs プロジェクト: wwkkww1983/yh
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void lbAdd_Click(object sender, EventArgs e)
        {
            WaterUserSession ws = SessionManager.WaterUserSession;

            WaterUserLevel newWaterUserLevel = GetSelectedWaterUserLevel();

            YongShuiGuanLiDBI.WaterUserClass newWaterUser = WaterUserFactory.CreateWaterUser(newWaterUserLevel);
            ws.WaterUser = newWaterUser;

            Response.Redirect("WaterUser.aspx");
        }
コード例 #4
0
ファイル: WaterUser.aspx.cs プロジェクト: wwkkww1983/yh
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnOK_Click(object sender, EventArgs e)
        {
            //if (this.IsValid)
            if (Check())
            {
                WS.WaterUser.Name   = this.txtWaterUserName.Text;
                WS.WaterUser.Remark = this.txtRemark.Text;

                //WS.WaterUser.WaterUserLevelEnum

                //int typeid = Convert.ToInt32(this.ddlWaterUserType.SelectedValue);
                //WS.WaterUser.WaterUserTypeID = typeid;
                //WS.WaterUser.WaterUserLevel =

                // todo: 2011-04-09
                // no hava parent, ex: guan li ju wateruser
                //
                WaterUserLevel thisLevel = WS.WaterUser.WaterUserLevel;
                if (!thisLevel.IsTopManager())
                {
                    int parentid = Convert.ToInt32(this.ddlParentWaterUser.SelectedValue);
                    //WS.WaterUser.ParentWaterUserID = parentid;
                    WS.WaterUser.ParentWaterUser = WaterUserFactory.CreateWaterUserByID(parentid);

                    // parent water user level ordinal must > this water user level ordinal
                    //
                    WaterUserLevel parentLevel = WS.WaterUser.ParentWaterUser.WaterUserLevel;
                    if (!WaterUserLevel.Greater(parentLevel, thisLevel))
                    {
                        string errmsg = string.Format("level error : {0} < {1}",
                                                      parentLevel.LevelOrdinal, thisLevel.LevelOrdinal
                                                      );
                        //throw new InvalidOperationException(errmsg);
                        this.cvWaterUserLevel.IsValid = false;
                        return;
                    }
                }

                //WS.Save();
                WS.WaterUser.Save();
                Response.Redirect("WaterUserList.aspx");
            }
        }
コード例 #5
0
ファイル: WaterUser.aspx.cs プロジェクト: wwkkww1983/yh
        /// <summary>
        ///
        /// </summary>
        private bool Check()
        {
            WaterUserLevel level           = WS.WaterUser.WaterUserLevel;
            WaterUserClass parentWaterUser = WS.WaterUser.ParentWaterUser;

            // 1. 管理局无上级单位, 其他有上级单位
            //
            // 2. 只能有一个顶级单位(管理局)
            //
            if (level.IsTopManager())
            {
                if (WS.WaterUser.IsAdd())
                {
                    if (WaterUserDBI.HasWaterUser(WaterUserLevelEnum.Ju))
                    {
                        cvWaterUserLevel.ErrorMessage = "exist ju water user";
                        cvWaterUserLevel.IsValid      = false;
                        return(false);
                    }
                }

                if (parentWaterUser == null || parentWaterUser.IsNoneWaterUser())
                {
                }
                else
                {
                    this.cvWaterUserLevel.ErrorMessage = "cannot has parent wateruser";
                    this.cvWaterUserLevel.IsValid      = false;
                    return(false);
                }
            }
            else
            {
                if (parentWaterUser == null || parentWaterUser.IsNoneWaterUser())
                {
                    this.cvWaterUserLevel.ErrorMessage = "need parent";
                    this.cvWaterUserLevel.IsValid      = false;
                    return(false);
                }
            }

            return(true);
        }