Ejemplo n.º 1
0
        public object[] checkRegister()
        {
            log.Info("Start log INFO... checkRegister");
            MsgForm  msgError = new MsgForm();
            REGISTER result   = new REGISTER();

            try
            {
                using (var db = new PaknampoScaleDBEntities())
                {
                    result = (from row in db.REGISTERs where row.REGISTER_ID == 1 select row).FirstOrDefault();
                    msgError.statusFlag = MsgForm.STATUS_SUCCESS;
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString(), ex);
                msgError.statusFlag         = MsgForm.STATUS_ERROR;
                msgError.messageDescription = ex.ToString();
            }
            finally
            {
                log.Info("End log INFO... checkRegister");
            }
            return(new object[] { msgError, result });
        }
Ejemplo n.º 2
0
        public void queryDataRegister()
        {
            try
            {
                RegisterController registerCtrl    = new RegisterController();
                object[]           resultRegister  = registerCtrl.checkRegister();
                MsgForm            msgRegisterForm = (MsgForm)resultRegister[0];
                REGISTER           dataRegister    = (REGISTER)resultRegister[1];

                ////String xxxxx = BCrypt.Net.BCrypt.HashPassword(Util.toString(form.serialNo), BCrypt.Net.BCrypt.GenerateSalt(12));
                if (msgRegisterForm.statusFlag.Equals(1))
                {
                    if (Util.isNotEmpty(dataRegister))
                    {
                        formRegister = dataRegister;
                        dataRegister.REGISTER_CODE = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_CODE));
                    }
                }
                else
                {
                    MessageBox.Show("Error : " + msgRegisterForm.messageDescription);
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString(), ex);
                MessageBox.Show("Error : " + ex.ToString());
            }
        }
        protected void Btnupdate_Click(object sender, EventArgs e)
        {
            REGISTER insertreg = new REGISTER {
                ID = Convert.ToInt32(ddlstudents.SelectedValue), FNAME = tbx_UFname.Text, LNAME = tbx_ULname.Text, EMAILID = tbx_UEmail.Text, PASSWORD = tbx_UPassword.Text
            };

            BAL.UpdateStudentDetails(insertreg);
            Response.Redirect("default.aspx?msg=Student details updated successfully.");
        }
Ejemplo n.º 4
0
        /// <summary>
        ///   是否注册
        /// </summary>
        public REGISTER IsRegest(MSGHEAD head, byte[] buf)
        {
            REGISTER regiester = new REGISTER();
            TastInfo Info      = new TastInfo();

            Msg_LoadAsk user23     = new Msg_LoadAsk();
            object      user23Type = user23;

            Info.ByteArrayToStructureEndian(buf, ref user23Type, 0);
            user23 = (Msg_LoadAsk)user23Type;
            UInt32 nameId = user23.nameId;
            //此处有小问题,如何从八位bytes完整提取为string类型。2013-5-29
            string    password   = System.Text.Encoding.UTF8.GetString(user23.password, 0, GetLen(user23.password)).Trim();//
            UInt32    centercode = head.Msg_GNSSCenter;
            DataTable table      = LoadDevice();

            DataRow[] dr = table.Select("Device_ID =" + nameId);
            //查询用户
            if (dr.Length == 1)
            {
                if (dr[0]["Device_PassWord"].ToString().Equals(password))
                {
                    if (dr[0]["Device_Code"].ToString().Equals(head.Msg_GNSSCenter.ToString()))
                    {
                        regiester.nameId     = nameId;
                        regiester.centercode = head.Msg_GNSSCenter;
                        regiester.result     = 0x00;
                        //验证通过 ,发送消息
                    }
                    else
                    {
                        //接入码不对
                        regiester.centercode = centercode;
                        regiester.result     = 0x01;
                    }
                }
                else
                {
                    //密码不对
                    regiester.centercode = centercode;
                    regiester.result     = 0x03;
                }
            }
            else
            {
                //没有注册
                regiester.centercode = centercode;
                regiester.result     = 0x02;
            }
            return(regiester);
        }
