示例#1
0
        private void CopyPacketForm_Load(object sender, EventArgs e)
        {
            label2.Text += _listId;
            _orgTable    = Org.CreateTable();
            _orgTable.Columns.Add(ViewCol);
            _orgBS            = new BindingSource();
            _orgBS.DataSource = _orgTable;

            orgsComboBox.DataSource    = _orgBS;
            orgsComboBox.ValueMember   = Org.id;
            orgsComboBox.DisplayMember = ViewCol;

            if (_operator == null)
            {
                MainForm.ShowErrorMessage("Пользователь не найден", "Ошибка");
                this.Close();
                return;
            }

            string selectText;

            if (_operator.candeleteVal == 0)
            {
                selectText = Org.GetSelectCommandText();
            }
            else
            {
                selectText = Org.GetSelectTextByOperator(_operator.idVal);
            }

            SQLiteDataAdapter adapter = new SQLiteDataAdapter(selectText, _connection);

            _orgTable.Rows.Clear();

            adapter.Fill(_orgTable);
            foreach (DataRow rowItem in _orgTable.Rows)
            {
                rowItem[ViewCol] = string.Format("{0}    {1}", rowItem[Org.regnum], rowItem[Org.name]);
            }
            _orgTable.AcceptChanges();
            if (_orgBS.Count < 1)
            {
                copyButton.Enabled = false;
            }
            //TODO: this.SetPrivilege();
        }
示例#2
0
        private void SearchIndividualForm_Load(object sender, EventArgs e)
        {
            _personTable = PersonShortView.CreateTable();
            _orgTable    = Org.CreateTable();

            _personBS                 = new BindingSource();
            _personBS.DataSource      = _personTable;
            _personBS.CurrentChanged += new EventHandler(_personBS_CurrentChanged);
            _orgBS            = new BindingSource();
            _orgBS.DataSource = _orgTable;

            personView.AutoGenerateColumns = false;
            personView.DataSource          = _personBS;

            orgView.AutoGenerateColumns = false;
            orgView.DataSource          = _orgBS;

            _personAdapter = new SQLiteDataAdapter("", _connection);
            _orgAdapter    = new SQLiteDataAdapter("", _connection);
        }
示例#3
0
        private void OrgForm_Load(object sender, EventArgs e)
        {
            // создание объеков таблиц
            _orgTable = Org.CreateTable();
            // создание объектов соединителей таблиц и отобразителей (GridView)
            _orgBS = new BindingSource();
            // создание обработчика событий смены выбранной (выделенной) огранизации
            _orgBS.CurrentChanged += new EventHandler(_orgBS_CurrentChanged);
            // отмена автогенерации столбцов в GridView-ерах
            orgView.AutoGenerateColumns = false;

            _orgAdapter = Org.CreateAdapter(_connection);
            //new SQLiteDataAdapter(Org.GetSelectCommandText(), _connection);
            _orgAdapter.Fill(_orgTable);

            // соединяем прослойки с таблицами
            _orgBS.DataSource = _orgTable;

            // присоединяем GridView-еры к источникам данных (таблицам) через прослойку (BindingSource-ы)
            // соединяем GridView-еры с прослойками
            orgView.DataSource = _orgBS;
        }
示例#4
0
        private void ReloadData()
        {
            int position = -1;

            if (_orgBS != null)
            {
                position = _orgBS.Position;
            }

            _orgTable = Org.CreateTable();
            _orgTable.Columns.Add(ViewCol);

            _orgBS            = new BindingSource();
            _orgBS.DataSource = _orgTable;

            string selectText = _operator.candeleteVal == 0
                ? Org.GetSelectCommandText()
                : Org.GetSelectTextByOperator(_operator.idVal);
            SQLiteDataAdapter adapter = new SQLiteDataAdapter(selectText, _mainConnection);

            adapter.Fill(_orgTable);
            foreach (DataRow rowItem in _orgTable.Rows)
            {
                rowItem[ViewCol] = string.Format("{0}    {1}", rowItem[Org.regnum], rowItem[Org.name]);
            }
            _orgTable.AcceptChanges();

            orgBox.DataSource    = _orgBS;
            orgBox.DisplayMember = ViewCol;

            _orgBS.Position = position;

            SetPrivilege();

            statusLabel.Text = _operator.nameVal;
        }
