Разработка информационной подсистемы управления доступом к электронным ресурсам компьютерной сети для ООО "Еврософт", г. Ставрополь

Характеристика предприятия и выбор инструментальной среды разработки информационной подсистемы, ее реализация. Обоснование минимальных и достаточных требований к техническому обеспечению. Экономическая целесообразность и эффективность внедрения проекта.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 29.06.2011
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Язык программирования - С++. Число операторов программы
= 1496 ед.

Ориентировочный срок службы программы до морального старения 4 года.

В этом разделе рассмотрены вопросы расчета:

- трудоемкости выполняемых работ;

- суммарных затрат на создание программного продукта;

- экономии, достигаемой, в результате перехода от ручной обработки информации на автоматизированную обработку;

- чистого дисконтированного дохода при использовании программного продукта;

- внутренней нормы доходности проекта и времени его окупаемости.

4.2 Трудоемкость выполняемых работ

Создание программного продукта предполагает разработку программ и всей программной документации, предусмотренной техническим заданием.

Результатом выполнения каждой работы является документированная отчетность в виде текстовых документов или программ.

Трудоемкость разработки программного обеспечения ТПО, чел.- ч., определяется по формуле:

ТПО = ТО + ТИ + ТА + ТП + ТОТЛ + ТД, (4.1)

где ТО - затраты труда на описание задачи, чел.-ч.;

ТИ - затраты на исследование предметной области, чел.-ч.;

ТА - затраты на разработку блок-схем, чел.-ч.;

ТП - затраты на программирование, чел.-ч.;

ТОТЛ - затраты на отладку, чел.-ч.;

ТД - затраты на подготовку документации, чел.-ч.

Условное число операторов определяется через общее число операторов D, ед.:

D = б•c • (1 + p), (4.2)

где б - число операторов, ед. (б = 1496 ед.);

с ? коэффициент сложности задачи;

р - коэффициент коррекции программы, учитывающий новизну проекта.

Коэффициент сложности задачи «с» характеризует относительную сложность программы по отношению к так называемой типовой задаче, реализующей стандартные методы решения, сложность которой принята равной единице (величина коэффициента «с» лежит в пределах от 1,25 до 2). Для рассматриваемого программного продукта коэффициент сложности задачи равен 1,7 (c = 1,7).

Коэффициент «p» коррекции программы, учитывающий новизну проекта, количественно характеризует увеличение объема работ по реализации программного продукта, возникающего за счет внесения изменений в алгоритм или в тексте программы по результатам её тестирования и отладки. Так как программный продукт разрабатывался как новый проект, то коэффициент «p» коррекции программы равен 0,1.

В результате подстановки численных значений коэффициентов и параметров в формулу (4.2) получим следующее общее число операторов:

D = 1496• 1,7• (1 + 0,1) = 2797,52 ед.

Затраты труда на описание задачи принимаем: ТО = 40 чел.-ч. Работу по описанию задачи выполняет инженер-программист с окладом 6000 руб. в месяц и коэффициентом квалификации kК = 0,8 (опыт работы по специальности до 2 лет).

Затраты труда на изучение задачи ТИ с учетом уточнения описания и квалификации программиста могут быть определены по формуле:

ТИ = (D•b)/(sи•kк), (4.3)

где D - общее число операторов, ед.;

b - коэффициент увеличения затрат труда, вследствие недостаточного описания задачи;

sи - количество операторов, приходящееся на один чел.-ч., (ед./ чел.-ч.);

kK - коэффициент квалификации работника (определяется в зависимости от стажа работы).

В связи с тем, что решение рассматриваемой задачи потребовало уточнения поставленной задачи, то коэффициент b = 1,35.

Количество операторов, приходящееся на один чел.-ч., sи = 75.

Таким образом, на основании формулы (4.3), затраты труда на изучение задачи равняются:

ТИ = (2797,52 •1,35) / (75•0,8) = 62,94 чел.-ч.

Затраты труда на разработку алгоритма решения задачи ТА, чел.-ч., рассчитывается по формуле:

, (4.4)

где D - общее число операторов, ед.;

sa - количество операторов алгоритма решения задачи, приходящееся
на один чел.-ч., (ед./ чел.-ч.). В данном случае sa = 22 ед./ чел.-ч;

kK - коэффициент квалификации работника (определяется в зависимости от стажа работы).

Подставив численные значения параметров и коэффициентов в формулу (4.4), затраты труда на разработку алгоритма решения задачи равняются:

ТА = 2797,52 /(22 • 0,8) = 158,95 чел.-ч.

Затраты труда на составление программы по готовой блок-схеме ТП определяется по формуле:

, (4.5)

где D - общее число операторов, ед.;

sп - количество операторов алгоритма решения задачи, приходящееся
на один чел.-ч., (ед./ чел.-ч.). В данном случае sп = 25 ед./ чел.-ч;

kK - коэффициент квалификации работника (определяется в зависимости от стажа работы).

Подставив численные значения параметров и коэффициентов в формулу (4.5), затраты труда на составление программы по готовой блок-схеме составляют:

ТП = 2797,52/ (25•0,8) = 139,88 чел.-ч.

Затраты труда на отладку программы на персональном компьютере ТОТЛ, чел.-ч., рассчитывается по формуле:

, (4.6)

где D - общее число операторов, ед.;

sотл - количество отлаживаемых операторов программы, приходящееся на один чел.-ч., (ед./ чел.-ч.), для данной задачи sотл =5;

kK - коэффициент квалификации работника (определяется в зависимости от стажа работы).

Подставив численные значения параметров и коэффициентов в формулу (4.6), затраты труда на отладку программы составляют:

ТОТЛ = 2797,52 / (5•0,8) = 699,38 чел.-ч.

Затраты труда на подготовку документации по задаче Тд определяются по формуле:

, (4.7)

где ТДР - затраты труда на подготовку материалов в рукописи, чел.-ч.;

ТДО - затраты труда на редактирование, печать и оформление документации, чел.-ч.

Затраты труда на подготовку материалов в рукописи ТДР, чел.-ч., вычисляются по формуле:

, (4.8)

где sдр - количество операторов программы в рукописи, приходящееся на один чел.-ч., (ед./ чел.-ч.). В данном случае sдр = 15 ед./ чел.-ч;

kK - коэффициент квалификации работника (определяется в зависимости от стажа работы).

Подставив численные значения параметров и коэффициентов в формулу (4.8), затраты труда на подготовку материалов в рукописи равны:

ТДР = 2797,52/ (15•0,8) = 233,13 чел.-ч.

Затраты труда на редактирование, печать и оформление документации ТДО, чел.-ч., вычислим по формуле:

. (4.9)

Подставив численные значения параметров и коэффициентов в формулу (4.9), затраты труда на редактирование, печать и оформление документации составляют:

