123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- package com.ruoyi.project.VRdemo.controller;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.List;
- import javax.servlet.http.HttpServletResponse;
- import com.alibaba.excel.EasyExcel;
- import com.ruoyi.common.utils.excel.ExcelReadUtil;
- import com.ruoyi.framework.aspectj.lang.annotation.Anonymous;
- import com.ruoyi.project.VRdemo.domain.imData.LiteratureImData;
- import org.springframework.security.access.prepost.PreAuthorize;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.PutMapping;
- import org.springframework.web.bind.annotation.DeleteMapping;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestBody;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import com.ruoyi.framework.aspectj.lang.annotation.Log;
- import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
- import com.ruoyi.project.VRdemo.domain.Literature;
- import com.ruoyi.project.VRdemo.service.ILiteratureService;
- import com.ruoyi.framework.web.controller.BaseController;
- import com.ruoyi.framework.web.domain.AjaxResult;
- import com.ruoyi.common.utils.poi.ExcelUtil;
- import com.ruoyi.framework.web.page.TableDataInfo;
- import org.springframework.web.multipart.MultipartFile;
- /**
- * 博雅集东南亚重要参考文献汇编Controller
- *
- * @author ruoyi
- * @date 2024-09-26
- */
- @RestController
- @RequestMapping("/vr/literature")
- public class LiteratureController extends BaseController {
- private final ILiteratureService literatureService;
- public LiteratureController(@Autowired ILiteratureService literatureService) {
- this.literatureService = literatureService;
- }
- /**
- * 查询博雅集东南亚重要参考文献汇编列表
- */
- @Anonymous
- @GetMapping("/list")
- public AjaxResult list(Literature literature) {
- List<Literature> list = literatureService.selectLiteratureList(literature);
- AjaxResult ajaxResult = new AjaxResult();
- ajaxResult.put("code", 200);
- ajaxResult.put("rows", list);
- ajaxResult.put("total", list.size());
- return ajaxResult;
- }
- /**
- * 查询分页列表
- */
- @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
- @GetMapping("/pageList")
- public TableDataInfo pageList(Literature literature) {
- startPage();
- List<Literature> list = literatureService.selectLiteratureList(literature);
- return getDataTable(list);
- }
- /**
- * 获取博雅集东南亚重要参考文献汇编详细信息
- */
- @Anonymous
- @GetMapping(value = "/{id}")
- public AjaxResult getInfo(@PathVariable("id") Long id) {
- return success(literatureService.selectLiteratureById(id));
- }
- /**
- * 新增博雅集东南亚重要参考文献汇编
- */
- @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
- @Log(title = "博雅集东南亚重要参考文献汇编", businessType = BusinessType.INSERT)
- @PostMapping
- public AjaxResult add(@RequestBody Literature literature) {
- return toAjax(literatureService.insertLiterature(literature));
- }
- /**
- * 修改博雅集东南亚重要参考文献汇编
- */
- @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
- @Log(title = "博雅集东南亚重要参考文献汇编", businessType = BusinessType.UPDATE)
- @PutMapping
- public AjaxResult edit(@RequestBody Literature literature) {
- return toAjax(literatureService.updateLiterature(literature));
- }
- /**
- * 删除博雅集东南亚重要参考文献汇编
- */
- @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
- @Log(title = "博雅集东南亚重要参考文献汇编", businessType = BusinessType.DELETE)
- @DeleteMapping("/{ids}")
- public AjaxResult remove(@PathVariable Long[] ids) {
- return toAjax(literatureService.deleteLiteratureByIds(ids));
- }
- /**
- * 导出博雅集东南亚重要参考文献汇编列表
- */
- @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
- @Log(title = "博雅集东南亚重要参考文献汇编", businessType = BusinessType.EXPORT)
- @PostMapping("/export")
- public void export(HttpServletResponse response, Literature literature) {
- List<Literature> list = literatureService.selectLiteratureList(literature);
- ExcelUtil<Literature> util = new ExcelUtil<>(Literature.class);
- util.exportExcel(response, list, "博雅集东南亚重要参考文献汇编数据");
- }
- /**
- * 下载导入模板
- */
- @Anonymous
- @PostMapping("/importTemplate")
- public void importTemplate(HttpServletResponse response) throws IOException {
- List<LiteratureImData> dataList = new ArrayList<>();
- EasyExcel.write(response.getOutputStream(), LiteratureImData.class).sheet("Sheet1").doWrite(dataList);
- }
- /**
- * 导入数据
- */
- @Anonymous
- @PostMapping("/import")
- public AjaxResult importData(MultipartFile file, boolean updateSupport) throws IOException {
- List<Literature> list = ExcelReadUtil.read(file, LiteratureImData.class, Literature.class);
- // 调用服务层方法进行数据导入处理
- String message = literatureService.importData(list, updateSupport);
- // 返回成功响应,携带导入结果信息
- return AjaxResult.success(message);
- }
- }
|