コード例 #1
0
ファイル: LocalSQL.cs プロジェクト: NingMoe/UniICWeb
    static public LOCALUSER GetUser(string szOpenID)
    {
        LOCALUSER ret = new LOCALUSER();
        if (string.IsNullOrEmpty(szOpenID))
        {
            return ret;
        }

        try
        {
            lock (m_lockobj)
            {
                SQLiteConnection conn = GetConn();
                SQLiteCommand cmd = conn.CreateCommand();

                cmd.CommandText = "select * from User where szOpenID='" + szOpenID + "';";

                SQLiteDataReader sdr = cmd.ExecuteReader();
                if (sdr.HasRows)
                {
                    DataTable datatbl = new DataTable();
                    datatbl.Load(sdr);
                    sdr.Close();
                    ret.szOpenID = GetSZ(datatbl.Rows[0], "szOpenID");
                    ret.szLogonName = GetSZ(datatbl.Rows[0], "szLogonName");
                    ret.szPassword = GetSZ(datatbl.Rows[0], "szPassword");
                }
            }
        }
        catch (Exception e)
        {
            Logger.Trace(e.Message);
        }
        return ret;
    }
コード例 #2
0
ファイル: Index.aspx.cs プロジェクト: NingMoe/UniICWeb
    protected void Page_Load(object sender, EventArgs e)
    {
        szClassKind = ConfigurationManager.AppSettings["MobileSysKind"];
        Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
        Response.Expires         = 0;
        Response.CacheControl    = "no-cache";

        curUser = GetUser();
        if (curUser == null)
        {
            Response.Redirect("Error.aspx?type=1");
        }
        else if (string.IsNullOrEmpty(curUser.szLogonName))
        {
            Response.Redirect("Login.aspx");
        }
    }
コード例 #3
0
ファイル: LocalSQL.cs プロジェクト: NingMoe/UniICWeb
 static public bool SetUser(LOCALUSER data)
 {
     try
     {
         int r = 0;
         lock (m_lockobj)
         {
             SQLiteConnection conn = GetConn();
             SQLiteCommand cmd = conn.CreateCommand();
             cmd.CommandText = "replace into User values(@szOpenID, @szLogonName, @szPassword);";
             cmd.Parameters.Add(new SQLiteParameter("szOpenID", data.szOpenID));
             cmd.Parameters.Add(new SQLiteParameter("szLogonName", data.szLogonName));
             cmd.Parameters.Add(new SQLiteParameter("szPassword", data.szPassword));
             r = cmd.ExecuteNonQuery();
         }
         return r == 1;
     }
     catch (Exception e)
     {
         Logger.trace(e.Message);
     }
     return false;
 }
コード例 #4
0
    //-----------------

    public bool Logon(LOCALUSER user, out string szMsg)
    {
        szMsg = "";
        if (m_Request == null)
        {
            return(false);
        }
        ADMINLOGINREQ vrLogin = new ADMINLOGINREQ();
        ADMINLOGINRES vrLoginRes;

        vrLogin.szLogonName           = user.szLogonName;
        vrLogin.szPassword            = "******" + user.szPassword;
        vrLogin.dwLoginRole           = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_USER;
        vrLogin.szVersion             = ((uint)ADMINLOGINREQ.SZVERSION.INTVER_MAIN).ToString() + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_RELEASE).ToString("00") + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_INTERNAL).ToString();
        vrLogin.szIP                  = GetRealIP();
        vrLogin.dwStaSN               = 1;
        m_Request.m_UniDCom.StaSN     = 1;
        m_Request.m_UniDCom.SessionID = 0;
        vrLogin.dwLoginRole           = vrLogin.dwLoginRole + (uint)ADMINLOGINREQ.DWLOGINROLE.LOGINEXT_HP;
        if (m_Request.Admin.StaLogin(vrLogin, out vrLoginRes) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            HttpContext.Current.Session["LoginRes"]      = vrLoginRes;
            HttpContext.Current.Session["ADMINLOGINREQ"] = vrLogin;
            m_Request.m_UniDCom.SessionID = (uint)vrLoginRes.dwSessionID;
            m_Request.m_UniDCom.StaSN     = 1;

            Session["SessionID"] = vrLoginRes.dwSessionID;
            Session["StationSN"] = 1;

            if (!StaLogin())
            {
                szMsg = m_Request.szErrMessage;
                return(false);
            }

            ACCREQ       vrParameter = new ACCREQ();
            UNIACCOUNT[] vrResult;
            vrParameter.szLogonName = user.szLogonName;
            if (m_Request.Account.Get(vrParameter, out vrResult) == REQUESTCODE.EXECUTE_SUCCESS && vrResult.Length > 0)
            {
                UNIACCOUNT vrAccInfo = vrResult[0];
                HttpContext.Current.Session["LOGIN_ACCINFO"] = vrAccInfo;
                if (user.szLogonName != "guest")
                {
                    LoginUseInfo info = new LoginUseInfo();
                    info.szLogoName = user.szLogonName;
                    info.szPassword = user.szPassword;
                    HttpContext.Current.Session["LoginUseInfo"] = info;
                    user.szTrueName = vrAccInfo.szTrueName;
                    return(true);
                }
            }
            else
            {
                szMsg = m_Request.szErrMessage;
            }
        }
        else
        {
            szMsg = m_Request.szErrMessage;
        }

        return(false);
    }
