diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/WorkPlanItem.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/WorkPlanItem.java index 9fa998251..684dec320 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/WorkPlanItem.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/WorkPlanItem.java @@ -131,4 +131,7 @@ public class WorkPlanItem extends BaseEntity { @Schema(description = "来源工序号") private String sourceOrders; + + @Schema(description = "来源ID") + private Long sourceId; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemVO.java index 9693537a3..dcca6808e 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemVO.java @@ -25,11 +25,11 @@ public class WorkPlanItemVO extends WorkPlanItem { /** * 表层 */ - private static Integer SURFACE_COAT = 1; + public static Integer SURFACE_COAT = 1; /** * 底镀层 */ - private static Integer UNDER_COAT = 2; + public static Integer UNDER_COAT = 2; private static Map coatTypeMap = new HashMap<>(3); @@ -42,12 +42,12 @@ public class WorkPlanItemVO extends WorkPlanItem { /** * 实测值 */ - private static Integer ACTUAL_SOURCE = 1; + public static Integer ACTUAL_SOURCE = 1; /** * 共享值 */ - private static Integer SHARE_SOURCE = 2; + public static Integer SHARE_SOURCE = 2; private static Map sourceTypeMap = new HashMap<>(3); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/DsProcessProjectController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/DsProcessProjectController.java index 42f8e8a62..bdeaf3f64 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/DsProcessProjectController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/DsProcessProjectController.java @@ -50,8 +50,10 @@ import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.constant.BladeConstant; + import java.util.Map; import java.util.List; + import jakarta.servlet.http.HttpServletResponse; /** @@ -66,96 +68,97 @@ import jakarta.servlet.http.HttpServletResponse; @Tag(name = "工序项目信息表", description = "工序项目信息表接口") public class DsProcessProjectController extends BladeController { - private final IDsProcessProjectService dsProcessProjectService; - - /** - * 工序项目信息表 详情 - */ - @GetMapping("/detail") - @ApiOperationSupport(order = 1) - @Operation(summary = "详情", description = "传入dsProcessProject") - public R detail(DsProcessProjectEntity dsProcessProject) { - DsProcessProjectEntity detail = dsProcessProjectService.getOne(Condition.getQueryWrapper(dsProcessProject)); - return R.data(DsProcessProjectWrapper.build().entityVO(detail)); - } - /** - * 工序项目信息表 分页 - */ - @GetMapping("/list") - @ApiOperationSupport(order = 2) - @Operation(summary = "分页", description = "传入dsProcessProject") - public R> list(@Parameter(hidden = true) @RequestParam Map dsProcessProject, Query query) { - IPage pages = dsProcessProjectService.page(Condition.getPage(query), Condition.getQueryWrapper(dsProcessProject, DsProcessProjectEntity.class)); - return R.data(DsProcessProjectWrapper.build().pageVO(pages)); - } - - /** - * 工序项目信息表 自定义分页 - */ - @GetMapping("/page") - @ApiOperationSupport(order = 3) - @Operation(summary = "分页", description = "传入dsProcessProject") - public R> page(DsProcessProjectVO dsProcessProject, Query query) { - IPage pages = dsProcessProjectService.selectDsProcessProjectPage(Condition.getPage(query), dsProcessProject); - return R.data(pages); - } - - /** - * 工序项目信息表 新增 - */ - @PostMapping("/save") - @ApiOperationSupport(order = 4) - @Operation(summary = "新增", description = "传入dsProcessProject") - public R save(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { - return R.status(dsProcessProjectService.save(dsProcessProject)); - } - - /** - * 工序项目信息表 修改 - */ - @PostMapping("/update") - @ApiOperationSupport(order = 5) - @Operation(summary = "修改", description = "传入dsProcessProject") - public R update(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { - return R.status(dsProcessProjectService.updateById(dsProcessProject)); - } - - /** - * 工序项目信息表 新增或修改 - */ - @PostMapping("/submit") - @ApiOperationSupport(order = 6) - @Operation(summary = "新增或修改", description = "传入dsProcessProject") - public R submit(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { - return R.status(dsProcessProjectService.saveOrUpdate(dsProcessProject)); - } - - /** - * 工序项目信息表 删除 - */ - @PostMapping("/remove") - @ApiOperationSupport(order = 7) - @Operation(summary = "逻辑删除", description = "传入ids") - public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - return R.status(dsProcessProjectService.deleteLogic(Func.toLongList(ids))); - } - - - /** - * 导出数据 - */ - @IsAdmin - @GetMapping("/export-dsProcessProject") - @ApiOperationSupport(order = 9) - @Operation(summary = "导出数据", description = "传入dsProcessProject") - public void exportDsProcessProject(@Parameter(hidden = true) @RequestParam Map dsProcessProject, BladeUser bladeUser, HttpServletResponse response) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(dsProcessProject, DsProcessProjectEntity.class); - //if (!AuthUtil.isAdministrator()) { - // queryWrapper.lambda().eq(DsProcessProject::getTenantId, bladeUser.getTenantId()); - //} - //queryWrapper.lambda().eq(DsProcessProjectEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); - List list = dsProcessProjectService.exportDsProcessProject(queryWrapper); - ExcelUtil.export(response, "工序项目信息表数据" + DateUtil.time(), "工序项目信息表数据表", list, DsProcessProjectExcel.class); - } + private final IDsProcessProjectService dsProcessProjectService; + + /** + * 工序项目信息表 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入dsProcessProject") + public R detail(DsProcessProjectEntity dsProcessProject) { + DsProcessProjectEntity detail = dsProcessProjectService.getOne(Condition.getQueryWrapper(dsProcessProject)); + return R.data(DsProcessProjectWrapper.build().entityVO(detail)); + } + + /** + * 工序项目信息表 分页 + */ + @GetMapping("/list") + @ApiOperationSupport(order = 2) + @Operation(summary = "分页", description = "传入dsProcessProject") + public R> list(@Parameter(hidden = true) @RequestParam Map dsProcessProject, Query query) { + IPage pages = dsProcessProjectService.page(Condition.getPage(query), Condition.getQueryWrapper(dsProcessProject, DsProcessProjectEntity.class)); + return R.data(DsProcessProjectWrapper.build().pageVO(pages)); + } + + /** + * 工序项目信息表 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入dsProcessProject") + public R> page(DsProcessProjectVO dsProcessProject, Query query) { + IPage pages = dsProcessProjectService.selectDsProcessProjectPage(Condition.getPage(query), dsProcessProject); + return R.data(pages); + } + + /** + * 工序项目信息表 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入dsProcessProject") + public R save(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { + return R.status(dsProcessProjectService.save(dsProcessProject)); + } + + /** + * 工序项目信息表 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入dsProcessProject") + public R update(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { + return R.status(dsProcessProjectService.updateById(dsProcessProject)); + } + + /** + * 工序项目信息表 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入dsProcessProject") + public R submit(@Valid @RequestBody DsProcessProjectEntity dsProcessProject) { + return R.status(dsProcessProjectService.saveOrUpdate(dsProcessProject)); + } + + /** + * 工序项目信息表 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(dsProcessProjectService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-dsProcessProject") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入dsProcessProject") + public void exportDsProcessProject(@Parameter(hidden = true) @RequestParam Map dsProcessProject, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(dsProcessProject, DsProcessProjectEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(DsProcessProject::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(DsProcessProjectEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = dsProcessProjectService.exportDsProcessProject(queryWrapper); + ExcelUtil.export(response, "工序项目信息表数据" + DateUtil.time(), "工序项目信息表数据表", list, DsProcessProjectExcel.class); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java index 91f11161a..a22ac686a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java @@ -37,6 +37,7 @@ import org.springblade.desk.produce.pojo.vo.BindModelVO; import org.springblade.desk.produce.pojo.vo.LoadSubOrderVO; import org.springblade.desk.produce.pojo.vo.PdaProRelevantVO; import org.springblade.desk.produce.service.*; +import org.springblade.desk.quality.constant.InspectionTaskConst; import org.springblade.desk.quality.pojo.entity.InspectionItem; import org.springblade.desk.quality.pojo.entity.InspectionTask; import org.springblade.desk.quality.pojo.entity.WorkPlanItem; @@ -417,9 +418,14 @@ public class PdaLoadServiceImpl extends BaseServiceImpl inspectionItems = inspectionItemService.list(); +// double sumCheckQty = 0, sumTestQty = 0, sumLossQty = 0; for (WorkPlanItemVO workPlanItemVO : inspectionTask.getWpItemList()) { +// sumCheckQty += workPlanItemVO.getCheckQty() != null ? workPlanItemVO.getCheckQty() : 0; +// sumTestQty += workPlanItemVO.getTestQty() != null ? workPlanItemVO.getTestQty() : 0; +// sumLossQty += workPlanItemVO.getLossQty() != null ? workPlanItemVO.getLossQty() : 0; WorkPlanItem workPlanItem = new WorkPlanItem(); BeanUtils.copyProperties(workPlanItemVO, workPlanItem); + workPlanItem.setWpId(inspectionTask.getWpId()); workPlanItem.setTaskId(inspectionTask.getId()); // 检验项目基础数据中项目名称匹配 for (InspectionItem inspectionItem : inspectionItems) { @@ -440,7 +446,15 @@ public class PdaLoadServiceImpl extends BaseServiceImpl detail(WorkPlanItem workPlanItem) { - QueryWrapper qw = Condition.getQueryWrapper(workPlanItem); - WorkPlanItem detail = service.getOne(qw); - WorkPlanItemVO detailVO = WorkPlanItemWrapper.build().entityVO(detail); - service.setVOValue(detailVO); - return R.data(detailVO); - } - - /** - * [工序检验项] list分页 - */ - @GetMapping("/list") - @ApiOperationSupport(order = 20) - @Operation(summary = "list分页", description = "传入WorkPlanItem Obj") - public R> list(@Parameter(hidden = true) @RequestParam Map workPlanItem, - Query query) { + private IWorkPlanItemService service; + + /** + * [工序检验项] 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 10) + @Operation(summary = "详情", description = "传入WorkPlanItem Obj") + public R detail(WorkPlanItem workPlanItem) { + QueryWrapper qw = Condition.getQueryWrapper(workPlanItem); + WorkPlanItem detail = service.getOne(qw); + WorkPlanItemVO detailVO = WorkPlanItemWrapper.build().entityVO(detail); + service.setVOValue(detailVO); + return R.data(detailVO); + } + + /** + * [工序检验项] list分页 + */ + @GetMapping("/list") + @ApiOperationSupport(order = 20) + @Operation(summary = "list分页", description = "传入WorkPlanItem Obj") + public R> list(@Parameter(hidden = true) @RequestParam Map workPlanItem, + Query query) { QueryWrapper qw = Condition.getQueryWrapper(workPlanItem, WorkPlanItem.class); - IPage pages = service.page(Condition.getPage(query), qw); - IPage pagesVO = WorkPlanItemWrapper.build().pageVO(pages); - pagesVO.getRecords() - .stream() - .peek(service::setVOValue) - .collect(Collectors.toList()); - return R.data(pagesVO); - } - - - /** - * [工序检验项] page分页 - */ - @GetMapping("/page") - @ApiOperationSupport(order = 21) - @Operation(summary = "page分页", description = "传入WorkPlanItem Obj") - public R> page(WorkPlanItemVO workPlanItem, Query query) { - IPage pagesVO = service.selectWorkPlanItemPage( - Condition.getPage(query), workPlanItem - ); - return R.data(pagesVO); - } - - /** + IPage pages = service.page(Condition.getPage(query), qw); + IPage pagesVO = WorkPlanItemWrapper.build().pageVO(pages); + pagesVO.getRecords() + .stream() + .peek(service::setVOValue) + .collect(Collectors.toList()); + return R.data(pagesVO); + } + + + /** + * [工序检验项] page分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 21) + @Operation(summary = "page分页", description = "传入WorkPlanItem Obj") + public R> page(WorkPlanItemVO workPlanItem, Query query) { + IPage pagesVO = service.selectWorkPlanItemPage( + Condition.getPage(query), workPlanItem + ); + return R.data(pagesVO); + } + + /** * [工序检验项] list下拉选择 */ @GetMapping("/listForSelect") @ApiOperationSupport(order = 22) - @Operation(summary = "list下拉选择", description = "") + @Operation(summary = "list下拉选择", description = "") public R> listForSelect() { - List list = service.list(); - List listVO = WorkPlanItemWrapper.build().listVO(list); - return R.data(listVO); + List list = service.list(); + List listVO = WorkPlanItemWrapper.build().listVO(list); + return R.data(listVO); } - /** - * [工序检验项] 新增一条 - */ - @PostMapping("/save") - @ApiOperationSupport(order = 30) - @Operation(summary = "新增一条", description = "传入WorkPlanItem Obj") - public R save(@Valid @RequestBody WorkPlanItem addOne) { - addOne.setId(null); - return R.status(service.save(addOne)); - } - - /** + /** + * [工序检验项] 新增一条 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 30) + @Operation(summary = "新增一条", description = "传入WorkPlanItem Obj") + public R save(@Valid @RequestBody WorkPlanItem addOne) { + addOne.setId(null); + return R.status(service.save(addOne)); + } + + /** * [工序检验项] 新增批量 */ - @PostMapping("/saveBat") - @ApiOperationSupport(order = 31) - @Operation(summary = "新增批量", description = "传入WorkPlanItem List") - public R saveBat(@Valid @RequestBody List addList) { - addList.forEach(one -> { - one.setId(null); - }); - return R.status(service.saveBatch(addList)); - } - - /** - * [工序检验项] 修改一条 - */ - @PostMapping("/update") - @ApiOperationSupport(order = 40) - @Operation(summary = "修改一条", description = "传入WorkPlanItem Obj") - public R update(@Valid @RequestBody WorkPlanItem updateOne) { - return R.status(service.updateById(updateOne)); - } + @PostMapping("/saveBat") + @ApiOperationSupport(order = 31) + @Operation(summary = "新增批量", description = "传入WorkPlanItem List") + public R saveBat(@Valid @RequestBody List addList) { + addList.forEach(one -> { + one.setId(null); + }); + return R.status(service.saveBatch(addList)); + } + + /** + * [工序检验项] 修改一条 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 40) + @Operation(summary = "修改一条", description = "传入WorkPlanItem Obj") + public R update(@Valid @RequestBody WorkPlanItem updateOne) { + return R.status(service.updateById(updateOne)); + } /** * [工序检验项] 修改批量 */ @PostMapping("/updateBat") @ApiOperationSupport(order = 41) - @Operation(summary = "修改批量", description = "传入WorkPlanItem List") + @Operation(summary = "修改批量", description = "传入WorkPlanItem List") public R updateBat(@Valid @RequestBody List updateList) { return R.status(service.updateBatchById(updateList)); } - /** - * [工序检验项] 新增或修改一条 - */ - @PostMapping("/submit") - @ApiOperationSupport(order = 50) - @Operation(summary = "新增或修改一条", description = "传入WorkPlanItem Obj") - public R submit(@Valid @RequestBody WorkPlanItem mergeOne) { - return R.status(service.saveOrUpdate(mergeOne)); - } - - /** + /** + * [工序检验项] 新增或修改一条 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 50) + @Operation(summary = "新增或修改一条", description = "传入WorkPlanItem Obj") + public R submit(@Valid @RequestBody WorkPlanItem mergeOne) { + return R.status(service.saveOrUpdate(mergeOne)); + } + + /** * [工序检验项] 新增或修改批量 */ - @PostMapping("/submitBat") - @ApiOperationSupport(order = 51) - @Operation(summary = "新增或修改批量", description = "传入WorkPlanItem List") - public R submitBat(@Valid @RequestBody List mergeList) { - return R.status(service.saveOrUpdateBatch(mergeList)); - } - - /** - * [工序检验项] 逻辑删除 - */ - @PostMapping("/remove") - @ApiOperationSupport(order = 61) - @Operation(summary = "逻辑删除", description = "传入ids") - public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - return R.status(service.deleteLogic(Func.toLongList(ids))); - } - - /** - * [工序检验项] 导出Excel - */ - @GetMapping("/exportExcel") - @ApiOperationSupport(order = 70) - @Operation(summary = "导出Excel", description = "传入WorkPlanItem") - public void exportExcel(@Parameter(hidden = true) @RequestParam Map workPlanItem, - BladeUser bladeUser, HttpServletResponse response) { - QueryWrapper qw = Condition.getQueryWrapper(workPlanItem, WorkPlanItem.class); - //if (!AuthUtil.isAdministrator()) { - // queryWrapper.lambda().eq(WorkPlanItem::getTenantId, bladeUser.getTenantId()); - //} - //queryWrapper.lambda().eq(WorkPlanItemEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); - List list = service.exportWorkPlanItem(qw); - ExcelUtil.export(response, "[工序检验项]数据" + DateUtil.time(), - "[工序检验项]数据表", list, WorkPlanItemExcel.class); - } - - /** + @PostMapping("/submitBat") + @ApiOperationSupport(order = 51) + @Operation(summary = "新增或修改批量", description = "传入WorkPlanItem List") + public R submitBat(@Valid @RequestBody List mergeList) { + return R.status(service.saveOrUpdateBatch(mergeList)); + } + + /** + * [工序检验项] 逻辑删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 61) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(service.deleteLogic(Func.toLongList(ids))); + } + + /** + * [工序检验项] 导出Excel + */ + @GetMapping("/exportExcel") + @ApiOperationSupport(order = 70) + @Operation(summary = "导出Excel", description = "传入WorkPlanItem") + public void exportExcel(@Parameter(hidden = true) @RequestParam Map workPlanItem, + BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper qw = Condition.getQueryWrapper(workPlanItem, WorkPlanItem.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(WorkPlanItem::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(WorkPlanItemEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = service.exportWorkPlanItem(qw); + ExcelUtil.export(response, "[工序检验项]数据" + DateUtil.time(), + "[工序检验项]数据表", list, WorkPlanItemExcel.class); + } + + /** * [工序检验项] 下载Excel模板 */ - @GetMapping("/downloadExcelTemplate") - @ApiOperationSupport(order = 71) - @Operation(summary = "下载Excel模板", description = "") - public ResponseEntity downloadExcelTemplate() { - return ExcelExtUtil.downloadXlsTemplate( - "Excel/QA/ImportTemplate-CycleTestItem.xls", - "导入模版-周期试验项目.xls"); - } - - /** - * [工序检验项] 导入Excel - */ - @PostMapping("/importExcel") - @ApiOperationSupport(order = 72) - @Operation(summary = "导入Excel", description = "MultipartFile") - public R importExcel(@RequestParam("file") MultipartFile file) { - R checkR = ExcelExtUtil.importExcelCheck(file); - if (checkR != null) { - return checkR; - } - List importList = ExcelUtil.read( - file, 0, 1, WorkPlanItem.class - ); - return R.status(service.saveBatch(importList)); - } + @GetMapping("/downloadExcelTemplate") + @ApiOperationSupport(order = 71) + @Operation(summary = "下载Excel模板", description = "") + public ResponseEntity downloadExcelTemplate() { + return ExcelExtUtil.downloadXlsTemplate( + "Excel/QA/ImportTemplate-CycleTestItem.xls", + "导入模版-周期试验项目.xls"); + } + + /** + * [工序检验项] 导入Excel + */ + @PostMapping("/importExcel") + @ApiOperationSupport(order = 72) + @Operation(summary = "导入Excel", description = "MultipartFile") + public R importExcel(@RequestParam("file") MultipartFile file) { + R checkR = ExcelExtUtil.importExcelCheck(file); + if (checkR != null) { + return checkR; + } + List importList = ExcelUtil.read( + file, 0, 1, WorkPlanItem.class + ); + return R.status(service.saveBatch(importList)); + } + + /** + * 根据id查询同订单共享值 + * + * @param workPlanItem + * @return + */ + @GetMapping("/listShareVOByWpiId") + @Operation(summary = "根据ID查询同订单共享值", description = "传入WorkPlanItem Obj") + public R listShareVOByWpiId(WorkPlanItem workPlanItem) { + return R.data(service.listShareVOByWpiId(workPlanItem.getId())); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.java index 492431fec..499001f43 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.java @@ -41,4 +41,6 @@ public interface WorkPlanItemMapper extends BaseMapper { List listByWoId(Long woId); List listByWoIdNotNG(Long woId); + + List listShareByWpiId(Long wpiId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.xml index 1df9774a4..020e5ca71 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/WorkPlanItemMapper.xml @@ -65,4 +65,21 @@ AND b.wo_id = #{woId} AND a.CHECK_RESULT != 3 + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IWorkPlanItemService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IWorkPlanItemService.java index 68a80c9ff..313646d6e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IWorkPlanItemService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IWorkPlanItemService.java @@ -65,4 +65,6 @@ public interface IWorkPlanItemService extends BaseService { List listByWoIdNotNG(Long woId); List listVOByWpIdAndItemName(Long wpId, String itemName); + + List listShareVOByWpiId(Long wpiId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java index 747f32d52..833f71edd 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java @@ -2359,15 +2359,15 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl 0) { wp.setWorkQty(wo.getMakeQty()); } - wp.setTestQty(wp.getTestQty() + testQty); - wp.setLossQty(wp.getLossQty() + lossQty); - wp.setScrapQty(wp.getScrapQty() + scrapQty); + wp.setTestQty(Optional.ofNullable(wp.getTestQty()).orElse(0D) + testQty); + wp.setLossQty(Optional.ofNullable(wp.getLossQty()).orElse(0D) + lossQty); + wp.setScrapQty(Optional.ofNullable(wp.getScrapQty()).orElse(0D) + scrapQty); } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemServiceImpl.java index fd70b89f2..d005b474e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemServiceImpl.java @@ -115,7 +115,11 @@ public class WorkPlanItemServiceImpl extends BaseServiceImpl list = wpItemDetailService.listVOByWorkPlanItemId(vo.getId()); + Long sourceId = vo.getId(); + if(vo.getSourceType() == WorkPlanItemVO.SHARE_SOURCE){ + sourceId = vo.getSourceId(); + } + List list = wpItemDetailService.listVOByWorkPlanItemId(sourceId); if(null == list || list.size() == 0){ vo.setWpItemDetailList(new ArrayList<>()); }else{ @@ -265,4 +269,14 @@ public class WorkPlanItemServiceImpl extends BaseServiceImpl listShareVOByWpiId(Long wpiId) { + List list = baseMapper.listShareByWpiId(wpiId); + List listVO = WorkPlanItemWrapper.build().listVO(list); + for (WorkPlanItemVO vo : listVO) { + setVOValue(vo); + } + return listVO; + } } diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/WorkOrderServiceImpl.java index 6e15aae8c..403c4d43f 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/WorkOrderServiceImpl.java +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/WorkOrderServiceImpl.java @@ -750,7 +750,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl