public async Task <int> CountPositionsAsync(int electionId)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                return(tableAdapter.CountPositionsQuery(electionId) ?? 0);
            }
        }
        public async Task DeletePositionAsync(PositionModel model)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                tableAdapter.Delete(model.Id);
            }
        }
        public async Task <int> GetMaxRankAsync(int electionId)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                return(Convert.ToInt32(tableAdapter.GetMaxRankQuery(electionId)));
            }
        }
        public async Task <IEnumerable <PositionModel> > GetPositionsAsync(int electionId)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                var positions = tableAdapter.GetData(electionId)
                                .AsQueryable();

                return(_mapper.ProjectTo <PositionModel>(positions));
            }
        }
Example #5
0
        private void rptDeliveryNotes_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
        {
            PositionTableAdapter _tdPosition = new PositionTableAdapter();

            _tdPosition.FillByProjectID(dsDeliveryNotes1.Position, _Projectid);

            ProjectTableAdapter _tdProject = new ProjectTableAdapter();

            _tdProject.FillByProjectID(dsDeliveryNotes1.Project, _Projectid);

            CustomerTableAdapter _tdCustomer = new CustomerTableAdapter();

            _tdCustomer.FillByCustmerID(dsDeliveryNotes1.Customer, _Custid);
        }
        public async Task InsertPositionAsync(PositionModel model)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                tableAdapter.Insert(
                    model.Title,
                    model.WinnersCount,
                    model.Rank,
                    model.ElectionId,
                    model.YearLevel
                    );
            }
        }
Example #7
0
        /// <summary>
        /// 删除职务
        /// </summary>
        /// <param name="positionId"></param>
        public void DeletePosition(int positionId)
        {
            SqlTransaction transaction = null;

            AuthorizationDS.PositionRow position = this.DS.Position.FindByPositionId(positionId);
            string  positionName = position.PositionName;
            DataSet backDS       = this.DS.Copy();

            try {
                //action on backDS and database first
                AuthorizationDS actionDS = new AuthorizationDS();
                actionDS.Merge(backDS);
                AuthorizationDS.PositionRow actionPosition = actionDS.Position.FindByPositionId(positionId);
                foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in actionPosition.GetPositionAndPositionTypeRows())
                {
                    positionType.Delete();
                }
                actionPosition.Delete();

                PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter();
                PositionTableAdapter psAd = new PositionTableAdapter();
                transaction = TableAdapterHelper.BeginTransaction(ptAd);
                TableAdapterHelper.SetTransaction(psAd, transaction);
                ptAd.Update(actionDS.PositionAndPositionType);
                psAd.Update(actionDS.Position);
                transaction.Commit();

                //if success, update dataset
                foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows())
                {
                    positionType.Delete();
                }
                position.Delete();
                this.DS.AcceptChanges();
            } catch (Exception ex) {
                transaction.Rollback();
                //this.DS.Clear();
                //this.DS.Merge(backupDS);
                throw new ApplicationException("职位" + positionName + "已在系统中使用");
            } finally {
                if (transaction != null)
                {
                    transaction.Dispose();
                }
            }
        }
        public async Task <PositionModel> GetPositionByTitleAsync(int electionId, string positionTitle)
        {
            await Task.CompletedTask;

            using (var tableAdapter = new PositionTableAdapter())
            {
                var row = tableAdapter.GetPositionsByTitle(electionId, positionTitle).SingleOrDefault();
                if (row == null)
                {
                    return(null);
                }

                var model = new PositionModel();
                _mapper.Map(row, model);

                return(model);
            }
        }
Example #9
0
        /// <summary>
        /// ɾ��ְ��
        /// </summary>
        /// <param name="positionId"></param>
        public void DeletePosition(int positionId)
        {
            SqlTransaction transaction = null;
            AuthorizationDS.PositionRow position = this.DS.Position.FindByPositionId(positionId);
            string positionName = position.PositionName;
            DataSet backDS = this.DS.Copy();
            try {
                //action on backDS and database first
                AuthorizationDS actionDS = new AuthorizationDS();
                actionDS.Merge(backDS);
                AuthorizationDS.PositionRow actionPosition = actionDS.Position.FindByPositionId(positionId);
                foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in actionPosition.GetPositionAndPositionTypeRows()) {
                    positionType.Delete();
                }
                actionPosition.Delete();

                PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter();
                PositionTableAdapter psAd = new PositionTableAdapter();
                transaction = TableAdapterHelper.BeginTransaction(ptAd);
                TableAdapterHelper.SetTransaction(psAd, transaction);
                ptAd.Update(actionDS.PositionAndPositionType);
                psAd.Update(actionDS.Position);
                transaction.Commit();

                //if success, update dataset
                foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) {
                    positionType.Delete();
                }
                position.Delete();
                this.DS.AcceptChanges();

            } catch (Exception ex) {
                transaction.Rollback();
                //this.DS.Clear();
                //this.DS.Merge(backupDS);
                throw new ApplicationException("ְλ" + positionName + "����ϵͳ��ʹ��");
            } finally {
                if (transaction != null) {
                    transaction.Dispose();
                }
            }
        }