コード例 #5
0
    public LOCALUSER GetUser()
    {
        string szPsswordGM = "uniFound808";
        string szOpenID    = GetOpenID();

        if (HttpContext.Current.Session["LoginRes"] != null)
        {
            ADMINLOGINRES accInfo = (ADMINLOGINRES)HttpContext.Current.Session["LoginRes"];
            if (accInfo.AccInfo.szLogonName != null)
            {
                szOpenID = accInfo.AccInfo.szLogonName;
            }
        }
        if (string.IsNullOrEmpty(szOpenID))
        {
            LOCALUSER userRes = new LOCALUSER();
            return(userRes);
        }

        LOCALUSER user = LocalSQL.GetUser(szOpenID);

        if (user == null)
        {
            user = new LOCALUSER();
        }
        else if ((!string.IsNullOrEmpty(user.szLogonName)))
        {
            if (HttpContext.Current.Session["LoginUseInfo"] == null)
            {
                string szMsg;
                if (!Logon(user, out szMsg))
                {
                    return(null);
                }
            }
            if (HttpContext.Current.Session["LoginRes"] != null)
            {
                ADMINLOGINRES accInfo = (ADMINLOGINRES)HttpContext.Current.Session["LoginRes"];
                user.szTrueName  = accInfo.AccInfo.szTrueName;
                user.szLogonName = accInfo.AccInfo.szLogonName;
            }
        }
        else if ((szOpenID != null && szOpenID != ""))
        {
            user.szOpenID    = szOpenID;
            user.szLogonName = szOpenID;
            user.szPassword  = szPsswordGM;
            if (HttpContext.Current.Session["LoginUseInfo"] == null)
            {
                string szMsg;
                if (!Logon(user, out szMsg))
                {
                    return(null);
                }
            }
            if (HttpContext.Current.Session["LoginUseInfo"] != null)
            {
                ADMINLOGINRES accInfo = (ADMINLOGINRES)HttpContext.Current.Session["LoginRes"];
                user.szTrueName  = accInfo.AccInfo.szTrueName;
                user.szLogonName = accInfo.AccInfo.szLogonName;
            }
        }
        user.szOpenID    = szOpenID;
        user.szLogonName = szOpenID;
        user.szPassword  = szPsswordGM;//uniFound808
        return(user);
    }
