feat(EngineOperationController):新增规则版本测试成功后修改版本测试状态

dev
gtl 2024-05-12 16:50:29 +08:00
parent 7496035269
commit dc7bb6a28f
6 changed files with 59 additions and 6 deletions

View File

@ -14,6 +14,7 @@ import com.ruoyi.ruleEngine.client.model.RecordModel;
import com.ruoyi.ruleEngine.client.model.process.DataModelProcessModel; import com.ruoyi.ruleEngine.client.model.process.DataModelProcessModel;
import com.ruoyi.ruleEngine.client.model.process.DataSetProcessModel; import com.ruoyi.ruleEngine.client.model.process.DataSetProcessModel;
import com.ruoyi.ruleEngine.client.model.process.RecordProcessModel; import com.ruoyi.ruleEngine.client.model.process.RecordProcessModel;
import com.ruoyi.ruleEngine.remote.RemoteRuleEngineService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -35,6 +36,9 @@ public class EngineOperationServiceImpl implements EngineOperationService {
@Autowired @Autowired
private RuleEngineVersionFactory ruleEngineVersionFactory; private RuleEngineVersionFactory ruleEngineVersionFactory;
@Autowired
private RemoteRuleEngineService remoteRuleEngineService;
@Override @Override
public Object testVersion(TestDataReq testDataReq) { public Object testVersion(TestDataReq testDataReq) {
// 根据作用域编号放入对应的上下文中 // 根据作用域编号放入对应的上下文中
@ -74,9 +78,13 @@ public class EngineOperationServiceImpl implements EngineOperationService {
Method mainMethod = clazz.getDeclaredMethod("execution"); Method mainMethod = clazz.getDeclaredMethod("execution");
mainMethod.invoke(clazz.newInstance()); mainMethod.invoke(clazz.newInstance());
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); log.info("测试失败,{}",e.getMessage());
//修改测试状态
remoteRuleEngineService.edit(testDataReq.getVersionId(),"0");
throw new ServiceException("测试失败,"+e.getMessage()); throw new ServiceException("测试失败,"+e.getMessage());
} }
//修改测试状态
remoteRuleEngineService.edit(testDataReq.getVersionId(),"1");
// 处理后的测试数据 // 处理后的测试数据
return switch (testDataReq.getScope()) { return switch (testDataReq.getScope()) {
case 2 -> DataSetContextHolder.get().getDataSetModel(); case 2 -> DataSetContextHolder.get().getDataSetModel();

View File

@ -7,8 +7,9 @@ import com.ruoyi.ruleEngine.domain.req.EngineVersionQueryReq;
import com.ruoyi.ruleEngine.remote.factory.RemoteRuleEngineFactory; import com.ruoyi.ruleEngine.remote.factory.RemoteRuleEngineFactory;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
/** /**
@ -29,4 +30,10 @@ public interface RemoteRuleEngineService {
*/ */
@GetMapping("/list") @GetMapping("/list")
public Result<List<EngineVersion>> list(@RequestParam("engineConfigQueryReq") EngineVersionQueryReq engineConfigQueryReq); public Result<List<EngineVersion>> list(@RequestParam("engineConfigQueryReq") EngineVersionQueryReq engineConfigQueryReq);
/**
*
*/
@PutMapping("/{id}/{testStatus}")
public Result<String> edit(@PathVariable("id") Long id, @PathVariable("testStatus") String testStatus);
} }

View File

@ -21,6 +21,11 @@ public class RemoteRuleEngineFactory implements FallbackFactory<RemoteRuleEngine
public Result<List<EngineVersion>> list(EngineVersionQueryReq engineConfigQueryReq) { public Result<List<EngineVersion>> list(EngineVersionQueryReq engineConfigQueryReq) {
return Result.error(cause.getMessage()); return Result.error(cause.getMessage());
} }
@Override
public Result<String> edit(Long id, String testStatus) {
return Result.error(cause.getMessage());
}
}; };
} }
} }

View File

@ -58,7 +58,7 @@ public class EngineVersionController extends BaseController {
* *
*/ */
@RequiresPermissions("ruleEngine:version:add") @RequiresPermissions("ruleEngine:version:add")
@Log(title = "引擎规则配置", businessType = BusinessType.INSERT) @Log(title = "引擎规则版本", businessType = BusinessType.INSERT)
@PostMapping @PostMapping
@ApiOperation("新增引擎规则版本") @ApiOperation("新增引擎规则版本")
public Result<String> add(@RequestBody EngineVersionSaveReq engineConfigSaveReq) { public Result<String> add(@RequestBody EngineVersionSaveReq engineConfigSaveReq) {
@ -69,18 +69,29 @@ public class EngineVersionController extends BaseController {
* *
*/ */
@RequiresPermissions("ruleEngine:version:edit") @RequiresPermissions("ruleEngine:version:edit")
@Log(title = "引擎规则配置", businessType = BusinessType.UPDATE) @Log(title = "引擎规则版本", businessType = BusinessType.UPDATE)
@PutMapping("/{id}") @PutMapping("/edit/{id}")
@ApiOperation("修改引擎规则版本") @ApiOperation("修改引擎规则版本")
public Result<String> edit(@PathVariable Long id, @RequestBody EngineVersionEditReq engineConfigEditReq) { public Result<String> edit(@PathVariable Long id, @RequestBody EngineVersionEditReq engineConfigEditReq) {
return toAjax(engineVersionService.updateById(EngineVersion.editBuild(id,engineConfigEditReq, SecurityUtils::getUsername))); return toAjax(engineVersionService.updateById(EngineVersion.editBuild(id,engineConfigEditReq, SecurityUtils::getUsername)));
} }
/**
*
*/
@RequiresPermissions("ruleEngine:version:edit")
@Log(title = "引擎规则版本", businessType = BusinessType.UPDATE)
@PutMapping("/{id}/{testStatus}")
@ApiOperation("修改引擎规则版本的测试状态")
public Result<String> edit(@PathVariable Long id, @PathVariable String testStatus) {
return toAjax(engineVersionService.update(id,testStatus));
}
/** /**
* *
*/ */
@RequiresPermissions("ruleEngine:version:remove") @RequiresPermissions("ruleEngine:version:remove")
@Log(title = "引擎规则配置", businessType = BusinessType.DELETE) @Log(title = "引擎规则版本", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
@ApiOperation("删除引擎规则版本") @ApiOperation("删除引擎规则版本")
@ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4")

View File

@ -28,4 +28,12 @@ public interface EngineVersionService extends IService<EngineVersion> {
* @return * @return
*/ */
VersionClassCreateResp createVersionClass(VersionClassCreateReq req); VersionClassCreateResp createVersionClass(VersionClassCreateReq req);
/**
*
* @param id
* @param testStatus
* @return
*/
boolean update(Long id, String testStatus);
} }

View File

@ -1,6 +1,7 @@
package com.ruoyi.ruleEngine.service.impl; package com.ruoyi.ruleEngine.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.utils.ObjUtils; import com.ruoyi.common.core.utils.ObjUtils;
import com.ruoyi.ruleEngine.constant.EngineVersionConstants; import com.ruoyi.ruleEngine.constant.EngineVersionConstants;
@ -77,5 +78,18 @@ public class EngineVersionServiceImpl extends ServiceImpl<EngineVersionMapper, E
.build(); .build();
} }
/**
*
* @param id
* @param testStatus
* @return
*/
@Override
public boolean update(Long id, String testStatus) {
return this.update(new LambdaUpdateWrapper<EngineVersion>()
.eq(EngineVersion::getId,id)
.set(EngineVersion::getTestStatus,testStatus));
}
} }