恢复丢失的部分类。 恢复LiquidTankTaskService。

develop-QA
Tom Li 1 month ago
parent b6ddb553fc
commit 586428453c
  1. 4
      blade-ops/blade-develop/src/test/java/org/springblade/test/CodeGeneratorVer2.java
  2. 4
      blade-ops/blade-job/pom.xml
  3. 434
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/LiquidTankTask.java
  4. 34
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/InspectionTaskController.java
  5. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/NgController.java
  6. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/excel/gen/NgGenExcel.java
  7. 41
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/InspectionTaskGenMapper.java
  8. 38
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/InspectionTaskGenMapper.xml
  9. 41
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/LiquidTankTaskGenMapper.java
  10. 60
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/LiquidTankTaskGenMapper.xml
  11. 41
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/NgGenMapper.java
  12. 28
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/gen/NgGenMapper.xml
  13. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/dto/gen/InspectionTaskGenDTO.java
  14. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/dto/gen/LiquidTankTaskGenDTO.java
  15. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/dto/gen/NgGenDTO.java
  16. 137
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/entity/InspectionTask.java
  17. 247
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/entity/LiquidTankTask.java
  18. 86
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/entity/Ng.java
  19. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/vo/gen/InspectionTaskGenVO.java
  20. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/vo/gen/LiquidTankTaskGenVO.java
  21. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/pojo/vo/gen/NgGenVO.java
  22. 58
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/LiquidTankTaskService.java
  23. 39
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/gen/IInspectionTaskGenService.java
  24. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/gen/INgGenService.java
  25. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/gen/NgGenServiceImpl.java
  26. 10
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/scheduled/LiquidTankTaskScheduledService.java
  27. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/gen/NgGenWrapper.java