示例#5
0
        public OperatorsForm(string connection)
        {
            InitializeComponent();
            _connectionStr = connection;

            _adminCode = OperatorOrg.GetPrivilegeForAdmin(); //"212111";
            _emptyCode = new string('0', CodeLength);

            // создание объектов таблиц
            _operatorTable = Operator.CreateTable();

            _orgTable = Org.CreateTable();
            // добавление виртуального столбца, для возможности отмечать
            _orgTable.Columns.Add(Check, typeof(bool));
            _orgTable.Columns[Check].DefaultValue = false;

            _operOrgTable = OperatorOrg.CreateTable();
            // добавление виртуального столбца, для возможности отмечать
            _operOrgTable.Columns.Add(Check, typeof(bool));
            _operOrgTable.Columns[Check].DefaultValue = false;

            // создание виртуальной таблицы для хранения уровня
            _accessTable = new DataTable();
            // добавление необходимых столбцов
            _accessTable.Columns.Add(ANumber, typeof(int));
            _accessTable.Columns.Add(AName, typeof(string));
            // заполнение данными виртуальной таблицы привелегий
            DataRow row;

            //row = _accessTable.NewRow();
            //row[aNumber] = 0;
            //row[aName] = "Без доступа";
            //row.EndEdit();
            //_accessTable.Rows.Add(row);

            row          = _accessTable.NewRow();
            row[ANumber] = 1;
            row[AName]   = "Только чтение";
            row.EndEdit();
            _accessTable.Rows.Add(row);

            row          = _accessTable.NewRow();
            row[ANumber] = 2;
            row[AName]   = "Полный доступ";
            row.EndEdit();
            _accessTable.Rows.Add(row);

            _accessTable.AcceptChanges();

            // создание объектов контроллеров
            _operatorBS      = new BindingSource();
            _orgBS           = new BindingSource();
            _operOrgBS       = new BindingSource();
            _anketaAccessBS  = new BindingSource();
            _paystajAccessBS = new BindingSource();

            // инициализация адаптеров для выполнения запросов нахаполнения таблиц
            _operatorAdapter    = Operator.CreateAdapter(_connectionStr);
            _orgAdapter         = Org.CreateAdapter(_connectionStr);
            _operatororgAdapter = OperatorOrg.CreateAdapter(_connectionStr);

            // привязка таблиц к контроллерам (биндинг сорсам)
            _operatorBS.DataSource      = _operatorTable;
            _orgBS.DataSource           = _orgTable;
            _operOrgBS.DataSource       = _operOrgTable;
            _anketaAccessBS.DataSource  = new DataView(_accessTable);
            _paystajAccessBS.DataSource = new DataView(_accessTable);
        }
        private void AnketaPersonOrgForm_Load(object sender, EventArgs e)
        {
            // инициализация таблицы организаций
            _orgTable = Org.CreateTable();
            // добавление столбца для отметок (пометок)
            _orgTable.Columns.Add(Check, typeof(bool));
            _orgTable.Columns[Check].DefaultValue = false;
            // определение бинда
            _orgBS = new BindingSource();
            // привязка к источнику
            _orgBS.DataSource = _orgTable;
            // запрет на автогенерацию столбцов вьюшки
            this.orgView.AutoGenerateColumns = false;
            // привязка к источнику
            this.orgView.DataSource = _orgBS;
            this.orgView.Sorted    += new EventHandler(orgView_Sorted);
            // если оператор определен и соединение определено
            if (_operator != null && _connection != null)
            {
                // определение адаптера для считывания записей с данными об организациях
                string selectcommand;
                // если оператор - Администратор, то выбрать команду для выбора всех имеющихся организациях
                if (_operator.IsAdmin())
                {
                    selectcommand = Org.GetSelectCommandText();
                }
                else // иначе выбрать толькоте организации, к которым оператор имеет доступ для редактирования
                {
                    selectcommand = Org.GetSelectTextByOperatorAccess(_operator.idVal);
                }
                // инизаализация адаптера
                SQLiteDataAdapter adapter = new SQLiteDataAdapter(selectcommand, _connection);
                // заполнение таблицы данными из БД
                adapter.Fill(_orgTable);
                // получение списка ID организаций, в которых числиться выбранная Персона (физическое лицо)
                long[] orgIDArray = PersonOrg.GetOrgID((long)_personRow[PersonView.id], _connection);
                // отметить из выбранных Организаций те, к которым привязана Персона
                foreach (long id in orgIDArray)
                {
                    int i = _orgBS.Find(Org.id, id);
                    if (i >= 0)
                    {
                        DataRowView tmpRow = _orgBS[i] as DataRowView;
                        tmpRow[Check] = true;
                    }
                }
                // принять изменения (отметки)
                _orgBS.EndEdit();

                // выбрать организации в которых есть документы на человека
                _orgIds = Org.GetOrgsIdWithDocsForPerson((long)_personRow[PersonView.id], _connection);
                // сделать readOnly организации в которых есть документы
                DisableCheckBoxInView();

                // выделить струку с текущей Организацией (усьановить задний фон)
                this.MarkCurOrgRow();
                // отобразить на форме страховой номер и фио выбранной Персоны
                personDataLabel.Text = string.Format("{0}  {1}", _personRow[PersonView.socNumber],
                                                     _personRow[PersonView.fio]);
            }
        }