copyList 槽液报告 详情 会带一个copyList的列表。

develop-QA
Tom Li 3 months ago
parent 03ecdde231
commit 8f4bed6bdb
  1. 6
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/constant/InspectionTaskConst.java
  2. 9
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/InspectionTask.java
  3. 6
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/InspectionTaskDetailVO.java
  4. 31
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/LiquidTankReportDetailVO.java
  5. 9
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/LiquidTankReportVO.java
  6. 309
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankReportController.java
  7. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankReportService.java
  8. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/ILiquidTankTaskCopyService.java
  9. 32
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IRelTankReportItemService.java
  10. 6
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java
  11. 15
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankReportServiceImpl.java
  12. 30
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskCopyServiceImpl.java
  13. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/LiquidTankReportDetailWrapper.java

@ -6,7 +6,6 @@ public interface InspectionTaskConst {
* 热表 * 热表
*/ */
Integer FROM_TYPE_RB = 1; Integer FROM_TYPE_RB = 1;
/** /**
* 烧结 * 烧结
*/ */
@ -28,4 +27,9 @@ public interface InspectionTaskConst {
* NA * NA
*/ */
Integer CHECK_RESULT_NA = 3; Integer CHECK_RESULT_NA = 3;
/**
* 烧结包装防护
*/
String PROCESS_NAME_SJBZFH = "烧结包装防护";
} }

@ -167,6 +167,10 @@ public class InspectionTask extends BaseEntity {
* 接收日期 * 接收日期
*/ */
public static final String COL_RECEIVE_DATE = "RECEIVE_DATE"; public static final String COL_RECEIVE_DATE = "RECEIVE_DATE";
/**
* [工序]名称
*/
public static final String COL_PROCESS_NAME = "PROCESS_NAME";
/** /**
* [检验任务]编码 * [检验任务]编码
@ -343,4 +347,9 @@ public class InspectionTask extends BaseEntity {
*/ */
@Schema(description = "接收日期") @Schema(description = "接收日期")
private LocalDateTime receiveDate; private LocalDateTime receiveDate;
/**
* 工序名称
*/
@Schema(description = "工序名称")
private String processName;
} }