Ejemplo n.º 5
0
        public object[] updateDataRegister(REGISTER param)
        {
            log.Info("Start log INFO... updateDataRegister");
            MsgForm  msgError = new MsgForm();
            REGISTER form     = new REGISTER();

            try
            {
                using (var db = new PaknampoScaleDBEntities())
                {
                    form = (from row in db.REGISTERs where row.REGISTER_ID == param.REGISTER_ID select row).FirstOrDefault();
                    if (Util.isNotEmpty(form))
                    {
                        form.REGISTER_MODEL         = Util.toString(CryptoUtil.encrypt(param.REGISTER_MODEL));
                        form.REGISTER_TYPE          = Util.toString(CryptoUtil.encrypt(param.REGISTER_TYPE));
                        form.REGISTER_SERIAL_NO     = Util.toString(CryptoUtil.encrypt(param.REGISTER_SERIAL_NO));
                        form.REGISTER_DEVICE_ID     = Util.toString(CryptoUtil.encrypt(param.REGISTER_DEVICE_ID));
                        form.REGISTER_PASSWORD_HASH = param.REGISTER_PASSWORD_HASH;
                        form.REGISTER_CODE          = Util.toString(CryptoUtil.encrypt(param.REGISTER_CODE));
                        //form.CREATE_DATE = param.CREATE_DATE;
                        //form.UPDATE_DATE = new DateTime();
                        //log.Info("Update Data form REGISTER WHERE " + form.REGISTER_ID
                        //    + " REGISTER_MODEL : " + form.REGISTER_MODEL
                        //    + " REGISTER_TYPE : " + form.REGISTER_TYPE
                        //    + " REGISTER_SERIAL_NO : " + form.REGISTER_SERIAL_NO
                        //    + " REGISTER_DEVICE_ID : " + form.REGISTER_DEVICE_ID
                        //    + " REGISTER_PASSWORD_HASH : " + form.REGISTER_PASSWORD_HASH
                        //    + " REGISTER_CODE : " + form.REGISTER_CODE
                        //    + " CREATE_DATE : " + form.CREATE_DATE
                        //    + " UPDATE_DATE : " + form.UPDATE_DATE
                        //    );
                    }
                    db.SaveChanges();
                    msgError.statusFlag = MsgForm.STATUS_SUCCESS;
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString(), ex);
                msgError.statusFlag         = MsgForm.STATUS_ERROR;
                msgError.messageDescription = ex.ToString();
            }
            finally
            {
                log.Info("End log INFO... updateDataRegister");
            }
            return(new object[] { msgError });
        }
Ejemplo n.º 6
0
        public bool updateDataRegister()
        {
            RegisterController registerCtrl = new RegisterController();
            REGISTER           form         = new REGISTER();

            try
            {
                form.REGISTER_ID            = formRegister.REGISTER_ID;
                form.REGISTER_MODEL         = formHardDrive.model;
                form.REGISTER_TYPE          = formHardDrive.type;
                form.REGISTER_SERIAL_NO     = formHardDrive.serialNo;
                form.REGISTER_DEVICE_ID     = formHardDrive.deviceID;
                form.REGISTER_PASSWORD_HASH = txtRegister.Text;
                form.REGISTER_CODE          = formRegister.REGISTER_CODE;
                //form.CREATE_DATE = formRegister.CREATE_DATE;

                if (Util.isEmpty(form))
                {
                    return(false);
                }

                object[] result = registerCtrl.updateDataRegister(form);

                MsgForm msgForm = (MsgForm)result[0];

                if (msgForm.statusFlag.Equals(1))
                {
                    //MessageBox.Show(CommonUtil.SAVE_DATA_SUCCESS);
                    return(true);
                }
                else
                {
                    MessageBox.Show("Error : " + msgForm.messageDescription);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString(), ex);
                MessageBox.Show("Error : " + ex.ToString());
            }
            return(false);
        }
