update
This commit is contained in:
@@ -13,7 +13,7 @@ import lombok.Getter;
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum ExperimentType {
|
||||
public enum ExperimentDocType {
|
||||
fzsyjhb("辐照试验计划表"),
|
||||
sbsyjlb("设备使用记录表"),
|
||||
sybgpsb("试验报告评审表"),
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.jeecg.modules.database.controller;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
@@ -16,7 +18,7 @@ import org.jeecg.common.api.vo.Result;
|
||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||
import org.jeecg.common.system.base.controller.JeecgController;
|
||||
import org.jeecg.common.system.query.QueryGenerator;
|
||||
import org.jeecg.modules.database.constant.ExperimentType;
|
||||
import org.jeecg.modules.database.constant.ExperimentDocType;
|
||||
import org.jeecg.modules.database.entity.ExperimentDoc;
|
||||
import org.jeecg.modules.database.service.IExperimentDocService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -72,6 +74,7 @@ public class ExperimentDocController extends JeecgController<ExperimentDoc, IExp
|
||||
@RequiresPermissions("database:experiment_doc:add")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<String> add(@RequestBody ExperimentDoc experimentDoc) {
|
||||
experimentDoc.setVersion(DateUtil.format(new Date(), DatePattern.PURE_DATETIME_PATTERN));
|
||||
experimentDocService.save(experimentDoc);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
@@ -141,19 +144,16 @@ public class ExperimentDocController extends JeecgController<ExperimentDoc, IExp
|
||||
/**
|
||||
* 通过实验id查询
|
||||
*
|
||||
* @param experimentalId
|
||||
* @param experimentId
|
||||
* @return
|
||||
*/
|
||||
//@AutoLog(value = "试验评定-通过id查询")
|
||||
@Operation(summary = "试验报告-通过实验ID查询")
|
||||
@GetMapping(value = "/queryByExperimentId")
|
||||
public Result<List<ExperimentDoc>> queryByExperimentalId(@RequestParam(name = "experimentId", required = true) String experimentId) {
|
||||
public Result<List<ExperimentDoc>> queryByExperimentId(@RequestParam(name = "experimentId", required = true) String experimentId) {
|
||||
List<ExperimentDoc> result = new ArrayList<>();
|
||||
for (ExperimentType value : ExperimentType.values()) {
|
||||
LambdaQueryWrapper<ExperimentDoc> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ExperimentDoc::getExperimentId, experimentId);
|
||||
queryWrapper.eq(ExperimentDoc::getDocType, value.getType());
|
||||
ExperimentDoc doc = experimentDocService.getOne(queryWrapper);
|
||||
for (ExperimentDocType value : ExperimentDocType.values()) {
|
||||
ExperimentDoc doc = experimentDocService.getByExperimentId(experimentId, value.getType());
|
||||
if (Objects.isNull(doc)) {
|
||||
doc = experimentDocService.generate(experimentId, value.getType());
|
||||
}
|
||||
@@ -168,6 +168,18 @@ public class ExperimentDocController extends JeecgController<ExperimentDoc, IExp
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
@Operation(summary = "试验报告-通过实验ID查询所有版本文档")
|
||||
@GetMapping(value = "/queryHistoryByExperimentId")
|
||||
public Result<Map<String, List<ExperimentDoc>>> queryHistoryByExperimentId(
|
||||
@RequestParam(name = "experimentId", required = true) String experimentId) {
|
||||
Map<String, List<ExperimentDoc>> result = new HashMap<>();
|
||||
for (ExperimentDocType value : ExperimentDocType.values()) {
|
||||
List<ExperimentDoc> docList = experimentDocService.getHistoryByExperimentId(experimentId, value.getType());
|
||||
result.put(value.getType(), docList);
|
||||
}
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 试验文档下载
|
||||
*
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package org.jeecg.modules.database.controller;
|
||||
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -18,11 +17,10 @@ import org.jeecg.common.system.base.controller.JeecgController;
|
||||
import org.jeecg.common.system.query.QueryGenerator;
|
||||
import org.jeecg.common.system.util.JwtUtil;
|
||||
import org.jeecg.common.util.oConvertUtils;
|
||||
import org.jeecg.modules.database.constant.ExperimentDocType;
|
||||
import org.jeecg.modules.database.constant.ExperimentStatus;
|
||||
import org.jeecg.modules.database.entity.Experiment;
|
||||
import org.jeecg.modules.database.entity.ExperimentReport;
|
||||
import org.jeecg.modules.database.service.IExperimentReportService;
|
||||
import org.jeecg.modules.database.service.IExperimentService;
|
||||
import org.jeecg.modules.database.entity.*;
|
||||
import org.jeecg.modules.database.service.*;
|
||||
import org.jeecg.modules.system.entity.SysUser;
|
||||
import org.jeecg.modules.system.service.ISysUserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -30,7 +28,6 @@ import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 试验报告
|
||||
@@ -51,6 +48,9 @@ public class ExperimentReportController extends JeecgController<ExperimentReport
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
|
||||
@Autowired
|
||||
private IExperimentDocService experimentDocService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
@@ -70,6 +70,10 @@ public class ExperimentReportController extends JeecgController<ExperimentReport
|
||||
QueryWrapper<ExperimentReport> queryWrapper = QueryGenerator.initQueryWrapper(experimentReport, req.getParameterMap());
|
||||
Page<ExperimentReport> page = new Page<ExperimentReport>(pageNo, pageSize);
|
||||
IPage<ExperimentReport> pageList = experimentReportService.page(page, queryWrapper);
|
||||
pageList.getRecords().forEach(v -> {
|
||||
ExperimentDoc experimentDoc = experimentDocService.getByExperimentId(v.getExperimentId(), ExperimentDocType.sybg.getType());
|
||||
v.setFileUrl(experimentDoc.getFilePath());
|
||||
});
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
@@ -92,6 +96,10 @@ public class ExperimentReportController extends JeecgController<ExperimentReport
|
||||
if (ObjUtil.isNull(experiment)) {
|
||||
return Result.error("试验数据不存在!");
|
||||
}
|
||||
ExperimentReport report = experimentReportService.getByExperimentId(experimentId);
|
||||
if (ObjUtil.isNotNull(report)) {
|
||||
return Result.error("试验试验报告已存在!");
|
||||
}
|
||||
experimentReport.setReportName(experiment.getName() + "-试验报告");
|
||||
experimentReportService.save(experimentReport);
|
||||
return Result.OK("添加成功!");
|
||||
@@ -110,14 +118,15 @@ public class ExperimentReportController extends JeecgController<ExperimentReport
|
||||
public Result<String> edit(@RequestBody ExperimentReport experimentReport, HttpServletRequest request) {
|
||||
String username = JwtUtil.getUserNameByToken(request);
|
||||
ExperimentReport report = experimentReportService.getById(experimentReport.getId());
|
||||
if (!StringUtils.equals(report.getCreateBy(), username)) {
|
||||
return Result.error("您无权进行编辑!");
|
||||
}
|
||||
//if (!StringUtils.equals(report.getCreateBy(), username)) {
|
||||
// return Result.error("您无权进行编辑!");
|
||||
//}
|
||||
//待校对
|
||||
if (!(StringUtils.equals(report.getStatus(), "INIT") || StringUtils.equals(report.getStatus(), "REJECT"))) {
|
||||
return Result.error("该报告状态无法进行编辑!");
|
||||
}
|
||||
experimentReportService.updateById(experimentReport);
|
||||
experimentDocService.generate(report.getExperimentId(), ExperimentDocType.sybg.getType());
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
@@ -165,27 +174,32 @@ public class ExperimentReportController extends JeecgController<ExperimentReport
|
||||
if (experimentReport == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
|
||||
ExperimentDoc experimentDoc = experimentDocService.getByExperimentId(experimentReport.getExperimentId(),
|
||||
ExperimentDocType.sybg.getType());
|
||||
experimentReport.setFileUrl(experimentDoc.getFilePath());
|
||||
return Result.OK(experimentReport);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过实验id查询
|
||||
*
|
||||
* @param experimentalId
|
||||
* @param experimentId
|
||||
* @return
|
||||
*/
|
||||
//@AutoLog(value = "试验评定-通过id查询")
|
||||
@Operation(summary = "试验报告-通过实验ID查询")
|
||||
@GetMapping(value = "/queryByExperimentId")
|
||||
public Result<List<ExperimentReport>> queryByExperimentalId(
|
||||
@RequestParam(name = "experimentId", required = true) String experimentalId) {
|
||||
LambdaQueryWrapper<ExperimentReport> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ExperimentReport::getExperimentId, experimentalId);
|
||||
List<ExperimentReport> experimentReview = experimentReportService.list(queryWrapper);
|
||||
if (experimentReview == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
public Result<ExperimentReport> getByExperimentId(
|
||||
@RequestParam(name = "experimentId", required = true) String experimentId) {
|
||||
ExperimentReport experimentReport = experimentReportService.getByExperimentId(experimentId);
|
||||
if (experimentReport == null) {
|
||||
return Result.error("试验报告不存在!");
|
||||
}
|
||||
return Result.OK(experimentReview);
|
||||
|
||||
ExperimentDoc experimentDoc = experimentDocService.getByExperimentId(experimentId, ExperimentDocType.sybg.getType());
|
||||
experimentReport.setFileUrl(experimentDoc.getFilePath());
|
||||
return Result.OK(experimentReport);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -81,4 +81,11 @@ public class ExperimentDoc implements Serializable {
|
||||
@Excel(name = "文件地址", width = 15)
|
||||
@Schema(description = "文件地址")
|
||||
private String filePath;
|
||||
|
||||
/**
|
||||
* 版本号
|
||||
*/
|
||||
@Excel(name = "版本号", width = 15)
|
||||
@Schema(description = "版本号")
|
||||
private String version;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package org.jeecg.modules.database.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
@@ -45,7 +43,7 @@ public class ExperimentReport implements Serializable {
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Schema(description = "创建日期")
|
||||
private Date createTime;
|
||||
private Date createTime;
|
||||
/**
|
||||
* 更新人
|
||||
*/
|
||||
@@ -57,7 +55,7 @@ public class ExperimentReport implements Serializable {
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Schema(description = "更新日期")
|
||||
private Date updateTime;
|
||||
private Date updateTime;
|
||||
/**
|
||||
* 所属部门
|
||||
*/
|
||||
@@ -117,4 +115,7 @@ public class ExperimentReport implements Serializable {
|
||||
@Excel(name = "状态", width = 15)
|
||||
@Schema(description = "状态(申请中(待校对):INIT,不合格:REJECT ,校对通过(待审核):PROOFREAD_PASS,审核通过(待批准):AUDIT_PASS,批准通过:PASSED)")
|
||||
private String status;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String fileUrl;
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ public interface IExperimentDocService extends IService<ExperimentDoc> {
|
||||
|
||||
ExperimentDoc generate(String experimentId, String type);
|
||||
|
||||
List<ExperimentDoc> getByExperimentId(String experimentId);
|
||||
List<ExperimentDoc> getHistoryByExperimentId(String experimentId,String type);
|
||||
ExperimentDoc getByExperimentId(String experimentId,String type);
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.jeecg.modules.database.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.io.FileUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@@ -76,24 +78,26 @@ public class ExperimentDocServiceImpl extends ServiceImpl<ExperimentDocMapper, E
|
||||
public ExperimentDoc generate(String experimentId, String type) {
|
||||
String filePath = generateExperimentDoc(experimentId, type, new HashMap<>());
|
||||
if (StringUtils.isNotBlank(filePath)) {
|
||||
LambdaQueryWrapper<ExperimentDoc> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ExperimentDoc::getExperimentId, experimentId);
|
||||
queryWrapper.eq(ExperimentDoc::getDocType, type);
|
||||
ExperimentDoc experimentDoc = this.getOne(queryWrapper);
|
||||
if (Objects.isNull(experimentDoc)) {
|
||||
experimentDoc = new ExperimentDoc();
|
||||
experimentDoc.setDocType(type);
|
||||
experimentDoc.setExperimentId(experimentId);
|
||||
}
|
||||
ExperimentDoc experimentDoc = new ExperimentDoc();
|
||||
experimentDoc.setDocType(type);
|
||||
experimentDoc.setExperimentId(experimentId);
|
||||
experimentDoc.setFilePath(filePath);
|
||||
this.saveOrUpdate(experimentDoc);
|
||||
experimentDoc.setVersion(DateUtil.format(new Date(), DatePattern.PURE_DATETIME_PATTERN));
|
||||
this.save(experimentDoc);
|
||||
return experimentDoc;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExperimentDoc> getByExperimentId(String experimentId) {
|
||||
return list(new LambdaQueryWrapper<ExperimentDoc>().eq(ExperimentDoc::getExperimentId, experimentId));
|
||||
public List<ExperimentDoc> getHistoryByExperimentId(String experimentId, String type) {
|
||||
return list(new LambdaQueryWrapper<ExperimentDoc>().eq(ExperimentDoc::getExperimentId, experimentId)
|
||||
.eq(ExperimentDoc::getDocType, type).orderByDesc(ExperimentDoc::getVersion));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExperimentDoc getByExperimentId(String experimentId, String type) {
|
||||
return getOne(new LambdaQueryWrapper<ExperimentDoc>().eq(ExperimentDoc::getExperimentId, experimentId)
|
||||
.eq(ExperimentDoc::getDocType, type).orderByDesc(ExperimentDoc::getVersion), false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
@@ -91,6 +92,7 @@ public class SysRoleController {
|
||||
//QueryWrapper<SysRole> queryWrapper = QueryGenerator.initQueryWrapper(role, req.getParameterMap());
|
||||
//IPage<SysRole> pageList = sysRoleService.page(page, queryWrapper);
|
||||
Page<SysRole> page = new Page<SysRole>(pageNo, pageSize);
|
||||
page.addOrder(OrderItem.desc("create_time"));
|
||||
//换成不做租户隔离的方法,实际上还是存在缺陷(缺陷:如果开启租户隔离,虽然能看到其他租户下的角色,编辑会提示报错)
|
||||
IPage<SysRole> pageList = sysRoleService.listAllSysRole(page, role);
|
||||
result.setSuccess(true);
|
||||
|
||||
Reference in New Issue
Block a user