@ -28,12 +28,6 @@ public class InspectionTaskDetailVO extends InspectionTask {
@Serial @Serial
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* todo:
*/
@Schema(description = "工序名称")
private String processName = "工序名称A";
private InspectionTaskListVO orderInfo; private InspectionTaskListVO orderInfo;
private List<RemindMsg> remindMsgList; private List<RemindMsg> remindMsgList;

@ -0,0 +1,31 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.entity.LiquidTankTaskCopy;
import java.io.Serial;
import java.util.List;
/**
* [槽液报告] 视图实体类
*
* @author Tom Shuo
* @since 2025-12-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class LiquidTankReportDetailVO extends LiquidTankReport {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "维护人")
private String updateUserRealName;
@Schema(description = "复制槽液任务列表")
private List<LiquidTankTaskCopyVO> copyList;
}

@ -9,6 +9,7 @@ import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport; import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import java.io.Serial; import java.io.Serial;
import java.util.List;
/** /**
* [槽液报告] 视图实体类 * [槽液报告] 视图实体类
@ -19,9 +20,9 @@ import java.io.Serial;
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
public class LiquidTankReportVO extends LiquidTankReport { public class LiquidTankReportVO extends LiquidTankReport {
@Serial @Serial
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@Schema(description = "维护人") @Schema(description = "维护人")
private String updateUserRealName; private String updateUserRealName;
} }

@ -28,8 +28,11 @@ import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.quality.constant.QAModuleConst; import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.excel.LiquidTankReportExcel; import org.springblade.desk.quality.excel.LiquidTankReportExcel;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport; import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportDetailVO;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO; import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO;
import org.springblade.desk.quality.service.ILiquidTankReportService; import org.springblade.desk.quality.service.ILiquidTankReportService;
import org.springblade.desk.quality.service.ILiquidTankTaskCopyService;
import org.springblade.desk.quality.wrapper.LiquidTankReportDetailWrapper;
import org.springblade.desk.quality.wrapper.LiquidTankReportWrapper; import org.springblade.desk.quality.wrapper.LiquidTankReportWrapper;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -54,179 +57,183 @@ import java.util.Map;
public class LiquidTankReportController extends BladeController { public class LiquidTankReportController extends BladeController {
@Resource @Resource
private ILiquidTankReportService service; private ILiquidTankReportService service;
@Resource
/** private ILiquidTankTaskCopyService liquidTankTaskCopyService;
* [槽液报告] 详情
*/ /**
@GetMapping("/detail") * [槽液报告] 详情
@ApiOperationSupport(order = 10) */
@Operation(summary = "详情", description = "传入LiquidTankReport Obj") @GetMapping("/detail")
public R<LiquidTankReportVO> detail(LiquidTankReport liquidTankReport) { @ApiOperationSupport(order = 10)
QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport); @Operation(summary = "详情", description = "传入LiquidTankReport Obj")
LiquidTankReport detail = service.getOne(qw); public R<LiquidTankReportDetailVO> detail(LiquidTankReport liquidTankReport) {
LiquidTankReportVO detailVO = LiquidTankReportWrapper.build().entityVO(detail); QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport);
return R.data(detailVO); LiquidTankReport detail = service.getOne(qw);
} LiquidTankReportDetailVO detailVO = LiquidTankReportDetailWrapper.build().entityVO(detail);
// 直接查询明细列表
/** detailVO.setCopyList(liquidTankTaskCopyService.getListByLiquidTankReportId(detailVO.getId()));
* [槽液报告] list分页 return R.data(detailVO);
*/ }
@GetMapping("/list")
@ApiOperationSupport(order = 20) /**
@Operation(summary = "list分页", description = "传入LiquidTankReport Obj") * [槽液报告] list分页
public R<IPage<LiquidTankReportVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankReport, */
Query query) { @GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入LiquidTankReport Obj")
public R<IPage<LiquidTankReportVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankReport,
Query query) {
QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport, LiquidTankReport.class); QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport, LiquidTankReport.class);
IPage<LiquidTankReport> pages = service.page(Condition.getPage(query), qw); IPage<LiquidTankReport> pages = service.page(Condition.getPage(query), qw);
IPage<LiquidTankReportVO> pagesVO = LiquidTankReportWrapper.build().pageVO(pages); IPage<LiquidTankReportVO> pagesVO = LiquidTankReportWrapper.build().pageVO(pages);
return R.data(pagesVO); return R.data(pagesVO);
} }
/** /**
* [槽液报告] page分页 * [槽液报告] page分页
*/ */
@GetMapping("/page") @GetMapping("/page")
@ApiOperationSupport(order = 21) @ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入LiquidTankReport Obj") @Operation(summary = "page分页", description = "传入LiquidTankReport Obj")
public R<IPage<LiquidTankReportVO>> page(LiquidTankReportVO liquidTankReport, Query query) { public R<IPage<LiquidTankReportVO>> page(LiquidTankReportVO liquidTankReport, Query query) {
IPage<LiquidTankReportVO> pagesVO = service.selectLiquidTankReportPage( IPage<LiquidTankReportVO> pagesVO = service.selectLiquidTankReportPage(
Condition.getPage(query), liquidTankReport Condition.getPage(query), liquidTankReport
); );
return R.data(pagesVO); return R.data(pagesVO);
} }
/** /**
* [槽液报告] list下拉选择 * [槽液报告] list下拉选择
*/ */
@GetMapping("/listForSelect") @GetMapping("/listForSelect")
@ApiOperationSupport(order = 22) @ApiOperationSupport(order = 22)
@Operation(summary = "list下拉选择", description = "") @Operation(summary = "list下拉选择", description = "")
public R<List<LiquidTankReportVO>> listForSelect() { public R<List<LiquidTankReportVO>> listForSelect() {
List<LiquidTankReport> list = service.list(); List<LiquidTankReport> list = service.list();
List<LiquidTankReportVO> listVO = LiquidTankReportWrapper.build().listVO(list); List<LiquidTankReportVO> listVO = LiquidTankReportWrapper.build().listVO(list);
return R.data(listVO); return R.data(listVO);
}
/**
* [槽液报告] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入LiquidTankReport Obj")
public R save(@Valid @RequestBody LiquidTankReport addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
} }
/** /**
* [槽液报告] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入LiquidTankReport Obj")
public R save(@Valid @RequestBody LiquidTankReport addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
* [槽液报告] 新增批量 * [槽液报告] 新增批量
*/ */
@PostMapping("/saveBat") @PostMapping("/saveBat")
@ApiOperationSupport(order = 31) @ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入LiquidTankReport List") @Operation(summary = "新增批量", description = "传入LiquidTankReport List")
public R saveBat(@Valid @RequestBody List<LiquidTankReport> addList) { public R saveBat(@Valid @RequestBody List<LiquidTankReport> addList) {
addList.forEach(one -> { addList.forEach(one -> {
one.setId(null); one.setId(null);
}); });
return R.status(service.saveBatch(addList)); return R.status(service.saveBatch(addList));
} }
/** /**
* [槽液报告] 修改一条 * [槽液报告] 修改一条
*/ */
@PostMapping("/update") @PostMapping("/update")
@ApiOperationSupport(order = 40) @ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入LiquidTankReport Obj") @Operation(summary = "修改一条", description = "传入LiquidTankReport Obj")
public R update(@Valid @RequestBody LiquidTankReport updateOne) { public R update(@Valid @RequestBody LiquidTankReport updateOne) {
return R.status(service.updateById(updateOne)); return R.status(service.updateById(updateOne));
} }
/** /**
* [槽液报告] 修改批量 * [槽液报告] 修改批量
*/ */
@PostMapping("/updateBat") @PostMapping("/updateBat")
@ApiOperationSupport(order = 41) @ApiOperationSupport(order = 41)
@Operation(summary = "修改批量", description = "传入LiquidTankReport List") @Operation(summary = "修改批量", description = "传入LiquidTankReport List")
public R updateBat(@Valid @RequestBody List<LiquidTankReport> updateList) { public R updateBat(@Valid @RequestBody List<LiquidTankReport> updateList) {
return R.status(service.updateBatchById(updateList)); return R.status(service.updateBatchById(updateList));
} }
/** /**
* [槽液报告] 新增或修改一条 * [槽液报告] 新增或修改一条
*/ */
@PostMapping("/submit") @PostMapping("/submit")
@ApiOperationSupport(order = 50) @ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入LiquidTankReport Obj") @Operation(summary = "新增或修改一条", description = "传入LiquidTankReport Obj")
public R submit(@Valid @RequestBody LiquidTankReport mergeOne) { public R submit(@Valid @RequestBody LiquidTankReport mergeOne) {
return R.status(service.saveOrUpdate(mergeOne)); return R.status(service.saveOrUpdate(mergeOne));
} }
/** /**
* [槽液报告] 新增或修改批量 * [槽液报告] 新增或修改批量
*/ */
@PostMapping("/submitBat") @PostMapping("/submitBat")
@ApiOperationSupport(order = 51) @ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入LiquidTankReport List") @Operation(summary = "新增或修改批量", description = "传入LiquidTankReport List")
public R submitBat(@Valid @RequestBody List<LiquidTankReport> mergeList) { public R submitBat(@Valid @RequestBody List<LiquidTankReport> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList)); return R.status(service.saveOrUpdateBatch(mergeList));
} }
/** /**
* [槽液报告] 逻辑删除 * [槽液报告] 逻辑删除
*/ */
@PostMapping("/remove") @PostMapping("/remove")
@ApiOperationSupport(order = 61) @ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids") @Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids))); return R.status(service.deleteLogic(Func.toLongList(ids)));
} }
/** /**
* [槽液报告] 导出Excel * [槽液报告] 导出Excel
*/ */
@GetMapping("/exportExcel") @GetMapping("/exportExcel")
@ApiOperationSupport(order = 70) @ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入LiquidTankReport") @Operation(summary = "导出Excel", description = "传入LiquidTankReport")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankReport, public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankReport,
BladeUser bladeUser, HttpServletResponse response) { BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport, LiquidTankReport.class); QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport, LiquidTankReport.class);
//if (!AuthUtil.isAdministrator()) { //if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(LiquidTankReport::getTenantId, bladeUser.getTenantId()); // queryWrapper.lambda().eq(LiquidTankReport::getTenantId, bladeUser.getTenantId());
//} //}
//queryWrapper.lambda().eq(LiquidTankReportEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); //queryWrapper.lambda().eq(LiquidTankReportEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<LiquidTankReportExcel> list = service.exportLiquidTankReport(qw); List<LiquidTankReportExcel> list = service.exportLiquidTankReport(qw);
ExcelUtil.export(response, "[槽液报告]数据" + DateUtil.time(), ExcelUtil.export(response, "[槽液报告]数据" + DateUtil.time(),
"[槽液报告]数据表", list, LiquidTankReportExcel.class); "[槽液报告]数据表", list, LiquidTankReportExcel.class);
} }
/** /**
* [槽液报告] 下载Excel模板 * [槽液报告] 下载Excel模板
*/ */
@GetMapping("/downloadExcelTemplate") @GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71) @ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "") @Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() { public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate( return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls", "Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls"); "导入模版-周期试验项目.xls");
} }
/** /**
* [槽液报告] 导入Excel * [槽液报告] 导入Excel
*/ */
@PostMapping("/importExcel") @PostMapping("/importExcel")
@ApiOperationSupport(order = 72) @ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile") @Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) { public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file); R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) { if (checkR != null) {
return checkR; return checkR;
} }
List<LiquidTankReport> importList = ExcelUtil.read( List<LiquidTankReport> importList = ExcelUtil.read(
file, 0, 1, LiquidTankReport.class file, 0, 1, LiquidTankReport.class
); );
return R.status(service.saveBatch(importList)); return R.status(service.saveBatch(importList));
} }
} }

