feat: 添加信贷客户家庭关系菜单权限和Controller
This commit is contained in:
@@ -0,0 +1,158 @@
|
|||||||
|
package com.ruoyi.ccdi.controller;
|
||||||
|
|
||||||
|
import com.alibaba.excel.EasyExcel;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationAddDTO;
|
||||||
|
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationEditDTO;
|
||||||
|
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationQueryDTO;
|
||||||
|
import com.ruoyi.ccdi.domain.excel.CcdiCustFmyRelationExcel;
|
||||||
|
import com.ruoyi.ccdi.domain.vo.CcdiCustFmyRelationVO;
|
||||||
|
import com.ruoyi.ccdi.domain.vo.CustFmyRelationImportFailureVO;
|
||||||
|
import com.ruoyi.ccdi.service.ICcdiCustFmyRelationService;
|
||||||
|
import com.ruoyi.common.core.controller.BaseController;
|
||||||
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
|
import com.ruoyi.common.core.page.TableDataInfo;
|
||||||
|
import com.ruoyi.common.annotation.Log;
|
||||||
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.data.redis.core.RedisTemplate;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 信贷客户家庭关系Controller
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-02-11
|
||||||
|
*/
|
||||||
|
@Tag(name = "信贷客户家庭关系管理")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/ccdi/custFmyRelation")
|
||||||
|
public class CcdiCustFmyRelationController extends BaseController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ICcdiCustFmyRelationService relationService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private RedisTemplate<String, Object> redisTemplate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询信贷客户家庭关系列表
|
||||||
|
*/
|
||||||
|
@Operation(summary = "查询信贷客户家庭关系列表")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:query')")
|
||||||
|
@GetMapping("/list")
|
||||||
|
public TableDataInfo list(CcdiCustFmyRelationQueryDTO query) {
|
||||||
|
startPage();
|
||||||
|
Page<CcdiCustFmyRelationVO> page = relationService.selectRelationPage(query, getPageNum(), getPageSize());
|
||||||
|
return getDataTable(page.getRecords(), page.getTotal());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据ID查询信贷客户家庭关系详情
|
||||||
|
*/
|
||||||
|
@Operation(summary = "查询信贷客户家庭关系详情")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:query')")
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public AjaxResult getInfo(@PathVariable("id") Long id) {
|
||||||
|
CcdiCustFmyRelationVO relation = relationService.selectRelationById(id);
|
||||||
|
return success(relation);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增信贷客户家庭关系
|
||||||
|
*/
|
||||||
|
@Operation(summary = "新增信贷客户家庭关系")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:add')")
|
||||||
|
@PostMapping
|
||||||
|
public AjaxResult add(@Validated @RequestBody CcdiCustFmyRelationAddDTO addDTO) {
|
||||||
|
return toAjax(relationService.insertRelation(addDTO));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改信贷客户家庭关系
|
||||||
|
*/
|
||||||
|
@Operation(summary = "修改信贷客户家庭关系")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:edit')")
|
||||||
|
@PutMapping
|
||||||
|
public AjaxResult edit(@Validated @RequestBody CcdiCustFmyRelationEditDTO editDTO) {
|
||||||
|
return toAjax(relationService.updateRelation(editDTO));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除信贷客户家庭关系
|
||||||
|
*/
|
||||||
|
@Operation(summary = "删除信贷客户家庭关系")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:remove')")
|
||||||
|
@DeleteMapping("/{ids}")
|
||||||
|
public AjaxResult remove(@PathVariable Long[] ids) {
|
||||||
|
return toAjax(relationService.deleteRelationByIds(ids));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出信贷客户家庭关系
|
||||||
|
*/
|
||||||
|
@Operation(summary = "导出信贷客户家庭关系")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:export')")
|
||||||
|
@PostMapping("/export")
|
||||||
|
public void export(HttpServletResponse response, CcdiCustFmyRelationQueryDTO query) {
|
||||||
|
relationService.exportRelations(query, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 下载导入模板
|
||||||
|
*/
|
||||||
|
@Operation(summary = "下载导入模板")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:import')")
|
||||||
|
@PostMapping("/importTemplate")
|
||||||
|
public void importTemplate(HttpServletResponse response) {
|
||||||
|
relationService.importTemplate(response);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导入信贷客户家庭关系
|
||||||
|
*/
|
||||||
|
@Operation(summary = "导入信贷客户家庭关系")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:import')")
|
||||||
|
@PostMapping("/importData")
|
||||||
|
public AjaxResult importData(@RequestParam("file") MultipartFile file) throws IOException {
|
||||||
|
List<CcdiCustFmyRelationExcel> excels = EasyExcel.read(file.getInputStream())
|
||||||
|
.head(CcdiCustFmyRelationExcel.class)
|
||||||
|
.sheet()
|
||||||
|
.doReadSync();
|
||||||
|
|
||||||
|
String taskId = relationService.importRelations(excels);
|
||||||
|
return success("导入任务已提交,任务ID: " + taskId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询导入状态
|
||||||
|
*/
|
||||||
|
@Operation(summary = "查询导入状态")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:query')")
|
||||||
|
@GetMapping("/importStatus/{taskId}")
|
||||||
|
public AjaxResult getImportStatus(@PathVariable("taskId") String taskId) {
|
||||||
|
// 从Redis获取任务状态
|
||||||
|
Object status = redisTemplate.opsForValue().get("import:custFmyRelation:" + taskId);
|
||||||
|
return success(status);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询导入失败记录
|
||||||
|
*/
|
||||||
|
@Operation(summary = "查询导入失败记录")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ccdi:custFmyRelation:query')")
|
||||||
|
@GetMapping("/importFailures/{taskId}")
|
||||||
|
public TableDataInfo getImportFailures(
|
||||||
|
@PathVariable("taskId") String taskId) {
|
||||||
|
startPage();
|
||||||
|
List<CustFmyRelationImportFailureVO> failures = relationService.getImportFailures(taskId);
|
||||||
|
return getDataTable(failures, (long) failures.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
37
sql/ccdi_cust_fmy_relation_menu.sql
Normal file
37
sql/ccdi_cust_fmy_relation_menu.sql
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
-- 信贷客户家庭关系菜单权限
|
||||||
|
-- 创建时间: 2026-02-11
|
||||||
|
|
||||||
|
-- 添加信贷客户家庭关系菜单(父菜单为信息维护)
|
||||||
|
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, remark)
|
||||||
|
SELECT @parent_id := menu_id FROM sys_menu WHERE menu_name = '信息维护' LIMIT 1;
|
||||||
|
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
||||||
|
VALUES (
|
||||||
|
'信贷客户家庭关系',
|
||||||
|
@parent_id,
|
||||||
|
5,
|
||||||
|
'custFmyRelation',
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
'C',
|
||||||
|
'0',
|
||||||
|
'0',
|
||||||
|
'ccdi:custFmyRelation:list',
|
||||||
|
'peoples',
|
||||||
|
'admin',
|
||||||
|
NOW(),
|
||||||
|
'',
|
||||||
|
'信贷客户家庭关系菜单'
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 获取刚插入的菜单ID
|
||||||
|
SET @cust_menu_id = LAST_INSERT_ID();
|
||||||
|
|
||||||
|
-- 添加按钮权限
|
||||||
|
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
||||||
|
VALUES
|
||||||
|
('信贷客户家庭关系查询', @cust_menu_id, 1, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:query', '#', 'admin', NOW(), ''),
|
||||||
|
('信贷客户家庭关系新增', @cust_menu_id, 2, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:add', '#', 'admin', NOW(), ''),
|
||||||
|
('信贷客户家庭关系修改', @cust_menu_id, 3, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:edit', '#', 'admin', NOW(), ''),
|
||||||
|
('信贷客户家庭关系删除', @cust_menu_id, 4, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:remove', '#', 'admin', NOW(), ''),
|
||||||
|
('信贷客户家庭关系导出', @cust_menu_id, 5, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:export', '#', 'admin', NOW(), ''),
|
||||||
|
('信贷客户家庭关系导入', @cust_menu_id, 6, '#', '', 1, 0, 'F', '0', '0', 'ccdi:custFmyRelation:import', '#', 'admin', NOW(), '');
|
||||||
Reference in New Issue
Block a user