예제 #1
0
        public static void InitTabs()
        {
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes;

            C_Db.Exec("create table if not exists grims.adminPwd(pwd varchar(255) not null) default charset=utf8mb4;");

            QRes = C_Db.Query("select * from grims.adminPwd;");
            if (QRes.Item1 == E_DbRState.Success)
            {
                if (!QRes.Item2.HasRows)
                {
                    C_Db.Exec("insert into grims.AdminPwd (pwd) values('" + C_Md5.GetHash("123456") + "');");
                }
            }
        }
예제 #2
0
        //OUT
        public static Tuple <E_DbRState, List <string>, Exception> Get()
        {
            List <string> res = new List <string>();
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes = C_Db.Query("select * from grims.dept;");

            if (QRes.Item1 == E_DbRState.Failed)
            {
                return(new Tuple <E_DbRState, List <string>, Exception>(QRes.Item1, null, QRes.Item3));
            }

            while (QRes.Item2.Read())
            {
                res.Add(QRes.Item2.GetString("deptName"));
            }
            return(new Tuple <E_DbRState, List <string>, Exception>(E_DbRState.Success, res, null));
        }
예제 #3
0
        public static Tuple <E_DbRState, Exception> ResetPwd(string oldPwd, string newPwd)
        {
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes = C_Db.Query("select * from grims.adminPwd;");

            if (QRes.Item1 == E_DbRState.Failed)
            {
                return(new Tuple <E_DbRState, Exception>(QRes.Item1, QRes.Item3));
            }
            QRes.Item2.Read();
            if (oldPwd == QRes.Item2.GetString("pwd"))
            {
                return(C_Db.Exec("update grims.adminPwd set pwd='" + newPwd + "';"));
            }
            else
            {
                return(new Tuple <E_DbRState, Exception>(E_DbRState.ErrorPwd, null));
            }
        }
예제 #4
0
        public static Tuple <E_DbRState, List <C_User>, Exception> Get()
        {
            List <C_User> res = new List <C_User>();
            C_User        tmp = new C_User();
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes = C_Db.Query("select grims.user.id,grims.user.pwd,grims.user.name,grims.dept.deptName,grims.user.tel,grims.user.email from grims.user left outer join grims.dept on grims.user.deptId = grims.dept.id ;");

            while (QRes.Item2.Read())
            {
                tmp.Id       = QRes.Item2.GetInt32("id");
                tmp.Name     = QRes.Item2.GetString("name");
                tmp.Pwd      = QRes.Item2.GetString("pwd");
                tmp.DeptName = QRes.Item2.GetString("deptName");
                tmp.Tel      = QRes.Item2.GetString("tel");
                tmp.Email    = QRes.Item2.GetString("email");
                res.Add(tmp);
            }
            return(new Tuple <E_DbRState, List <C_User>, Exception>(E_DbRState.Success, res, null));
        }
예제 #5
0
        public static Tuple <E_DbRState, string, Exception> GetIdByName(string name)
        {
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes = C_Db.Query("select * from grims.dept;");

            if (QRes.Item1 == E_DbRState.Failed)
            {
                return(new Tuple <E_DbRState, string, Exception>(QRes.Item1, null, QRes.Item3));
            }

            while (QRes.Item2.Read())
            {
                if (QRes.Item2.GetString("deptName") == name)
                {
                    return(new Tuple <E_DbRState, string, Exception>(E_DbRState.Success, QRes.Item2.GetString("id"), null));
                }
            }
            return(new Tuple <E_DbRState, string, Exception>(E_DbRState.Success, null, null));
        }
예제 #6
0
        public static Tuple <E_DbRState, Exception> Login(string pwd)
        {
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes = C_Db.Query("select * from grims.adminPwd;");

            if (QRes.Item1 == E_DbRState.Failed)
            {
                return(new Tuple <E_DbRState, Exception>(QRes.Item1, QRes.Item3));
            }

            QRes.Item2.Read();
            if (pwd == QRes.Item2.GetString("pwd"))
            {
                return(new Tuple <E_DbRState, Exception>(E_DbRState.Success, null));
            }
            else
            {
                return(new Tuple <E_DbRState, Exception>(E_DbRState.ErrorPwd, null));
            }
        }
예제 #7
0
        public static Tuple <E_DbRState, C_WellParas, Exception> Get()
        {
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes;
            List <C_WellPara> res = new List <C_WellPara>();

            QRes = C_Db.Query("select * from grims.wellpara;");

            if (QRes.Item1 == E_DbRState.Success)
            {
                while (QRes.Item2.Read())
                {
                    C_WellPara tmp = new C_WellPara();
                    tmp.Type  = (E_WellParaType)Enum.Parse(typeof(E_WellParaType), QRes.Item2.GetString("paraType"), true);
                    tmp.Value = QRes.Item2.GetString("paraValue");
                    res.Add(tmp);
                }
                C_WellParas wps = new C_WellParas(res);
                return(new Tuple <E_DbRState, C_WellParas, Exception>(QRes.Item1, wps, QRes.Item3));
            }
            else
            {
                return(new Tuple <E_DbRState, C_WellParas, Exception>(QRes.Item1, null, QRes.Item3));
            }
        }
