“djh”
2024-12-04 d1549b8445c65a6775cf1ba093f5040ace0f87e7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package com.gkhy.huataiFourierSpecialGasMonitor.api.controller.sysAdmin;
 
import com.gkhy.huataiFourierSpecialGasMonitor.api.controller.sysAdmin.converter.MenuInfoApiConverter;
import com.gkhy.huataiFourierSpecialGasMonitor.api.controller.model.dto.resp.MenuItemApiDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.api.controller.sysAdmin.dto.req.AddAndUpdateMenuItemApiDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.api.controller.sysAdmin.dto.req.MenuItemBindRoleApiDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.api.controller.sysAdmin.dto.req.RoleBindMenuApiDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.application.sysAdmin.model.dto.req.*;
import com.gkhy.huataiFourierSpecialGasMonitor.application.sysAdmin.model.dto.resp.MenuItemAppDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.application.sysAdmin.service.MenuAppService;
import com.gkhy.huataiFourierSpecialGasMonitor.commons.domain.Result;
import com.gkhy.huataiFourierSpecialGasMonitor.commons.domain.SearchResult;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.sysAdmin.model.dto.MenuItemDomainDTO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.ArrayList;
import java.util.List;
 
@RestController
@RequestMapping("/sys/console/menu")
public class MenuManageController {
 
    @Autowired
    private MenuAppService menuAppService;
 
    @Autowired
    private MenuInfoApiConverter menuInfoApiConverter;
 
    @PostMapping("/add")
    public Result addMenuItems(@RequestBody AddAndUpdateMenuItemApiDTO addAndUpdateMenuItemApiDTO){
        Result result = new Result<>();
        NewMenuItemAppDTO appDTO = menuInfoApiConverter.toCreateMenuDto(addAndUpdateMenuItemApiDTO);
        result = menuAppService.addMenuItem(appDTO);
        return result;
    }
 
 
    @PostMapping("/mod")
    public Result modifyMenuItem(@RequestBody AddAndUpdateMenuItemApiDTO addAndUpdateMenuItemApiDTO){
        Result result = new Result();
        AddAndUpdateMenuItemAppDTO appDTO = menuInfoApiConverter.toAddAndUpdateAppDTO(addAndUpdateMenuItemApiDTO);
        result = menuAppService.modifyMenuItem(appDTO);
        return result;
    }
 
    @GetMapping("/get/all")
    public SearchResult getAll(){
        SearchResult result = new SearchResult<>();
        SearchResult<MenuItemDomainDTO> rs = menuAppService.getAllMenuItems();
        BeanUtils.copyProperties(rs,result);
        if(rs.isSuccess() && rs.getData() != null){
            List<MenuItemAppDTO> dtoList = (List<MenuItemAppDTO>) rs.getData();
            if(dtoList != null && !dtoList.isEmpty()){
                List<MenuItemApiDTO> apiDTOList = new ArrayList<>();
                dtoList.forEach(d -> {
                    apiDTOList.add(menuInfoApiConverter.toMenuItemApiDTO(d));
                });
                result.setData(apiDTOList);
            }
        }
//        result = menuAppService.getAllMenuItems();
        return result;
    }
 
    @GetMapping("/del")
    public Result deleteOne(Long menuItemId){
        Result result = menuAppService.deleteMenuItem(menuItemId);
        return result;
    }
 
    @PostMapping("/bind/role2menu")
    public Result roleBindMenu(@RequestBody RoleBindMenuApiDTO bindMenuApiDTO){
        Result result = new Result<>();
        RoleBindMenuAppDTO bindAppDTO = new RoleBindMenuAppDTO();
        BeanUtils.copyProperties(bindMenuApiDTO,bindAppDTO);
        result = menuAppService.roleBindMenu(bindAppDTO);
        return result;
    }
 
    @PostMapping("/bind/menu2role")
    public Result menuBindRole(@RequestBody MenuItemBindRoleApiDTO bindRoleApiDTO){
        Result result = new Result<>();
        MenuItemBindRoleAppDTO bindAppDTO = new MenuItemBindRoleAppDTO();
        BeanUtils.copyProperties(bindRoleApiDTO,bindAppDTO);
        result = menuAppService.menuBindRole(bindAppDTO);
        return result;
    }
 
}