@ -41,7 +41,7 @@ public class CodeGeneratorVer2 {
/**
* 代码生成的模块名
*/
public static String CODE_NAME = "[槽液]";
public static String CODE_NAME = "[检验任务]";
/**
* 代码所在服务名
*/
@ -57,7 +57,7 @@ public class CodeGeneratorVer2 {
/**
* 需要生成的表名(两者只能取其一)
*/
public static String[] INCLUDE_TABLES = {"QA_LIQUID_TANK"};
public static String[] INCLUDE_TABLES = {"QA_INSPECTION_TASK"};
/**
* 需要排除的表名(两者只能取其一)
*/

@ -35,6 +35,10 @@
<groupId>org.springblade</groupId>
<artifactId>blade-starter-powerjob</artifactId>
</dependency>
<dependency>
<groupId>org.springblade</groupId>
<artifactId>blade-desk-api</artifactId>
</dependency>
</dependencies>
<build>

@ -24,223 +24,223 @@ import java.time.LocalDateTime;
@EqualsAndHashCode(callSuper = true)
public class LiquidTankTask extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
/**
* [槽液检测任务]编码
*/
@Schema(description = "[槽液检测任务]编码")
private String code;
/**
* 类型
*/
@Schema(description = "类型")
private Long liquidTankTaskType;
/**
* 名称
*/
@Schema(description = "名称")
private String name;
/**
* [槽液]id
*/
@Schema(description = "[槽液]id")
private Long liquidTankId;
/**
* [作业中心]id
*/
@Schema(description = "[作业中心]id")
private Long workCenterId;
/**
* 药品[物料]id
*/
@Schema(description = "药品[物料]id")
private Long drugMaterialId;
/**
* [槽液]编号
*/
@Schema(description = "[槽液]编号")
private String liquidTankCode;
/**
* 待测成分
*/
@Schema(description = "待测成分")
private String testElement;
/**
* 药品名称
*/
@Schema(description = "药品名称")
private String drugName;
/**
* 药品[物料]编码
*/
@Schema(description = "药品[物料]编码")
private String drugMaterialCode;
/**
* 药品物料名称
*/
@Schema(description = "药品物料名称")
private String drugMaterialName;
/**
* 工艺含量
*/
@Schema(description = "工艺含量")
private String processContent;
/**
* 目标值
*/
@Schema(description = "目标值")
private BigDecimal targetValue;
/**
* 目标上下限
*/
@Schema(description = "目标上下限")
private String bound;
/**
* 排序
*/
@Schema(description = "排序")
private Long sort;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 添加点
*/
@Schema(description = "添加点")
private BigDecimal fillingLocation;
/**
* 电导率测量值
*/
@Schema(description = "电导率测量值")
private BigDecimal conductivityTestValue;
/**
* 体积
*/
@Schema(description = "体积")
private BigDecimal volume;
/**
* 单位
*/
@Schema(description = "单位")
private BigDecimal unit;
/**
* [计量单位]id
*/
@Schema(description = "[计量单位]id")
private BigDecimal unitId;
/**
* 加药量单位
*/
@Schema(description = "加药量单位")
private String addUnit;
/**
* 加药量[计量单位]id
*/
@Schema(description = "加药量[计量单位]id")
private BigDecimal addUnitId;
/**
* 分析周期
*/
@Schema(description = "分析周期")
private Integer analysisCycle;
/**
* 有效期
*/
@Schema(description = "有效期")
private LocalDateTime validDate;
/**
* 上次化验日期
*/
@Schema(description = "上次化验日期")
private LocalDateTime lastTest;
/**
* 槽液到期日期
*/
@Schema(description = "槽液到期日期")
private LocalDateTime expiryDate;
/**
* 化验人[用户]id
*/
@Schema(description = "化验人[用户]id")
private BigDecimal testUserId;
/**
* 工艺主管[用户]id
*/
@Schema(description = "工艺主管[用户]id")
private BigDecimal processUserId;
/**
* 测量值
*/
@Schema(description = "测量值")
private BigDecimal testValue;
/**
* 需添加量
*/
@Schema(description = "需添加量")
private BigDecimal needAddValue;
/**
* 实际添加量
*/
@Schema(description = "实际添加量")
private BigDecimal actualAddValue;
/**
* 加药后含量
*/
@Schema(description = "加药后含量")
private BigDecimal afterAddValue;
/**
* [班组]id
*/
@Schema(description = "[班组]id")
private BigDecimal teamId;
/**
* 参数录入时间
*/
@Schema(description = "参数录入时间")
private LocalDateTime entryDate;
/**
* 确认时间
*/
@Schema(description = "确认时间")
private LocalDateTime confirmDate;
/**
* 送出[用户]id
*/
@Schema(description = "送出[用户]id")
private BigDecimal sendUserId;
/**
* 送出时间
*/
@Schema(description = "送出时间")
private LocalDateTime sendDate;
/**
* 接收[用户]id
*/
@Schema(description = "接收[用户]id")
private BigDecimal receiveUserId;
/**
* 接收时间
*/
@Schema(description = "接收时间")
private LocalDateTime receiveDate;
/**
* 处理[用户]id
*/
@Schema(description = "处理[用户]id")
private BigDecimal handleUserId;
/**
* 处理时间
*/
@Schema(description = "处理时间")
private LocalDateTime handleDate;
/**
* 来源类型
*/
@Schema(description = "来源类型")
private Integer fromType;
/**
* [槽液检测任务]编码
*/
@Schema(description = "[槽液检测任务]编码")
private String code;
/**
* 类型
*/
@Schema(description = "类型")
private Long liquidTankTaskType;
/**
* 名称
*/
@Schema(description = "名称")
private String name;
/**
* [槽液]id
*/
@Schema(description = "[槽液]id")
private Long liquidTankId;
/**
* [作业中心]id
*/
@Schema(description = "[作业中心]id")
private Long workCenterId;
/**
* 药品[物料]id
*/
@Schema(description = "药品[物料]id")
private Long drugMaterialId;
/**
* [槽液]编号
*/
@Schema(description = "[槽液]编号")
private String liquidTankCode;
/**
* 待测成分
*/
@Schema(description = "待测成分")
private String testElement;
/**
* 药品名称
*/
@Schema(description = "药品名称")
private String drugName;
/**
* 药品[物料]编码
*/
@Schema(description = "药品[物料]编码")
private String drugMaterialCode;
/**
* 药品物料名称
*/
@Schema(description = "药品物料名称")
private String drugMaterialName;
/**
* 工艺含量
*/
@Schema(description = "工艺含量")
private String processContent;
/**
* 目标值
*/
@Schema(description = "目标值")
private Long targetValue;
/**
* 目标上下限
*/
@Schema(description = "目标上下限")
private String bound;
/**
* 排序
*/
@Schema(description = "排序")
private Long sort;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 添加点
*/
@Schema(description = "添加点")
private BigDecimal fillingLocation;
/**
* 电导率测量值
*/
@Schema(description = "电导率测量值")
private BigDecimal conductivityTestValue;
/**
* 体积
*/
@Schema(description = "体积")
private BigDecimal volume;
/**
* 单位
*/
@Schema(description = "单位")
private BigDecimal unit;
/**
* [计量单位]id
*/
@Schema(description = "[计量单位]id")
private BigDecimal unitId;
/**
* 加药量单位
*/
@Schema(description = "加药量单位")
private String addUnit;
/**
* 加药量[计量单位]id
*/
@Schema(description = "加药量[计量单位]id")
private BigDecimal addUnitId;
/**
* 分析周期
*/
@Schema(description = "分析周期")
private Integer analysisCycle;
/**
* 有效期
*/
@Schema(description = "有效期")
private LocalDateTime validDate;
/**
* 上次化验日期
*/
@Schema(description = "上次化验日期")
private LocalDateTime lastTest;
/**
* 槽液到期日期
*/
@Schema(description = "槽液到期日期")
private LocalDateTime expiryDate;
/**
* 化验人[用户]id
*/
@Schema(description = "化验人[用户]id")
private BigDecimal testUserId;
/**
* 工艺主管[用户]id
*/
@Schema(description = "工艺主管[用户]id")
private BigDecimal processUserId;
/**
* 测量值
*/
@Schema(description = "测量值")
private BigDecimal testValue;
/**
* 需添加量
*/
@Schema(description = "需添加量")
private BigDecimal needAddValue;
/**
* 实际添加量
*/
@Schema(description = "实际添加量")
private BigDecimal actualAddValue;
/**
* 加药后含量
*/
@Schema(description = "加药后含量")
private BigDecimal afterAddValue;
/**
* [班组]id
*/
@Schema(description = "[班组]id")
private Long teamId;
/**
* 参数录入时间
*/
@Schema(description = "参数录入时间")
private LocalDateTime entryDate;
/**
* 确认时间
*/
@Schema(description = "确认时间")
private LocalDateTime confirmDate;
/**
* 送出[用户]id
*/
@Schema(description = "送出[用户]id")
private Long sendUserId;
/**
* 送出时间
*/
@Schema(description = "送出时间")
private LocalDateTime sendDate;
/**
* 接收[用户]id
*/
@Schema(description = "接收[用户]id")
private Long receiveUserId;
/**
* 接收时间
*/
@Schema(description = "接收时间")
private LocalDateTime receiveDate;
/**
* 处理[用户]id
*/
@Schema(description = "处理[用户]id")
private BigDecimal handleUserId;
/**
* 处理时间
*/
@Schema(description = "处理时间")
private LocalDateTime handleDate;
/**
* 来源类型
*/
@Schema(description = "来源类型")
private Long fromType;
}

@ -9,7 +9,6 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
@ -24,9 +23,7 @@ import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.quality.excel.gen.InspectionTaskGenExcel;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import org.springblade.desk.quality.pojo.request.InspectionTaskStart;
import org.springblade.desk.quality.pojo.vo.gen.InspectionTaskGenVO;
import org.springblade.desk.quality.service.InspectionTaskService;
import org.springblade.desk.quality.service.gen.IInspectionTaskGenService;
import org.springblade.desk.quality.wrapper.gen.InspectionTaskGenWrapper;
import org.springframework.web.bind.annotation.*;
@ -41,14 +38,12 @@ import java.util.Map;
* @since 2025-11-14
*/
@RestController
@AllArgsConstructor
@RequestMapping("/inspectionTask")
@Tag(name = "[检验任务]", description = "[检验任务]接口")
public class InspectionTaskController extends BladeController {
@Resource
private IInspectionTaskGenService genService;
@Resource
private InspectionTaskService service;
private final IInspectionTaskGenService inspectionTaskGenService;
/**
* [检验任务] 详情
@ -57,7 +52,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 1)
@Operation(summary = "详情", description = "传入inspectionTask")
public R<InspectionTaskGenVO> detail(InspectionTask inspectionTask) {
InspectionTask detail = genService.getOne(Condition.getQueryWrapper(inspectionTask));
InspectionTask detail = inspectionTaskGenService.getOne(Condition.getQueryWrapper(inspectionTask));
return R.data(InspectionTaskGenWrapper.build().entityVO(detail));
}
@ -68,7 +63,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 2)
@Operation(summary = "分页", description = "传入inspectionTask")
public R<IPage<InspectionTaskGenVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> inspectionTask, Query query) {
IPage<InspectionTask> pages = genService.page(Condition.getPage(query), Condition.getQueryWrapper(inspectionTask, InspectionTask.class));
IPage<InspectionTask> pages = inspectionTaskGenService.page(Condition.getPage(query), Condition.getQueryWrapper(inspectionTask, InspectionTask.class));
return R.data(InspectionTaskGenWrapper.build().pageVO(pages));
}
@ -80,7 +75,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 3)
@Operation(summary = "分页", description = "传入inspectionTask")
public R<IPage<InspectionTaskGenVO>> page(InspectionTaskGenVO inspectionTask, Query query) {
IPage<InspectionTaskGenVO> pages = genService.selectInspectionTaskPage(Condition.getPage(query), inspectionTask);
IPage<InspectionTaskGenVO> pages = inspectionTaskGenService.selectInspectionTaskPage(Condition.getPage(query), inspectionTask);
return R.data(pages);
}
@ -91,7 +86,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 4)
@Operation(summary = "新增", description = "传入inspectionTask")
public R save(@Valid @RequestBody InspectionTask inspectionTask) {
return R.status(genService.save(inspectionTask));
return R.status(inspectionTaskGenService.save(inspectionTask));
}
/**
@ -101,7 +96,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 5)
@Operation(summary = "修改", description = "传入inspectionTask")
public R update(@Valid @RequestBody InspectionTask inspectionTask) {
return R.status(genService.updateById(inspectionTask));
return R.status(inspectionTaskGenService.updateById(inspectionTask));
}
/**
@ -111,7 +106,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 6)
@Operation(summary = "新增或修改", description = "传入inspectionTask")
public R submit(@Valid @RequestBody InspectionTask inspectionTask) {
return R.status(genService.saveOrUpdate(inspectionTask));
return R.status(inspectionTaskGenService.saveOrUpdate(inspectionTask));
}
/**
@ -121,7 +116,7 @@ public class InspectionTaskController extends BladeController {
@ApiOperationSupport(order = 7)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(genService.deleteLogic(Func.toLongList(ids)));
return R.status(inspectionTaskGenService.deleteLogic(Func.toLongList(ids)));
}
/**
@ -137,17 +132,8 @@ public class InspectionTaskController extends BladeController {
// queryWrapper.lambda().eq(InspectionTask::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(InspectionTaskEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<InspectionTaskGenExcel> list = genService.exportInspectionTask(queryWrapper);
List<InspectionTaskGenExcel> list = inspectionTaskGenService.exportInspectionTask(queryWrapper);
ExcelUtil.export(response, "[检验任务]数据" + DateUtil.time(), "[检验任务]数据表", list, InspectionTaskGenExcel.class);
}
/**
* 工序开始[检验任务]生成
*/
@PostMapping("/start")
@ApiOperationSupport(order = 100)
@Operation(summary = "", description = "传入inspectionTask")
public R start(@Valid @RequestBody InspectionTaskStart start) {
return service.start(start);
}
}

@ -35,7 +35,7 @@ import java.util.Map;
* [缺陷] 控制器
*
* @author Tom Shuo
* @since 2025-11-13
* @since 2025-11-14
*/
@RestController
@AllArgsConstructor

@ -19,7 +19,7 @@ import java.math.BigDecimal;
* [缺陷] Excel实体类
*
* @author Tom Shuo
* @since 2025-11-13
* @since 2025-11-14
*/
@Data
@ColumnWidth(25)

@ -0,0 +1,41 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.mapper.gen;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.desk.quality.excel.gen.InspectionTaskGenExcel;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import org.springblade.desk.quality.pojo.vo.gen.InspectionTaskGenVO;
import java.util.List;
/**
* [检验任务] Mapper 接口
*
* @author Tom Shuo
* @since 2025-11-14
*/
public interface InspectionTaskGenMapper extends BaseMapper<InspectionTask> {
/**
* 自定义分页
*
* @param page 分页参数
* @param inspectionTask 查询参数
* @return List<InspectionTaskVO>
*/
List<InspectionTaskGenVO> selectInspectionTaskPage(IPage page, InspectionTaskGenVO inspectionTask);
/**
* 获取导出数据
*
* @param queryWrapper 查询条件
* @return List<InspectionTaskExcel>
*/
List<InspectionTaskGenExcel> exportInspectionTask(@Param("ew") Wrapper<InspectionTask> queryWrapper);
}

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.desk.quality.mapper.gen.InspectionTaskGenMapper">
<!-- 通用查询映射结果 -->
<resultMap id="inspectionTaskResultMap" type="org.springblade.desk.quality.pojo.entity.InspectionTask">
<result column="CODE" property="code"/>
<result column="INSPECTION_TASK_TYPE" property="inspectionTaskType"/>
<result column="NAME" property="name"/>
<result column="WORK_ORDER_ID" property="workOrderId"/>
<result column="PRODUCT_ID" property="productId"/>
<result column="PROCESS_ID" property="processId"/>
<result column="TEST_USER_ID" property="testUserId"/>
<result column="PRODUCT_CODE" property="productCode"/>
<result column="PRODUCT_SN" property="productSn"/>
<result column="BATCH_NUMBER" property="batchNumber"/>
<result column="WORK_ORDER_CODE" property="workOrderCode"/>
<result column="PROCESS_CODE" property="processCode"/>
<result column="SORT" property="sort"/>
<result column="REMARK" property="remark"/>
<result column="PLANNED_START_DATE" property="plannedStartDate"/>
<result column="PLANNED_END_DATE" property="plannedEndDate"/>
<result column="ACTUAL_START_DATE" property="actualStartDate"/>
<result column="ACTUAL_END_DATE" property="actualEndDate"/>
<result column="SIMPLE_COUNT" property="simpleCount"/>
<result column="NG_COUNT" property="ngCount"/>
<result column="RESULT" property="result"/>
</resultMap>
<select id="selectInspectionTaskPage" resultMap="inspectionTaskResultMap">
SELECT * FROM QA_INSPECTION_TASK WHERE is_deleted = 0
</select>
<select id="exportInspectionTask" resultType="org.springblade.desk.quality.excel.gen.InspectionTaskGenExcel">
SELECT * FROM QA_INSPECTION_TASK ${ew.customSqlSegment}
</select>
</mapper>

@ -0,0 +1,41 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.mapper.gen;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.desk.quality.excel.gen.LiquidTankTaskGenExcel;
import org.springblade.desk.quality.pojo.entity.LiquidTankTask;
import org.springblade.desk.quality.pojo.vo.gen.LiquidTankTaskGenVO;
import java.util.List;
/**
* [槽液检测任务] Mapper 接口
*
* @author Tom Shuo
* @since 2025-11-14
*/
public interface LiquidTankTaskGenMapper extends BaseMapper<LiquidTankTask> {
/**
* 自定义分页
*
* @param page 分页参数
* @param liquidTankTask 查询参数
* @return List<LiquidTankTaskVO>
*/
List<LiquidTankTaskGenVO> selectLiquidTankTaskPage(IPage page, LiquidTankTaskGenVO liquidTankTask);
/**
* 获取导出数据
*
* @param queryWrapper 查询条件
* @return List<LiquidTankTaskExcel>
*/
List<LiquidTankTaskGenExcel> exportLiquidTankTask(@Param("ew") Wrapper<LiquidTankTask> queryWrapper);
}

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.desk.quality.mapper.gen.LiquidTankTaskGenMapper">
<!-- 通用查询映射结果 -->
<resultMap id="liquidTankTaskResultMap" type="org.springblade.desk.quality.pojo.entity.LiquidTankTask">
<result column="CODE" property="code"/>
<result column="LIQUID_TANK_TASK_TYPE" property="liquidTankTaskType"/>
<result column="NAME" property="name"/>
<result column="LIQUID_TANK_ID" property="liquidTankId"/>
<result column="WORK_CENTER_ID" property="workCenterId"/>
<result column="DRUG_MATERIAL_ID" property="drugMaterialId"/>
<result column="LIQUID_TANK_CODE" property="liquidTankCode"/>
<result column="TEST_ELEMENT" property="testElement"/>
<result column="DRUG_NAME" property="drugName"/>
<result column="DRUG_MATERIAL_CODE" property="drugMaterialCode"/>
<result column="DRUG_MATERIAL_NAME" property="drugMaterialName"/>
<result column="PROCESS_CONTENT" property="processContent"/>
<result column="TARGET_VALUE" property="targetValue"/>
<result column="BOUND" property="bound"/>
<result column="SORT" property="sort"/>
<result column="REMARK" property="remark"/>
<result column="FILLING_LOCATION" property="fillingLocation"/>
<result column="CONDUCTIVITY_TEST_VALUE" property="conductivityTestValue"/>
<result column="VOLUME" property="volume"/>
<result column="UNIT" property="unit"/>
<result column="UNIT_ID" property="unitId"/>
<result column="ADD_UNIT" property="addUnit"/>
<result column="ADD_UNIT_ID" property="addUnitId"/>
<result column="ANALYSIS_CYCLE" property="analysisCycle"/>
<result column="VALID_DATE" property="validDate"/>
<result column="LAST_TEST" property="lastTest"/>
<result column="EXPIRY_DATE" property="expiryDate"/>
<result column="TEST_USER_ID" property="testUserId"/>
<result column="PROCESS_USER_ID" property="processUserId"/>
<result column="TEST_VALUE" property="testValue"/>
<result column="NEED_ADD_VALUE" property="needAddValue"/>
<result column="ACTUAL_ADD_VALUE" property="actualAddValue"/>
<result column="AFTER_ADD_VALUE" property="afterAddValue"/>
<result column="TEAM_ID" property="teamId"/>
<result column="ENTRY_DATE" property="entryDate"/>
<result column="CONFIRM_DATE" property="confirmDate"/>
<result column="SEND_USER_ID" property="sendUserId"/>
<result column="SEND_DATE" property="sendDate"/>
<result column="RECEIVE_USER_ID" property="receiveUserId"/>
<result column="RECEIVE_DATE" property="receiveDate"/>
<result column="HANDLE_USER_ID" property="handleUserId"/>
<result column="HANDLE_DATE" property="handleDate"/>
<result column="FROM_TYPE" property="fromType"/>
</resultMap>
<select id="selectLiquidTankTaskPage" resultMap="liquidTankTaskResultMap">
SELECT * FROM QA_LIQUID_TANK_TASK WHERE is_deleted = 0
</select>
<select id="exportLiquidTankTask" resultType="org.springblade.desk.quality.excel.gen.LiquidTankTaskGenExcel">
SELECT * FROM QA_LIQUID_TANK_TASK ${ew.customSqlSegment}
</select>
</mapper>

@ -0,0 +1,41 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.mapper.gen;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.desk.quality.excel.gen.NgGenExcel;
import org.springblade.desk.quality.pojo.entity.Ng;
import org.springblade.desk.quality.pojo.vo.gen.NgGenVO;
import java.util.List;
/**
* [缺陷] Mapper 接口
*
* @author Tom Shuo
* @since 2025-11-14
*/
public interface NgGenMapper extends BaseMapper<Ng> {
/**
* 自定义分页
*
* @param page 分页参数
* @param ng 查询参数
* @return List<NgVO>
*/
List<NgGenVO> selectNgPage(IPage page, NgGenVO ng);
/**
* 获取导出数据
*
* @param queryWrapper 查询条件
* @return List<NgExcel>
*/
List<NgGenExcel> exportNg(@Param("ew") Wrapper<Ng> queryWrapper);
}

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.desk.quality.mapper.gen.NgGenMapper">
<!-- 通用查询映射结果 -->
<resultMap id="ngResultMap" type="org.springblade.desk.quality.pojo.entity.Ng">
<result column="CODE" property="code"/>
<result column="NG_TYPE" property="ngType"/>
<result column="NAME" property="name"/>
<result column="PARENT_ID" property="parentId"/>
<result column="SORT" property="sort"/>
<result column="REMARK" property="remark"/>
<result column="DESC" property="desc"/>
<result column="PRODUCT_ID" property="productId"/>
<result column="PRODUCT_CODE" property="productCode"/>
<result column="PROCESS_ID" property="processId"/>
<result column="PROCESS_CODE" property="processCode"/>
</resultMap>
<select id="selectNgPage" resultMap="ngResultMap">
SELECT * FROM QA_NG WHERE is_deleted = 0
</select>
<select id="exportNg" resultType="org.springblade.desk.quality.excel.gen.NgGenExcel">
SELECT * FROM QA_NG ${ew.customSqlSegment}
</select>
</mapper>

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.dto.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import java.io.Serial;
/**
* [检验任务] 数据传输对象实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class InspectionTaskGenDTO extends InspectionTask {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.dto.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.LiquidTankTask;
import java.io.Serial;
/**
* [槽液检测任务] 数据传输对象实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class LiquidTankTaskGenDTO extends LiquidTankTask {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.dto.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.Ng;
import java.io.Serial;
/**
* [缺陷] 数据传输对象实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class NgGenDTO extends Ng {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,137 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import java.io.Serial;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* [检验任务] 实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@TableName("QA_INSPECTION_TASK")
@Schema(description = "InspectionTask Entity对象")
@EqualsAndHashCode(callSuper = true)
public class InspectionTask extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* [检验任务]编码
*/
@Schema(description = "[检验任务]编码")
private String code;
/**
* [检验任务]类型
*/
@Schema(description = "[检验任务]类型")
private Long inspectionTaskType;
/**
* [检验任务]
*/
@Schema(description = "[检验任务]")
private String name;
/**
* [工单]id
*/
@Schema(description = "[工单]id")
private BigDecimal workOrderId;
/**
* [制品]id
*/
@Schema(description = "[制品]id")
private BigDecimal productId;
/**
* [工序]id
*/
@Schema(description = "[工序]id")
private BigDecimal processId;
/**
* 质检员[用户]id
*/
@Schema(description = "质检员[用户]id")
private BigDecimal testUserId;
/**
* [制品]编码
*/
@Schema(description = "[制品]编码")
private Long productCode;
/**
* [制品]序列号
*/
@Schema(description = "[制品]序列号")
private Long productSn;
/**
* 生产批次号
*/
@Schema(description = "生产批次号")
private Long batchNumber;
/**
* [工单]编码
*/
@Schema(description = "[工单]编码")
private String workOrderCode;
/**
* [工序]编码
*/
@Schema(description = "[工序]编码")
private String processCode;
/**
* 排序
*/
@Schema(description = "排序")
private Long sort;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 计划开始时间
*/
@Schema(description = "计划开始时间")
private LocalDateTime plannedStartDate;
/**
* 计划结束时间
*/
@Schema(description = "计划结束时间")
private LocalDateTime plannedEndDate;
/**
* 实际开始时间
*/
@Schema(description = "实际开始时间")
private LocalDateTime actualStartDate;
/**
* 实际结束时间
*/
@Schema(description = "实际结束时间")
private LocalDateTime actualEndDate;
/**
* 检验样本数量
*/
@Schema(description = "检验样本数量")
private BigDecimal simpleCount;
/**
* 缺陷数量
*/
@Schema(description = "缺陷数量")
private BigDecimal ngCount;
/**
* 检验结果
*/
@Schema(description = "检验结果")
private Long result;
}