예제 #8
0
        public static Tuple <E_DbRState, List <C_Well>, Exception> Get(string filter)
        {
            List <C_Well> res = new List <C_Well>();
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes;

            if (filter == null || filter == "")
            {
                QRes = C_Db.Query("select * from grims.well;");
            }
            else
            {
                QRes = C_Db.Query("select * from grims.well where (" +
                                  "TsOrSt                   LIKE '%" + filter + "%' OR " +
                                  "Village                  LIKE '%" + filter + "%' OR " +
                                  "UnitCat                  LIKE '%" + filter + "%' OR " +
                                  "Loc                      LIKE '%" + filter + "%' OR " +
                                  "Lng                      LIKE '%" + filter + "%' OR " +
                                  "Lat                      LIKE '%" + filter + "%' OR " +
                                  "Usefor                   LIKE '%" + filter + "%' OR " +
                                  "DigTime                  LIKE '%" + filter + "%' OR " +
                                  "WellDepth                LIKE '%" + filter + "%' OR " +
                                  "TubeMat                  LIKE '%" + filter + "%' OR " +
                                  "TubeIr                   LIKE '%" + filter + "%' OR " +
                                  "StanWaterDepth           LIKE '%" + filter + "%' OR " +
                                  "SaltWaterFloorDepth      LIKE '%" + filter + "%' OR " +
                                  "FilterLocLow             LIKE '%" + filter + "%' OR " +
                                  "FilterLocHigh            LIKE '%" + filter + "%' OR " +
                                  "StillWaterLoc            LIKE '%" + filter + "%' OR " +
                                  "PumpMode                 LIKE '%" + filter + "%' OR " +
                                  "PumpPower                LIKE '%" + filter + "%' OR " +
                                  "CoverArea                LIKE '%" + filter + "%' OR " +
                                  "SupPeopleNum             LIKE '%" + filter + "%' OR " +
                                  "IsWaterLevelOp           LIKE '%" + filter + "%' OR " +
                                  "IsMfInstalled            LIKE '%" + filter + "%' OR " +
                                  "LinkWellNo               LIKE '%" + filter + "%' OR " +
                                  "IsSeepChnLinked          LIKE '%" + filter + "%' OR " +
                                  "SeepChnLength            LIKE '%" + filter + "%' OR " +
                                  "Remark                   LIKE '%" + filter + "%' " +
                                  ");");
            }
            while (QRes.Item2.Read())
            {
                C_Well well = new C_Well();
                well.Id                  = QRes.Item2.GetInt32("Id");
                well.TsOrSt              = QRes.Item2.GetString("TsOrSt");
                well.Village             = QRes.Item2.GetString("Village");
                well.UnitCat             = QRes.Item2.GetString("UnitCat");
                well.Loc                 = QRes.Item2.GetString("Loc");
                well.Lng                 = QRes.Item2.GetString("Lng");//5
                well.Lat                 = QRes.Item2.GetString("Lat");
                well.Usefor              = QRes.Item2.GetString("Usefor");
                well.DigTime             = QRes.Item2.GetDateTime("DigTime");
                well.WellDepth           = QRes.Item2.GetFloat("WellDepth");
                well.TubeMat             = QRes.Item2.GetString("TubeMat");//10
                well.TubeIr              = QRes.Item2.GetFloat("TubeIr");
                well.StanWaterDepth      = QRes.Item2.GetFloat("StanWaterDepth");
                well.SaltWaterFloorDepth = QRes.Item2.GetFloat("SaltWaterFloorDepth");
                well.FilterLocLow        = QRes.Item2.GetFloat("FilterLocLow");
                well.FilterLocHigh       = QRes.Item2.GetFloat("FilterLocHigh");
                well.StillWaterLoc       = QRes.Item2.GetFloat("StillWaterLoc");
                well.PumpMode            = QRes.Item2.GetString("PumpMode");
                well.PumpPower           = QRes.Item2.GetFloat("PumpPower");
                well.CoverArea           = QRes.Item2.GetFloat("CoverArea");
                well.SupPeopleNum        = QRes.Item2.GetInt32("SupPeopleNum");
                well.IsWaterLevelOp      = QRes.Item2.GetBoolean("IsWaterLevelOp");
                well.IsMfInstalled       = QRes.Item2.GetBoolean("IsMfInstalled");
                well.LinkWellNo          = QRes.Item2.GetInt32("LinkWellNo");
                well.IsSeepChnLinked     = QRes.Item2.GetBoolean("IsSeepChnLinked");
                well.SeepChnLength       = QRes.Item2.GetFloat("SeepChnLength");
                well.Remark              = QRes.Item2.GetString("Remark");
                res.Add(well);
            }
            return(new Tuple <E_DbRState, List <C_Well>, Exception>(E_DbRState.Changed, res, null));
        }