コード例 #6
0
    public void LoadDefault()
    {
        string szDevID = Request["devID"];

        devID.Value = szDevID;

        if (user == null)
        {
            user = new LOCALUSER();
        }

        string szDate = Request["resvDate"];

        if (szDate == null)
        {
            return;
        }
        uint uDateTemp = Parse(szDate);

        szDate = uDateTemp / 10000 + "-" + (uDateTemp % 10000) / 100 + "-" + uDateTemp % 100;
        DateTime da;

        try
        {
            da = DateTime.Parse(szDate);
        }
        catch {
            return;
        }

        szDate     = (da.Year * 10000 + (da.Month) * 100 + (int)da.Day).ToString();
        resvDateIn = da.ToString("yyyy-MM-dd");
        date.Value = szDate;
        user       = GetUser();

        uint uClassKind = Parse(ConfigurationManager.AppSettings["MobileSysKind"]);
        uint uDate      = Parse(da.ToString("yyyyMMdd"));
        uint uDevID     = Parse(Request["devID"]);

        UNIDEVICE getDev;

        m_Request.m_UniDCom.StaSN = 1;
        if (getDevByID(uDevID.ToString(), out getDev))
        {
            uClassKindTemp = (uint)getDev.dwClassKind;
        }

        DEVRESVSTATREQ vrGet = new DEVRESVSTATREQ();

        //   vrGet.dwGetType = (uint)DEVRESVSTATREQ.DWGETTYPE.DEVRESVSTAT_ALL;
        if (uClassKind != 0)
        {
            vrGet.dwClassKind = uClassKind;
        }
        if (uDevID != 0)
        {
            //  vrGet.dwGetType = (uint)DEVRESVSTATREQ.DWGETTYPE.DEVRESVSTAT_DEVID;
            vrGet.dwDevID = uDevID;
        }

        vrGet.szDates                  = uDate.ToString();
        vrGet.dwResvPurpose            = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;
        vrGet.szDates                  = (szDate);
        vrGet.dwProperty               = (uint)UNIDEVKIND.DWPROPERTY.DEVPROP_EXCLUSIVE;
        vrGet.szReqExtInfo.dwNeedLines = 10000;
        vrGet.szReqExtInfo.dwStartLine = 0;
        vrGet.szReqExtInfo.szOrderKey  = "szDevName";
        vrGet.szReqExtInfo.szOrderMode = "desc";
        DEVRESVSTAT[] vtRes;
        m_Request.m_UniDCom.StaSN = 1;

        if (m_Request.Device.GetDevResvStat(vrGet, out vtRes) == REQUESTCODE.EXECUTE_SUCCESS && vtRes != null && vtRes.Length > 0)
        {
            //if (uDevID != 0)
            {
                /*
                 * for (int i = (int)vtRes[0].szOpenInfo[0].dwBegin; i <= (int)vtRes[0].szOpenInfo[0].dwEnd; i = i + 10)
                 * {
                 *  szStartTime += GetInputItemHtml(CONSTHTML.option, "", i / 100 + ":" + (i % 100).ToString("00"), i.ToString());
                 * }
                 * */
                for (int m = 0; m < vtRes[0].szOpenInfo.Length; m++)
                {
                    for (int i = (int)vtRes[0].szOpenInfo[m].dwBegin; i <= (int)vtRes[0].szOpenInfo[m].dwEnd; i = i + 10)
                    {
                        if ((i % 100) > 60)
                        {
                            continue;
                            i = i + 100 - 60;
                        }
                        szStartTime += GetInputItemHtml(CONSTHTML.option, "", i / 100 + ":" + (i % 100).ToString("00"), i.ToString());
                    }
                }

                uint uBeginTime = (uint)vtRes[0].szOpenInfo[0].dwBegin;
                uint uEndTime   = (uint)vtRes[0].szOpenInfo[0].dwEnd;
                OpenTime       = "" + uBeginTime / 100 + ":" + (uBeginTime % 100).ToString("00") + "到" + uEndTime / 100 + ":" + (uEndTime % 100).ToString("00");
                personNumLimit = vtRes[0].dwMinUsers + "人到" + vtRes[0].dwMaxUsers + "人";

                if (vtRes[0].szResvInfo != null && vtRes[0].szResvInfo.Length > 0)
                {
                    DEVRESVTIME[] devResvTime = vtRes[0].szResvInfo;
                    for (int m = 0; m < devResvTime.Length; m++)
                    {
                        uint uBeginTime2 = (uint)devResvTime[m].dwBegin;
                        uint uEndTime2   = (uint)devResvTime[m].dwEnd;

                        szResvInfo += uBeginTime2 / 100 + ":" + (uBeginTime2 % 100).ToString("00") + "到" + uEndTime2 / 100 + ":" + (uEndTime2 % 100).ToString("00");
                        if (m < (devResvTime.Length - 1))
                        {
                            szResvInfo += ",";
                        }
                    }
                }
                szResvInfo += "";
                ResvList    = szResvInfo;
                DevName     = vtRes[0].szDevName;
                string szResv = "";
                szResvTime    = GetHourStr((uint)vtRes[0].szRuleInfo.dwMinResvTime) + "到" + GetHourStr((uint)vtRes[0].szRuleInfo.dwMaxResvTime);
                szPreResvTime = GetHourStr((uint)vtRes[0].szRuleInfo.dwLatestResvTime) + "到" + GetHourStr((uint)vtRes[0].szRuleInfo.dwEarliestResvTime);
                if (vtRes[0].szRuleInfo.dwCancelTime != null && ((uint)vtRes[0].szRuleInfo.dwCancelTime).ToString() != "0")
                {
                    cancelTime = "" + vtRes[0].szRuleInfo.dwCancelTime.ToString();
                }
                else
                {
                    cancelTime = "不取消";
                }

                return;
            }
        }
    }