ТДО = 0,75•233,13= 174,85 чел.-ч.

Таким образом, затраты труда на подготовку документации по задаче составляют:

ТД = 233,13 + 174,85 = 407,98 чел.-ч.

Подставив все полученные данные в формулу (4.1), получим полную трудоемкость разработки программного обеспечения:

ТПО = 40,0 + 62,94 + 158,95 + 139,88 + 699,38 + 407,98 = 1509,13 чел.-ч.

С учетом уровня языка программирования трудоемкость разработки программы может быть скорректирована следующим образом:

, (4.10)

где kКОР - коэффициент коррекции, учитывающий изменения трудоемкости разработки программного обеспечения в зависимости уровня языка программирования (таблица 4.1).

Таблица 4.1 - Изменение трудоемкости в зависимости уровня языка программирования

Уровень языка

программирования

Характеристика языка

программирования

Коэффициент изменения трудоемкости

1

Ассемблер

1

2

Макроассемблер

0,95

3

Алгоритмические языки высокого уровня

0,8 ? 0,9

Использованный для разработки программного обеспечения язык программирования С++ относится к алгоритмическим языкам высокого уровня, с учетом этого примем kКОР = 0,8.

Окончательно, трудоемкость разработки программы с учетом корректировки равняется:

ТКОР = 1509,13 •0,8 = 1207,3 чел.-ч.

4.3 Расчет себестоимости автоматизированной информационной системы

Себестоимость создания автоматизированной информационной системы определяется по следующим статьям калькуляции:

- основная заработная плата производственного персонала;

- дополнительная заработная плата производственного персонала;

- отчисления в социальные фонды;

- затраты на потребляемую электроэнергию;

- расходы на материалы и запасные части;

- затраты на амортизацию и ремонт вычислительной техники.

Плановый фонд рабочего времени одного специалиста производственного персонала в месяц tпф, ч, вычисляется по формуле:

tпф = NрдДtрд, (4.11)

где Nрд - количество рабочих дней специалиста производственного персонала за месяц;

Дtрд - продолжительность рабочего дня специалиста производственного персонала, ч.

Для расчетов по формуле (4.11) необходимо принять Nрд = 22 дня, Дtрд = 8 ч. Подставив указанные численные значения параметров Nрд и Дtрд в формулу (4.11) получится, что плановый фонд рабочего времени одного специалиста производственного персонала в месяц составляет:

tпф = 22 • 8 = 176 ч.

Таким образом, часовая тарифная ставка sч, руб./ч, инженера-программиста первой категории составляет:

sч = 6000 / 176= 34,09 руб./ч.

Основная заработная плата ЗО, руб., производственного персонала определяется по формуле:

ЗО = sч • ТКОР. (4.12)

Подставив все численные значения параметров в формулу (4.12) получим, что основная заработная плата инженера-программиста составит:

ЗО = 34,09•1207,3 = 41156,86 руб.

Дополнительная заработная плата ЗД, руб., производственного персонала определяется по формуле:

ЗД = ЗОзД, (4.13),

где зД - коэффициент дополнительной заработной платы.

Коэффициент дополнительной заработной платы инженера-программиста составляет зД = 0,1. Таким образом, дополнительная заработная плата ЗД, руб., инженера-программиста, вычисленная по формуле (4.13), равна:

ЗД = 41156,86 •0,1 = 4115,69 руб.

Отчисления в социальные фонды, ЗС, руб.:

, (4.14)

где ? норматив социальных отчислений, %.

В соответствии с Федеральным законом норматив социальных отчислений зС = 34 %. Подставив все численные значения в формулу (4.14) получим, что отчисления в социальные фонды равны:

ЗС = = 15392,67 руб.

Таким образом, единый социальный налог составит 15392,67 руб.

Затраты на потребляемую электроэнергию ЗЭ, руб.:

ЗЭ = PВ tВ sЭ, (4.15)

где PВ - мощность ЭВМ, кВт;

tВ - время работы вычислительного комплекса, ч;

sЭ - стоимость 1 кВтч электроэнергии, руб./ кВтч.

Мощность ЭВМ, на которой работает инженер-программист, равна
PВ = 0,3 кВт.

Время работы вычислительного комплекса tв, ч, при создании программного продукта вычисляется по формуле:

tв = бп•(ТП + ТД + ТОТЛ)•, (4.16)

где бп - коэффициент, учитывающий затраты времени на профилактические работы на ЭВМ. В данном случае бп = 1,15.

Подставив все численные значения параметров в формулу (4.16), время работы вычислительного комплекса рано:

tВ = 1,15• (139,88 + 407,98 + 699,38) = 1434,33 ч.

Стоимость 1 кВтч электроэнергии составляет sЭ = 2,82 руб./ кВтч.

Подставив все численные значения параметров в формулу (4.15), затраты на потребляемую электроэнергию составят:

ЗЭ =0,3•1434,33 •2,82 = 1213,44 руб.

Расходы на материалы составляют 30 руб. Это стоимость одного CD-R. Таким образом, ЗМ = 30,00.

Затраты на ремонт вычислительной техники ЗП, руб.:

, (4.17)

где КВ ? балансовая стоимость вычислительной техники, руб. В данном случае

= 10000,00 руб.;

б - норма отчислений на ремонт, %. В данном случае б = 4%;

tВ.Г - годовой фонд времени работы вычислительной техники, ч. В данном случае tВ.Г = 2112 ч.

Подставив все численные значения параметров в формулу (4.17), затраты на техническое обслуживание и текущий ремонт вычислительной техники составят:

ЗП = 10000 •0,04 • (1434,33/2112) = 271,65 руб.

Затраты на амортизацию ЗАМ , руб.:

ЗАМ = Кв, (4.18)

где - норма отчислений на амортизацию, %. В данном случае = 12,5%;

Подставив значения в формулу (4.18) затраты на амортизацию составят:

ЗАМ = 10000 •0,125 • (1434,33/2112) = 848,92 руб.

Полные затраты на создание программного продукта, З, руб.:

З = ЗО + ЗД + ЗС + ЗЭ + ЗМ + ЗП + ЗАМ (4.19)

Подставив данные в формулу (4.19), полные затраты на создание программного продукта составят:

З=41156,86+4115,69+15392,67 + 1213,44 + 30,00 + 271,65 +848,92=63029,23 руб.

Таким образом, полные затраты на создание программного продукта составляют 63029,23руб.

Поскольку разработка программного продукта ведется и инженером-программистом информационного отдела предприятия, оптовая и договорная цена программного продукта не определяется. Капиталовложения при внедрении программного продукта рав-няются его себестоимости.

4.4 Оценка экономической эффективности внедрения программного продукта

Показатель эффективности определяет все позитивные результаты, достигаемые при использовании программного продукта. Прибыль от использования программного продукта за год определяется по формуле (4.20).