Ejemplo n.º 7
0
        protected void Btn_insert_Click(object sender, EventArgs e)
        {
            REGISTER insertreg = new REGISTER {
                FNAME = tbx_Fname.Text, LNAME = tbx_Lname.Text, EMAILID = tbx_Email.Text, PASSWORD = tbx_Password.Text
            };
            int id = BAL.InsertRegister(insertreg);

            foreach (ListItem li in chklistbooks.Items)
            {
                if (li.Selected)
                {
                    checkout checkoutdetails = new checkout {
                        user_id = id, book_id = Convert.ToInt32(li.Value)
                    };
                    BAL.InsertBooksCollected(checkoutdetails);
                }
            }
            address insertadd = new address {
                city = tbx_City.Text, state = tbx_State.Text, street = tbx_Street.Text, user_id = id
            };

            BAL.InsertAddress(insertadd);
            Response.Redirect("default.aspx?msg=Student Details inserted successfully.");
        }
Ejemplo n.º 8
0
            /// <summary>
            /// 新增权限
            /// </summary>
            /// <param name="register">权限结构体</param>
            /// <returns></returns>
            public bool AddRegister(REGISTER register)
            {
                int success = AccessV2_AddRight(m_CurrentDevice, ref register);

                return(success != 0);
            }
Ejemplo n.º 9
0
 private static extern int AccessV2_AddRight(UInt32 devNum, ref REGISTER register);
