コード例 #1
0
ファイル: SuperDogDb.cs プロジェクト: cyu0517/KeyTools
        private List <SuperDog> QuerySuperDog(string sql)
        {
            if (!Open())
            {
                return(null);
            }

            var superDogList = new List <SuperDog>();

            try
            {
                var reader = ExecuteReader(sql);

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        var superDog = new SuperDog
                        {
                            Id             = !reader.IsDBNull(0) ? reader.GetInt32(0) : 0,
                            SuperDogGuid   = !reader.IsDBNull(1) ? reader.GetString(1) : "",
                            SuperDogType   = !reader.IsDBNull(2) ? reader.GetInt32(2) : 0,
                            MachineCode    = !reader.IsDBNull(3) ? reader.GetString(3) : "",
                            CreateDate     = !reader.IsDBNull(4) ? reader.GetString(4) : "",
                            UpdateDate     = !reader.IsDBNull(5) ? reader.GetString(5) : "",
                            ExpireDate     = !reader.IsDBNull(6) ? reader.GetString(6) : "",
                            ManufacturerId = !reader.IsDBNull(7) ? reader.GetInt32(7) : 0,
                            User           = !reader.IsDBNull(8) ? reader.GetString(8) : "",
                            Remark         = !reader.IsDBNull(9) ? reader.GetString(9) : ""
                        };

                        superDogList.Add(superDog);
                    }
                }

                return(superDogList);
            }
            catch
            {
                return(null);
            }
            finally
            {
                Close();
            }
        }
コード例 #2
0
ファイル: SuperDogDb.cs プロジェクト: cyu0517/KeyTools
        public SuperDog AddSuperDog(SuperDog superDog)
        {
            try
            {
                var          parameters = new SQLiteParameter[3];
                const string sql        = @"INSERT INTO SuperDog(SuperDogGuid,CreateDate,UpdateDate) VALUES(@SuperDogGuid,@CreateDate,@UpdateDate)";

                var parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@SuperDogGuid",
                    Value         = superDog.SuperDogGuid
                };
                parameters[0] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@CreateDate",
                    Value         = superDog.CreateDate
                };
                parameters[1] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@UpdateDate",
                    Value         = superDog.UpdateDate
                };
                parameters[2] = parameter;

                if (ExecuteNonQurey(sql, parameters) > 0)
                {
                    var superDogList = QuerySuperDog("SELECT * FROM SuperDog WHERE Id = (SELECT MAX(id) FROM SuperDog)");
                    return(superDogList != null && superDogList.Count > 0 ? superDogList[0] : null);
                }

                return(null);
            }
            catch
            {
                return(null);
            }
        }
コード例 #3
0
ファイル: SuperDogDb.cs プロジェクト: cyu0517/KeyTools
        public SuperDog ModifySuperDog(SuperDog superDog)
        {
            try
            {
                var          parameters = new SQLiteParameter[8];
                const string sql        = @"UPDATE SuperDog SET SuperDogType = @SuperDogType,
                                        MachineCode = @MachineCode,
                                        UpdateDate = @UpdateDate,
                                        ExpireDate = @ExpireDate,
                                        ManufacturerId = @ManufacturerId,
                                        User = @User,
                                        Remark = @Remark 
                                        WHERE SuperDogGuid = @SuperDogGuid";

                var parameter = new SQLiteParameter
                {
                    DbType        = DbType.Int32,
                    ParameterName = "@SuperDogType",
                    Value         = superDog.SuperDogType
                };
                parameters[0] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@MachineCode",
                    Value         = superDog.MachineCode
                };
                parameters[1] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@UpdateDate",
                    Value         = superDog.UpdateDate
                };
                parameters[2] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@ExpireDate",
                    Value         = superDog.ExpireDate
                };
                parameters[3] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.Int32,
                    ParameterName = "@ManufacturerId",
                    Value         = superDog.ManufacturerId
                };
                parameters[4] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@User",
                    Value         = superDog.User
                };
                parameters[5] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@Remark",
                    Value         = superDog.Remark
                };
                parameters[6] = parameter;

                parameter = new SQLiteParameter
                {
                    DbType        = DbType.String,
                    ParameterName = "@SuperDogGuid",
                    Value         = superDog.SuperDogGuid
                };
                parameters[7] = parameter;

                if (ExecuteNonQurey(sql, parameters) > 0)
                {
                    return(GetSuperDog(superDog.SuperDogGuid));
                }

                return(null);
            }
            catch
            {
                return(null);
            }
        }
コード例 #4
0
        private void SuperDogFormat()
        {
            var message = _licenseHandler.CheckMaster();

            if (!string.IsNullOrEmpty(message))
            {
                MessageBox.Show(message);
                return;
            }

            message = _licenseHandler.Check();
            if (!string.IsNullOrEmpty(message))
            {
                MessageBox.Show(message);
                return;
            }

            if (MessageBox.Show("确定将超级狗恢复出厂状态导入初始许可?", "", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                ClearViewModel();

                var oldSuperDogGuid = _licenseHandler.GetSuperDogGuid();
                if (!string.IsNullOrEmpty(oldSuperDogGuid))
                {
                    _superDogDb.RemoveSuperDog(oldSuperDogGuid);
                }

                if (_licenseHandler.Format(out message))
                {
                    string newSuperDogGuid;

                    do
                    {
                        newSuperDogGuid = Guid.NewGuid().ToString().Replace("-", "");
                        Thread.Sleep(200);
                    } while (_superDogDb.GetSuperDog(newSuperDogGuid) != null);

                    if (_licenseHandler.SetSuperDogGuid(newSuperDogGuid))
                    {
                        _keyWriterViewModel.SuperDogGuid = newSuperDogGuid;

                        var superDogDate = _licenseHandler.GetSuperDogDate();

                        var superDog = new SuperDog
                        {
                            SuperDogGuid = newSuperDogGuid,
                            CreateDate   = superDogDate.ToString("yyyy-MM-dd"),
                            UpdateDate   = superDogDate.ToString("yyyy-MM-dd")
                        };

                        superDog = _superDogDb.AddSuperDog(superDog);

                        _keyWriterViewModel.CreateDate = superDog.CreateDate;
                        _keyWriterViewModel.UpdateDate = superDog.UpdateDate;
                    }
                    else
                    {
                        message = "超级狗唯一标识写入失败,格式化未完成";
                    }
                }

                MessageBox.Show(message);
            }
        }
コード例 #5
0
        private void SuperDogWrite()
        {
            if (string.IsNullOrEmpty(_keyWriterViewModel.SuperDogGuid))
            {
                MessageBox.Show("尚未读取超级狗信息");
                return;
            }

            var superDogType = 0;

            foreach (var each in _keyWriterViewModel.DogTypes)
            {
                if (each.IsIncluded)
                {
                    superDogType += each.TypeValue;
                }
            }

            if (superDogType == 0)
            {
                MessageBox.Show("尚未设置超级狗类型");
                return;
            }

            if (string.IsNullOrEmpty(_keyWriterViewModel.MachineCode))
            {
                MessageBox.Show("尚未设置机器特征码");
                return;
            }

            if (string.IsNullOrEmpty(_keyWriterViewModel.ExpireDate))
            {
                MessageBox.Show("尚未设置过期日期");
                return;
            }

            if (MessageBox.Show("确定将信息写入超级狗?", "", MessageBoxButton.YesNo) != MessageBoxResult.Yes)
            {
                return;
            }

            try
            {
                Manufacturer manufacturer = null;
                if (CbxManufacturer.SelectedIndex == -1 && !string.IsNullOrEmpty(CbxManufacturer.Text))
                {
                    manufacturer = _superDogDb.AddManufacturer(new Manufacturer {
                        Name = CbxManufacturer.Text
                    });
                    if (manufacturer != null)
                    {
                        _keyWriterViewModel.Manufacturers.Add(new ManufacturerViewModel(manufacturer.Id, manufacturer.Name));
                        _keyWriterViewModel.ManufacturerId = manufacturer.Id;
                    }
                }

                var flagSetSuperDogType   = _licenseHandler.SetSuperDogType(superDogType);
                var flagSetMachineCode    = _licenseHandler.SetMachineCode(_keyWriterViewModel.MachineCode);
                var flagSetExpireDate     = _licenseHandler.SetExpireDate(Convert.ToDateTime(_keyWriterViewModel.ExpireDate));
                var flagSetManufacturerId = _licenseHandler.SetManufacturerId(manufacturer != null ? manufacturer.Id : 0);

                if (!flagSetSuperDogType)
                {
                    MessageBox.Show("写入超级狗类型发生错误");
                }

                if (!flagSetMachineCode)
                {
                    MessageBox.Show("写入机器特征码发生错误");
                }

                if (!flagSetExpireDate)
                {
                    MessageBox.Show("写入过期日期发生错误");
                }

                if (!flagSetManufacturerId)
                {
                    MessageBox.Show("写入厂商发生错误");
                }

                if (flagSetSuperDogType && flagSetMachineCode && flagSetExpireDate && flagSetManufacturerId)
                {
                    var superDog = new SuperDog
                    {
                        SuperDogGuid   = _keyWriterViewModel.SuperDogGuid,
                        SuperDogType   = superDogType,
                        MachineCode    = _keyWriterViewModel.MachineCode,
                        UpdateDate     = _licenseHandler.GetSuperDogDate().ToString("yyyy-MM-dd"),
                        ExpireDate     = _keyWriterViewModel.ExpireDate,
                        ManufacturerId = _keyWriterViewModel.ManufacturerId,
                        User           = _keyWriterViewModel.User,
                        Remark         = _keyWriterViewModel.Remark
                    };

                    _superDogDb.ModifySuperDog(superDog);
                }

                MessageBox.Show("写入完成");
            }
            catch
            {
                MessageBox.Show("写入超级狗信息发生错误");
            }
        }