예제 #9
0
        public static Tuple <E_DbRState, List <C_EntWell>, Exception> Get(string filter)
        {
            List <C_EntWell> res = new List <C_EntWell>();
            Tuple <E_DbRState, MySqlDataReader, Exception> QRes;

            if (filter == null || filter == "")
            {
                QRes = C_Db.Query("select * from grims.entwell;");
            }
            else
            {
                QRes = C_Db.Query("select * from grims.entwell where (" +
                                  "TsOrSt                   LIKE '%" + filter + "%' OR " + //1
                                  "EntName                  LIKE '%" + filter + "%' OR " + //2
                                  "UnitCat                  LIKE '%" + filter + "%' OR " + //3
                                  "Loc                      LIKE '%" + filter + "%' OR " + //4
                                  "Lng                      LIKE '%" + filter + "%' OR " + //5
                                  "Lat                      LIKE '%" + filter + "%' OR " + //6
                                  "Usefor                   LIKE '%" + filter + "%' OR " + //7
                                  "DigTime                  LIKE '%" + filter + "%' OR " + //8

                                  "FetchWaterId             LIKE '%" + filter + "%' OR " + //9
                                  "IsPaid                   LIKE '%" + filter + "%' OR " + //10

                                  "WellDepth                LIKE '%" + filter + "%' OR " + //11
                                  "TubeMat                  LIKE '%" + filter + "%' OR " + //12
                                  "TubeIr                   LIKE '%" + filter + "%' OR " + //13
                                  "StanWaterDepth           LIKE '%" + filter + "%' OR " + //14
                                  "SaltWaterFloorDepth      LIKE '%" + filter + "%' OR " + //15
                                  "FilterLocLow             LIKE '%" + filter + "%' OR " + //16
                                  "FilterLocHigh            LIKE '%" + filter + "%' OR " + //17
                                  "StillWaterLoc            LIKE '%" + filter + "%' OR " + //18
                                  "PumpMode                 LIKE '%" + filter + "%' OR " + //19
                                  "PumpPower                LIKE '%" + filter + "%' OR " + //20
                                  "IsWaterLevelOp           LIKE '%" + filter + "%' OR " + //21
                                  "IsMfInstalled            LIKE '%" + filter + "%' OR " + //22
                                  "Remark                   LIKE '%" + filter + "%' " +
                                  ");");
            }
            while (QRes.Item2.Read())
            {
                C_EntWell well = new C_EntWell();
                well.Id      = QRes.Item2.GetInt32("Id");
                well.TsOrSt  = QRes.Item2.GetString("TsOrSt");
                well.EntName = QRes.Item2.GetString("EntName");
                well.UnitCat = QRes.Item2.GetString("UnitCat");
                well.Loc     = QRes.Item2.GetString("Loc");
                well.Lng     = QRes.Item2.GetString("Lng");//5
                well.Lat     = QRes.Item2.GetString("Lat");
                well.Usefor  = QRes.Item2.GetString("Usefor");
                well.DigTime = QRes.Item2.GetDateTime("DigTime");

                well.FetchWaterId = QRes.Item2.GetString("FetchWaterId");
                well.IsPaid       = QRes.Item2.GetBoolean("IsPaid");

                well.WellDepth           = QRes.Item2.GetFloat("WellDepth"); //11
                well.TubeMat             = QRes.Item2.GetString("TubeMat");  //12
                well.TubeIr              = QRes.Item2.GetFloat("TubeIr");
                well.StanWaterDepth      = QRes.Item2.GetFloat("StanWaterDepth");
                well.SaltWaterFloorDepth = QRes.Item2.GetFloat("SaltWaterFloorDepth");
                well.FilterLocLow        = QRes.Item2.GetFloat("FilterLocLow");//16
                well.FilterLocHigh       = QRes.Item2.GetFloat("FilterLocHigh");
                well.StillWaterLoc       = QRes.Item2.GetFloat("StillWaterLoc");
                well.PumpMode            = QRes.Item2.GetString("PumpMode");
                well.PumpPower           = QRes.Item2.GetFloat("PumpPower");//20
                well.IsWaterLevelOp      = QRes.Item2.GetBoolean("IsWaterLevelOp");
                well.IsMfInstalled       = QRes.Item2.GetBoolean("IsMfInstalled");
                well.Remark              = QRes.Item2.GetString("Remark");
                res.Add(well);
            }
            return(new Tuple <E_DbRState, List <C_EntWell>, Exception>(E_DbRState.Changed, res, null));
        }