@ -0,0 +1,247 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import java.io.Serial;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* [槽液检测任务] 实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@TableName("QA_LIQUID_TANK_TASK")
@Schema(description = "LiquidTankTask Entity对象")
@EqualsAndHashCode(callSuper = true)
public class LiquidTankTask extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* [槽液检测任务]编码
*/
@Schema(description = "[槽液检测任务]编码")
private String code;
/**
* 类型
*/
@Schema(description = "类型")
private Long liquidTankTaskType;
/**
* 名称
*/
@Schema(description = "名称")
private String name;
/**
* [槽液]id
*/
@Schema(description = "[槽液]id")
private Long liquidTankId;
/**
* [作业中心]id
*/
@Schema(description = "[作业中心]id")
private Long workCenterId;
/**
* 药品[物料]id
*/
@Schema(description = "药品[物料]id")
private Long drugMaterialId;
/**
* [槽液]编号
*/
@Schema(description = "[槽液]编号")
private String liquidTankCode;
/**
* 待测成分
*/
@Schema(description = "待测成分")
private String testElement;
/**
* 药品名称
*/
@Schema(description = "药品名称")
private String drugName;
/**
* 药品[物料]编码
*/
@Schema(description = "药品[物料]编码")
private String drugMaterialCode;
/**
* 药品物料名称
*/
@Schema(description = "药品物料名称")
private String drugMaterialName;
/**
* 工艺含量
*/
@Schema(description = "工艺含量")
private String processContent;
/**
* 目标值
*/
@Schema(description = "目标值")
private Long targetValue;
/**
* 目标上下限
*/
@Schema(description = "目标上下限")
private String bound;
/**
* 排序
*/
@Schema(description = "排序")
private Long sort;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 添加点
*/
@Schema(description = "添加点")
private BigDecimal fillingLocation;
/**
* 电导率测量值
*/
@Schema(description = "电导率测量值")
private BigDecimal conductivityTestValue;
/**
* 体积
*/
@Schema(description = "体积")
private BigDecimal volume;
/**
* 单位
*/
@Schema(description = "单位")
private BigDecimal unit;
/**
* [计量单位]id
*/
@Schema(description = "[计量单位]id")
private BigDecimal unitId;
/**
* 加药量单位
*/
@Schema(description = "加药量单位")
private String addUnit;
/**
* 加药量[计量单位]id
*/
@Schema(description = "加药量[计量单位]id")
private BigDecimal addUnitId;
/**
* 分析周期
*/
@Schema(description = "分析周期")
private Integer analysisCycle;
/**
* 有效期
*/
@Schema(description = "有效期")
private LocalDateTime validDate;
/**
* 上次化验日期
*/
@Schema(description = "上次化验日期")
private LocalDateTime lastTest;
/**
* 槽液到期日期
*/
@Schema(description = "槽液到期日期")
private LocalDateTime expiryDate;
/**
* 化验人[用户]id
*/
@Schema(description = "化验人[用户]id")
private BigDecimal testUserId;
/**
* 工艺主管[用户]id
*/
@Schema(description = "工艺主管[用户]id")
private BigDecimal processUserId;
/**
* 测量值
*/
@Schema(description = "测量值")
private BigDecimal testValue;
/**
* 需添加量
*/
@Schema(description = "需添加量")
private BigDecimal needAddValue;
/**
* 实际添加量
*/
@Schema(description = "实际添加量")
private BigDecimal actualAddValue;
/**
* 加药后含量
*/
@Schema(description = "加药后含量")
private BigDecimal afterAddValue;
/**
* [班组]id
*/
@Schema(description = "[班组]id")
private Long teamId;
/**
* 参数录入时间
*/
@Schema(description = "参数录入时间")
private LocalDateTime entryDate;
/**
* 确认时间
*/
@Schema(description = "确认时间")
private LocalDateTime confirmDate;
/**
* 送出[用户]id
*/
@Schema(description = "送出[用户]id")
private Long sendUserId;
/**
* 送出时间
*/
@Schema(description = "送出时间")
private LocalDateTime sendDate;
/**
* 接收[用户]id
*/
@Schema(description = "接收[用户]id")
private Long receiveUserId;
/**
* 接收时间
*/
@Schema(description = "接收时间")
private LocalDateTime receiveDate;
/**
* 处理[用户]id
*/
@Schema(description = "处理[用户]id")
private BigDecimal handleUserId;
/**
* 处理时间
*/
@Schema(description = "处理时间")
private LocalDateTime handleDate;
/**
* 来源类型
*/
@Schema(description = "来源类型")
private Long fromType;
}