П = Э - З, (4.20)

где Э - стоимостная оценка результатов применения программного продукта в течение года, руб.;

З - стоимостная оценка затрат при использовании программного продукта в течение года, руб.

Приток денежных средств из-за использования программного продукта Э, руб., в течение года может составить:

Э = (ЗРУЧ - ЗАВТ) + ЭДОП, (4.21)

где ЗРУЧ - затраты на ручную обработку информации, руб.;

ЗАВТ - затраты на автоматизированную обработку информации, руб.;

ЭДОП - дополнительный экономический эффект, связанный с уменьшением числа используемых бланков, высвобождением рабочего времени и т. д., руб.

Данный продукт используется сотрудником предприятия ООО «Еврософт», г. Ставрополь. Оклад сотрудника - 6000 руб., премиальный фонд - 50% от оклада. Цена одного часа работы составляет:

sЧ = (6000+6000Ч0,5)/176 = 51,14 руб./ч.

Затраты на ручную обработку информации, руб., определяется по формуле:

Зручн = tр sч kд, (4.22)

где tр - время, затрачиваемое на обработку информации вруч-ную, ч;

sч - цена одного часа работы оператора, руб.;

kд = 1 - коэффициент, учитывающий дополнительные затраты

времени на логические операции.

Затраты на автоматизированную обработку информации, руб., определяется по формуле:

Завт=tа sч kд , (4.23)

где tа - затраты времени на автоматизированную обработку той же самой информации, ч.

Общие затраты времени на ручную обработку информации в месяц tр, ч, составляют tр = 100 ч, а общие затраты на автоматизированную обработку информации - tа = 4 ч.

Подставив значения в формулу (4.22), получим:

ЗРУЧ =100•51,14 •1 = 5114 руб.

Подставив значения в формулу (4.23), получим:

ЗАВТ =4•51,14 •1 = 204,56 руб.

Следовательно, приток денежных средств от внедрения программного продукта за месяц, даже без учета дополнительный экономический эффекта (ЭДОП = 0), на основании формулы (4.21), получится равным

Э = ЗРУЧН - ЗАВТ = 5114 - 204,56 = 4909,44 руб.

Та же величина за год будет иметь значение 58913,28 руб.

Эксплуатационные затраты при использовании программного продукта будут состоять из затрат на электроэнергию, техничес-кое обслуживание, текущий ремонт вычислительно техники и затраты на амортизацию вычислительной техники.

На основании формулы (4.15), для персонального компьютера сотрудника ООО «Еврософт» за 12 месяцев затраты на электроэнергию при по-требляемой мощности компьютера PВ =0,3 кВт составят (стоимость электроэнергии sЭ =2,82 руб./кВт-ч.):

ЗЭ = 0,3•4•12•2,82 = 40,61 руб.

Балансовая стоимость вычислительной техники = 10000,00 руб. Тогда, на основании формул (4.17) и (4.18), для персонального компьютера сотрудника ООО «Еврософт» за 12 месяцев затраты на амортизацию и текущий ремонт составят:

ЗП = 10000 •0,04 • (4•12/2112) = 9,09 руб.

Затраты на амортизацию вычислительной техники:

ЗАМ = 10000 •0,125 • (4•12/2112) = 28,41 руб.

Тогда, эксплуатационные затраты при использовании программного продукта составят:

З = ЗЭ + ЗП + ЗАМ = 40,61 + 9,09 +28,41 = 78,11 руб.

Прибыль рассчитаем по формуле (4.20):

П = Э - З = 58913,28 - 78,11 = 58834,89 руб.

Таким образом, мы имеем следующий денежный поток:

0 шаг (капиталовложения) - 63029,23 руб.;

1 шаг - 58834,89 руб.;

2 шаг - 58834,89 руб.;

3 шаг - 58834,89 руб.;

4 шаг - 58834,89 руб.;

Срок окупаемости проекта рассчитывается по формуле (4,24)

(4.24)

где K - капиталовложения при внедрении программного продукта, руб.;

П - прибыль от использования программного продукта за год его эксплуатации, руб.

Срок окупаемости проекта TОК, год, составит:

TОК = 63029,23 / 58834,89 =1,07 года.

Чистый дисконтированный доход от использования программного продукта ЧДД , руб., определяют по формуле (4,25)

, (4.25)

где n - расчетный период, год;

- прибыль от использования программного продукта за k-й год его эксплуатации, руб.;

Е = 20 % - норма дисконта;

K - капиталовложения при внедрении программного продукта (принимается равным затратам на создание программного продукта), руб.

Чистый дисконтированный доход за 2 года использования программного продукта (так как продукт окупается в течении двух лет) при норме дисконта 20% составит:

4.5 Основные технико-экономические показатели проекта

Для удобства анализа, все основные технико-экономические показатели проекта сведены в таблицу 4.5.

Таблица 4.5 ? Основные технико-экономические показатели проекта

Основные характеристики

Единицы

измерения

Проект

Итоговая трудоемкость разработки

чел.-ч.

1207,3

Полные затраты на создание программного продукта

руб.

63029,23

Годовой экономический эффект от внедрения программного продукта

руб.

58913,28

Прибыль от внедрения и использования программного продукта

руб.

58834,89

Срок окупаемости проекта

год

1,07

Выводы

1. Итоговая трудоемкость разработки программного продукта составляет 1207,3чел.-ч.

2. Полные затраты на создание программного продукта 63029,23 руб.

3. Годовой экономический эффект от внедрения программного продукта составляет 58913,28 руб.

4. Прибыль от внедрения и использования программного продукта 58834,89 руб.

5. Срок окупаемости проекта 1,07 года.

6. После внедрения программного продукта ежемесячные затраты времени администратора компьютерного зала, связанных с контролем за несанкционированное использование информационных ресурсов клиентами компьютерных залов, сократились с 100 до 4 часов.

5. БЕЗОПАСНОСТЬ И ЭКОЛОГИЧНОСТЬ ПРОЕКТА

5.1 Общая характеристика опасных, вредных факторов на рабочем месте оператора информационной подсистемы

В настоящее время компьютерная техника широко применяется во всех областях деятельности человека. При работе с компьютером человек подвергается воздействию ряда опасных и вредных производственных факторов: повышенное зрительное напряжение, костно-мышечные напряжения, электромагнитные поля, выделение вредных веществ, тепловыделения.

Повышенная нагрузка на зрение способствует возникновению близорукости, приводит к переутомлению глаз, к мигрени и головной боли, повышает раздражительность, нервное напряжение, может вызвать стресс.

