refactor v2
This commit is contained in:
parent
ed88afcdde
commit
b49a2425c1
@ -1,66 +1,73 @@
|
||||
package com.iconplus.smartproc.controller;
|
||||
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.GetRolesResponse;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.service.roles.*;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||
@RestController
|
||||
@RequestMapping("/api/roles")
|
||||
public class RolesController {
|
||||
@Autowired
|
||||
private RolesRepository rolesRepository;
|
||||
|
||||
//get all data
|
||||
private final GetRolesService getRolesService;
|
||||
private final PostCreateRoleService postCreateRoleService;
|
||||
private final GetRoleByIdService getRoleByIdService;
|
||||
private final PutUpdateRoleService putUpdateRoleService;
|
||||
private final DeleteRoleService deleteRoleService;
|
||||
|
||||
public RolesController(GetRolesService getRolesService,
|
||||
PostCreateRoleService postCreateRoleService,
|
||||
GetRoleByIdService getRoleByIdService,
|
||||
PutUpdateRoleService putUpdateRoleService,
|
||||
DeleteRoleService deleteRoleService) {
|
||||
this.getRolesService = getRolesService;
|
||||
this.postCreateRoleService = postCreateRoleService;
|
||||
this.getRoleByIdService = getRoleByIdService;
|
||||
this.putUpdateRoleService = putUpdateRoleService;
|
||||
this.deleteRoleService = deleteRoleService;
|
||||
}
|
||||
|
||||
@GetMapping
|
||||
public List<Roles> getAllRoless(){
|
||||
return rolesRepository.findAll();
|
||||
public GetRolesResponse getRoles(@RequestParam(name = "search", required = false) String search,
|
||||
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||
|
||||
Pageable pageable = PageRequest.of((page - 1), size);
|
||||
RolesRequest rolesRequest = RolesRequest.builder()
|
||||
.search(search)
|
||||
.pageable(pageable)
|
||||
.build();
|
||||
|
||||
return getRolesService.execute(rolesRequest);
|
||||
}
|
||||
|
||||
// create
|
||||
@PostMapping
|
||||
public Roles createRoles(@RequestBody Roles roles) {
|
||||
return rolesRepository.save(roles);
|
||||
public RolesResponse createRoles(@RequestBody RolesRequest rolesRequest) {
|
||||
return postCreateRoleService.execute(rolesRequest);
|
||||
}
|
||||
|
||||
// get roles by id rest api
|
||||
@GetMapping("/{id}")
|
||||
public ResponseEntity<Roles> getRolesById(@PathVariable Long id) {
|
||||
Roles roles = rolesRepository.findById(id)
|
||||
.orElseThrow(() -> new ResourceNotFoundException("Roles not exist with id :" + id));
|
||||
return ResponseEntity.ok(roles);
|
||||
public RolesResponse getRolesById(@PathVariable Long id) {
|
||||
return getRoleByIdService.execute(RolesRequest.builder()
|
||||
.id(id)
|
||||
.build());
|
||||
}
|
||||
|
||||
// update roles rest api
|
||||
@PutMapping("/{id}")
|
||||
public ResponseEntity<Roles> updateRoles(@PathVariable Long id, @RequestBody Roles rolesDetails){
|
||||
Roles roles = rolesRepository.findById(id)
|
||||
.orElseThrow(() -> new ResourceNotFoundException("Roles not exist with id :" + id));
|
||||
|
||||
roles.setRole(rolesDetails.getRole());
|
||||
roles.setKeterangan(rolesDetails.getKeterangan());
|
||||
roles.setIsActive(rolesDetails.getIsActive());
|
||||
|
||||
Roles updatedRoles = rolesRepository.save(roles);
|
||||
return ResponseEntity.ok(updatedRoles);
|
||||
public RolesResponse updateRoles(@PathVariable Long id, @RequestBody RolesRequest rolesRequest){
|
||||
rolesRequest.setId(id);
|
||||
return putUpdateRoleService.execute(rolesRequest);
|
||||
}
|
||||
|
||||
// delete roles rest api
|
||||
@DeleteMapping("/{id}")
|
||||
public ResponseEntity<Map<String, Boolean>> deleteRoles(@PathVariable Long id){
|
||||
Roles roles = rolesRepository.findById(id)
|
||||
.orElseThrow(() -> new ResourceNotFoundException("Supposmatrix not exist with id :" + id));
|
||||
|
||||
rolesRepository.delete(roles);
|
||||
Map<String, Boolean> response = new HashMap<>();
|
||||
response.put("deleted", Boolean.TRUE);
|
||||
return ResponseEntity.ok(response);
|
||||
public EmptyResponse deleteRoles(@PathVariable Long id){
|
||||
return deleteRoleService.execute(RolesRequest.builder()
|
||||
.id(id)
|
||||
.build());
|
||||
}
|
||||
}
|
||||
|
@ -2,8 +2,15 @@ package com.iconplus.smartproc.controller;
|
||||
|
||||
import com.iconplus.smartproc.model.entity.Users;
|
||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.request.UsersRequest;
|
||||
import com.iconplus.smartproc.model.response.GetRolesResponse;
|
||||
import com.iconplus.smartproc.model.response.GetUsersResponse;
|
||||
import com.iconplus.smartproc.repository.UsersRepository;
|
||||
import com.iconplus.smartproc.service.manajemenuser.GetListUserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@ -18,10 +25,36 @@ public class UsersController {
|
||||
@Autowired
|
||||
private UsersRepository usersRepository;
|
||||
|
||||
//get all data
|
||||
private final GetListUserService getListUserService;
|
||||
public UsersController(GetListUserService getListUserService) {
|
||||
this.getListUserService = getListUserService;
|
||||
}
|
||||
|
||||
|
||||
@GetMapping
|
||||
public List<Users> getAllUserss(){
|
||||
return usersRepository.findAll();
|
||||
public GetUsersResponse getUsers(@RequestParam(name = "search", required = false) String search,
|
||||
@RequestParam(name = "instansi", required = false) String instansi,
|
||||
@RequestParam(name = "bidang", required = false) String bidang,
|
||||
@RequestParam(name = "nama", required = false) String nama,
|
||||
@RequestParam(name = "jabatan", required = false) String jabatan,
|
||||
@RequestParam(name = "role", required = false) String role,
|
||||
@RequestParam(name = "email", required = false) String email,
|
||||
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||
|
||||
Pageable pageable = PageRequest.of((page - 1), size);
|
||||
UsersRequest usersRequest = UsersRequest.builder()
|
||||
.search(search)
|
||||
.instansi(instansi)
|
||||
.bidang(bidang)
|
||||
.nama(nama)
|
||||
.jabatan(jabatan)
|
||||
.role(role)
|
||||
.email(email)
|
||||
.pageable(pageable)
|
||||
.build();
|
||||
|
||||
return getListUserService.execute(usersRequest);
|
||||
}
|
||||
|
||||
// create
|
||||
@ -45,7 +78,7 @@ public class UsersController {
|
||||
.orElseThrow(() -> new ResourceNotFoundException("Users not exist with id :" + id));
|
||||
|
||||
users.setUsername(usersDetails.getUsername());
|
||||
users.setFullname(usersDetails.getFullname());
|
||||
users.setNama(usersDetails.getNama());
|
||||
users.setEmail(usersDetails.getEmail());
|
||||
users.setPassword(usersDetails.getPassword());
|
||||
// users.setInstansi(usersDetails.getInstansi());
|
||||
|
@ -0,0 +1,38 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Entity
|
||||
@Table(name = "bidang")
|
||||
public class Bidang extends BaseEntity {
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private Long id;
|
||||
|
||||
@Column(name = "bidang")
|
||||
private String bidang;
|
||||
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Entity
|
||||
@Table(name = "instansi")
|
||||
public class Instansi extends BaseEntity {
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private Long id;
|
||||
|
||||
@Column(name = "instansi")
|
||||
private String instansi;
|
||||
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
}
|
@ -19,7 +19,7 @@ public class JenisAnggaran extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private long id;
|
||||
private Long id;
|
||||
|
||||
@Column(name = "jenis_anggaran")
|
||||
private String jenisAnggaran;
|
||||
@ -27,8 +27,12 @@ public class JenisAnggaran extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,11 +13,13 @@ import javax.persistence.*;
|
||||
@Table(name = "jenis_kontrak")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class JenisKontrak extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private long id;
|
||||
private Long id;
|
||||
|
||||
@Column(name = "jenis_kontrak")
|
||||
private String jenisKontrak;
|
||||
@ -23,8 +27,12 @@ public class JenisKontrak extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "jenis_pengadaan")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class JenisPengadaan extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,12 @@ public class JenisPengadaan extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,11 +13,13 @@ import javax.persistence.*;
|
||||
@Table(name = "lokasi")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class Lokasi extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private long id;
|
||||
private Long id;
|
||||
|
||||
@Column(name = "lokasi")
|
||||
private String lokasi;
|
||||
@ -23,8 +27,12 @@ public class Lokasi extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "metode_pengadaan")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class MetodePengadaan extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,8 @@ public class MetodePengadaan extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -2,8 +2,10 @@ package com.iconplus.smartproc.model.entity;
|
||||
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -12,6 +14,8 @@ import javax.persistence.*;
|
||||
@Table(name = "metode_penyampaian")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class MetodePenyampaian extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -24,8 +28,12 @@ public class MetodePenyampaian extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,21 +1,25 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "roles")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Entity
|
||||
@Table(name = "roles")
|
||||
public class Roles extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private long id;
|
||||
private Long id;
|
||||
|
||||
@Column(name = "role")
|
||||
private String role;
|
||||
@ -27,8 +31,8 @@ public class Roles extends BaseEntity {
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "strategi_pengadaan")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class StrategiPengadaan extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,12 @@ public class StrategiPengadaan extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "sumber_dana")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SumberDana extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,12 @@ public class SumberDana extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "supply_positioning_matrix")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SupplyPositioningMatrix extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,12 @@ public class SupplyPositioningMatrix extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ public class TokenManagement extends BaseEntity {
|
||||
@Column(name = "expired_time")
|
||||
private Timestamp expiredTime;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
@ -11,6 +13,8 @@ import javax.persistence.*;
|
||||
@Table(name = "unit_inisiator")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class UnitInisiator extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@ -23,8 +27,12 @@ public class UnitInisiator extends BaseEntity {
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_active")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -1,27 +1,31 @@
|
||||
package com.iconplus.smartproc.model.entity;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "users")
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Entity
|
||||
@Table(name = "users")
|
||||
public class Users extends BaseEntity {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Column(name = "id")
|
||||
private long id;
|
||||
private Long id;
|
||||
|
||||
@Column(name = "username")
|
||||
private String username;
|
||||
|
||||
@Column(name = "fullname")
|
||||
private String fullname;
|
||||
@Column(name = "nama")
|
||||
private String nama;
|
||||
|
||||
@Column(name = "email")
|
||||
private String email;
|
||||
@ -30,10 +34,10 @@ public class Users extends BaseEntity {
|
||||
private String password;
|
||||
|
||||
@Column(name = "instansi_id")
|
||||
private String instansiId;
|
||||
private Long instansiId;
|
||||
|
||||
@Column(name = "bidang_id")
|
||||
private String bidangId;
|
||||
private Long bidangId;
|
||||
|
||||
@Column(name = "jabatan")
|
||||
private String jabatan;
|
||||
@ -45,7 +49,7 @@ public class Users extends BaseEntity {
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean isActive;
|
||||
|
||||
@Column(name = "deleted")
|
||||
@Column(name = "is_delete")
|
||||
@Type(type = "org.hibernate.type.NumericBooleanType")
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
}
|
||||
|
@ -5,10 +5,12 @@ public interface JenisAnggaranView {
|
||||
Long getId();
|
||||
String getJenisAnggaran();
|
||||
String getKeterangan();
|
||||
Boolean getDeleted();
|
||||
String getIsActive();
|
||||
Boolean getIsDelete();
|
||||
|
||||
void setId(Long id);
|
||||
void setJenisAnggaran(String jenisAnggaran);
|
||||
void setKeterangan(String keterangan);
|
||||
void setDeleted(Boolean deleted);
|
||||
void setIsActive(Boolean isActive);
|
||||
void setIsDelete(Boolean isDelete);
|
||||
}
|
||||
|
@ -0,0 +1,16 @@
|
||||
package com.iconplus.smartproc.model.projection;
|
||||
|
||||
public interface RolesView {
|
||||
|
||||
Long getId();
|
||||
String getRole();
|
||||
String getKeterangan();
|
||||
Boolean getIsActive();
|
||||
Boolean getIsDelete();
|
||||
|
||||
void setId(Long id);
|
||||
void setRole(String role);
|
||||
void setKeterangan(String keterangan);
|
||||
void setIsActive(Boolean isActive);
|
||||
void setIsDelete(Boolean isDelete);
|
||||
}
|
@ -4,16 +4,32 @@ public interface UserRoleView {
|
||||
|
||||
Long getId();
|
||||
String getUsername();
|
||||
String getNama();
|
||||
String getEmail();
|
||||
Long getInstansiId();
|
||||
String getInstansi();
|
||||
Long getBidangId();
|
||||
String getBidang();
|
||||
String getJabatan();
|
||||
Boolean getIsActive();
|
||||
String getPassword();
|
||||
Long getRoleId();
|
||||
String getRole();
|
||||
Boolean getDeleted();
|
||||
Boolean getIsDelete();
|
||||
|
||||
void setId(Long id);
|
||||
void setUsername(String username);
|
||||
void setNama(String nama);
|
||||
void setEmail(String email);
|
||||
void setInstatnsi(String instansi);
|
||||
void setBidang(String bidang);
|
||||
void setJabatan(String Jabatan);
|
||||
void setInstatnsiId(Long instansiId);
|
||||
void setBidangId(Long bidangId);
|
||||
void setIsActive(Boolean isActive);
|
||||
void setPassword(String password);
|
||||
void setRoleId(Long roleId);
|
||||
void setRole(String role);
|
||||
void setDeleted(Boolean deleted);
|
||||
void setIsDelete(Boolean isDelete);
|
||||
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ public class JenisAnggaranRequest extends BaseRequest {
|
||||
private String jenisAnggaran;
|
||||
private String keterangan;
|
||||
private Boolean isActive;
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
private String search;
|
||||
private transient Pageable pageable;
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@ -16,6 +17,8 @@ public class RolesRequest extends BaseRequest {
|
||||
private String role;
|
||||
private String keterangan;
|
||||
private Boolean isActive;
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
private String search;
|
||||
private transient Pageable pageable;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,27 @@
|
||||
package com.iconplus.smartproc.model.request;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class UsersRequest extends BaseRequest {
|
||||
|
||||
private Long id;
|
||||
private String username;
|
||||
private String instansi;
|
||||
private String bidang;
|
||||
private String nama;
|
||||
private String jabatan;
|
||||
private String role;
|
||||
private String email;
|
||||
private Boolean isActive;
|
||||
private String search;
|
||||
private transient Pageable pageable;
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.iconplus.smartproc.model.response;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||
import com.iconplus.smartproc.helper.model.Pagination;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class GetRolesResponse extends BaseResponse {
|
||||
|
||||
private List<RolesResponse> data;
|
||||
private Pagination pagination;
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.iconplus.smartproc.model.response;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||
import com.iconplus.smartproc.helper.model.Pagination;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class GetUsersResponse extends BaseResponse {
|
||||
|
||||
private List<UsersResponse> data;
|
||||
private Pagination pagination;
|
||||
}
|
@ -16,6 +16,6 @@ public class JenisAnggaranResponse extends BaseResponse {
|
||||
private String jenisAnggaran;
|
||||
private String keterangan;
|
||||
private Boolean isActive;
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -16,6 +16,6 @@ public class RolesResponse extends BaseResponse {
|
||||
private String role;
|
||||
private String keterangan;
|
||||
private Boolean isActive;
|
||||
private Boolean deleted;
|
||||
private Boolean isDelete;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,23 @@
|
||||
package com.iconplus.smartproc.model.response;
|
||||
|
||||
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class UsersResponse extends BaseResponse {
|
||||
private Long id;
|
||||
private String instansi;
|
||||
private String bidang;
|
||||
private String nama;
|
||||
private String jabatan;
|
||||
private String role;
|
||||
private String email;
|
||||
private Boolean isActive;
|
||||
private Boolean isDelete;
|
||||
}
|
@ -16,16 +16,16 @@ public interface JenisAnggaranRepository extends JpaRepository<JenisAnggaran, Lo
|
||||
@Query(value = "SELECT ja.id as id, " +
|
||||
"ja.jenisAnggaran as jenisAnggaran, " +
|
||||
"ja.keterangan as keterangan, " +
|
||||
"ja.deleted as deleted " +
|
||||
"ja.isDelete as isDelete " +
|
||||
"FROM JenisAnggaran ja " +
|
||||
"WHERE ja.deleted = false " +
|
||||
"WHERE ja.isDelete = false " +
|
||||
"AND (:search = '' " +
|
||||
"or (UPPER(ja.jenisAnggaran) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||
"ORDER BY ja.id")
|
||||
Page<JenisAnggaranView> getAllJenisAnggaran(String search, Pageable pageable);
|
||||
|
||||
Optional<JenisAnggaran> findByIdAndDeletedFalse(Long id);
|
||||
Optional<JenisAnggaran> findByIdAndIsDeleteFalse(Long id);
|
||||
|
||||
Optional<JenisAnggaran> findByJenisAnggaranAndDeletedFalse(String jenisAnggaran);
|
||||
Optional<JenisAnggaran> findByJenisAnggaranAndIsDeleteFalse(String jenisAnggaran);
|
||||
|
||||
}
|
||||
|
@ -1,11 +1,15 @@
|
||||
package com.iconplus.smartproc.repository;
|
||||
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.model.projection.RolesView;
|
||||
import com.iconplus.smartproc.model.projection.UserRoleView;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@Repository
|
||||
@ -18,13 +22,25 @@ public interface RolesRepository extends JpaRepository<Roles, Long> {
|
||||
"r.role as role " +
|
||||
"FROM Users u " +
|
||||
"join Roles r on r.id=u.roleId " +
|
||||
"WHERE u.deleted = false " +
|
||||
"AND r.deleted = false " +
|
||||
"WHERE u.isDelete = false " +
|
||||
"AND r.isDelete = false " +
|
||||
"AND u.username = :userName ")
|
||||
Optional<UserRoleView> getUserRoleByUserId(String userName);
|
||||
|
||||
Optional<Roles> findByIdAndDeletedFalse(Long id);
|
||||
@Query(value = "SELECT r.id as id, " +
|
||||
"r.role as role, " +
|
||||
"r.keterangan as keterangan, " +
|
||||
"r.isActive as isActive, " +
|
||||
"r.isDelete as isDelete " +
|
||||
"FROM Roles r " +
|
||||
"WHERE r.isDelete = false " +
|
||||
"AND (:search = '' " +
|
||||
"or (UPPER(r.role) like :search OR UPPER(r.keterangan) like :search)) " +
|
||||
"ORDER BY r.id")
|
||||
Page<RolesView> findAllRolesANdDeletedFalse(String search, Pageable pageable);
|
||||
|
||||
Optional<Roles> findByRoleAndDeletedFalse(Long id);
|
||||
Optional<Roles> findByIdAndIsDeleteFalse(Long id);
|
||||
|
||||
Optional<Roles> findByRoleAndIsDeleteFalse(String role);
|
||||
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ public interface TokenManagementRepository extends JpaRepository<TokenManagement
|
||||
|
||||
@Query(value = "SELECT access_token as accessToken FROM token_management " +
|
||||
"WHERE user_id = :userId " +
|
||||
"AND deleted = false " +
|
||||
"AND isDelete = false " +
|
||||
"AND expired_time >= SYSDATE", nativeQuery = true)
|
||||
List<TokenManagementView> findAccessTokenByUserIdAndDeletedFalse(String userId);
|
||||
}
|
||||
|
@ -1,7 +1,11 @@
|
||||
package com.iconplus.smartproc.repository;
|
||||
|
||||
import com.iconplus.smartproc.model.entity.Users;
|
||||
import com.iconplus.smartproc.model.projection.UserRoleView;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
@ -9,6 +13,25 @@ import java.util.Optional;
|
||||
@Repository
|
||||
public interface UsersRepository extends JpaRepository<Users, Long> {
|
||||
|
||||
Optional<Users> findByEmailAndDeletedFalse(String email);
|
||||
@Query("SELECT u.id as id, " +
|
||||
"u.nama as nama, " +
|
||||
"u.jabatan as jabatan, " +
|
||||
"r.role as role, " +
|
||||
"u.email as email, " +
|
||||
"u.isActive as isActive, " +
|
||||
"u.isDelete as isDelete " +
|
||||
"FROM Users u " +
|
||||
"JOIN Roles r ON r.id = u.roleId " +
|
||||
"Where u.isDelete = false " +
|
||||
"AND (:search='' " +
|
||||
"or (UPPER(u.nama) like :search " +
|
||||
" OR UPPER(u.jabatan) like :search " +
|
||||
" OR UPPER(r.role) like :search " +
|
||||
" OR UPPER(u.email) like :search) " +
|
||||
") " +
|
||||
"ORDER by u.id")
|
||||
Page<UserRoleView> getAllUsersAndDeletedFase(String search, Pageable pageable);
|
||||
|
||||
Optional<Users> findByEmailAndIsDeleteFalse(String email);
|
||||
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ public class LoginService implements BaseService<LoginRequest, LoginResponse> {
|
||||
@Override
|
||||
public LoginResponse execute(LoginRequest input) {
|
||||
|
||||
var user= usersRepository.findByEmailAndDeletedFalse(input.getEmail())
|
||||
var user= usersRepository.findByEmailAndIsDeleteFalse(input.getEmail())
|
||||
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||
Constants.ERR_CODE_10003,
|
||||
Constants.ERR_TTL_10003,
|
||||
|
@ -3,7 +3,6 @@ package com.iconplus.smartproc.service.jenisanggaran;
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.JenisAnggaran;
|
||||
import com.iconplus.smartproc.model.request.JenisAnggaranRequest;
|
||||
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
@ -25,15 +24,15 @@ public class DeleteJenisAnggaranService implements BaseService<JenisAnggaranRequ
|
||||
@Override
|
||||
public EmptyResponse execute(JenisAnggaranRequest input) {
|
||||
|
||||
var jenisAnggaran = jenisAnggaranRepository.findByIdAndDeletedFalse(input.getId())
|
||||
var jenisAnggaran = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||
Constants.ERR_CODE_10001,
|
||||
Constants.ERR_TTL_10001,
|
||||
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||
|
||||
jenisAnggaran.setDeleted(true);
|
||||
jenisAnggaran.setIsDelete(true);
|
||||
jenisAnggaranRepository.save(jenisAnggaran);
|
||||
log.info("success delete jenis anggaran id {}", jenisAnggaran.getDeleted());
|
||||
log.info("success delete jenis anggaran id {}", jenisAnggaran.getIsDelete());
|
||||
return new EmptyResponse();
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranReq
|
||||
@Override
|
||||
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||
JenisAnggaranResponse jenisAnggaranResponse = new JenisAnggaranResponse();
|
||||
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndDeletedFalse(input.getId());
|
||||
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||
if (jenisAnggaranView.isEmpty()) {
|
||||
throw new BusinessException(HttpStatus.CONFLICT,
|
||||
Constants.ERR_CODE_10001,
|
||||
@ -31,13 +31,13 @@ public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranReq
|
||||
|
||||
jenisAnggaranResponse.setJenisAnggaran(jenisAnggaranView.get().getJenisAnggaran());
|
||||
jenisAnggaranResponse.setKeterangan(jenisAnggaranView.get().getKeterangan());
|
||||
jenisAnggaranResponse.setDeleted(jenisAnggaranView.get().getDeleted());
|
||||
jenisAnggaranResponse.setIsDelete(jenisAnggaranView.get().getIsDelete());
|
||||
|
||||
return JenisAnggaranResponse.builder()
|
||||
.id(jenisAnggaranView.get().getId())
|
||||
.jenisAnggaran(jenisAnggaranView.get().getJenisAnggaran())
|
||||
.keterangan(jenisAnggaranView.get().getKeterangan())
|
||||
.deleted(jenisAnggaranView.get().getDeleted())
|
||||
.isDelete(jenisAnggaranView.get().getIsDelete())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ public class GetListJenisAnggaranService implements BaseService<JenisAnggaranReq
|
||||
.id(jenisAnggaranView.getId())
|
||||
.jenisAnggaran(jenisAnggaranView.getJenisAnggaran())
|
||||
.keterangan(jenisAnggaranView.getKeterangan())
|
||||
.deleted(jenisAnggaranView.getDeleted())
|
||||
.isDelete(jenisAnggaranView.getIsDelete())
|
||||
.build();
|
||||
jenisAnggaranResponseList.add(jenisAnggaranResponse);
|
||||
}
|
||||
|
@ -8,7 +8,6 @@ import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
|
||||
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@ -27,18 +26,18 @@ public class PostCreateJenisAnggaranService implements BaseService<JenisAnggaran
|
||||
@Override
|
||||
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||
|
||||
var existJenisAnggaran = jenisAnggaranRepository.findByJenisAnggaranAndDeletedFalse(input.getJenisAnggaran());
|
||||
var existJenisAnggaran = jenisAnggaranRepository.findByJenisAnggaranAndIsDeleteFalse(input.getJenisAnggaran());
|
||||
if (existJenisAnggaran.isPresent()) {
|
||||
throw new BusinessException(HttpStatus.CONFLICT,
|
||||
Constants.ERR_CODE_10002,
|
||||
Constants.ERR_TTL_10002,
|
||||
String.format(Constants.ERR_MSG_10002, existJenisAnggaran.get().getId()));
|
||||
String.format(Constants.ERR_MSG_10002, input.getJenisAnggaran()));
|
||||
}
|
||||
|
||||
JenisAnggaran jenisAnggaran = JenisAnggaran.builder()
|
||||
.jenisAnggaran(input.getJenisAnggaran())
|
||||
.keterangan(input.getKeterangan())
|
||||
.deleted(false)
|
||||
.isDelete(false)
|
||||
.build();
|
||||
jenisAnggaran.setCreatedTime(new Timestamp(System.currentTimeMillis()));
|
||||
|
||||
|
@ -26,7 +26,7 @@ public class PutUpdateJenisAnggaranService implements BaseService<JenisAnggaranR
|
||||
@Override
|
||||
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||
|
||||
var jenisAnggaran = jenisAnggaranRepository.findByIdAndDeletedFalse(input.getId())
|
||||
var jenisAnggaran = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||
Constants.ERR_CODE_10001,
|
||||
Constants.ERR_TTL_10001,
|
||||
@ -34,7 +34,7 @@ public class PutUpdateJenisAnggaranService implements BaseService<JenisAnggaranR
|
||||
|
||||
jenisAnggaran.setJenisAnggaran(input.getJenisAnggaran());
|
||||
jenisAnggaran.setKeterangan(input.getKeterangan());
|
||||
jenisAnggaran.setDeleted(BooleanUtils.isTrue(input.getDeleted()));
|
||||
jenisAnggaran.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||
jenisAnggaran.setUpdatedTime(new Timestamp(System.currentTimeMillis()));
|
||||
jenisAnggaranRepository.save(jenisAnggaran);
|
||||
log.info("Success edit jenis anggaran id {}", jenisAnggaran.getId());
|
||||
|
@ -0,0 +1,67 @@
|
||||
package com.iconplus.smartproc.service.manajemenuser;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.Pagination;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.projection.UserRoleView;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.request.UsersRequest;
|
||||
import com.iconplus.smartproc.model.response.GetUsersResponse;
|
||||
import com.iconplus.smartproc.model.response.UsersResponse;
|
||||
import com.iconplus.smartproc.repository.UsersRepository;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
public class GetListUserService implements BaseService<UsersRequest, GetUsersResponse> {
|
||||
|
||||
private UsersRepository usersRepository;
|
||||
|
||||
public GetListUserService(UsersRepository usersRepository) {
|
||||
this.usersRepository = usersRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GetUsersResponse execute(UsersRequest input) {
|
||||
validateRequest(input);
|
||||
List<UsersResponse> usersResponses = new ArrayList<>();
|
||||
var userRoleViews = usersRepository.getAllUsersAndDeletedFase(input.getEmail(), input.getPageable());
|
||||
|
||||
for (UserRoleView userRoleView : userRoleViews) {
|
||||
UsersResponse usersResponse = UsersResponse.builder()
|
||||
.id(userRoleView.getId())
|
||||
.instansi(userRoleView.getInstansi())
|
||||
.bidang(userRoleView.getBidang())
|
||||
.nama(userRoleView.getNama())
|
||||
.jabatan(userRoleView.getJabatan())
|
||||
.role(userRoleView.getRole())
|
||||
.email(userRoleView.getEmail())
|
||||
.isActive(userRoleView.getIsActive())
|
||||
.build();
|
||||
usersResponses.add(usersResponse);
|
||||
}
|
||||
|
||||
return GetUsersResponse.builder()
|
||||
.data(usersResponses)
|
||||
.pagination(Pagination.builder()
|
||||
.pageSize(input.getPageable().getPageSize())
|
||||
.currentPage(input.getPageable().getPageNumber())
|
||||
.totalPages(userRoleViews.getTotalPages())
|
||||
.totalRecords(userRoleViews.getTotalElements())
|
||||
.isFirstPage(userRoleViews.isFirst())
|
||||
.isLastPage(userRoleViews.isLast())
|
||||
.build())
|
||||
.build();
|
||||
}
|
||||
|
||||
private void validateRequest(UsersRequest input) {
|
||||
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
package com.iconplus.smartproc.service.manajemenuser;
|
||||
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Users;
|
||||
import com.iconplus.smartproc.model.request.UsersRequest;
|
||||
import com.iconplus.smartproc.model.response.UsersResponse;
|
||||
import com.iconplus.smartproc.repository.UsersRepository;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class PostCreateUserService implements BaseService<UsersRequest, UsersResponse> {
|
||||
|
||||
private UsersRepository usersRepository;
|
||||
|
||||
public PostCreateUserService(UsersRepository usersRepository) {
|
||||
this.usersRepository = usersRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UsersResponse execute(UsersRequest input) {
|
||||
|
||||
|
||||
Users users = Users.builder()
|
||||
// .id(input.getId())
|
||||
// .username(input.getUsername())
|
||||
// .email(input.getEmail())
|
||||
// .nama(input.getNama())
|
||||
// .bidangId(1L)
|
||||
// .instansiId(1L)
|
||||
// .roleId(in)
|
||||
// .jabatan()
|
||||
// .password()
|
||||
// .isActive()
|
||||
// .deleted(false)
|
||||
.build();
|
||||
|
||||
var result = usersRepository.save(users);
|
||||
return UsersResponse.builder()
|
||||
.id(result.getId())
|
||||
.build();
|
||||
|
||||
}
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
package com.iconplus.smartproc.service.role;
|
||||
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class DeleteRoleService implements BaseService<RolesRequest, RolesResponse> {
|
||||
|
||||
private RolesRepository rolesRepository;
|
||||
|
||||
public DeleteRoleService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RolesResponse execute(RolesRequest input) {
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
package com.iconplus.smartproc.service.role;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class GetRoleByIdService {
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
package com.iconplus.smartproc.service.role;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class GetRolesService {
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
package com.iconplus.smartproc.service.role;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class PostCreateRoleService {
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
package com.iconplus.smartproc.service.role;
|
||||
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
//@Service
|
||||
//public class PutUpdateRoleService implements BaseService<> {
|
||||
//}
|
@ -0,0 +1,33 @@
|
||||
package com.iconplus.smartproc.service.roles;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class DeleteRoleService implements BaseService<RolesRequest, EmptyResponse> {
|
||||
|
||||
private RolesRepository rolesRepository;
|
||||
public DeleteRoleService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EmptyResponse execute(RolesRequest input) {
|
||||
|
||||
Roles role = rolesRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||
.orElseThrow(() -> new BusinessException(Constants.ERR_CODE_10005,
|
||||
Constants.ERR_TTL_10005,
|
||||
String.format(Constants.ERR_MSG_10005, input.getId())));
|
||||
|
||||
role.setIsDelete(true);
|
||||
rolesRepository.save(role);
|
||||
|
||||
return new EmptyResponse();
|
||||
}
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
package com.iconplus.smartproc.service.roles;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class GetRoleByIdService implements BaseService<RolesRequest, RolesResponse> {
|
||||
|
||||
private final RolesRepository rolesRepository;
|
||||
public GetRoleByIdService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RolesResponse execute(RolesRequest input) {
|
||||
|
||||
Roles role = rolesRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||
.orElseThrow(() -> new BusinessException(Constants.ERR_CODE_10005,
|
||||
Constants.ERR_TTL_10005,
|
||||
String.format(Constants.ERR_MSG_10005, input.getId())));
|
||||
|
||||
return RolesResponse.builder()
|
||||
.id(role.getId())
|
||||
.role(role.getRole())
|
||||
.keterangan(role.getKeterangan())
|
||||
.isActive(role.getIsActive())
|
||||
.isDelete(role.getIsDelete())
|
||||
.build();
|
||||
}
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
package com.iconplus.smartproc.service.roles;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.Pagination;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.projection.RolesView;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.GetRolesResponse;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class GetRolesService implements BaseService<RolesRequest, GetRolesResponse> {
|
||||
|
||||
private final RolesRepository rolesRepository;
|
||||
public GetRolesService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GetRolesResponse execute(RolesRequest input) {
|
||||
validateRequest(input);
|
||||
List<RolesResponse> rolesResponseList = new ArrayList<>();
|
||||
Page<RolesView> rolesViews = rolesRepository.findAllRolesANdDeletedFalse(input.getSearch(), input.getPageable());
|
||||
|
||||
for (RolesView rolesView : rolesViews) {
|
||||
RolesResponse rolesResponse = RolesResponse.builder()
|
||||
.id(rolesView.getId())
|
||||
.role(rolesView.getRole())
|
||||
.keterangan(rolesView.getKeterangan())
|
||||
.isActive(rolesView.getIsActive())
|
||||
.isDelete(rolesView.getIsDelete())
|
||||
.build();
|
||||
rolesResponseList.add(rolesResponse);
|
||||
}
|
||||
|
||||
return GetRolesResponse.builder()
|
||||
.data(rolesResponseList)
|
||||
.pagination(Pagination.builder()
|
||||
.pageSize(input.getPageable().getPageSize())
|
||||
.currentPage(input.getPageable().getPageNumber())
|
||||
.totalPages(rolesViews.getTotalPages())
|
||||
.totalRecords(rolesViews.getTotalElements())
|
||||
.isFirstPage(rolesViews.isFirst())
|
||||
.isLastPage(rolesViews.isLast())
|
||||
.build())
|
||||
.build();
|
||||
}
|
||||
|
||||
private void validateRequest(RolesRequest input) {
|
||||
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.iconplus.smartproc.service.roles;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@Service
|
||||
public class PostCreateRoleService implements BaseService<RolesRequest, RolesResponse> {
|
||||
|
||||
private final RolesRepository rolesRepository;
|
||||
public PostCreateRoleService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RolesResponse execute(RolesRequest input) {
|
||||
|
||||
Optional<Roles> role = rolesRepository.findByRoleAndIsDeleteFalse(input.getRole());
|
||||
if (role.isPresent()) {
|
||||
throw new BusinessException(Constants.ERR_CODE_10006,
|
||||
Constants.ERR_TTL_10006,
|
||||
String.format(Constants.ERR_MSG_10006, input.getRole()));
|
||||
}
|
||||
|
||||
Roles roles = Roles.builder()
|
||||
.role(input.getRole())
|
||||
.keterangan(input.getKeterangan())
|
||||
.isActive(input.getIsActive())
|
||||
.isDelete(false)
|
||||
.build();
|
||||
var result = rolesRepository.save(roles);
|
||||
|
||||
return RolesResponse.builder()
|
||||
.id(result.getId())
|
||||
.build();
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.iconplus.smartproc.service.roles;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Roles;
|
||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||
import com.iconplus.smartproc.repository.RolesRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class PutUpdateRoleService implements BaseService<RolesRequest, RolesResponse> {
|
||||
|
||||
private final RolesRepository rolesRepository;
|
||||
public PutUpdateRoleService(RolesRepository rolesRepository) {
|
||||
this.rolesRepository = rolesRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RolesResponse execute(RolesRequest input) {
|
||||
|
||||
Roles role = rolesRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||
.orElseThrow(() -> new BusinessException(Constants.ERR_CODE_10005,
|
||||
Constants.ERR_TTL_10005,
|
||||
String.format(Constants.ERR_MSG_10005, input.getId())));
|
||||
|
||||
role.setRole(input.getRole());
|
||||
role.setKeterangan(input.getKeterangan());
|
||||
role.setIsActive(input.getIsActive());
|
||||
rolesRepository.save(role);
|
||||
|
||||
return RolesResponse.builder()
|
||||
.id(role.getId())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ public class Constants {
|
||||
|
||||
public static final String ERR_CODE_10002 = "10002";
|
||||
public static final String ERR_TTL_10002 = "Data tersedia";
|
||||
public static final String ERR_MSG_10002 = "Jenis Anggaran dengan id : %s sudah tersedia";
|
||||
public static final String ERR_MSG_10002 = "Jenis Anggaran : %s sudah tersedia";
|
||||
|
||||
public static final String ERR_CODE_10003 = "10003";
|
||||
public static final String ERR_TTL_10003 = "Data tidak tersedia";
|
||||
@ -20,6 +20,14 @@ public class Constants {
|
||||
public static final String ERR_TTL_10004 = "Gagal Authentikasi User";
|
||||
public static final String ERR_MSG_10004 = "Silahkan Periksa kembali Email dan Password Anda";
|
||||
|
||||
public static final String ERR_CODE_10005 = "10005";
|
||||
public static final String ERR_TTL_10005 = "Data tidak tersedia";
|
||||
public static final String ERR_MSG_10005 = "Role dengan id : %s tidak ditemukan";
|
||||
|
||||
public static final String ERR_CODE_10006 = "10006";
|
||||
public static final String ERR_TTL_10006 = "Data tersedia";
|
||||
public static final String ERR_MSG_10006 = "Role : %s sudah tersedia";
|
||||
|
||||
public static final String ERR_CODE_40041 = "40041";
|
||||
public static final String ERR_TTL_40041 = "Terjadi Gangguan";
|
||||
public static final String ERR_MSG_40041 = "Masalah Koneksi System";
|
||||
|
@ -11,7 +11,7 @@ spring:
|
||||
driver-class-name: org.postgresql.Driver
|
||||
url: jdbc:postgresql://localhost:5432/smartproc
|
||||
username: postgres
|
||||
password: postgres
|
||||
password: postgre
|
||||
jackson:
|
||||
default-property-inclusion: NON_NULL
|
||||
jpa:
|
||||
|
Loading…
x
Reference in New Issue
Block a user