Ejemplo n.º 10
0
        void RecvData(object sender, NetEventArgs e)
        {
            //  string info = string.Format("recv data:{0} from:{1}.", e.Client.Datagram, e.Client);
            //  Console.WriteLine(info);
            TcpSvr svr = (TcpSvr)sender;

            //测试把收到的数据返回给客户端
            // svr.SendText(e.Client, e.Client.Datagram);
            //svr.SendFile(this.textBox1.Text);
            //   Console.Write(">");

            DETECTION_INFO ff = new DETECTION_INFO();
            int            si = Marshal.SizeOf(ff);

            //获取接受到的消息,已经去头,但是包括尾
            // byte[] recivebuffer = System.Text.Encoding.Default.GetBytes(e.Client.Datagram);
            List <Byte> lbyte = new List <Byte>();

            byte[] recivebuffer = e.Client.RvBufer;

            for (int k = 0; k < e.Client.RvBufer.Length - 1; k++)
            {
                byte b = e.Client.RvBufer[k];
                byte c = e.Client.RvBufer[k + 1];
                if (b == 0x5a && c == 0x01)
                {
                    lbyte.Add(0x5b);
                }
                else if (b == 0x5a && c == 0x02)
                {
                    lbyte.Add(0x5a);
                }
                else if (b == 0x5e && c == 0x01)
                {
                    lbyte.Add(0x5d);
                }
                else if (b == 0x5e && c == 0x02)
                {
                    lbyte.Add(0x5e);
                }
                else
                {
                    lbyte.Add(b);
                }
            }
            for (int i = 0; i < lbyte.Count; i++)
            {
                recivebuffer[i] = lbyte[i];
            }

            string batch_id = null;
            string task_id  = null;
            //解析消息头
            MSGHEAD head = new MSGHEAD();

            byte[] headbuffer = new byte[MsgHeadLength];
            Array.Copy(recivebuffer, 1, headbuffer, 0, MsgHeadLength);
            head = Get_MSGHeader(headbuffer);
            // head = Get_MSGHeader(e.Client.Datagram.Substring(0, MsgHeadLength));
            //消息体数据

            int Meg_len = (int)head.Msg_Length - MsgTotalLen;

            byte[] buffer = new byte[Meg_len];//
            Array.Copy(recivebuffer, 15, buffer, 0, Meg_len);

//             for (int i = 0; i < head.Msg_Length; ++i)
//             {
//                 byte t = recivebuffer[i];
//                 Console.Write("{0:X}", t);//这个就是主要,填充
//                 Console.Write(" ");
//
//             }
            // Console.Write("?");
            //接入码s
            UInt32   centercode = head.Msg_GNSSCenter;
            TastInfo Tinfo      = new TastInfo();

            byte[] MesBody = null;
            //空数据
            byte[] nu = new byte[0];
            //判定是不是注册
            REGISTER Is_re = new REGISTER();
            //根据不同消息进行处理

            Session    sendDataSession = svr.FindSession(e.Client.ClientSocket);
            ICloneable copySession     = (ICloneable)sendDataSession;
            Session    clientSession   = (Session)copySession.Clone();

            //    Console.Write("*"+head.Msg_ID);
            switch (head.Msg_ID)
            {
            //中心站只发过一个空包,或者包括简单的配置要求,服务器端组帧。
            //链路登陆请求消息
            case 0x0001:
                Is_re = IsRegest(head, buffer);
                // object structType = Is_re;
                byte[] btArray = new byte[1];
                btArray[0] = Is_re.result;
                //MesBody = BitConverter.GetBytes(Is_re.result);
                svr.SendMessage(e.Client, btArray, 0x0002, centercode);    //登录应答
                if (Is_re.result == 0)
                {
                    foreach (DictionaryEntry de in svr._sessionTable)     //ht为一个Hashtable实例
                    {
                        if (de.Value.Equals(clientSession))
                        {
                            clientSession.DeviceId = Is_re.nameId;
                            SessionId id = clientSession.ID;
                            svr._sessionTable.Remove(clientSession.ID);
                            svr._sessionTable.Add(id, clientSession);
                            break;
                        }
                    }


                    //更新数据库状态
                    string sql = "UPDATE device SET Device_Status = 1,Sockets = '" + clientSession.ClientSocket.RemoteEndPoint + "' WHERE Device_ID = '" + clientSession.DeviceId + "'";
                    database.Open();
                    database.ExcuteNonQuery(sql);
                    database.Close();
                }
                else
                {
                    //Session sendDataSession = svr.FindSession(e.Client.ClientSocket);
                    //更新数据库状态
                    string sql = "UPDATE device SET Device_Status = 0 WHERE Device_ID = '" + clientSession.DeviceId + "'";
                    database.Open();
                    database.ExcuteNonQuery(sql);
                    database.Close();
                }
                break;

            //用于心跳监测
            case 0x0003:

                svr.SendMessage(clientSession, nu, 0x0004, centercode);    //开启视频

                // Console.Write("|" + buffer[1]);
                break;

            //批量任务下发(中心站往终端)
            //TEST NUM	4	Unint32_t	结果个数
            //TEST INFO	804	Octet_string	检测结果信息
            case 0x0005:
                //获取任务个数
                byte[] numbuffer = new byte[4];                //
                Array.Copy(recivebuffer, 14, numbuffer, 0, 4); //获取个数
                //                     Array.Reverse(numbuffer);
                //                     UInt32 num = BitConverter.ToUInt32(numbuffer,0);
                //组帧
                TASK_INFO taskinfo = new TASK_INFO();
                object    structT  = taskinfo;
                MesBody = Tinfo.StructureToByteArrayEndian(structT);
                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.DeviceId == deviceid)
                    {
                        svr.SendMessage(cliSession, nu, 0x0005, centercode);    //开启视频
                        break;
                    }
                }

                //发送

                break;
            //检测结果上传消息

            //检测结果上传(终端往中心站)
            case 0x0006:
                sendDataSession = svr.FindSession(e.Client.ClientSocket);

                deviceid = sendDataSession.DeviceId;
                UpLoad(buffer, deviceid.ToString());
                break;

            //开启实时监控
            case 07:
                //获取发过来的设备id,根据id找到socket
                deviceid = UInt32.Parse(System.Text.Encoding.UTF8.GetString(buffer));    //提取控制的deviceid

                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.DeviceId == deviceid)
                    {
                        svr.SendMessage(cliSession, nu, 0x0007, centercode);    //开启视频
                        break;
                    }
                }

                break;

            //中心站往检测仪结束实时视频

            case 08:
                deviceid = UInt32.Parse(System.Text.Encoding.UTF8.GetString(buffer));    //提取控制的deviceid
                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.DeviceId == deviceid)
                    {
                        svr.SendMessage(cliSession, nu, 0x0008, centercode);    //开启视频
                        break;
                    }
                }

                break;

            case 09:
                //视频上传(检测仪主动请求,中心站返回消息)
                UInt32 res = 0;
                byte[] meg = BitConverter.GetBytes(res);
                Array.Reverse(meg);
                svr.SendMessage(e.Client, meg, 0x000a, centercode);    //录制视频上传应答
                svr.FileBegine = true;
                svr.IsPic      = false;
                break;

            //证件上传请求
            case 0x0000b:
                UInt32 resu = 0;
                byte[] megs = BitConverter.GetBytes(resu);
                Array.Reverse(megs);
                svr.SendMessage(e.Client, nu, 0x000c, centercode);    //上传应答
                svr.FileBegine = true;
                svr.IsPic      = true;
                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.ClientSocket == e.Client.ClientSocket)
                    {
                        svr.device_id = cliSession.DeviceId.ToString();
                    }
                }
                break;

            //视频调阅请求
            case 0x0000d:
                byte[] dev = new byte[12];
                deviceid = UInt32.Parse(System.Text.Encoding.UTF8.GetString(buffer, 0, 4)); //提取控制的deviceid
                batch_id = System.Text.Encoding.UTF8.GetString(buffer, 4, 8);               //提取控制的deviceid
                task_id  = System.Text.Encoding.UTF8.GetString(buffer, 12, 4);              //提取控制的deviceid
                Array.Copy(buffer, 4, dev, 0, 12);

                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.DeviceId == deviceid)
                    {
                        svr.SendMessage(cliSession, nu, 0x0008, centercode);    //开启视频
                        break;
                    }
                }
                break;

            //视频调阅
            case 0x000e:
                //将文件存储路径插入数据库
                string filepath = System.Text.Encoding.UTF8.GetString(buffer, 0, GetLen(buffer)).Trim();
                //更新数据库状态
                string sql2 = "UPDATE detectioninfo SET video_path = '" + filepath + "' WHERE batch_id = '" + batch_id + "' AND task_id = '" + task_id + "'";
                database.Open();
                database.ExcuteNonQuery(sql2);
                database.Close();
                break;

            //工作参数
            case 0x0000f:
                break;

            //状态和工作参数
            case 0x0010:

                break;

            //参数配置
            case 0x0011:
                byte[] aa = new byte[4];
                Array.Copy(buffer, 0, aa, 0, 4);
                byte[] Msg = new byte[buffer.Length - 4];
                Array.Copy(buffer, 4, Msg, 0, buffer.Length - 4);
                deviceid = UInt32.Parse(System.Text.Encoding.UTF8.GetString(aa));    //提取控制的deviceid
                foreach (Session cliSession in svr._sessionTable.Values)
                {
                    if (cliSession.DeviceId == deviceid)
                    {
                        svr.SendMessage(cliSession, Msg, 0x0012, centercode);    //开启视频
                        break;
                    }
                }

                break;

            //数据管理
            case 0x0012:

                break;

            //设备管理消息
            case 0x0013:

                break;

            //远程版本升级
            case 0x0014:

                break;

            //版本升级应答
            case 0x0015:

                break;

            //通用消息
            case 0xf000:

                break;

            default:
                break;
            }
        }