В комплексе причин, отрицательно влияющих на зрение оператора вычислительной техники, в первую очередь следует выделить недостаточную контрастность изображения на экране, связанную с временной нестабильностью, излишнюю яркость монитора, а также блики и отраженный свет на поверхности дисплея. Кроме того, зрение сильно страдает от частого переноса взгляда с ярко освещенного экрана на менее освещенную клавиатуру и документацию, что вместе с другими причинами приводит в конечном итоге к утомляемости глаз - к астенопии.

Важным фактором, определяющим степень зрительного утомления, является также освещение рабочих мест и помещений, где расположены компьютеры.

Выполнение многих операций вынуждает оператора (в меньшей степени программистов и наладчиков) пребывать в позах, требующих длительного статического напряжения мышц спины, шеи, рук, ног, что приводит к их утомлению. Болезненные ощущения в различных группах мышц связаны с тем, что они, постоянно находясь в состоянии сокращения, не расслабляются, вследствие чего в них ухудшается кровообращение. Питательные вещества, переносимые кровью, поступают в мышцы недостаточно быстро, с другой стороны, в мышечных тканях накапливаются продукты распада, что в конечном итоге приводит к болезненности.

Причиной болезней пальцев и кистей рук является специфика работы на клавиатуре: пользователи с высокой скоростью повторяют одни и те же движения. Поскольку каждое нажатие на клавишу сопряжено с сокращением мышц, сухожилия непрерывно скользят вдоль костей и соприкасаются с тканями, в результате развиваются воспалительные процессы. Подобные болезни развиваются также в плечевом суставе и в руке, когда приходится долго манипулировать «мышью».

На пользователя ЭВМ потенциально воздействуют электромагнитные поля (ЭМП), возникающие в видеодисплейных терминалах во время эксплуатации, так они могут быть причиной возникновения кожных сыпей, помутнения хрусталика глаза, патологии беременности и других серьезных нарушений здоровья.

Видеотерминалы являются источником широкого спектра электромагнитных излучений: рентгеновского, ультрафиолетового (УФ), видимого спектра, инфракрасного (ИК), радиочастот, очень низких частот, включая промышленную. Кроме того, они создают аэроионные потоки и электростатическое поле.

Воздух рабочей зоны при использовании вычислительной техники загрязняется некоторыми вредными продуктами выделения пластических масс, из которых изготовлены корпус компьютера и ряд его деталей.

Ввиду того, что видеотерминалы являются источником тепловыделения, при неправильном тепловом режиме помещения это приводит к повышению температуры и к уменьшению влажности воздуха на рабочих местах, что вызывает дискомфорт, снижает работоспособность, повышает утомляемость, способствует появлению зуда и раздражения кожи.

5.2 Общие мероприятия по обеспечению безопасности на рабочем месте

Кабинет, в котором работает оператор ПЭВМ, находится на третьем этаже здания, он рассчитан на четыре рабочих места. Помещение имеет следующие размеры: длина - 6,5 м, ширина - 5 м и высота - 2,5 м.

Таким образом, на одно рабочее место оператора приходится 8,125 м2 полезной площади и 20,31 м3 объема кабинета, что превышает установленную нормы.

В здании, где расположен кабинет, имеется система пожарной сигнализации, которая оповещает людей в офисе о пожаре или задымлении в помещении. Пульт управления выведен на КПП. Также в кабинете имеется порошковый огнетушитель. Для обеспечения возможности эвакуации людей в случае отключения рабочего освещения в здании имеется аварийное освещение.

В здании предусмотрено защитное заземление. Все провода имеют надёжную изоляцию.

В кабинете имеется одно окно размером 3,5м в ширину и 1,5м в высоту. Окно располагается с северной стороны. Для снижения яркости в поле зрения при естественном освещении применяются регулируемые жалюзи. Освещенность на поверхности стола в зоне размещения рабочего документа составляет 300 люкс.

Для обеспечения оптимальных параметров микроклимата проводятся регулярное в течение рабочего дня проветривание и ежедневная влажная уборка помещения.

Рабочее место оператора ПЭВМ представлено на рисунке 5.1. Конструкция рабочего стола обеспечивает оптимальное размещение на рабочей поверхности: монитора, клавиатуры и мыши. Рабочий стол имеет следующие размеры: длина - 1,3 м, ширина - 0,8 м, высота рабочей поверхности относительно пола - 0,7 м.

Компьютерное кресло имеет подвижную спинку, подлокотники, вращающее сидение, ролики и регулировку по высоте. Конструкция кресла дает возможность поддерживать рациональную рабочую позу при работе с ПЭВМ, позволяет изменять позу с целью снижения статистического напряжения мышц шейно-плечевой области. Поверхность сидения и спинки стула изготовлена из материала, обеспечивающего полумягкое, нескользящее, не электризующееся, воздухопроницаемое покрытие, которое легко очищается от загрязнения.

5.3 Расчет искусственного освещения в рабочем помещении

Целью расчета является определение типа, числа и расположения светильников и ламп, необходимых для требуемого уровня освещенности. Так как минимальным объектом различения при работе с ПЭВМ является пиксель - одна светящаяся точка, а ее размер составляет 0,28мм. В соответствии с нормой освещенности рабочей поверхности (СНиП 23-05-95) характеристика зрительной работы «Очень высокой точности». Следует также учесть, что продолжительность зрительной работы составляет больше половины рабочего дня. На основании этих данных заключаем, что зрительная работа имеет второй разряд с подразрядом «в».

Для искусственного освещения используются светильники типа ОД, каждый из которых содержит две лампы дневного света типа ЛД- 80, мощность лампы P = 80 Вт, световой поток Ф = 3800 лм. Световая отдача люминесцентной лампы в несколько раз больше, чем у ламп накаливания аналогичной мощности. Срок службы люминесцентных ламп может в 20 раз превышать срок службы ламп накаливания при условии обеспечения достаточного качества электропитания, балласта и соблюдения ограничений по числу включений и выключений.

Общая площадь помещения составляет 32,5 м2, потолок, пол и стены окрашены краской. Для расчета необходимого количества светильников воспользуемся методом коэффициентов использования светового потока. Метод светового потока сводится к определению количества светильников по следующей формуле:

N = (Eн•K •S •Z) / (Ф •), (5.1)

где Ен - (нормируемая минимальная освещённость на рабочем месте, лк, принятая по СНиП 23-05-950) Ен = 300лк;

К = 1,3 (коэффициент запаса освещенности);

S = 32,5 м2 (площадь помещения);

Z = 1,1 (коэффициент неравномерности освещения);

Ф = 7600 (световой поток светильника с двумя лампами типа ЛД-80, лм, таблица 5.2);

? коэффициент использования светового потока.

Для того чтобы определить , необходимо найти индекс помещения:

i = (А•В) / (Нр•(А + В)), (5.2)

где А = 6,5 и В = 5 (длина и ширина помещения, в метрах);

