zhanghl
2025-05-19 8cd4e3664cc33705b9c68ac278f40e40cf258ecb
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
package com.aps.core.controller.mainPlan;
 
import com.aps.common.core.constant.SecurityConstants;
import com.aps.common.core.domain.R;
import com.aps.common.core.utils.poi.ExcelUtil;
import com.aps.common.core.web.controller.BaseController;
import com.aps.common.core.web.domain.AjaxResult;
import com.aps.common.core.web.page.TableDataInfo;
import com.aps.common.log.annotation.Log;
import com.aps.common.log.enums.BusinessType;
import com.aps.common.security.annotation.RequiresPermissions;
import com.aps.core.domain.ApsBomHeader;
import com.aps.core.service.IApsBomHeaderService;
import com.aps.system.api.RemoteJobService;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
/**
 * BOM Header 数据管理Controller
 * 
 * @author zhl
 * @date 2025-05-06
 */
 
 
@RestController
@RequestMapping("/ApsBomHeader")
public class ApsBomHeaderController extends BaseController
{
    @Autowired
    private IApsBomHeaderService apsBomHeaderService;
 
    @Autowired
    private RemoteJobService remoteJobService;
 
    /**
     * 查询BOM Header 数据管理列表
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:list")
    @GetMapping("/list")
    public TableDataInfo list(ApsBomHeader apsBomHeader)
    {
        startPage();
        List<ApsBomHeader> list = apsBomHeaderService.selectApsBomHeaderList(apsBomHeader);
        return getDataTable(list);
    }
 
    /**
     * 导出BOM Header 数据管理列表
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:export")
    @Log(title = "BOM Header 数据管理", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ApsBomHeader apsBomHeader)
    {
        List<ApsBomHeader> list = apsBomHeaderService.selectApsBomHeaderList(apsBomHeader);
        ExcelUtil<ApsBomHeader> util = new ExcelUtil<ApsBomHeader>(ApsBomHeader.class);
        util.exportExcel(response, list, "BOM Header 数据管理数据");
    }
 
    /**
     * 获取BOM Header 数据管理详细信息
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:query")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    {
        return success(apsBomHeaderService.selectApsBomHeaderById(id));
    }
 
    /**
     * 新增BOM Header 数据管理
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:add")
    @Log(title = "BOM Header 数据管理", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ApsBomHeader apsBomHeader)
    {
        return toAjax(apsBomHeaderService.insertApsBomHeader(apsBomHeader));
    }
 
    /**
     * 修改BOM Header 数据管理
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:edit")
    @Log(title = "BOM Header 数据管理", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ApsBomHeader apsBomHeader)
    {
        return toAjax(apsBomHeaderService.updateApsBomHeader(apsBomHeader));
    }
 
    /**
     * 删除BOM Header 数据管理
     */
 
    @RequiresPermissions("Aps:ApsBomHeader:remove")
    @Log(title = "BOM Header 数据管理", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    {
        return toAjax(apsBomHeaderService.deleteApsBomHeaderByIds(ids));
    }
 
    /**
     * 刷新全量BOM数据
     */
    @RequiresPermissions("Aps:ApsBomHeader:refreshBomData")
    @PostMapping("/refreshBomData")
    public AjaxResult refreshBomData()
    {
        R<Boolean> res = remoteJobService.refreshBomData(SecurityConstants.INNER);
        if (R.isSuccess(res))
        {
            apsBomHeaderService.setBomDataToRedis("FORTUNA");
            return success();
        }
        return error();
    }
 
    @PostMapping("/setBomDataToRedis")
    public void setBomDataToRedis()
    {
        apsBomHeaderService.setBomDataToRedis("");
    }
 
    @PostMapping("/test")
    public void test()
    {
        apsBomHeaderService.setBomDataToRedis("FORTUNA");
    }
}