Ejemplo n.º 11
0
 public static int UpdateStudentDetails(REGISTER insertreg)
 {
     return(DAL.UpdateRegistration(insertreg));
 }
Ejemplo n.º 12
0
 public static int InsertRegister(REGISTER insertreg)
 {
     return(DAL.SaveRegistration(insertreg));
 }
Ejemplo n.º 13
0
        static void Main()
        {
            List <HardDriveForm> lstHD = new List <HardDriveForm>();
            HardDriveForm        form  = new HardDriveForm();
            //string physicalname = ("\\\\.\\physicaldrive0").replace("\\", "\\\\");
            //ManagementObjectSearcher manageObj = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE DeviceID = \"" + physicalName + "\"");
            ManagementObjectSearcher manageObj = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");

            foreach (ManagementObject obj in manageObj.Get())
            {
                form.model    = obj["Model"].ToString();         //Model Number
                form.type     = obj["InterfaceType"].ToString(); //Interface Type
                form.serialNo = obj["SerialNumber"].ToString();  //Serial Number
                form.deviceID = obj["DeviceID"].ToString();

                lstHD.Add(form);
            }

            RegisterController registerCtrl = new RegisterController();

            object[] resultRegister  = registerCtrl.checkRegister();
            MsgForm  msgRegisterForm = (MsgForm)resultRegister[0];
            REGISTER dataRegister    = (REGISTER)resultRegister[1];

            if (msgRegisterForm.statusFlag.Equals(1))
            {
                if (Util.isNotEmpty(dataRegister))
                {
                    dataRegister.REGISTER_MODEL     = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_MODEL));
                    dataRegister.REGISTER_TYPE      = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_TYPE));
                    dataRegister.REGISTER_SERIAL_NO = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_SERIAL_NO));
                    dataRegister.REGISTER_DEVICE_ID = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_DEVICE_ID));
                    dataRegister.REGISTER_CODE      = Util.toString(CryptoUtil.decrypt(dataRegister.REGISTER_CODE));

                    string passwordNew = form.serialNo + dataRegister.REGISTER_CODE;
                    string passwordOld = dataRegister.REGISTER_SERIAL_NO + dataRegister.REGISTER_CODE;
                    bool   checkHash   = false;

                    if (Util.isNotEmpty(Util.toString(passwordNew)) && Util.isNotEmpty(dataRegister.REGISTER_PASSWORD_HASH))
                    {
                        if (dataRegister.REGISTER_PASSWORD_HASH.Length.Equals(60))
                        {
                            checkHash = BCrypt.Net.BCrypt.Verify(Util.toString(passwordNew), dataRegister.REGISTER_PASSWORD_HASH);
                        }
                    }

                    if (Util.isNotEmpty(passwordNew) && Util.isNotEmpty(passwordOld))
                    {
                        if (passwordNew.Equals(passwordOld) && checkHash.Equals(true))
                        {
                            LoginController loginCtrl = new LoginController();

                            object[] result = loginCtrl.checkStatusLogin();

                            MsgForm      msgForm = (MsgForm)result[0];
                            LOGIN_STATUS data    = (LOGIN_STATUS)result[1];

                            if (msgForm.statusFlag.Equals(1))
                            {
                                if (Util.isNotEmpty(data))
                                {
                                    if (data.LOGIN_STATUS_VALUE.Equals(1))
                                    {
                                        Application.EnableVisualStyles();
                                        Application.SetCompatibleTextRenderingDefault(false);
                                        Application.Run(new view.Login());
                                    }
                                    else
                                    {
                                        Application.EnableVisualStyles();
                                        Application.SetCompatibleTextRenderingDefault(false);
                                        Application.Run(new view.MenuMain());
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("Error : " + msgForm.messageDescription);
                            }
                        }
                        else
                        {
                            Application.EnableVisualStyles();
                            Application.SetCompatibleTextRenderingDefault(false);
                            Application.Run(new view.Register());
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Error : " + msgRegisterForm.messageDescription);
            }
        }