enhance menu response
This commit is contained in:
@ -0,0 +1,52 @@
|
||||
package com.iconplus.smartproc.service.approval;
|
||||
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.projection.DrpApprovalView;
|
||||
import com.iconplus.smartproc.model.request.DrpApprovalRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpApprovalResponse;
|
||||
import com.iconplus.smartproc.repository.DrpApprovalRepository;
|
||||
import com.iconplus.smartproc.repository.DrpRepository;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
public class GetListApprovalDrpServie implements BaseService<DrpApprovalRequest, DrpApprovalResponse> {
|
||||
|
||||
private final DrpRepository drpRepository;
|
||||
private final DrpApprovalRepository drpApprovalRepository;
|
||||
|
||||
public GetListApprovalDrpServie(DrpRepository drpRepository,
|
||||
DrpApprovalRepository drpApprovalRepository) {
|
||||
this.drpApprovalRepository = drpApprovalRepository;
|
||||
this.drpRepository = drpRepository;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpApprovalResponse execute(DrpApprovalRequest input) throws IOException {
|
||||
|
||||
List<DrpApprovalResponse> drpApprovalResponseList = new ArrayList<>();
|
||||
var drpApprovalViews = drpRepository.getListApprovalDrp(input.getPageable());
|
||||
for (DrpApprovalView drpApprovalView : drpApprovalViews) {
|
||||
DrpApprovalResponse drpApprovalResponse = DrpApprovalResponse.builder()
|
||||
.id(drpApprovalView.getId())
|
||||
.drpId(drpApprovalView.getDrpId())
|
||||
.tahun(drpApprovalView.getTahun())
|
||||
.approverVpDate(drpApprovalView.getApproverVpDate())
|
||||
.approverKomite1Date(drpApprovalView.getApproverKomite1Date())
|
||||
.approverKomite2Date(drpApprovalView.getApproverKomite2Date())
|
||||
.approverKomite3Date(drpApprovalView.getApproverKomite3Date())
|
||||
.approverKomite4Date(drpApprovalView.getApproverKomite4Date())
|
||||
.approverDirekturDate(drpApprovalView.getApproverDirekturDate())
|
||||
.build();
|
||||
}
|
||||
return null;
|
||||
|
||||
|
||||
}
|
||||
}
|
@ -3,11 +3,14 @@ package com.iconplus.smartproc.service.authentication;
|
||||
import com.iconplus.smartproc.configuration.JwtTokenUtil;
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Menus;
|
||||
import com.iconplus.smartproc.model.entity.TokenManagement;
|
||||
import com.iconplus.smartproc.model.projection.MenusPermissionView;
|
||||
import com.iconplus.smartproc.model.request.LoginRequest;
|
||||
import com.iconplus.smartproc.model.response.LoginResponse;
|
||||
import com.iconplus.smartproc.model.response.MenusPermissionResponse;
|
||||
import com.iconplus.smartproc.model.response.MenusResponse;
|
||||
import com.iconplus.smartproc.model.response.ParentMenusResponse;
|
||||
import com.iconplus.smartproc.model.token.TokenContent;
|
||||
import com.iconplus.smartproc.repository.MenusRepository;
|
||||
import com.iconplus.smartproc.repository.PermissionRepository;
|
||||
@ -75,6 +78,20 @@ public class LoginService implements BaseService<LoginRequest, LoginResponse> {
|
||||
}
|
||||
Set<String> accessMenu = new HashSet<>();
|
||||
List<MenusPermissionResponse> menusPermissionResponseList = new ArrayList<>();
|
||||
|
||||
|
||||
List<ParentMenusResponse> parentMenusResponseList = new ArrayList<>();
|
||||
var parentMenu = menusRepository.findAllParentMenu();
|
||||
for (Menus menus : parentMenu) {
|
||||
ParentMenusResponse parentMenusResponse = ParentMenusResponse.builder()
|
||||
.id(menus.getId())
|
||||
.text(menus.getNama())
|
||||
.icon(menus.getIcon())
|
||||
.items(new ArrayList<>())
|
||||
.build();
|
||||
parentMenusResponseList.add(parentMenusResponse);
|
||||
}
|
||||
|
||||
var listMenusPermission = permissionRepository.getListMenusPermission(userRoleView.getRoleId());
|
||||
for (MenusPermissionView menusPermissionView : listMenusPermission) {
|
||||
if (BooleanUtils.isTrue(menusPermissionView.getCanView()) ||
|
||||
@ -83,24 +100,42 @@ public class LoginService implements BaseService<LoginRequest, LoginResponse> {
|
||||
BooleanUtils.isTrue(menusPermissionView.getCanDelete()) ||
|
||||
BooleanUtils.isTrue(menusPermissionView.getCanRead())) {
|
||||
accessMenu.add(menusPermissionView.getNama());
|
||||
|
||||
MenusPermissionResponse menusPermissionResponse = MenusPermissionResponse.builder()
|
||||
.id(menusPermissionView.getId())
|
||||
.nama(menusPermissionView.getNama())
|
||||
.parentId(menusPermissionView.getParentId())
|
||||
.urutan(menusPermissionView.getUrutan())
|
||||
.icon(menusPermissionView.getIcon())
|
||||
.link(menusPermissionView.getLink())
|
||||
.canView(menusPermissionView.getCanView())
|
||||
.canRead(menusPermissionView.getCanRead())
|
||||
.canCreate(menusPermissionView.getCanCreate())
|
||||
.canUpdate(menusPermissionView.getCanUpdate())
|
||||
.canDelete(menusPermissionView.getCanDelete())
|
||||
.build();
|
||||
|
||||
menusPermissionResponseList.add(menusPermissionResponse);
|
||||
}
|
||||
}
|
||||
|
||||
MenusPermissionResponse menusPermissionResponse = MenusPermissionResponse.builder()
|
||||
.id(menusPermissionView.getId())
|
||||
.nama(menusPermissionView.getNama())
|
||||
.parentId(menusPermissionView.getParentId())
|
||||
.urutan(menusPermissionView.getUrutan())
|
||||
.icon(menusPermissionView.getIcon())
|
||||
.link(menusPermissionView.getLink())
|
||||
.canView(menusPermissionView.getCanView())
|
||||
.canRead(menusPermissionView.getCanRead())
|
||||
.canCreate(menusPermissionView.getCanCreate())
|
||||
.canUpdate(menusPermissionView.getCanUpdate())
|
||||
.canDelete(menusPermissionView.getCanDelete())
|
||||
.build();
|
||||
|
||||
menusPermissionResponseList.add(menusPermissionResponse);
|
||||
for (ParentMenusResponse parentMenusResponse : parentMenusResponseList) {
|
||||
for (MenusPermissionResponse menusPermissionResponse : menusPermissionResponseList) {
|
||||
if (parentMenusResponse.getId().equals(menusPermissionResponse.getParentId())) {
|
||||
MenusResponse menusResponse = MenusResponse.builder()
|
||||
.id(menusPermissionResponse.getId())
|
||||
.text(menusPermissionResponse.getNama())
|
||||
.path(menusPermissionResponse.getLink())
|
||||
.canView(menusPermissionResponse.getCanView())
|
||||
.canRead(menusPermissionResponse.getCanRead())
|
||||
.canCreate(menusPermissionResponse.getCanCreate())
|
||||
.canUpdate(menusPermissionResponse.getCanUpdate())
|
||||
.canDelete(menusPermissionResponse.getCanDelete())
|
||||
.build();
|
||||
parentMenusResponse.getItems().add(menusResponse);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var tokenContent = TokenContent.builder()
|
||||
@ -146,7 +181,7 @@ public class LoginService implements BaseService<LoginRequest, LoginResponse> {
|
||||
.email(userRoleView.getEmail())
|
||||
.roleId(userRoleView.getRoleId())
|
||||
.role(userRoleView.getRole())
|
||||
.menus(menusPermissionResponseList)
|
||||
.menus(parentMenusResponseList)
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user