@ -0,0 +1,86 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import java.io.Serial;
import java.math.BigDecimal;
/**
* [缺陷] 实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@TableName("QA_NG")
@Schema(description = "Ng Entity对象")
@EqualsAndHashCode(callSuper = true)
public class Ng extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 编码
*/
@Schema(description = "编码")
private String code;
/**
* 类型1:故障特征 2:故障类别 3:问题大类 4:问题小类
*/
@Schema(description = "类型1:故障特征 2:故障类别 3:问题大类 4:问题小类")
private Long ngType;
/**
* 名称
*/
@Schema(description = "名称")
private String name;
/**
* 父级[不良原因]id
*/
@Schema(description = "父级[不良原因]id")
private BigDecimal parentId;
/**
* 排序
*/
@Schema(description = "排序")
private Long sort;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 缺陷描述
*/
@Schema(description = "缺陷描述")
private String desc;
/**
* [制品]id
*/
@Schema(description = "[制品]id")
private BigDecimal productId;
/**
* [制品]编码
*/
@Schema(description = "[制品]编码")
private String productCode;
/**
* [工序]id
*/
@Schema(description = "[工序]id")
private BigDecimal processId;
/**
* [工序]编码
*/
@Schema(description = "[工序]编码")
private String processCode;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.vo.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import java.io.Serial;
/**
* [检验任务] 视图实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class InspectionTaskGenVO extends InspectionTask {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.vo.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.LiquidTankTask;
import java.io.Serial;
/**
* [槽液检测任务] 视图实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class LiquidTankTaskGenVO extends LiquidTankTask {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.pojo.vo.gen;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.Ng;
import java.io.Serial;
/**
* [缺陷] 视图实体类
*
* @author Tom Shuo
* @since 2025-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class NgGenVO extends Ng {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,58 @@
package org.springblade.desk.quality.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import jakarta.annotation.Resource;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.flowable.task.service.delegate.TaskListener;
import org.springblade.desk.quality.constant.ColBase;
import org.springblade.desk.quality.constant.ColValue;
import org.springblade.desk.quality.mapper.gen.LiquidTankGenMapper;
import org.springblade.desk.quality.mapper.gen.LiquidTankTaskGenMapper;
import org.springblade.desk.quality.pojo.entity.LiquidTank;
import org.springblade.desk.quality.pojo.entity.LiquidTankTask;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Service
@Slf4j
@Data
public class LiquidTankTaskService {
@Resource
private LiquidTankGenMapper liquidTankGenMapper;
@Resource
private LiquidTankTaskGenMapper genMapper;
public List<LiquidTankTask> generate() {
// 如果是节假日,则跳过生成。
if (false) {
log.info("节假日,则跳过生成。");
return null;
}
// 查询所有启用的槽液。
List<LiquidTank> tankList = liquidTankGenMapper.selectList(
new QueryWrapper<LiquidTank>()
.eq(ColBase.STATUS, ColValue.STATE_ENABLE)
);
// 遍历插入槽液任务。
List<LiquidTankTask> rList = new ArrayList<>();
for (LiquidTank tank : tankList) {
LiquidTankTask task = new LiquidTankTask();
task.setLiquidTankId(tank.getId());
task.setName("name");
task.setCode("code");
task.setSort(0L);
task.setCreateTime(new Date());
task.setRemark("remark");
task.setTeamId(0L);
task.setReceiveUserId(0L);
genMapper.insert(task);
rList.add(task);
}
return rList;
}
}

@ -0,0 +1,39 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.service.gen;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.quality.excel.gen.InspectionTaskGenExcel;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import org.springblade.desk.quality.pojo.vo.gen.InspectionTaskGenVO;
import java.util.List;
/**
* [检验任务] 服务类
*
* @author Tom Shuo
* @since 2025-11-14
*/
public interface IInspectionTaskGenService extends BaseService<InspectionTask> {
/**
* 自定义分页
*
* @param page 分页参数
* @param inspectionTask 查询参数
* @return IPage<InspectionTaskVO>
*/
IPage<InspectionTaskGenVO> selectInspectionTaskPage(IPage<InspectionTaskGenVO> page, InspectionTaskGenVO inspectionTask);
/**
* 导出数据
*
* @param queryWrapper 查询条件
* @return List<InspectionTaskExcel>
*/
List<InspectionTaskGenExcel> exportInspectionTask(Wrapper<InspectionTask> queryWrapper);
}