Нр - расчетная высота подвеса светильника, метрах:

Нр = h - hрп, (5.3)

где h = 2,45 (высота подвеса светильника (от пола до светильника, в метрах); hрп = 0,7 (высота рабочей поверхности над полом, в метрах);

Нр = 2,45 - 0,7 = 1,75 м. (5.4)

Подставив это значение в формулу (5.2), получим индекс помещения

i = (6,5•5) / (1,75•(6,5 + 5)) = 1,61. (5.5)

Требуемый нормативными документами коэффициент использования светового потока равняется = 0,52.

Подставив найденные значения в формулу (5.1), получим

N = (300•1,3•32,5•1,1) / (7600•0,52) = 13942,5/ 3952 ? 4 шт. (5.6)

Следовательно, для обеспечения требуемого уровня освещенности в рассматриваемом помещении необходимо четыре светильника типа ОД, каждый из которых содержит по две лампы типа ЛД-80.

Вычисления показали, что для искусственного освещения рабочего помещения площадью 32,5 м2 необходимое количество светильников равно четырем. Схема размещения светильников в рабочем помещении представлена ранее на рисунке 5.1.

Выводы

- В соответствии с принятыми нормами в рабочем помещении обеспечивается необходимый микроклимат, соблюдены все требования пожарной безопасности, соблюдены требования технической эстетики и требования к ПЭВМ. В рабочем помещении все значения описываемых параметров находятся в пределах допустимых норм.

- Расчеты показывают, что для обеспечения требуемого уровня освещенности, соответствующего нормам СНиП 23-05-95, в рассматриваемом помещении необходимо четыре светильника типа ОД.

- В целом условия труда в рассматриваемом помещении соответствуют общепринятым нормам, сотрудникам обеспечены комфорт и благоприятные условия труда.

Заключение

В результате дипломного проектирования был проведён анализ организационной структуры управления предприятием, выявлены основные программные и технические средства необходимые для функционирования информационных систем, выявлена проблемная ситуация и решена путём разработки новой информационной подсистемы управления доступом к электронным ресурсам компьютерной сети для ООО «Еврософт», г. Ставрополь.

В качестве среды разработки информационной подсистемы выбрана «Qt Creator». Разработанный алгоритм функционирования программного комплекса и способ хранения служебной информации полностью удовлетворяют требования заказчика. Программа прошла тестирование у сотрудников предприятия ООО «Еврософт», г. Ставрополь. Результаты тестирования показали, что информационная система отвечает всем предъявляемым к ней требованиям и готова к внедрению.

Полные затраты на создание программного продукта 63029,23 руб. Годовой экономический эффект от внедрения программного продукта составляет 58913,28 руб. Прибыль от внедрения и использования программного продукта 58834,89 руб. Срок окупаемости проекта 1,07 года.

Библиографический список

1. Бланшет Ж., Саммерфилд М. Qt 4: Программирование GUI на С++, издание 2-е, Кудиц-Пресс, 2008г.

2. Шлее М. Qt4. Профессиональное программирование на C++, БХВ-Петербург, 2007г.

3. Земсков Ю.В. Программирование на C++ с использованием библиотеки Qt 4, БХВ-Петербург, 2007г.

4. Лаптев В.В. С++ объектно-ориентированное программирование, Питер, 2008г.

5. Хабибуллин И.Ш. Программирование на языке высокого уровня С/С++, БХВ-Петербург, 2006г.

6. Давыдов В.Г. Технологии программирования C++, БХВ-Петербург, 2005г.

7. Марченко А.Л. C++. Бархатный путь, Питер, 2005г.

8. Хомоненко А.Д. Программирование на C++. Учебное пособие, Альтекс, 2003г.

9. Дейтел Х. М., Дейтел П. Дж. Как программировать на C++, Бином-Пресс, 2009 г.

10. Герберт Ш. Полный справочник по C++, Вильямс, 2007 г.

11. Щупак Ю.А. Win32 API. Эффективная разработка приложений, Питер, 2007г.

12. Финогенов К.Г. Win32. Основы программирования, Диалог-МИФИ, 2006г.

13. Джонсон М. Х. Системное программирование в среде Windows, Вильямс, 2005г.

14. Джерри Х. Реестр Microsoft Windows XP. Справочник профессионала, Эком, 2006г.

15. Куприянова А. В. Реестр Windows XP: Настройки, трюки, секреты , Наука и техника, 2009г.

16. Климов А. Реестр Windows 7, Питер, 2010г.

17. Ромашов В. Реестр Windows 7 на 100%, Питер, 2010г.

18. Кокорева О. Реестр Windows 7, БХВ-Петербург, 2010г.

19. Хеник Б. HTML и CSS. Путь к совершенству, Питер, 2011г.

20. Кастро Э. HTML и CSS для создания Web-страниц, НТ Пресс, 2006г.

21. Мержевич В. HTML и CSS на примерах, БХВ-Петербург, 2005 г.

Приложение А. Листинг файла main_a_class.cpp

#include "main_a_class.h"

#include "ui_main_a_class.h"

#include "qdesktopwidget.h"

#include "qmessagebox.h"

#include "dialog_add.h"

#include "dialog_delete.h"

#include "qfile.h"

#include "qprocess.h"

#include "qdir.h"

#include "qtimer.h"

#include "dialog_option.h"

#include "com_class.h"

#include "dialog_first.h"

#include "dialog_dir.h"

#include "Q_PID"

#include "qnetworkaccessmanager.h"

#include "qnetworkrequest.h"

#include "qnetworkreply.h"

#include "qurl.h"

#include "connect_perem.h"

#include "dialog_trans_to_partner.h"

#include "dialog_connection.h"

#include "dialog_balanse.h"

#include "QCloseEvent"

#include "dialog_trans_from_partner.h"

#include "dialog_change_icon.h"

Main_a_class::Main_a_class(QWidget *parent) :

QMainWindow(parent),

ui(new Ui::Main_a_class)

{//QMessageBox::information(0,QString::fromLocal8Bit("Warning"),QString::fromLocal8Bit("More than 5 programs can not run at the same time!"),1,0,0);

second11=false;

//проверка языка

language=false;

QFile file_Language;

QString str_byte_mas="";

file_Language.setFileName("Language.mycl");

if(file_Language.exists()==true)

{

file_Language.open(QIODevice::ReadOnly);

QByteArray byte_mas;

byte_mas=file_Language.readAll();

file_Language.close();

str_byte_mas=byte_mas;

}

if(str_byte_mas=="Russian")

{

language=true;

}

else

{language=false;}

this->timer=new QTimer(0);

this->timer_2=new QTimer(0);

this->timer_proc_parent=new QTimer(0);

this->timer_keybroad=new QTimer(0);

this->timer_explorer=new QTimer(0);

admin=false;pr_exit=false;

time_balanse=false;

restart_pc=false;

cost_work=cost_funktion=cost_instrum=cost_internet=0.0;

number=username=password="";

manager= new QNetworkAccessManager;

connect(manager, SIGNAL(finished(QNetworkReply*)),this, SLOT(getReplyFinished(QNetworkReply*)));

QAction* act2 = new QAction("test2", this);

act2 -> setShortcut(QKeySequence((Qt::Key_Escape)));connect(act2, SIGNAL(triggered()), this, SLOT(keyt2()));

addAction(act2);

end==false; end_1=0;end_2=0;

for(int i=0; i<5; i++)

{

my_cost[i].number_pr=-1;

my_cost[i].cost_pr=0.0;

parent_proc[i]=NULL;

}

x=y=0;

x=(QApplication::desktop()->size().width());

y=(QApplication::desktop()->size().height());

this->setWindowFlags(Qt::CustomizeWindowHint | Qt::FramelessWindowHint );//| Qt::WindowStaysOnTopHint

ui->setupUi(this);

this->setGeometry(0,0,x,y);

QColor color; color.setRgb(76,97,124,255);

QPalette palet;

palet.setColor(QPalette::Window,color);

ui->tabWidget->setGeometry(0,0,x,y-65);

// ui->tab->setStyleSheet("background-image: url(image/top-bg.png);");

ui->widget->setGeometry(0,0,x,80);

ui->widget->setStyleSheet("background-image: url(image/top-bg.png);");

ui->widget_2->setGeometry(0,y-65,x,65);

ui->widget_2->setStyleSheet("background-image: url(image/bottom-bg.png);");

//1 часть

update_language();

//обновление баланса

ui->button_updata_balance->setGeometry(x-240,40,170,40);

ui->button_updata_balance->setStyleSheet("border-radius: 10px; color: rgb(255,255,255);");

//лист1

QColor col_fon;col_fon.setRgb(229,229,229);

QPalette pal_1;pal_1.setColor(QPalette::Base,col_fon);

QPalette pal_2;pal_2.setColor(QPalette::Window,col_fon);

ui->listWidget->setGeometry(0,0,x,y-145);

// ui->listWidget->setStyleSheet("background-color: rgb(33,66,100);");

ui->listWidget->setStyleSheet("background-image: url(image/logos.png);");

ui->listWidget_2->setGeometry(0,0,x,y-145);ui->listWidget_2->setStyleSheet("background-image: url(image/logos.png);");

ui->listWidget_3->setGeometry(0,0,x,y-145);ui->listWidget_3->setStyleSheet("background-image: url(image/logos.png);");

ui->listWidget_4->setGeometry(0,0,x,y-145);ui->listWidget_4->setStyleSheet("background-image: url(image/logos.png);");

ui->tabWidget->setStyleSheet("background-color: rgb(33,66,100); color: rgb(204,204,204); font-family: Arial; font-size: 12pt;");

ui->listWidget->setStyleSheet("padding-top: 30px; background-image: url(image/logos.png); ");

ui->listWidget_2->setStyleSheet("padding-top: 30px; background-image: url(image/logos.png);");

ui->listWidget_3->setStyleSheet("padding-top: 30px; background-image: url(image/logos.png);");

ui->listWidget_4->setStyleSheet("padding-top: 30px; background-image: url(image/logos.png);");

ui->tab->setPalette(pal_1);

ui->tab_2->setPalette(pal_2);

//обновление

ui->button_update->setGeometry((x-620),(y-65),63,65);

QPixmap pixmap_update=QPixmap("image/update.png");

QIcon i_update=QIcon(pixmap_update);

ui->button_update->setIcon(i_update);

if(language==false)

ui->button_update->setToolTip(QString::fromLocal8Bit("Update"));

else

ui->button_update->setToolTip(QString::fromLocal8Bit("Обновить"));

ui->button_update->setStyleSheet("border-radius: 10px;");

ui->button_update->setVisible(false);

//проверка класса

//вызов окон

username="";many=0.0;password="";

Dialog_first dial;

dial.exec()==QDialog::Accepted;

if(dial.admin==true)

{

admin=true;

const wchar_t* a=L"Shell_TrayWnd";

ShowWindow(FindWindow(a,NULL),SW_SHOW);

HWND DesktopHandle;

DesktopHandle = FindWindow(L"ProgMan", 0);

DesktopHandle = GetWindow(DesktopHandle, GW_CHILD);ShowWindow(DesktopHandle, SW_SHOW);

}

else

{

admin=false;

username=name_cl;

password=passw; //dial.password;

number=name_com;

many=dial.many;

cost_work=dial.cost_work;

cost_funktion=dial.cost_funktion;

cost_instrum=dial.cost_instrum;

cost_internet=0.0;

}

ui->label->setGeometry(x-230,0,170,20);

connect(timer, SIGNAL(timeout()), this, SLOT(tick()));

connect(timer_2, SIGNAL(timeout()), this, SLOT(tick_2()));

connect(timer_proc_parent, SIGNAL(timeout()), this, SLOT(tick_proc_parent()));

connect(timer_keybroad, SIGNAL(timeout()), this, SLOT(tick_3()));

connect(timer_explorer, SIGNAL(timeout()), this, SLOT(tick_explorer()));

if(admin==false)

timer_2->start(10000);

QPixmap pixmap_del_ic=QPixmap("image/clouse.png");

QIcon icon_del_ic=QIcon (pixmap_del_ic);

ui->button_pr1_close->setIcon(icon_del_ic);

ui->button_pr2_close->setIcon(icon_del_ic);

ui->button_pr3_close->setIcon(icon_del_ic);

ui->button_pr4_close->setIcon(icon_del_ic);

ui->button_pr5_close->setIcon(icon_del_ic);

ui->button_proc1->setStyleSheet("text-align: left; padding-left: 3px; border-radius: 10px; background-image: url(image/button.png); color: rgb(255,255,255);");

ui->button_proc1->setVisible(false);

ui->button_proc2->setStyleSheet("text-align: left; padding-left: 3px; border-radius: 10px; background-image: url(image/button.png); color: rgb(255,255,255);");

ui->button_proc2->setVisible(false);

ui->button_proc3->setStyleSheet("text-align: left; padding-left: 3px; border-radius: 10px; background-image: url(image/button.png); color: rgb(255,255,255);");

ui->button_proc3->setVisible(false);

ui->button_proc4->setStyleSheet("text-align: left; padding-left: 3px; border-radius: 10px; background-image: url(image/button.png); color: rgb(255,255,255);");

ui->button_proc4->setVisible(false);

ui->button_proc5->setStyleSheet("text-align: left; padding-left: 3px; border-radius: 10px; background-image: url(image/button.png); color: rgb(255,255,255);");

ui->button_proc5->setVisible(false);

ui->button_pr1_close->setVisible(false); ui->button_pr1_close->setStyleSheet("border-radius: 10px;");

ui->button_pr2_close->setVisible(false); ui->button_pr2_close->setStyleSheet("border-radius: 10px;");

ui->button_pr3_close->setVisible(false); ui->button_pr3_close->setStyleSheet("border-radius: 10px;");

ui->button_pr4_close->setVisible(false); ui->button_pr4_close->setStyleSheet("border-radius: 10px;");

ui->button_pr5_close->setVisible(false); ui->button_pr5_close->setStyleSheet("border-radius: 10px;");

// QMessageBox::information(0,api_transaction,QString::fromLocal8Bit("Выши средства закончились. Пополните пожалуйста счёт."),1,0,0);

//

load();

//скрытие элементов

load_view();

dialog_b.setModal(false);

}

void Main_a_class::on_listWidget_itemClicked(QListWidgetItem* item)

{

int i=0;

for(i=0;i<5;i++)

{

if(proc[i].state()!=QProcess::Running && (parent_proc[i]==NULL || parent_proc[i]==0))

break;

else if(i==4)

{

if(language==false)

QMessageBox::information(0,QString::fromLocal8Bit("Warning"),QString::fromLocal8Bit("More than 5 programs can not run at the same time!"),1,0,0);

else

QMessageBox::information(0,QString::fromLocal8Bit("Внимание"),QString::fromLocal8Bit("Больше 5 программ не могут быть запущены одновременно!"),1,0,0);

return;

}

}

if(proc[i].state()!=QProcess::Running && many>0)

{

QString way,my_way,name,name_exe, name_icon;

name_icon="work/";

my_way=QDir::currentPath();

name=item->text();

QFile f; f.setFileName("work/strage.myst");

f.open(QIODevice::ReadOnly);

QDataStream read(&f);

My_type readed;

read>>readed;

while(readed.name!="")

{

if(readed.name==name)

{

way=readed.way;

name_exe=readed.name_exe;

name_icon+=readed.name_icon;

}

read>>readed;

}

f.close();

QDir::setCurrent(way);

//QMessageBox::information(0,QString::fromLocal8Bit("Внимание"),QString::fromLocal8Bit("Больше 5 программ не могут быть запущены одновременно!"),1,0,0);

proc[i].start(name_exe);

parent_proc[i]=proc[i].pid()->dwProcessId;

if(timer_proc_parent->isActive()==false)

timer_proc_parent->start(1000);

QDir::setCurrent(my_way);

QPixmap pixmap=QPixmap(name_icon);

QIcon icon=QIcon (pixmap);

int k=0;

//отображение кнопок

switch(i)

{

case 0:

ui->button_proc1->setIcon(icon);

ui->button_proc1->setText(name);

break;

case 1:

ui->button_proc2->setIcon(icon);

ui->button_proc2->setText(name);

break;

case 2:

ui->button_proc3->setIcon(icon);

ui->button_proc3->setText(name);

break;

case 3:

ui->button_proc4->setIcon(icon);

ui->button_proc4->setText(name);

break;

case 4:

ui->button_proc5->setIcon(icon);

ui->button_proc5->setText(name);

break;

}

sort_button();

//поиск ячейки занятым этим процессам

for(k=0;k<5;k++)

{

if(my_cost[k].number_pr==i)

{

my_cost[k].number_pr=i;

my_cost[k].cost_pr=cost_work;

break;

}

}

//занятие пустой ячейки

if(k==5)

{

for(int j=0;j<5;j++)

{

if(my_cost[j].number_pr==-1)

{

my_cost[j].number_pr=i;

my_cost[j].cost_pr=cost_work;

break;

}

}

}

sort();

if(admin==false && (timer->isActive()==false))

timer->start(20000);

}

}

Приложение Б. Листинг файла dialog_dir.cpp

#include "dialog_dir.h"

#include "ui_dialog_dir.h"

#include "qdir.h"

#include "qmessagebox.h"

Dialog_dir::Dialog_dir(QWidget *parent) :

QDialog(parent),

ui(new Ui::Dialog_dir)

{

this->setFixedSize(435,430);

ui->setupUi(this);

//настройка языка

language=false;

QFile file_Language;

QString str_byte_mas="";

file_Language.setFileName("Language.mycl");

if(file_Language.exists()==true)

{

file_Language.open(QIODevice::ReadOnly);

QByteArray byte_mas;

byte_mas=file_Language.readAll();

file_Language.close();

str_byte_mas=byte_mas;

}

if(str_byte_mas=="Russian")

{

language=true;

}

else

{language=false;}

if(language==false)

{

ui->label->setText(QString::fromLocal8Bit("Directory"));

ui->label_2->setText(QString::fromLocal8Bit("New name"));

ui->button_create_dir->setText(QString::fromLocal8Bit("Create a folder"));

ui->button_delete_dir->setText(QString::fromLocal8Bit("Remove"));

ui->button_copy->setText(QString::fromLocal8Bit("Copy"));

ui->button_past->setText(QString::fromLocal8Bit("Paste"));

ui->button_rename_dir->setText(QString::fromLocal8Bit("Rename"));

ui->button_rename_ok->setText(QString::fromLocal8Bit("ok"));

this->setWindowTitle(QString::fromLocal8Bit("Explorer"));

}

else

{

ui->label->setText(QString::fromLocal8Bit("Каталог"));

ui->label_2->setText(QString::fromLocal8Bit("Новое имя"));

ui->button_create_dir->setText(QString::fromLocal8Bit("Создать папку"));

ui->button_delete_dir->setText(QString::fromLocal8Bit("удалить"));

ui->button_copy->setText(QString::fromLocal8Bit("Копировать"));

ui->button_past->setText(QString::fromLocal8Bit("Вставить"));

ui->button_rename_dir->setText(QString::fromLocal8Bit("Переименовать"));

ui->button_rename_ok->setText(QString::fromLocal8Bit("ok"));

this->setWindowTitle(QString::fromLocal8Bit("Проводник"));

}

ui->comboBox->addItem("D:/",QVariant());

ui->comboBox->addItem("E:/",QVariant());

ui->comboBox->addItem("F:/",QVariant());

ui->comboBox->addItem("G:/",QVariant());

ui->comboBox->addItem("H:/",QVariant());

ui->comboBox->addItem("I:/",QVariant());

ui->comboBox->addItem("J:/",QVariant());

ui->comboBox->addItem("K:/",QVariant());

ui->lineEdit_2->setVisible(false);

ui->button_rename_ok->setVisible(false);

ui->label_2->setVisible(false);

ui->comboBox->setCurrentIndex(0);

way_s="D:/";

load();

str_copy="";

}

Dialog_dir::~Dialog_dir()

{

delete ui;

}

void Dialog_dir::on_listWidget_itemDoubleClicked(QListWidgetItem* item)

{

ui->lineEdit_2->setVisible(false);

ui->button_rename_ok->setVisible(false);

ui->label_2->setVisible(false);

QString str;

str=way_d.path(); if(str.count()>3) str+="/";

str+=item->text();

//QFile f;

//f.setFileName(str);

QFileInfo list; list.setFile(str);

if(list.isFile()==true)

{

if(language==false)

QMessageBox::warning(0,QString::fromLocal8Bit("Error"),QString::fromLocal8Bit("File ca not be run."),0,0);

else

QMessageBox::warning(0,QString::fromLocal8Bit("Ошибка"),QString::fromLocal8Bit("Файл нельзя запустить."),0,0);

return;

}

// QMessageBox::information(0,str,QString::fromLocal8Bit("H"),1,0,0);

way_s=str;

load();

//if(item->text());

}

void Dialog_dir::on_button_create_dir_clicked()

{

ui->lineEdit_2->setText("");

ui->lineEdit_2->setVisible(false);

ui->button_rename_ok->setVisible(false);

ui->label_2->setVisible(false);

int incr=1;

QString str,time;QFileInfo list;

do

{

str=way_d.path();str+="/";

str+="NEW(";

time.setNum(incr,10);

str+=time+")";

list.setFile(str);

incr+=1;

}

while(list.isDir()==true);

way_d.mkdir(str);

load();

}

void Dialog_dir::on_button_rename_dir_clicked()

{

QListWidgetItem *list_pm;

if(ui->listWidget->count()<1)

{

if(language==false)

{

QMessageBox::warning(0,QString::fromLocal8Bit("Error"),QString::fromLocal8Bit("Within this directory no subdirectory is found."),0,0);

}

else

{

QMessageBox::warning(0,QString::fromLocal8Bit("Ошибка"),QString::fromLocal8Bit("В данном каталоге не найдено подкаталогов."),0,0);

}

return;

}

list_pm=ui->listWidget->currentItem();

if(list_pm->text()=="..")

{

if(language==false)

{

QMessageBox::warning(0,QString::fromLocal8Bit("Error"),QString::fromLocal8Bit("This directory can not be renamed."),0,0);

}

else

{

QMessageBox::warning(0,QString::fromLocal8Bit("Ошибка"),QString::fromLocal8Bit("Данный каталог переименовать нельзя."),0,0);

}

return;

}

ui->lineEdit_2->setText("");

ui->lineEdit_2->setVisible(true);

ui->button_rename_ok->setVisible(true);

ui->label_2->setVisible(true);

}

Приложение В. Листинг файла dialog_option.cpp

#include "dialog_option.h"

#include "ui_dialog_option.h"

#include "qfile.h"

#include "com_class.h"

#include "qmessagebox.h"

#include "qcryptographichash.h"

#include "windows.h"

#include "live_file.h"

Dialog_option::Dialog_option(QWidget *parent) :

QDialog(parent),

ui(new Ui::Dialog_option)

{

language=false;QString str_byte_mas="";

ui->setupUi(this);

QFile file_Language;

file_Language.setFileName("Language.mycl");

if(file_Language.exists()==true)

{

file_Language.open(QIODevice::ReadOnly);

QByteArray byte_mas;

byte_mas=file_Language.readAll();

file_Language.close();

str_byte_mas=byte_mas;

}

ui->comboBox_Language->addItem(QString::fromLocal8Bit("English"),QVariant());

ui->comboBox_Language->addItem(QString::fromLocal8Bit("Russian"),QVariant());

//проверка языка

if(str_byte_mas=="Russian")

{

ui->comboBox_Language->setCurrentIndex(1);

language=true;

}

else

{ui->comboBox_Language->setCurrentIndex(0);language=false;}

restart_pc=false;

this->setFixedSize(750,240);

ui->lineEdit->setValidator(new QDoubleValidator(ui->lineEdit));

ui->lineEdit_2->setValidator(new QDoubleValidator(ui->lineEdit_2));

ui->lineEdit_3->setValidator(new QDoubleValidator(ui->lineEdit_3));

ui->lineEdit_4->setEnabled(false);

ui->lineEdit_7->setEnabled(false);

ui->lineEdit_8->setEnabled(false);

ui->radioButton_3->setChecked(true);

ui->radioButton_4->setChecked(false);

ui->lineEdit_14->setText("1");

//загрузка данных из файла на форму

QFile file;file.setFileName("com_class.mycl");

if(file.exists()==true)

{

file.open(QIODevice::ReadOnly);

QDataStream read(&file);

com_class a;

read>>a;

ui->lineEdit->setText(a.cost_work);

ui->lineEdit_2->setText(a.cost_function);

ui->lineEdit_3->setText(a.cost_instrum);

ui->lineEdit_4->setText(a.cost_internet);

ui->lineEdit_14->setText(a.service_id);

// ui->lineEdit_10->setText(a.api_coordinate);

//ui->lineEdit_11->setText(a.api_balance);

//ui->lineEdit_12->setText(a.api_transaction);

//ui->lineEdit_15->setText(a.api_trans_to_partner);

//ui->lineEdit_16->setText(a.api_trans_from_partner);

QFile file_live;file_live.setFileName("live_file.mycl");

if(file_live.exists()==true)

{

file_live.open(QIODevice::ReadOnly);

QDataStream read_live(&file_live);

live_file a_live;

read_live>>a_live;

//ui->lineEdit_17->setText(a_live.api_live);

file_live.close();

}

// ui->lineEdit_13->setText(a.api_update);

if(a.name_class=="no")

{

ui->radioButton_2->setChecked(true);

ui->radioButton->setChecked(false);

ui->lineEdit_5->setEnabled(false);

ui->lineEdit_6->setEnabled(false);

ui->lineEdit_9->setEnabled(false);

//ui->lineEdit_14->setEnabled(false);

}

else

{

ui->lineEdit_5->setText(a.name_class);

ui->lineEdit_6->setText(a.number_comp);

ui->lineEdit_9->setText(a.password);

//ui->label_14->setText(a.service_id);

ui->radioButton_2->setChecked(false);

ui->radioButton->setChecked(true);

}

file.close();

}

QFile file_update;file_update.setFileName("file_update.mycl");

if(file_update.exists()==true)

{

file_update.open(QIODevice::ReadOnly);

QByteArray line=file_update.readAll();

//QByteArray mas1,mas2;mas1.insert(password11.size(),password11);

QString str11=QString(line);

//ui->lineEdit_13->setText(str11);

file_update.close();

}

}

Dialog_option::~Dialog_option()

{

delete ui;

}

void Dialog_option::on_comboBox_Language_currentIndexChanged(int index)


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.