补充提交。

develop-QA
Tom Li 3 months ago
parent 79d9a184c8
commit db88b12159
  1. 10
      blade-ops/blade-job/src/main/java/org/springblade/job/processor/quality/LquidTankTaskCheckOutProcessor.java
  2. 26
      blade-ops/blade-job/src/main/java/org/springblade/job/processor/quality/LquidTankTaskCheckRemindProcessor.java
  3. 10
      blade-ops/blade-job/src/main/java/org/springblade/job/processor/quality/LquidTankTaskGenAutoProcessor.java
  4. 13
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/constant/WorkTankConst.java
  5. 2
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/entity/CoatingThickness.java
  6. 2
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/entity/MaterialQuota.java
  7. 4
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/vo/WorkTankVO.java
  8. 2
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/LiquidTank.java
  9. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/FormulaController.java
  10. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/MaterialQuotaController.java
  11. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/PlatingSmallController.java
  12. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/ProdMarkController.java
  13. 10
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankReportController.java
  14. 11
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/LiquidTankWaveController.java
  15. 49
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/LiquidTankTaskServiceImpl.java

@ -10,20 +10,18 @@ import tech.powerjob.worker.core.processor.TaskContext;
import tech.powerjob.worker.core.processor.sdk.BasicProcessor;
import tech.powerjob.worker.log.OmsLogger;
import java.util.List;
@Component
@Data
@Slf4j
public class LquidTankTaskTimeoutProcessor implements BasicProcessor {
public class LquidTankTaskCheckOutProcessor implements BasicProcessor {
@Resource
private ILquidTankTaskClient lquidTankTaskClient;
private ILquidTankTaskClient client;
@Override
public ProcessResult process(TaskContext context) throws Exception {
OmsLogger log = context.getOmsLogger();
// List<LiquidTankTask> list = lquidTankTaskClient.timeout();
// OmsLogger log = context.getOmsLogger();
client.checkOut();
return new ProcessResult(true);
}
}

@ -0,0 +1,26 @@
package org.springblade.job.processor.quality;
import jakarta.annotation.Resource;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springblade.desk.quality.feign.ILquidTankTaskClient;
import org.springframework.stereotype.Component;
import tech.powerjob.worker.core.processor.ProcessResult;
import tech.powerjob.worker.core.processor.TaskContext;
import tech.powerjob.worker.core.processor.sdk.BasicProcessor;
@Component
@Data
@Slf4j
public class LquidTankTaskCheckRemindProcessor implements BasicProcessor {
@Resource
private ILquidTankTaskClient client;
@Override
public ProcessResult process(TaskContext context) throws Exception {
// OmsLogger log = context.getOmsLogger();
client.checkRemind();
return new ProcessResult(true);
}
}

@ -9,19 +9,17 @@ import tech.powerjob.worker.core.processor.TaskContext;
import tech.powerjob.worker.core.processor.sdk.BasicProcessor;
import tech.powerjob.worker.log.OmsLogger;
import java.util.List;
@Component
@Slf4j
public class LquidTankTaskGenerateProcessor implements BasicProcessor {
public class LquidTankTaskGenAutoProcessor implements BasicProcessor {
@Resource
private ILquidTankTaskClient lquidTankTaskClient;
private ILquidTankTaskClient client;
@Override
public ProcessResult process(TaskContext context) throws Exception {
OmsLogger log = context.getOmsLogger();
// List<LiquidTankTask> list = lquidTankTaskClient.generate();
// OmsLogger log = context.getOmsLogger();
client.generateAuto();
return new ProcessResult(true);
}
}

@ -0,0 +1,13 @@
package org.springblade.desk.basic.constant;
public interface WorkTankConst {
/**
* 正常
*/
Integer S_OK = 1;
/**
* 停用
*/
Integer S_STOP = 2;
}

@ -74,7 +74,7 @@ public class CoatingThickness extends BaseEntity {
* 是否以21E8-210开头
*/
@Schema(description = "是否以21E8-210开头")
private Short startF21e8;
private Integer startF21e8;
/**
* 厚度
*/

@ -67,7 +67,7 @@ public class MaterialQuota extends BaseEntity {
* 类型-[1]:金押定额;[2]:银板定额;
*/
@Schema(description = "类型-[1]:金押定额;[2]:银板定额;")
private Long quotaType;
private Integer quotaType;
/**
* 名称
*/

@ -3,6 +3,7 @@
*/
package org.springblade.desk.basic.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.entity.WorkTank;
@ -21,4 +22,7 @@ public class WorkTankVO extends WorkTank {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
}

@ -457,7 +457,7 @@ public class LiquidTank extends BaseEntity {
* 生成周期类型:生成周期类型:[1]:每周;[2]:每月;[3]:每年;[4]:自定义CRON
*/
@Schema(description = "生成周期类型:生成周期类型:[1]:每周;[2]:每月;[3]:每年;[4]:自定义CRON")
private Long jobType;
private Integer jobType;
/**
* 定时WEEK值
*/

@ -28,6 +28,7 @@ import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.BAModuleConst;
import org.springblade.desk.basic.excel.FormulaExcel;
import org.springblade.desk.basic.pojo.entity.Formula;
import org.springblade.desk.basic.pojo.entity.MaterialQuota;
import org.springblade.desk.basic.pojo.vo.FormulaVO;
import org.springblade.desk.basic.service.IFormulaService;
import org.springblade.desk.basic.util.ExcelExtUtil;
@ -78,6 +79,8 @@ public class FormulaController extends BladeController {
public R<IPage<FormulaVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> formula,
Query query) {
QueryWrapper<Formula> qw = Condition.getQueryWrapper(formula, Formula.class);
qw.eq(Formula.COL_FORMULA_TYPE, Func.toInt(formula.get("formulaType")));
qw.like(formula.containsKey("name"), Formula.COL_NAME, Func.toStr(formula.get("name")));
IPage<Formula> pages = service.page(Condition.getPage(query), qw);
IPage<FormulaVO> pagesVO = FormulaWrapper.build().pageVO(pages);
return R.data(pagesVO);

@ -83,6 +83,7 @@ public class MaterialQuotaController extends BladeController {
public R<IPage<MaterialQuotaVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> materialQuota,
Query query) {
QueryWrapper<MaterialQuota> qw = Condition.getQueryWrapper(materialQuota, MaterialQuota.class);
qw.eq(materialQuota.containsKey("quotaType"), MaterialQuota.COL_QUOTA_TYPE, Func.toInt(materialQuota.get("quotaType")));
IPage<MaterialQuota> pages = service.page(Condition.getPage(query), qw);
IPage<MaterialQuotaVO> pagesVO = MaterialQuotaWrapper.build().pageVO(pages);
pagesVO.getRecords()

@ -82,7 +82,7 @@ public class PlatingSmallController extends BladeController {
Query query) {
QueryWrapper<PlatingSmall> qw = Condition.getQueryWrapper(platingSmall, PlatingSmall.class);
// 名称
qw.like(PlatingSmall.COL_BPS_NAME, Func.toStr(platingSmall.get("bpsName")));
qw.like(platingSmall.containsKey("bpsName"), PlatingSmall.COL_BPS_NAME, Func.toStr(platingSmall.get("bpsName")));
IPage<PlatingSmall> pages = service.page(Condition.getPage(query), qw);
IPage<PlatingSmallVO> pagesVO = PlatingSmallWrapper.build().pageVO(pages);
pagesVO.getRecords()

@ -26,6 +26,7 @@ import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.BAModuleConst;
import org.springblade.desk.basic.excel.ProdMarkExcel;
import org.springblade.desk.basic.pojo.entity.PlatingSmall;
import org.springblade.desk.basic.pojo.entity.ProdMark;
import org.springblade.desk.basic.pojo.vo.ProdMarkVO;
import org.springblade.desk.basic.service.IProdMarkService;
@ -81,6 +82,8 @@ public class ProdMarkController extends BladeController {
public R<IPage<ProdMarkVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> prodMark,
Query query) {
QueryWrapper<ProdMark> qw = Condition.getQueryWrapper(prodMark, ProdMark.class);
// 编码
qw.like(prodMark.containsKey("code"), ProdMark.COL_CODE, Func.toStr(prodMark.get("code")));
IPage<ProdMark> pages = service.page(Condition.getPage(query), qw);
IPage<ProdMarkVO> pagesVO = ProdMarkWrapper.build().pageVO(pages);
pagesVO.getRecords()

@ -24,7 +24,10 @@ import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.BaseCol;
import org.springblade.desk.basic.constant.BaseRequest;
import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.basic.util.RequestUtil;
import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.excel.LiquidTankReportExcel;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
@ -38,6 +41,7 @@ import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -85,6 +89,12 @@ public class LiquidTankReportController extends BladeController {
public R<IPage<LiquidTankReportVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankReport,
Query query) {
QueryWrapper<LiquidTankReport> qw = Condition.getQueryWrapper(liquidTankReport, LiquidTankReport.class);
qw.eq(liquidTankReport.containsKey("name"), LiquidTankReport.COL_NAME, liquidTankReport.get("name"));
if (liquidTankReport.containsKey(BaseRequest.CREATE_TIME_START) && liquidTankReport.containsKey(BaseRequest.CREATE_TIME_END)) {
Date crStart = RequestUtil.buildDateBeginOfDay(liquidTankReport, BaseRequest.CREATE_TIME_START);
Date crEnd = RequestUtil.buildDateEndOfDay(liquidTankReport, BaseRequest.CREATE_TIME_END);
qw.between(BaseCol.CREATE_TIME, crStart, crEnd);
}
IPage<LiquidTankReport> pages = service.page(Condition.getPage(query), qw);
IPage<LiquidTankReportVO> pagesVO = LiquidTankReportWrapper.build().pageVO(pages);
return R.data(pagesVO);

@ -24,9 +24,13 @@ import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.BaseCol;
import org.springblade.desk.basic.constant.BaseRequest;
import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.basic.util.RequestUtil;
import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.excel.LiquidTankWaveExcel;
import org.springblade.desk.quality.pojo.entity.LiquidTankReport;
import org.springblade.desk.quality.pojo.entity.LiquidTankWave;
import org.springblade.desk.quality.pojo.vo.LiquidTankWaveVO;
import org.springblade.desk.quality.service.ILiquidTankWaveService;
@ -35,6 +39,7 @@ import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -78,6 +83,12 @@ public class LiquidTankWaveController extends BladeController {
public R<IPage<LiquidTankWaveVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> liquidTankWave,
Query query) {
QueryWrapper<LiquidTankWave> qw = Condition.getQueryWrapper(liquidTankWave, LiquidTankWave.class);
qw.eq(liquidTankWave.containsKey("name"), LiquidTankReport.COL_NAME, liquidTankWave.get("name"));
if (liquidTankWave.containsKey(BaseRequest.CREATE_TIME_START) && liquidTankWave.containsKey(BaseRequest.CREATE_TIME_END)) {
Date crStart = RequestUtil.buildDateBeginOfDay(liquidTankWave, BaseRequest.CREATE_TIME_START);
Date crEnd = RequestUtil.buildDateEndOfDay(liquidTankWave, BaseRequest.CREATE_TIME_END);
qw.between(BaseCol.CREATE_TIME, crStart, crEnd);
}
IPage<LiquidTankWave> pages = service.page(Condition.getPage(query), qw);
IPage<LiquidTankWaveVO> pagesVO = LiquidTankWaveWrapper.build().pageVO(pages);
return R.data(pagesVO);

@ -13,11 +13,14 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.WorkTankConst;
import org.springblade.desk.basic.pojo.entity.WorkTank;
import org.springblade.desk.basic.service.IFormulaService;
import org.springblade.desk.basic.service.ITeamSetService;
import org.springblade.desk.basic.service.IWorkCenterService;
@ -302,20 +305,25 @@ public class LiquidTankTaskServiceImpl extends BaseServiceImpl<LiquidTankTaskMap
* @return 所有生成的任务
*/
public void generateAuto() {
log.info("========generate========start");
log.info("####定时生成任务####");
// 如果是节假日,则跳过生成。 todo:
if (false) {
log.info("节假日,则跳过生成。");
log.info("节假日,则跳过生成。"); // 目前没有日历功能
return;
}
// 查询所有启用的槽液。
List<LiquidTank> tankList = liquidTankService.list(
new QueryWrapper<LiquidTank>()
.eq(BaseCol.STATUS, BaseValue.STATE_ENABLE)
);
// 查询所有的槽液。
List<LiquidTank> ltList = liquidTankService.list();
// 遍历插入槽液任务。
List<LiquidTankTask> rList = new ArrayList<>();
for (LiquidTank lt : tankList) {
for (LiquidTank lt : ltList) {
// 如果所在作业槽关闭。则跳过。
WorkTank wt = workTankService.getById(lt.getWorkTankId());
if (wt == null || !wt.getStatus().equals(WorkTankConst.S_OK)) {
continue;
}
// 检查生成是否完备,否则跳过生成
if (!checkCycleConfig(lt)) {
continue;
}
// 如果有未处理任务,则跳过不生成新任务。
QueryWrapper<LiquidTankTask> qw = new QueryWrapper<LiquidTankTask>()
.eq(LiquidTankTask.COL_LIQUID_TANK_ID, lt.getId())
@ -327,9 +335,28 @@ public class LiquidTankTaskServiceImpl extends BaseServiceImpl<LiquidTankTaskMap
}
LiquidTankTask task = buildLiquidTankTask(lt, LiquidTankTaskConst.FROM_TYPE_PERIODIC, null);
save(task);
rList.add(task);
}
log.info("========generate========end");
log.info("####定时生成任务####");
}
public boolean checkCycleConfig(LiquidTank lt) {
if (lt == null) {
return false;
}
JobExt je = new JobExt();
je.setJobType(lt.getJobType());
je.setJobTypeWeekValue(lt.getJobTypeWeekValue());
je.setJobTypeMonthValue(lt.getJobTypeMonthValue());
je.setJobTypeYearValue(lt.getJobTypeYearValue());
String checkFailMsg = JobExtUtil.check(je);
if (StringUtils.isNotBlank(checkFailMsg)) {
log.warn("不生成 lt id = {}. checkStr = {}", lt.getId(), checkFailMsg);
return false;
}
if (lt.getAnalysisCycle() < 0) {
return false;
}
return true;
}
@Override

Loading…
Cancel
Save