@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService; import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.quality.excel.LiquidTankReportExcel; import org.springblade.desk.quality.excel.LiquidTankReportExcel;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport; import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportDetailVO;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO; import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO;
import java.util.List; import java.util.List;

@ -45,4 +45,6 @@ public interface ILiquidTankTaskCopyService extends BaseService<LiquidTankTaskCo
R generateReport(@Valid @RequestBody List<LiquidTankTaskCopy> list); R generateReport(@Valid @RequestBody List<LiquidTankTaskCopy> list);
R generateWave(@Valid @RequestBody List<LiquidTankTaskCopy> list); R generateWave(@Valid @RequestBody List<LiquidTankTaskCopy> list);
List<LiquidTankTaskCopyVO> getListByLiquidTankReportId(Long liquidTankReportId);
} }

@ -19,20 +19,22 @@ import java.util.List;
* @since 2025-12-18 * @since 2025-12-18
*/ */
public interface IRelTankReportItemService extends BaseService<RelTankReportItem> { public interface IRelTankReportItemService extends BaseService<RelTankReportItem> {
/**
* 自定义分页
*
* @param page 分页参数
* @param relTankReportItem 查询参数
* @return IPage<RelTankReportItemVO>
*/
IPage<RelTankReportItemVO> selectRelTankReportItemPage(IPage<RelTankReportItemVO> page, RelTankReportItemVO relTankReportItem);
/** /**
* 导出数据 * 自定义分页
* *
* @param queryWrapper 查询条件 * @param page 分页参数
* @return List<RelTankReportItemExcel> * @param relTankReportItem 查询参数
*/ * @return IPage<RelTankReportItemVO>
List<RelTankReportItemExcel> exportRelTankReportItem(Wrapper<RelTankReportItem> queryWrapper); */
IPage<RelTankReportItemVO> selectRelTankReportItemPage(IPage<RelTankReportItemVO> page,
RelTankReportItemVO relTankReportItem);
/**
* 导出数据
*
* @param queryWrapper 查询条件
* @return List<RelTankReportItemExcel>
*/
List<RelTankReportItemExcel> exportRelTankReportItem(Wrapper<RelTankReportItem> queryWrapper);
} }