Example #10
0
        /// <summary>
        /// ɾ����֯������ͬʱ�ϴθ���֯���������������ְ��
        /// </summary>
        /// <param name="organizationUnitId"></param>
        /// <exception cref="System.ApplicationException">�������֯�������������������ְ���Ѿ���ʹ�ã�������ʱ�׳��쳣</exception>
        public void DeleteOrganizationUnit(int organizationUnitId)
        {
            SqlTransaction transaction = null;
            AuthorizationDS.OrganizationUnitRow ou = this.DS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId);
            string ouName = ou.OrganizationUnitName;
            DataSet backDS = this.DS.Copy();
            try {
                PositionTableAdapter positionAdapter = new PositionTableAdapter();
                OrganizationUnitTableAdapter ouAdapter = new OrganizationUnitTableAdapter();
                PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter();
                transaction = TableAdapterHelper.BeginTransaction(positionAdapter);
                TableAdapterHelper.SetTransaction(ouAdapter, transaction);
                TableAdapterHelper.SetTransaction(ptAd, transaction);

                //action on backDS and database first
                AuthorizationDS actionDS = new AuthorizationDS();
                actionDS.Merge(backDS);
                AuthorizationDS.OrganizationUnitRow actionOU = actionDS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId);
                AuthorizationDS.OrganizationUnitRow[] actionOUs = this.GetDepFirstChildren(actionOU);
                foreach (AuthorizationDS.OrganizationUnitRow o in actionOUs) {
                    foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) {
                        foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) {
                            positionType.Delete();
                        }
                        position.Delete();
                    }
                    o.Delete();
                    ptAd.Update(actionDS.PositionAndPositionType);
                    positionAdapter.Update(actionDS.Position);
                    ouAdapter.Update(actionDS.OrganizationUnit);
                }
                transaction.Commit();

                //if success update dataset

                AuthorizationDS.OrganizationUnitRow[] ous = this.GetDepFirstChildren(ou);
                foreach (AuthorizationDS.OrganizationUnitRow o in ous) {
                    foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) {
                        foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) {
                            positionType.Delete();
                        }
                        position.Delete();
                    }
                    o.Delete();
                    //ptAd.Update(this.DS.PositionAndPositionType);
                    //positionAdapter.Update(this.DS.Position);
                    //ouAdapter.Update(this.DS.OrganizationUnit);
                    this.DS.AcceptChanges();
                }

            } catch (Exception ex) {
                transaction.Rollback();
                //this.DS.Clear();
                //this.DS.Merge(backDS);
                throw new ApplicationException("��֯����" + ouName + "���߷�֧����,ְλ�ѱ�ʹ��");
            } finally {
                transaction.Dispose();
            }
        }
Example #11
0
        /// <summary>
        /// 删除组织机构,同时上次该组织机构的下属机构和职务
        /// </summary>
        /// <param name="organizationUnitId"></param>
        /// <exception cref="System.ApplicationException">如果该组织机构或者其下属机构和职务已经被使用,被关联时抛出异常</exception>
        public void DeleteOrganizationUnit(int organizationUnitId)
        {
            SqlTransaction transaction = null;

            AuthorizationDS.OrganizationUnitRow ou = this.DS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId);
            string  ouName = ou.OrganizationUnitName;
            DataSet backDS = this.DS.Copy();

            try {
                PositionTableAdapter                positionAdapter = new PositionTableAdapter();
                OrganizationUnitTableAdapter        ouAdapter       = new OrganizationUnitTableAdapter();
                PositionAndPositionTypeTableAdapter ptAd            = new PositionAndPositionTypeTableAdapter();
                transaction = TableAdapterHelper.BeginTransaction(positionAdapter);
                TableAdapterHelper.SetTransaction(ouAdapter, transaction);
                TableAdapterHelper.SetTransaction(ptAd, transaction);

                //action on backDS and database first
                AuthorizationDS actionDS = new AuthorizationDS();
                actionDS.Merge(backDS);
                AuthorizationDS.OrganizationUnitRow   actionOU  = actionDS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId);
                AuthorizationDS.OrganizationUnitRow[] actionOUs = this.GetDepFirstChildren(actionOU);
                foreach (AuthorizationDS.OrganizationUnitRow o in actionOUs)
                {
                    foreach (AuthorizationDS.PositionRow position in o.GetPositionRows())
                    {
                        foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows())
                        {
                            positionType.Delete();
                        }
                        position.Delete();
                    }
                    o.Delete();
                    ptAd.Update(actionDS.PositionAndPositionType);
                    positionAdapter.Update(actionDS.Position);
                    ouAdapter.Update(actionDS.OrganizationUnit);
                }
                transaction.Commit();

                //if success update dataset

                AuthorizationDS.OrganizationUnitRow[] ous = this.GetDepFirstChildren(ou);
                foreach (AuthorizationDS.OrganizationUnitRow o in ous)
                {
                    foreach (AuthorizationDS.PositionRow position in o.GetPositionRows())
                    {
                        foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows())
                        {
                            positionType.Delete();
                        }
                        position.Delete();
                    }
                    o.Delete();
                    //ptAd.Update(this.DS.PositionAndPositionType);
                    //positionAdapter.Update(this.DS.Position);
                    //ouAdapter.Update(this.DS.OrganizationUnit);
                    this.DS.AcceptChanges();
                }
            } catch (Exception ex) {
                transaction.Rollback();
                //this.DS.Clear();
                //this.DS.Merge(backDS);
                throw new ApplicationException("组织机构" + ouName + "或者分支机构,职位已被使用");
            } finally {
                transaction.Dispose();
            }
        }