添加设置默认机台模板接口

This commit is contained in:
yangsb
2024-04-11 10:22:44 +08:00
parent 461f9aeb6d
commit 2bf29a9356
4 changed files with 34 additions and 0 deletions
@@ -184,6 +184,7 @@ public interface ErrorCodeConstants {
ErrorCode MACHINE_TEMPLATE_NOT_EXISTS = new ErrorCode(1_002_029_001, "机台模板不存在");
ErrorCode DEFAULT_TEMPLATE_COUNT = new ErrorCode(1_002_029_002, "默认模板数量异常");
ErrorCode DEFAULT_TEMPLATE_NOT_EXISTS = new ErrorCode(1_002_029_003, "该类型机台默认模板不存在");
ErrorCode DEFAULT_TEMPLATE_NOT_DELETED = new ErrorCode(1_002_029_003, "不能删除默认模板");
// ========== 标签模板 1-002-300-000 ==========
ErrorCode LABEL_TEMPLATE_NOT_EXISTS = new ErrorCode(1_002_300_000, "标签模板不存在");
@@ -34,6 +34,13 @@ public class MachineTemplateController {
@Resource
private MachineTemplateService machineTemplateService;
@GetMapping("/setDefaultTemplate")
@Operation(summary = "设置默认机台模板")
@PreAuthorize("@ss.hasPermission('machine-template::create')")
public CommonResult<Boolean> setDefaultTemplate(@RequestParam Long id) {
return success(machineTemplateService.setDefaultTemplate(id));
}
@GetMapping("getMachineTemplateTree")
@Operation(summary = "获得机台模板树")
@PreAuthorize("@ss.hasPermission('machine-template::query')")
@@ -52,4 +52,6 @@ public interface MachineTemplateService {
PageResult<OrganTemplateResp> organTemplatePage(OrganTemplatePage page);
OrganTemplateResp organTemplateByOrganId(Long organId);
Boolean setDefaultTemplate(Long id);
}
@@ -257,6 +257,27 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
return machineTemplateMapper.selectOrganTemplate(organId);
}
@Override
@Transactional
public Boolean setDefaultTemplate(Long id) {
MachineTemplateDO templateDO = machineTemplateMapper.selectById(id);
if (Objects.isNull(templateDO)) {
throw exception(MACHINE_TEMPLATE_NOT_EXISTS);
}
List<MachineTemplateDO> machineTemplateDOS = machineTemplateMapper.selectList(MachineTemplateDO::getMachineType, templateDO.getMachineType(), MachineTemplateDO::getIsDefault, Boolean.TRUE);
if(CollectionUtil.isEmpty(machineTemplateDOS) || machineTemplateDOS.size()>1) {
throw exception(DEFAULT_TEMPLATE_COUNT);
}
MachineTemplateDO machineTemplateDO = new MachineTemplateDO();
machineTemplateDO.setId(machineTemplateDOS.get(0).getId());
machineTemplateDO.setIsDefault(Boolean.FALSE);
machineTemplateMapper.updateById(machineTemplateDO);
templateDO.setIsDefault(Boolean.TRUE);
machineTemplateMapper.updateById(templateDO);
return Boolean.TRUE;
}
@Override
public Boolean deleteCuttingTemplate(Long id) {
@@ -264,6 +285,9 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
if (Objects.isNull(templateDO)) {
throw exception(MACHINE_TEMPLATE_NOT_EXISTS);
}
if(templateDO.getIsDefault()) {
throw exception(DEFAULT_TEMPLATE_NOT_DELETED);
}
machineTemplateMapper.deleteById(id);
return Boolean.TRUE;
}