@ -169,6 +169,12 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap
// 新建 InspectionTask // 新建 InspectionTask
InspectionTask task = new InspectionTask(); InspectionTask task = new InspectionTask();
task.setId(null); task.setId(null);
//
if (Objects.equals(fromType, InspectionTaskConst.FROM_TYPE_RB)) {
task.setProcessName(InspectionTaskConst.PROCESS_NAME_SJBZFH);
} else {
task.setProcessName("测试工序2000");
}
task.setStatus(InspectionTaskConst.CHECK_RESULT_TODO); task.setStatus(InspectionTaskConst.CHECK_RESULT_TODO);
// todo: fake data // todo: fake data
task.setWoId(2002227460172464129L); task.setWoId(2002227460172464129L);

@ -11,12 +11,17 @@ import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.desk.basic.util.IdUtil;
import org.springblade.desk.quality.excel.LiquidTankReportExcel; import org.springblade.desk.quality.excel.LiquidTankReportExcel;
import org.springblade.desk.quality.mapper.LiquidTankReportMapper; import org.springblade.desk.quality.mapper.LiquidTankReportMapper;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport; import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportDetailVO;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO; import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO;
import org.springblade.desk.quality.service.ILiquidTankReportService; import org.springblade.desk.quality.service.ILiquidTankReportService;
import org.springblade.desk.quality.service.ILiquidTankTaskCopyService;
import org.springblade.desk.quality.service.IRelTankReportItemService;
import org.springblade.system.feign.IUserClient; import org.springblade.system.feign.IUserClient;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@ -32,7 +37,11 @@ import java.util.List;
@AllArgsConstructor @AllArgsConstructor
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Slf4j @Slf4j
public class LiquidTankReportServiceImpl extends BaseServiceImpl<LiquidTankReportMapper, LiquidTankReport> implements ILiquidTankReportService { public class LiquidTankReportServiceImpl extends BaseServiceImpl<LiquidTankReportMapper, LiquidTankReport>
implements ILiquidTankReportService {
@Resource
private IRelTankReportItemService relTankReportItemService;
@Resource @Resource
private IUserClient userClient; private IUserClient userClient;
@ -53,6 +62,8 @@ public class LiquidTankReportServiceImpl extends BaseServiceImpl<LiquidTankRepor
@Override @Override
public void setVOValue(LiquidTankReportVO vo) { public void setVOValue(LiquidTankReportVO vo) {
vo.setUpdateUserRealName(userClient.userInfo(vo.getUpdateUser()).getData().getUser().getRealName()); if (IdUtil.isValid(vo.getUpdateUser())) {
vo.setUpdateUserRealName(userClient.userInfo(vo.getUpdateUser()).getData().getUser().getRealName());
}
} }
} }

