package com.qianwen.smartman.modules.system.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import java.lang.invoke.SerializedLambda;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
import com.qianwen.smartman.common.cache.RegionCache;
|
import com.qianwen.smartman.common.constant.ExtCacheConstant;
|
import com.qianwen.smartman.common.utils.Lambda;
|
import com.qianwen.core.cache.utils.CacheUtil;
|
import com.qianwen.core.tool.utils.BeanUtil;
|
import com.qianwen.smartman.modules.system.dto.MetaObjectTypeDTO;
|
import com.qianwen.smartman.modules.system.entity.BasCodeRule;
|
import com.qianwen.smartman.modules.system.entity.MetaObjectType;
|
import com.qianwen.smartman.modules.system.entity.TableColumn;
|
import com.qianwen.smartman.modules.system.entity.TableDetail;
|
import com.qianwen.smartman.modules.system.mapper.MetaObjectTypeMapper;
|
import com.qianwen.smartman.modules.system.service.IBasCoderuleService;
|
import com.qianwen.smartman.modules.system.service.IMetaObjectTypeFieldService;
|
import com.qianwen.smartman.modules.system.service.IMetaObjectTypeService;
|
import com.qianwen.smartman.modules.system.vo.MetaObjectTypeVO;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.context.annotation.Lazy;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
@Service
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/service/impl/MetaObjectTypeServiceImpl.class */
|
public class MetaObjectTypeServiceImpl extends ServiceImpl<MetaObjectTypeMapper, MetaObjectType> implements IMetaObjectTypeService {
|
@Value("${datasource.database}")
|
private String database;
|
@Autowired
|
private IMetaObjectTypeFieldService fieldService;
|
@Autowired
|
@Lazy
|
private IBasCoderuleService basCoderuleService;
|
|
private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) {
|
String implMethodName = lambda.getImplMethodName();
|
boolean z = true;
|
switch (implMethodName.hashCode()) {
|
case -2126571984:
|
if (implMethodName.equals("getObjectId")) {
|
z = true;
|
break;
|
}
|
break;
|
case -2125035352:
|
if (implMethodName.equals("getRuleField")) {
|
z = true;
|
break;
|
}
|
break;
|
case -1249363733:
|
if (implMethodName.equals("getFId")) {
|
z = false;
|
break;
|
}
|
break;
|
case -464233508:
|
if (implMethodName.equals("getBillFormId")) {
|
z = true;
|
break;
|
}
|
break;
|
case 98245393:
|
if (implMethodName.equals("getId")) {
|
z = true;
|
break;
|
}
|
break;
|
case 1648374869:
|
if (implMethodName.equals("getRuleDictCode")) {
|
z = true;
|
break;
|
}
|
break;
|
}
|
switch (z) {
|
case false:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/MetaObjectType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getFId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/MetaObjectType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getRuleDictCode();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/BasCodeRule") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getBillFormId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/mp/base/BaseEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/MetaObjectType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getRuleField();
|
};
|
}
|
break;
|
case RegionCache.VILLAGE_LEVEL /* 5 */:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/MetaObjectTypeField") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getObjectId();
|
};
|
}
|
break;
|
}
|
throw new IllegalArgumentException("Invalid lambda deserialization");
|
}
|
|
@Override // org.springblade.modules.system.service.IMetaObjectTypeService
|
public IPage<MetaObjectTypeVO> selectMetaObjectTypePage(IPage<MetaObjectTypeVO> page, MetaObjectTypeVO metaObjectType) {
|
return page.setRecords(((MetaObjectTypeMapper) this.baseMapper).selectMetaObjectTypePage(page, metaObjectType));
|
}
|
|
@Override // org.springblade.modules.system.service.IMetaObjectTypeService
|
@Transactional(rollbackFor = {Exception.class})
|
public MetaObjectType submitMetaObjectType(MetaObjectTypeDTO metaObjectTypeDTO) {
|
MetaObjectType metaObjectType = (MetaObjectType) getById(metaObjectTypeDTO.getObjectId());
|
if (metaObjectType == null) {
|
metaObjectType = new MetaObjectType();
|
}
|
BeanUtil.copy(metaObjectTypeDTO, metaObjectType);
|
metaObjectType.setFId(metaObjectTypeDTO.getObjectId());
|
metaObjectType.setPrimaryKey("id");
|
saveOrUpdate(metaObjectType);
|
this.fieldService.remove(Lambda.eq((v0) -> {
|
return v0.getObjectId();
|
}, metaObjectType.getFId()));
|
if (metaObjectTypeDTO.getFields() != null) {
|
metaObjectTypeDTO.getFields().forEach(field -> {
|
this.fieldService.saveOrUpdate(field);
|
});
|
}
|
return metaObjectType;
|
}
|
|
@Override // org.springblade.modules.system.service.IMetaObjectTypeService
|
public List<TableDetail> queryAllTableDetail() {
|
List<TableDetail> tableDetails = ((MetaObjectTypeMapper) this.baseMapper).selectAllTables(this.database);
|
tableDetails.parallelStream().forEach(item -> {
|
List<TableColumn> tableColumns = ((MetaObjectTypeMapper) this.baseMapper).selectTableColumns(this.database, item.getTableName());
|
item.setTableColumns(tableColumns);
|
});
|
return tableDetails;
|
}
|
|
@Override // org.springblade.modules.system.service.IMetaObjectTypeService
|
public List<TableColumn> queryTableCloumns(String tableName) {
|
return ((MetaObjectTypeMapper) this.baseMapper).selectTableColumns(this.database, tableName);
|
}
|
|
@Override // org.springblade.modules.system.service.IMetaObjectTypeService
|
@Transactional
|
public boolean saveRuleFiled(String objectId, String ruleField, String ruleDictCode) {
|
CacheUtil.clear(ExtCacheConstant.CODE_RULE_CACHE, Boolean.FALSE);
|
List<BasCodeRule> list = this.basCoderuleService.list(Lambda.eq((v0) -> {
|
return v0.getBillFormId();
|
}, objectId).select((v0) -> {
|
return v0.getId();
|
}));
|
if (list.size() > 0) {
|
this.basCoderuleService.deleteCoderule((List) list.stream().map((v0) -> {
|
return v0.getId();
|
}).collect(Collectors.toList()));
|
}
|
return ((LambdaUpdateChainWrapper) ((LambdaUpdateChainWrapper) ((LambdaUpdateChainWrapper) lambdaUpdate().set((v0) -> {
|
return v0.getRuleField();
|
}, ruleField)).set((v0) -> {
|
return v0.getRuleDictCode();
|
}, ruleDictCode)).eq((v0) -> {
|
return v0.getFId();
|
}, objectId)).update();
|
}
|
}
|