Пример #1
0
        private bool SaveShipStoresToPortCall(List <FalShipStores> shipStores, int portCallId)
        {
            var portCall = _context.PortCall.Where(pc => pc.PortCallId == portCallId).FirstOrDefault();

            if (portCall != null)
            {
                try
                {
                    _context.FalShipStores.RemoveRange(_context.FalShipStores.Where(fss => fss.PortCallId == portCallId));

                    if (shipStores.Any())
                    {
                        _context.FalShipStores.AddRange(shipStores);
                    }

                    _context.SaveChanges();
                    return(true);
                }
                catch (Exception ex)
                {
                    return(false);
                }
            }
            return(false);
        }
Пример #2
0
 public IActionResult Register([FromBody] PortCall portCall)
 {
     try
     {
         var clearanceAgencies = _context.Organization.Where(org => org.OrganizationTypeId == Constants.Integers.DatabaseTableIds.ORGANIZATION_TYPE_GOVERNMENT_AGENCY).ToList();
         List <OrganizationPortCall> organizationPortCallList = new List <OrganizationPortCall>();
         if (clearanceAgencies.Any())
         {
             foreach (Organization agency in clearanceAgencies)
             {
                 OrganizationPortCall opc = new OrganizationPortCall
                 {
                     OrganizationId = agency.OrganizationId,
                     PortCallId     = portCall.PortCallId
                 };
                 organizationPortCallList.Add(opc);
                 _context.OrganizationPortCall.Add(opc);
             }
             _context.SaveChanges();
             return(Json(organizationPortCallList));
         }
         else
         {
             return(BadRequest("Warning: clearance list for port call is empty: no authorities could be found"));
         }
     }
     catch (DbUpdateException ex) when(ex.InnerException is Npgsql.PostgresException)
     {
         Npgsql.PostgresException innerEx = (Npgsql.PostgresException)ex.InnerException;
         return(BadRequest("PostgreSQL Error Code: " + innerEx.SqlState));
     }
 }
Пример #3
0
 public IActionResult UpdateList([FromBody] List <IdentityDocument> identityDocumentList)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try{
         if (!identityDocumentList.Any())
         {
             _context.IdentityDocument.RemoveRange(_context.IdentityDocument.ToList());
         }
         else
         {
             var removeList = _context.IdentityDocument.Where(i => !identityDocumentList.Any(identityDocumentEntity => identityDocumentEntity.IdentityDocumentId == i.IdentityDocumentId));
             _context.IdentityDocument.RemoveRange(removeList);
             foreach (IdentityDocument identityDocumentEntity in identityDocumentList)
             {
                 if (_context.IdentityDocument.Any(i => i.IdentityDocumentId == identityDocumentEntity.IdentityDocumentId))
                 {
                     _context.IdentityDocument.Update(identityDocumentEntity);
                 }
                 else
                 {
                     _context.IdentityDocument.Add(identityDocumentEntity);
                 }
             }
         }
         _context.SaveChanges();
         return(Ok(true));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
Пример #4
0
 public IActionResult RemovePurposeForPortCall(int portCallId)
 {
     try
     {
         var removeList = _context.PortCallHasPortCallPurpose.Where(pcHasPurpose => pcHasPurpose.PortCallId == portCallId);
         _context.PortCallHasPortCallPurpose.RemoveRange(removeList);
         _context.SaveChanges();
         return(Json("Purposes removed from port call with ID: " + portCallId));
     }
     catch (DbUpdateException ex) when(ex.InnerException is Npgsql.PostgresException)
     {
         Npgsql.PostgresException innerEx = (Npgsql.PostgresException)ex.InnerException;
         return(BadRequest("PostgreSQL Error Code: " + innerEx.SqlState));
     }
 }
 public IActionResult SaveFalSecurity([FromBody] FalSecurity falSecurity)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         if (falSecurity.FalSecurityId > 0)
         {
             _context.ShipToShipActivity.RemoveRange(_context.ShipToShipActivity.Where(stsa => stsa.FalSecurityId == falSecurity.FalSecurityId));
             _context.SecurityPreviousPortOfCall.RemoveRange(_context.SecurityPreviousPortOfCall.Where(pc => pc.FalSecurityId == falSecurity.FalSecurityId));
             _context.FalSecurity.Update(falSecurity);
         }
         else
         {
             _context.FalSecurity.Add(falSecurity);
         }
         _context.SaveChanges();
         return(Ok(falSecurity));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
 public IActionResult AddCertificateOfRegistry([FromBody] CertificateOfRegistry certificate)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         _context.CertificateOfRegistry.Add(certificate);
         _context.SaveChanges();
         return(Ok());
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
Пример #7
0
 public IActionResult Add([FromBody] PersonOnBoard personOnBoard)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         _context.PersonOnBoard.Add(personOnBoard);
         _context.SaveChanges();
         return(Ok());
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
 public IActionResult Add(MeasurementType measurementType)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         _context.MeasurementType.Add(measurementType);
         _context.SaveChanges();
         return(Ok());
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
Пример #9
0
 public IActionResult UpdateList([FromBody] List <FalShipStores> shipStoresList, int portCallId)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         _context.FalShipStores.RemoveRange(_context.FalShipStores.Where(st => st.PortCallId == portCallId));
         _context.FalShipStores.AddRange(shipStoresList);
         _context.SaveChanges();
         return(Json(shipStoresList));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
 public IActionResult Update([FromBody] PortCallDetails portCallDetails)
 {
     if (!ValidateDetails(portCallDetails))
     {
         return(BadRequest("Invalid port call details from data."));
     }
     try
     {
         _context.PortCallDetails.Update(portCallDetails);
         _context.SaveChanges();
     }
     catch (DbUpdateException ex) when(ex.InnerException is Npgsql.PostgresException)
     {
         Npgsql.PostgresException innerEx = (Npgsql.PostgresException)ex.InnerException;
         return(BadRequest("PostgreSQL Error Code: " + innerEx.SqlState));
     }
     return(Json(portCallDetails));
 }
Пример #11
0
 public IActionResult Add(CustomsCargo cargo)
 {
     if (cargo == null)
     {
         return(BadRequest("Empty request body."));
     }
     _context.CustomsCargo.Add(cargo);
     _context.SaveChanges();
     return(Ok(cargo));
 }
 public IActionResult SaveShipContactList([FromBody] List <ShipContact> shipContactList)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         var shipIdList = shipContactList.Select(sc => sc.ShipId).ToList();
         var removeList = _context.ShipContact.Where(sc => shipContactList.Any(contactEntity => contactEntity.ShipId == sc.ShipId));
         _context.ShipContact.RemoveRange(removeList);
         _context.ShipContact.AddRange(shipContactList);
         _context.SaveChanges();
         return(Json(shipContactList));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
        public IActionResult Add(Dpg dpg)
        {
            if (dpg == null)
            {
                return(BadRequest("Empty body."));
            }

            _context.Dpg.Add(dpg);
            _context.SaveChanges();
            return(Ok(dpg));
        }
        public static void AddUnconnectedUsers(open_ssnContext context)
        {
            Password pw = new Password
            {
                Hash = "XXXXXXXX"
            };
            User usr = new User
            {
                Email           = "*****@*****.**",
                EmailConfirmed  = true,
                NormalizedEmail = "*****@*****.**",
                Password        = pw
            };

            context.Set <User>().Add(usr);
            context.SaveChanges();
        }
        public IActionResult UpdateList([FromBody] List <DpgOnBoard> dpgOnBoardList, long portCallId)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                if (!dpgOnBoardList.Any())
                {
                    _context.DpgOnBoard.RemoveRange(_context.DpgOnBoard.Where(s => s.PortCallId == portCallId));
                }
                else
                {
                    var oldList    = _context.DpgOnBoard.AsNoTracking().Where(s => s.PortCallId == portCallId).ToList();
                    var removeList = oldList.Where(dpg => !dpgOnBoardList.Any(dpgEntity => dpgEntity.DpgOnBoardId == dpg.DpgOnBoardId)).ToList();
                    _context.DpgOnBoard.RemoveRange(removeList);

                    foreach (var dpgOnBoard in dpgOnBoardList)
                    {
                        if (_context.DpgOnBoard.Any(dpg => dpg.DpgOnBoardId == dpgOnBoard.DpgOnBoardId))
                        {
                            _context.DpgOnBoard.Update(dpgOnBoard);
                        }
                        else
                        {
                            _context.DpgOnBoard.Add(dpgOnBoard);
                        }
                    }
                }
                _context.SaveChanges();
                return(Ok(true));
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }
Пример #16
0
 public IActionResult SaveInternationalShipSecurityCertificate([FromBody] InternationalShipSecurityCertificate issc)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         if (issc.IsscId > 0)
         {
             _context.InternationalShipSecurityCertificate.Update(issc);
         }
         else
         {
             _context.InternationalShipSecurityCertificate.Add(issc);
         }
         _context.SaveChanges();
         return(Ok(issc));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