@ -5,7 +5,9 @@ package org.springblade.desk.quality.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
@ -22,9 +24,11 @@ import org.springblade.desk.quality.pojo.vo.LiquidTankTaskCopyVO;
import org.springblade.desk.quality.pojo.vo.LiquidTankTaskVO; import org.springblade.desk.quality.pojo.vo.LiquidTankTaskVO;
import org.springblade.desk.quality.service.*; import org.springblade.desk.quality.service.*;
import org.springblade.desk.quality.util.CodeUtil; import org.springblade.desk.quality.util.CodeUtil;
import org.springblade.desk.quality.wrapper.LiquidTankTaskCopyWrapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -41,6 +45,9 @@ import java.util.List;
public class LiquidTankTaskCopyServiceImpl extends BaseServiceImpl<LiquidTankTaskCopyMapper, LiquidTankTaskCopy> public class LiquidTankTaskCopyServiceImpl extends BaseServiceImpl<LiquidTankTaskCopyMapper, LiquidTankTaskCopy>
implements ILiquidTankTaskCopyService { implements ILiquidTankTaskCopyService {
@Resource
private IWorkCenterService workCenterService;
@Resource @Resource
private ILiquidTankReportService reportService; private ILiquidTankReportService reportService;
@Resource @Resource
@ -53,8 +60,7 @@ public class LiquidTankTaskCopyServiceImpl extends BaseServiceImpl<LiquidTankTas
private IRelTankReportItemService relReportItemService; private IRelTankReportItemService relReportItemService;
@Resource @Resource
private IRelTankWaveItemService relTankWaveItemService; private IRelTankWaveItemService relTankWaveItemService;
@Resource
private IWorkCenterService workCenterService;
@Override @Override
public IPage<LiquidTankTaskCopyVO> selectLiquidTankTaskCopyPage(IPage<LiquidTankTaskCopyVO> page, LiquidTankTaskCopyVO liquidTankTaskCopy) { public IPage<LiquidTankTaskCopyVO> selectLiquidTankTaskCopyPage(IPage<LiquidTankTaskCopyVO> page, LiquidTankTaskCopyVO liquidTankTaskCopy) {
@ -103,7 +109,7 @@ public class LiquidTankTaskCopyServiceImpl extends BaseServiceImpl<LiquidTankTas
// 保存关联关系 // 保存关联关系
relReportItemService.save(item); relReportItemService.save(item);
} }
return R.success(); return R.success("生成报告成功");
} }
@Transactional @Transactional
@ -129,6 +135,22 @@ public class LiquidTankTaskCopyServiceImpl extends BaseServiceImpl<LiquidTankTas
// 保存关联关系 // 保存关联关系
relTankWaveItemService.save(item); relTankWaveItemService.save(item);
} }
return R.success(); return R.success("生成曲线成功");
}
@Override
public List<LiquidTankTaskCopyVO> getListByLiquidTankReportId(Long liquidTankReportId) {
LambdaQueryWrapper<RelTankReportItem> qw = Wrappers.lambdaQuery();
qw.eq(RelTankReportItem::getLiquidTankReportId, liquidTankReportId);
List<RelTankReportItem> relList = relReportItemService.list(qw);
List<LiquidTankTaskCopyVO> copyList = new ArrayList<>();
for (RelTankReportItem relOne : relList) {
Long taskId = relOne.getLiquidTankTaskId();
LiquidTankTaskCopy copy = getById(taskId);
LiquidTankTaskCopyVO copyVO = LiquidTankTaskCopyWrapper.build().entityVO(copy);
setVOValue(copyVO);
copyList.add(copyVO);
}
return copyList;
} }
} }

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportDetailVO;
import org.springblade.desk.quality.pojo.vo.LiquidTankReportVO;
import java.util.Objects;
/**
* [槽液报告] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2025-12-18
*/
public class LiquidTankReportDetailWrapper extends BaseEntityWrapper<LiquidTankReport, LiquidTankReportDetailVO> {
public static LiquidTankReportDetailWrapper build() {
return new LiquidTankReportDetailWrapper();
}
@Override
public LiquidTankReportDetailVO entityVO(LiquidTankReport liquidTankReport) {
LiquidTankReportDetailVO VO = Objects.requireNonNull(BeanUtil.copyProperties(liquidTankReport, LiquidTankReportDetailVO.class));
//User createUser = UserCache.getUser(liquidTankReport.getCreateUser());
//User updateUser = UserCache.getUser(liquidTankReport.getUpdateUser());
//liquidTankReportVO.setCreateUserName(createUser.getName());
//liquidTankReportVO.setUpdateUserName(updateUser.getName());
return VO;
}
}
Loading…
Cancel
Save