コード例 #1
0
ファイル: DivisionService.cs プロジェクト: cipjota/Chronos
        /// <summary>
        /// Adds one division to Chronos
        /// </summary>
        /// <param name="Head">Authorization header with current user information</param>
        /// <param name="Division">Division entity with the data to add</param>
        /// <exception cref="Chronos.Exceptions.ChronosException">Thrown when an unknown error occurs.</exception>
        /// <exception cref="Chronos.Exceptions.DataAlreadyExistsException">Thrown when the company already exists.</exception>
        /// <exception cref="Chronos.Exceptions.NotAuthorizedException">Throws this exception when the user is not allowed to use this function.</exception>
        public void AddDivision(AuthHead Head, DivisionEntity Division)
        {
            Head.CommandID = "CHRONOS.MODULES.CORE.FOUNDATION.DIVISIONSERVICE";
            Head.CommandOptionID = "ADDDIVISION";

            if (userService.CanDoIt(Head))
            {
                if ((from division in dataConn.Divisions where division.CompanyID == Division.CompanyID && division.DivisionID == Division.DivisionID select division).Count() == 0)
                {
                    Divisions newDivision = new Divisions();
                    newDivision.CompanyID = Division.CompanyID;
                    newDivision.DivisionID = Division.DivisionID;
                    newDivision.Name = Division.Name;
                    newDivision.Description = Division.Description;

                    dataConn.Divisions.Add(newDivision);

                    if (dataConn.SaveChanges() <= 0)
                    { throw new ChronosException("It wasn't possible to add the new division."); }
                }
                else
                { throw new DataAlreadyExistsException(); }
            }
            else
            { throw new NotAuthorizedException(); }
        }
コード例 #2
0
ファイル: DivisionService.cs プロジェクト: cipjota/Chronos
        /// <summary>
        /// Edits the provided division
        /// </summary>
        /// <param name="Division">Division entity with the data to edit</param>
        /// <exception cref="Chronos.Exceptions.ChronosException">Thrown when an unknown error occurs.</exception>
        /// <exception cref="Chronos.Exceptions.NotAuthorizedException">Throws this exception when the user is not allowed to use this function.</exception>
        public void EditDivision(AuthHead Head, DivisionEntity Division)
        {
            Head.CommandID = "CHRONOS.MODULES.CORE.FOUNDATION.DIVISIONSERVICE";
            Head.CommandOptionID = "EDITDIVISION";

            if (userService.CanDoIt(Head))
            {
                var varDivision = (from division in dataConn.Divisions where division.CompanyID == Division.CompanyID && division.DivisionID == Division.DivisionID select division).FirstOrDefault();
                if (varDivision != null)
                {
                    varDivision.Name = Division.Name;
                    varDivision.Description = Division.Description;

                    if (dataConn.SaveChanges() <= 0)
                    { throw new ChronosException("It wasn't possible to save the changes in the company."); }
                }
                else
                { throw new DataNotFoundException("The specified company do not exist."); }
            }
            else
            { throw new NotAuthorizedException(); }
        }
コード例 #3
0
ファイル: DivisionService.cs プロジェクト: cipjota/Chronos
        /// <summary>
        /// Gets the division for the given Division ID
        /// </summary>
        /// <param name="CompanyID">Company ID of the division</param>
        /// <param name="DivisionID">Division ID to get</param>
        /// <returns>Selected company</returns>
        public DivisionEntity GetDivision(string CompanyID, string DivisionID)
        {
            if (DivisionID == "") { DivisionID = "ALL"; }
            var varDivision = (
                    from division in dataConn.Divisions
                    where
                        division.CompanyID == CompanyID
                        && division.DivisionID == DivisionID
                    select division
                ).FirstOrDefault();

            if (varDivision == null)
            { return null; }
            else
            {
                Models.DivisionEntity divisionReturn = new Models.DivisionEntity();
                divisionReturn.CompanyID = varDivision.CompanyID;
                divisionReturn.DivisionID = varDivision.DivisionID;
                divisionReturn.Description = varDivision.Description;
                divisionReturn.Name = varDivision.Name;

                return divisionReturn;
            }
        }