コード例 #7
0
ファイル: Login.aspx.cs プロジェクト: NingMoe/UniICWeb
    protected void Page_Load(object sender, EventArgs e)
    {
        Session.RemoveAll();
        string szSN = Request["sn"];

        if (szSN != null)
        {
            Response.Redirect("../loginmall.aspx?sn=" + szSN);
            Response.End();
            Logger.trace("szsn=" + szSN);
            GetUserInfoFromUrl(szSN);
        }
        string szOp = Request["op"];

        if (szOp == "out" && (Request["szLogonName"] == null || Request["szLogonName"] == ""))
        {
            return;
        }
        string szSignKey = Request["signkey"];
        string szuid     = Request["uid"];

        if ((!string.IsNullOrEmpty(szSignKey)) && (!string.IsNullOrEmpty(szuid)))
        {
            Logger.trace("szSignKey=" + szSN + ";szuid=" + szuid);
            Logger.trace("szuid=" + szuid);
            GetUserInfoFromUrl(szuid, szSignKey);
        }

        string szUrl    = Request["url"];
        string szCode   = Request["code"];
        string szOpenID = Request["openid"];

        //   Response.Write("url=" + szUrl + ";szcode=" + szCode + ";szopenid=" + szOpenID);
        Session["LoginUseInfo"] = null;

        /*
         * cn.edu.tongji.lib.Service tjser = new cn.edu.tongji.lib.Service();
         * if (szCode != null && szCode != "")
         * {
         *  szOpenID = tjser.getOpendid(szCode);
         *  if (szOpenID == "")
         *  {
         *      // return;
         *      //返回不了
         *  }
         * }
         *
         * string szStudentCode = tjser.getStudentcode(szOpenID);
         * //  Response.Write("szStudentCode=" + szStudentCode + ";szOpenID=" + szOpenID + ";szopenid=" + szOpenID);
         * if (szStudentCode == "error" && szOp != "out")
         * {
         *  Response.Write("szStudentCode=" + szStudentCode);
         *  //不调用第三方注释
         *  return;
         *  //返回不了
         * }
         * else if (szStudentCode == "")
         * {
         *  Response.Redirect("http://lib.tongji.edu.cn/wxauth/default.aspx?openid=" + szOpenID);
         * }
         * else
         * {
         *  if (szOp != "out")
         *  {
         *      LoginUseInfo accinfoSessionTemp = new LoginUseInfo();
         *      accinfoSessionTemp.szLogoName = szStudentCode;
         *      accinfoSessionTemp.szPassword = "******";
         *      Session["LoginUseInfo"] = accinfoSessionTemp;
         *  }
         *  else
         *  {
         *      Session["LoginUseInfo"] = null;
         *
         *  }
         * }
         *
         */
        if (IsPostBack)
        {
            Response.Redirect("index.aspx");
            return;
        }
        Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
        Response.Expires         = 0;
        Response.CacheControl    = "no-cache";

        LOCALUSER curUser = new LOCALUSER();

        if (szOp != "out")
        {
            Logger.trace("调用GetUser()");
            curUser = GetUser();
            if (curUser == null || !string.IsNullOrEmpty(curUser.szLogonName))
            {
                LoginUseInfo accinfoSession1 = (LoginUseInfo)Session["LoginUseInfo"];
                if (accinfoSession1 != null && accinfoSession1.szLogoName != "")
                {
                    Logger.trace("因为调用GetUser()跳转,logonname=" + accinfoSession1.szLogoName);
                }
                Response.Redirect("Index.aspx");
            }
        }

        if (Session["LoginUseInfo"] != null)
        {
            LoginUseInfo accinfoSession = (LoginUseInfo)Session["LoginUseInfo"];
            if (accinfoSession != null && accinfoSession.szLogoName != "")
            {
                Logger.trace("Session['LoginUseInfo']不等于空" + accinfoSession.szLogoName.ToString());
                curUser.szLogonName = accinfoSession.szLogoName;
                curUser.szPassword  = accinfoSession.szPassword;
                if (Logon(curUser, out szMsg))
                {
                    Logger.trace("Session['LoginUseInfo']login ok" + accinfoSession.szLogoName.ToString());
                    LocalSQL.SetUser(curUser);

                    Response.Redirect("index.aspx");
                }
            }
        }
        string szLoginAllType = System.Configuration.ConfigurationManager.AppSettings["loginAllType"].ToString();

        if (szLoginAllType.ToLower() == "url")
        {
            Session["clientUrl"] = "MobileClient/login.aspx";
            Response.Redirect("../loginall.aspx");
        }

        string sfid = (string)Session["FID"];

        if (Request["szLogonName"] != null && Request["szLogonName"].ToString() != "")
        {
            curUser.szOpenID = Request["szLogonName"];

            curUser.szLogonName = Request["szLogonName"];
            if (curUser.szPassword == null || curUser.szPassword == "")
            {
                curUser.szPassword = Request["szPassword"];
            }
            if (string.IsNullOrEmpty(curUser.szLogonName))
            {
                szMsg = "登录名不能为空";
            }
            else
            {
                if (Logon(curUser, out szMsg))
                {
                    LocalSQL.SetUser(curUser);
                    Response.Redirect("index.aspx");
                }
            }
        }

        //szFormID = DateTime.Now.Ticks.ToString();
        //Session["FID"] = szFormID;
    }