@ -16,7 +16,7 @@ import java.util.List;
* [缺陷] 服务类
*
* @author Tom Shuo
* @since 2025-11-13
* @since 2025-11-14
*/
public interface INgGenService extends BaseService<Ng> {
/**

@ -19,7 +19,7 @@ import java.util.List;
* [缺陷] 服务实现类
*
* @author Tom Shuo
* @since 2025-11-13
* @since 2025-11-14
*/
@Service
public class NgGenServiceImpl extends BaseServiceImpl<NgGenMapper, Ng> implements INgGenService {

@ -5,18 +5,8 @@ package org.springblade.desk.quality.service.scheduled;
//import tech.powerjob.worker.core.processor.TaskContext;
//import tech.powerjob.worker.log.OmsLogger;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springblade.desk.quality.constant.ColBase;
import org.springblade.desk.quality.constant.ColValue;
import org.springblade.desk.quality.constant.LiquidTankTaskConst;
import org.springblade.desk.quality.mapper.gen.LiquidTankGenMapper;
import org.springblade.desk.quality.mapper.gen.LiquidTankTaskGenMapper;
import org.springblade.desk.quality.pojo.entity.LiquidTank;
import org.springblade.desk.quality.pojo.entity.LiquidTankTask;
import org.springframework.stereotype.Service;
import java.util.Date;

@ -14,7 +14,7 @@ import java.util.Objects;
* [缺陷] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2025-11-13
* @since 2025-11-14
*/
public class NgGenWrapper extends BaseEntityWrapper<Ng, NgGenVO> {

Loading…
Cancel
Save