диплом (Программный комплекс учета техники для отдела информатизации и связи Арбитражного суда Хабаровского края), страница 6
Описание файла
Файл "диплом" внутри архива находится в следующих папках: Программный комплекс учета техники для отдела информатизации и связи Арбитражного суда Хабаровского края, Машнин. Документ из архива "Программный комплекс учета техники для отдела информатизации и связи Арбитражного суда Хабаровского края", который расположен в категории "". Всё это находится в предмете "дипломы и вкр" из 8 семестр, которые можно найти в файловом архиве ДВГУПС. Не смотря на прямую связь этого архива с ДВГУПС, его также можно найти и в других разделах. .
Онлайн просмотр документа "диплом"
Текст 6 страницы из документа "диплом"
Пример команды для создания таблицы member_directory:
CREATE TABLE IF NOT EXISTS `member_directory` (
`memberID` INT(11) NOT NULL AUTO_INCREMENT'',
`member` VARCHAR(45) NOT NULL'',
`location` VARCHAR(45) NOT NULL'',
`kab` VARCHAR(45) NOT NULL'',
`work_phone` VARCHAR(45) NULL DEFAULT NULL'',
`date` DATE NOT NULL'',
`is_default` TINYINT(1) NULL DEFAULT NULL'',
PRIMARY KEY (`memberID`) '')
Пример команды для создания таблицы status:
CREATE TABLE IF NOT EXISTS `status` (
`statusID` INT(11) NOT NULL'',
`cur_status` VARCHAR(45) NOT NULL'',
PRIMARY KEY (`statusID`) '')
Пример команды для создания таблицы user_perrmision:
CREATE TABLE IF NOT EXISTS `user_perrmision` (
`id` INT(11) NOT NULL AUTO_INCREMENT '',
`permission` VARCHAR(45) NOT NULL COMMENT '',
PRIMARY KEY (`id`) ‘‘)
Пример команды для создания таблицы users:
CREATE TABLE IF NOT EXISTS `users` (
`idUsers` INT(11) NOT NULL AUTO_INCREMENT '',
`UserName` VARCHAR(45) NOT NULL '',
`Password` VARCHAR(45) NOT NULL '',
`user_perrmision_id` INT(11) NOT NULL '',
PRIMARY KEY (`idUsers`) ‘‘‘)
Пример команды для создания таблицы history:
CREATE TABLE IF NOT EXISTS `history` (
`idHistroy` INT(11) NOT NULL AUTO_INCREMENT '',
`history` VARCHAR(45) NOT NULL '',
`date` DATETIME NOT NULL '',
`equipment_id` INT(11) NOT NULL '',
`users_idUsers` INT(11) NOT NULL '',
PRIMARY KEY (`idHistroy`) ‘‘)
ПРИЛОЖЕНИЕ Б
(справочное)
Листинги функций класса AddComponents
Листинг 1. Функция получения брэнда оборудования
private void GetName()
{
if (OnConnection())
{
try
{
/* Формирование SQL-запроса на получение брэнда оборудования по категории */
string query = @"select brand from equipment
where category_id = @cat_id";
/* Создание экземпляра класса AutoCompleteStringCollection для создания списка автозаполнения */
AutoCompleteStringCollection myCollection = new AutoCompleteStringCollection();
MySqlDataAdapter mda = new MySqlDataAdapter(qeury, conn);
// Подстановка значений в SQL-запрос из заданного поля mda.SelectCommand.Parameters.AddWithValue("@cat_id", getCatID);
/* Создание нового экземпляра для хранения данных полученные из базы данных в кэше */
DataSet ds = new DataSet();
// Заполнение кэша данными из таблицы category
mda.Fill(ds);
/* Перечисление данных в заполненном кэше и добавление информацию о брэндах в коллекцию */
foreach (DataRow dr in ds.Tables[0].Rows)
{
myCollection.Add(dr["brand"].ToString());
}
// Присваивание полю Brand заполненную коллекцию
Brand.AutoCompleteCustomSource = myCollection;
CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Листинг 2. Функция получения модели оборудования
private void GetModel()
{
CloseConnection();
if (OnConnection())
{
try
{
/* Формирование SQL-запроса на получение модели оборудования по выбранному брэнду */
string query = "SELECT model from equipment where brand = @brand";
/* Создание экземпляра класса AutoCompleteStringCollection для создания списка автозаполнения */
AutoCompleteStringCollection myCollection = new AutoCompleteStringCollection();
MySqlDataAdapter mda = new MySqlDataAdapter(query, conn);
// Подстановка значений в SQL-запрос из заданного поля mda.SelectCommand.Parameters.AddWithValue("@brand", Brand.Text);
/* Создание нового экземпляра для хранения данных полученные из базы данных в кэше */
DataSet ds = new DataSet();
// Заполнение кэша данными из таблицы category
mda.Fill(ds);
/* Перечисление данных в заполненном кэше и добавление информацию о брэндах в коллекцию */
foreach (DataRow dr in ds.Tables[0].Rows)
{
myCollection.Add(dr["model"].ToString());
}
// Присваивание полю Model заполненную коллекцию
Model.AutoCompleteCustomSource = myCollection;
CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Листинг 3. Функция получения информации о сотрудниках
void GetMemberFullInfo()
{
CloseConnection();
if (OnConnection())
{
try
{
/* Формирование SQL-запроса на получение списка сотрудников */
string qeury = "SELECT * FROM member_directory";
AutoCompleteStringCollection modelColl = new AutoCompleteStringCollection();
MySqlDataAdapter mda = new MySqlDataAdapter(qeury, conn);
bool isFind = false;
// Создание 2 коллекции типа Dictionary для
Dictionary<string, string> dataSet = new Dictionary<string, string>();
Dictionary<string, string> allValue = new Dictionary<string, string>();
/* Создание нового экземпляра для хранения данных полученные из базы данных в кэше */
DataSet ds = new DataSet();
mda.Fill(ds);
// Перечисление данных в заполненном кэше
foreach (DataRow dr in ds.Tables[0].Rows)
{
// Заполнение временных полей полученными данными
string location = dr["location"].ToString();
string kab = dr["kab"].ToString();
string member = dr["member"].ToString();
bool isDefault = Convert.ToBoolean(dr["is_default"].ToString());
string fullInfo = string.Format("{0} - {1}_{2}", member, location, kab);
string id = dr["memberID"].ToString();
// Заполнение коллекцию данными по уникальному идентификатору
allValue[id] = fullInfo;
// Перечисление данных из заполненной коллекции allValue
foreach (KeyValuePair<string, string> kvp in allValue)
{
/* Проверка, в случае если коллекция dataset не содержит в себе ключ (id), то добавляется данные с этим ключом */
if (!dataSet.ContainsKey(kvp.Key))
dataSet[kvp.Key] = kvp.Value;
}
}
/* Присваивание полю Member ссылку в виде источника на заполненную коллекцию dataset */
Member.DataSource = new BindingSource(dataSet, null);
// В качестве отображаемых данных устанавливает тип «Value»
Member.DisplayMember = "Value";
// В качестве id устанавливает тип «Key»
Member.ValueMember = "Key";
CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Листинг 4. Добавление введенной информации в базу данных
void AddEquipment()
{
CloseConnection();
if (OnConnection())
{
try
{
if (!ExtendedAddComp.Checked)
{
/* Формирование SQL-запроса на добавление данных в базу */
string qeury = @"INSERT INTO equipment (brand, model, category_id, date_delivery, guarantee, serial_number,member_directory_id) values (@brand, @model, @cat_id, @date_del, @guar, @sn, @mem_id)";
// создание объекта команды и получение данных из функции AddBaseEquipment
MySqlCommand cmd = AddBaseEquipment(qeury);
// Выполнение SQL-команды
cmd.ExecuteNonQuery();
}
else
{
string qeury = @"INSERT INTO equipment (brand, model, category_id, date_delivery, guarantee, serial_number, date_installation, work_nubmer, is_set, member_directory_id) values (@brand, @model, @cat_id, @date_del, @guar, @sn, @date_ins, @wn, @set, @mem_id)";
MySqlCommand cmd = AddBaseEquipment(qeury);
cmd.ExecuteNonQuery();
}
CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
MySqlCommand AddBaseEquipment(string qeury)
{
// Создание объекта команды
MySqlCommand cmd = new MySqlCommand(qeury, conn);
var param = cmd.Parameters;
// Подстановка значений в SQL-запрос из заданного поля
param.AddWithValue("@brand", Brand.Text);
param.AddWithValue("@model", Model.Text);
param.AddWithValue("@cat_id", getCatID);
param.AddWithValue("@date_del", dateTimePicker1.Value.ToString("yyyyMMdd"));
param.AddWithValue("@sn", SN.Text);
param.AddWithValue("@mem_id", Member.SelectedValue);
param.AddWithValue("@wn", WorkNumber.Text);
param.AddWithValue("@date_ins", dateTimePicker2.Value.ToString("yyyyMMdd"));
param.AddWithValue("@set", IsSet.Checked);
/* Создание поля типа класса DateTime и добавление к нему введенных данных в поле гарантия */
DateTime guarantee = dateTimePicker1.Value.AddMonths(Convert.ToInt32(guar.Text));
param.AddWithValue("@guar", guarantee.ToString("yyyyMMdd"));
return cmd;
}
ПРИЛОЖЕНИЕ В
(справочное)
Листинги функций класса FullInfo
Листинг 1. Получение полной информации выбранного оборудования
void GetFullInfo()
{
if (OnConnection())
{
try
{
string id = getID;
/* Формирование SQL-запроса на добавление данных в базу */
string qeury = @"select * from equipment join member_directory, status where equipment.id = @id and member_directory_id = memberID and status_id = statusID";
MySqlDataAdapter mda = new MySqlDataAdapter(qeury, conn);
mda.SelectCommand.Parameters.AddWithValue("@id", id);
/* Создание нового экземпляра для хранения данных полученные из базы данных в кэше */
DataSet ds = new DataSet();
mda.Fill(ds);
// Обнуление полей
string brand = string.Empty;
string model = string.Empty;
string sn = string.Empty;
string wn = string.Empty;
string member = string.Empty;
string kab = string.Empty;
string street = string.Empty;
string dateDel = string.Empty;
string guar = string.Empty;
string dateIns = string.Empty;
bool is_Set = false;
string location = string.Empty;
string curStatus = string.Empty;
/* Перечисление данных в заполненном кэше и заполнение полей полученными данными */
foreach (DataRow dr in ds.Tables[0].Rows)
{
brand = dr["brand"].ToString();
model = dr["model"].ToString();
sn = dr["serial_number"].ToString();
wn = dr["work_nubmer"].ToString();
member = dr["member"].ToString();
kab = dr["kab"].ToString();
street = dr["location"].ToString();
dateDel = dr["date_delivery"].ToString();
guar = dr["guarantee"].ToString();
dateIns = dr["date_installation"].ToString();
is_Set = Convert.ToBoolean(dr["is_set"].ToString());
curStatus = dr["statusID"].ToString();
location = string.Format("ул. {0} каб. {1}", street, kab);
}
// Присваивание заполненные значения в поля формы
Brand.Text = brand;
Model.Text = model;
SN.Text = sn;
WN.Text = wn;
Member.Text = member;
Loc.Text = location;
date_delivery.Value = Convert.ToDateTime(dateDel);
guarantee.Value = Convert.ToDateTime(guar);
date_installation.Value = Convert.ToDateTime(dateIns);
isSet.Checked = is_Set;
CloseConnection();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Листинг 2. Обновление информации в базе данных
private void button1_Click(object sender, EventArgs e)
{
if (OnConnection())
{
try
{
string id = getID;
// Формирование SQL-запроса на обновление инвентарного номера в базе