Пример #17
0
 public IActionResult SaveCompanySecurityOfficer([FromBody] CompanySecurityOfficer cso)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         if (cso.CompanySecurityOfficerId > 0)
         {
             _context.CompanySecurityOfficer.Update(cso);
         }
         else
         {
             _context.CompanySecurityOfficer.Add(cso);
         }
         _context.SaveChanges();
         return(Ok(cso));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
        private static void AddRoleData(open_ssnContext context)
        {
            var       con       = context as DbContext;
            ClaimType claimType = new ClaimType
            {
                Name        = "Port Call",
                Description = "Claim type for claims related to port call."
            };

            Role role = new Role
            {
                Name           = "admin",
                NormalizedName = "ADMIN",
                Description    = "Administrator role"
            };

            context.ClaimType.Add(claimType);
            context.Role.Add(role);
            context.SaveChanges();

            role      = context.Set <Role>().SingleAsync(r => r.Name == "admin").GetAwaiter().GetResult();
            claimType = con.Set <ClaimType>().SingleAsync(ct => ct.Name == "Port Call").GetAwaiter().GetResult();

            List <Claim> claims = new List <Claim>
            {
                new Claim
                {
                    ClaimType  = claimType,
                    ClaimValue = "View"
                },
                new Claim
                {
                    ClaimType  = claimType,
                    ClaimValue = "Edit"
                }
            };

            List <RoleClaim> roleClaims = new List <RoleClaim>();

            foreach (var claim in claims)
            {
                roleClaims.Add(new RoleClaim
                {
                    Role  = role,
                    Claim = claim
                });
            }

            role = context.Set <Role>().SingleAsync(r => r.Name == "admin").GetAwaiter().GetResult();

            context.RoleClaim.AddRange(roleClaims);
            context.SaveChanges();

            // Add new customs role

            role = new Role
            {
                Name           = "customs",
                NormalizedName = "CUSTOMS",
                Description    = "Customs role"
            };

            context.Role.Add(role);
            context.SaveChanges();

            // Make customs role have portcall view and clearance claims

            claims.RemoveAt(1);

            claims.Insert(1,
                          new Claim
            {
                ClaimType  = claimType,
                ClaimValue = "Clearance"
            });

            roleClaims.Clear();
            foreach (var claim in claims)
            {
                roleClaims.Add(new RoleClaim
                {
                    Role  = role,
                    Claim = claim
                });
            }

            context.RoleClaim.AddRange(roleClaims);
            context.SaveChanges();
        }