Bladeren bron

Merge branch 'devel2' of ssh://git.mixtech.dev.br:22622/TooEasy/backend into devel2

EduLascala 1 maand geleden
bovenliggende
commit
f489d76a45

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/model/AppUser.java

@@ -68,4 +68,4 @@ public class AppUser {
 
     @Column(name = "user_flag", nullable = false)
     private String userFlag;
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/model/Company.java

@@ -32,4 +32,4 @@ public class Company {
 
     @Column(name = "company_flag", nullable = false)
     private String flag;
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/model/Orderbook.java

@@ -56,4 +56,4 @@ public class Orderbook {
 
     @Column(name = "chain_id", nullable = false)
     private Long chainId;
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/repository/AppUserRepository.java

@@ -10,4 +10,4 @@ public interface AppUserRepository extends JpaRepository<AppUser, Long> {
     Optional<AppUser> findByUserEmail(String userEmail);
 
     List<AppUser> findByCompanyId(Integer companyId);
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/repository/CompanyRepository.java

@@ -4,4 +4,4 @@ import com.platform2easy.genesis.domain.model.Company;
 import org.springframework.data.jpa.repository.JpaRepository;
 
 public interface CompanyRepository extends JpaRepository<Company, Long> {
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/repository/OrderbookRepository.java

@@ -6,4 +6,4 @@ import java.util.List;
 
 public interface OrderbookRepository extends JpaRepository<Orderbook, Long> {
     List<Orderbook> findByIsToken(Boolean isToken);
-}
+}

+ 35 - 1
src/main/java/com/platform2easy/genesis/domain/service/CompanyService.java

@@ -1,8 +1,12 @@
 package com.platform2easy.genesis.domain.service;
 
+import com.platform2easy.genesis.domain.model.AppUser;
 import com.platform2easy.genesis.domain.model.Company;
+import com.platform2easy.genesis.domain.repository.AppUserRepository;
 import com.platform2easy.genesis.domain.repository.CompanyRepository;
+import com.platform2easy.genesis.web.dto.CompanyWithUserDTO;
 import lombok.AllArgsConstructor;
+import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -13,6 +17,8 @@ import java.util.List;
 public class CompanyService {
 
     private final CompanyRepository repository;
+    private final AppUserRepository userRepository;
+    private final PasswordEncoder passwordEncoder;
 
     @Transactional
     public Company salvar(Company company) {
@@ -31,4 +37,32 @@ public class CompanyService {
     public void deletarPorId(Long id) {
         repository.deleteById(id);
     }
-}
+
+    @Transactional
+    public Company registerCompanyWithUser(CompanyWithUserDTO dto) {
+        Company company = new Company();
+        company.setName(dto.getCompanyName());
+        company.setFlag("a");
+        company = repository.save(company);
+
+        AppUser user = new AppUser();
+        user.setUserName(dto.getUserName());
+        user.setUserEmail(dto.getUserEmail());
+        user.setUserPassword(passwordEncoder.encode(dto.getUserPassword()));
+        user.setUserPhone(dto.getUserPhone());
+        user.setUserAddress(dto.getUserAddress());
+        user.setUserCity(dto.getUserCity());
+        user.setUserState(dto.getUserState());
+        user.setUserZip(dto.getUserZip());
+        user.setUserCountry(dto.getUserCountry());
+        user.setUserKyc(dto.getUserKyc());
+        user.setUserBirthdate(dto.getUserBirthdate());
+        user.setUserCpf(dto.getUserCpf());
+        user.setCompanyId(company.getId().intValue());
+        user.setRoleId(dto.getRoleId());
+        user.setUserFlag("a");
+        userRepository.save(user);
+
+        return company;
+    }
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/service/OrderbookService.java

@@ -35,4 +35,4 @@ public class OrderbookService {
     public List<Orderbook> listarPorIsToken(Boolean isToken) {
         return repository.findByIsToken(isToken);
     }
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/domain/service/UserService.java

@@ -46,4 +46,4 @@ public class UserService implements UserDetailsService {
     public void deletarPorId(Long id) {
         appUserRepository.deleteById(id);
     }
-}
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/security/service/TokenService.java

@@ -45,4 +45,4 @@ public class TokenService {
     private Instant genExpirationDate() {
         return LocalDateTime.now().plusHours(2).toInstant(ZoneOffset.of("-03:00"));
     }
-}
+}

+ 8 - 1
src/main/java/com/platform2easy/genesis/web/controller/CompanyController.java

@@ -2,6 +2,7 @@ package com.platform2easy.genesis.web.controller;
 
 import com.platform2easy.genesis.domain.model.Company;
 import com.platform2easy.genesis.domain.service.CompanyService;
+import com.platform2easy.genesis.web.dto.CompanyWithUserDTO;
 import com.platform2easy.genesis.web.dto.CompanyResponseDTO;
 import lombok.AllArgsConstructor;
 import org.springframework.http.HttpStatus;
@@ -49,4 +50,10 @@ public class CompanyController {
     public void delete(@PathVariable Long id) {
         service.deletarPorId(id);
     }
-}
+
+    @PostMapping("/register-with-user")
+    @ResponseStatus(HttpStatus.CREATED)
+    public Company registerCompanyWithUser(@RequestBody CompanyWithUserDTO dto) {
+        return service.registerCompanyWithUser(dto);
+    }
+}

+ 1 - 2
src/main/java/com/platform2easy/genesis/web/controller/OrderbookController.java

@@ -61,5 +61,4 @@ public class OrderbookController {
         }
         return service.listarPorIsToken(isToken == 1);
     }
-}
-
+}

+ 24 - 0
src/main/java/com/platform2easy/genesis/web/dto/CompanyWithUserDTO.java

@@ -0,0 +1,24 @@
+package com.platform2easy.genesis.web.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class CompanyWithUserDTO {
+    private String companyName;
+
+    private String userName;
+    private String userEmail;
+    private String userPassword;
+    private String userPhone;
+    private String userAddress;
+    private String userCity;
+    private String userState;
+    private String userZip;
+    private String userCountry;
+    private Integer userKyc;
+    private Integer userBirthdate;
+    private String userCpf;
+    private Integer roleId;
+}

+ 1 - 1
src/main/java/com/platform2easy/genesis/web/dto/RegisterDTO.java

@@ -44,4 +44,4 @@ public class RegisterDTO {
     private Integer roleId;
     @NotBlank
     private String flag;
-}
+}

+ 1 - 0
src/main/resources/db/migration/postgresql/V1__init.sql

@@ -1,3 +1,4 @@
+
 CREATE TABLE "chain" (
     "chain_id"   SERIAL PRIMARY KEY,
     "chain_name" TEXT NOT NULL