提交 c09471a8 编写于 作者: sq3536's avatar sq3536

model

上级 390939ac
......@@ -101,7 +101,7 @@ public class Property {
public synchronized EntityModel getEntityModel()
{
if(entityModel==null)
entityModel= LiteStorage.getLiteModelService().getEntityModel(this.getSystem(),this.getPropertyEntity());
entityModel= LiteStorage.getLiteModelService().getProxyEntityModel(this.getSystem(),this.getPropertyEntity());
return entityModel;
}
......
......@@ -2,9 +2,11 @@ package cn.ibizlab.core.lite.extensions.service;
import cn.ibizlab.core.lite.extensions.domain.EntityModel;
import cn.ibizlab.core.lite.extensions.domain.EntityObj;
import cn.ibizlab.core.lite.extensions.domain.ModelObj;
import cn.ibizlab.util.filter.QueryFilter;
import com.sun.jndi.toolkit.dir.SearchFilter;
import java.sql.Timestamp;
import java.util.List;
public interface CommonEntityService {
......@@ -15,4 +17,11 @@ public interface CommonEntityService {
List<EntityObj> search(String dataSet,EntityModel entityModel, QueryFilter filter);
List<EntityObj> search(String dsName,String sql, QueryFilter filter);
List<ModelObj> getModelObjs(String metaModelId, Timestamp lastModify);
ModelObj getModelObjs(String metaModelId, Object factKey);
ModelObj getModelObjs(String metaModelId, Object... factUniKey);
List<ModelObj> getModelObjs(String metaModelId, List<EntityObj> kEntityObjs);
}
......@@ -93,6 +93,8 @@ public class DbEntityService extends ServiceImpl<DbEntityMapper, EntityObj> impl
@Autowired
private LiteModelService liteModelService;
@Override
public List<ModelObj> getModelObjs(String metaModelId,Timestamp lastModify)
{
DataModel dataModel= JSON.toJavaObject(JSON.parseObject(metaModelService.get(metaModelId).getConfig()),DataModel.class);
......@@ -108,6 +110,40 @@ public class DbEntityService extends ServiceImpl<DbEntityMapper, EntityObj> impl
return getModelObjs(dataModel,kEntityObjs);
}
@Override
public ModelObj getModelObjs(String metaModelId, Object factKey)
{
DataModel dataModel= JSON.toJavaObject(JSON.parseObject(metaModelService.get(metaModelId).getConfig()),DataModel.class);
List<EntityObj> kEntityObjs = new ArrayList<>();
kEntityObjs.add(new EntityObj().set(dataModel.getFactEntityModel().getKeyField().getColumnName(),factKey));
List<ModelObj> list = getModelObjs(dataModel,kEntityObjs);
if(list.size()>0)
return list.get(0);
return null;
}
@Override
public ModelObj getModelObjs(String metaModelId, Object... factUniKey)
{
DataModel dataModel= JSON.toJavaObject(JSON.parseObject(metaModelService.get(metaModelId).getConfig()),DataModel.class);
List<EntityObj> kEntityObjs = new ArrayList<>();
EntityObj entityObj = new EntityObj();
List<FieldModel> uniKeys = dataModel.getFactEntityModel().getUnionKeyFields();
for(int i=0;i<uniKeys.size();i++)
entityObj.set(uniKeys.get(i).getColumnName(),factUniKey[i]);
kEntityObjs.add(entityObj);
List<ModelObj> list = getModelObjs(dataModel,kEntityObjs);
if(list.size()>0)
return list.get(0);
return null;
}
@Override
public List<ModelObj> getModelObjs(String metaModelId, List<EntityObj> kEntityObjs)
{
DataModel dataModel= JSON.toJavaObject(JSON.parseObject(metaModelService.get(metaModelId).getConfig()),DataModel.class);
return getModelObjs(dataModel,kEntityObjs);
}
public List<ModelObj> getModelObjs(DataModel dataModel, List<EntityObj> kEntityObjs)
{
......
......@@ -70,6 +70,10 @@ public class LiteModelService {
@Lazy
private IDstComponentService dstComponentService;
@Autowired
@Lazy
private LiteModelService proxyService;
public List<EntityModel> getEntityModel(String systemId)
{
List<EntityModel> list = new ArrayList<>();
......@@ -81,6 +85,11 @@ public class LiteModelService {
return list;
}
public EntityModel getProxyEntityModel(String systemId, String name)
{
return proxyService.getEntityModel(systemId,name);
}
@Cacheable( value="entitymodel",key = "'row:'+#p0+'.'+#p1")
public EntityModel getEntityModel(String systemId, String name)
{
......
......@@ -2,9 +2,11 @@ package cn.ibizlab.core.lite.extensions.service;
import cn.ibizlab.core.lite.extensions.domain.EntityModel;
import cn.ibizlab.core.lite.extensions.domain.EntityObj;
import cn.ibizlab.core.lite.extensions.domain.ModelObj;
import cn.ibizlab.util.filter.QueryFilter;
import org.springframework.stereotype.Service;
import java.sql.Timestamp;
import java.util.List;
@Service
......@@ -29,4 +31,24 @@ public class MongoEntityService implements CommonEntityService{
public List<EntityObj> search(String dsName, String sql, QueryFilter filter) {
return null;
}
@Override
public List<ModelObj> getModelObjs(String metaModelId, Timestamp lastModify) {
return null;
}
@Override
public ModelObj getModelObjs(String metaModelId, Object factKey) {
return null;
}
@Override
public ModelObj getModelObjs(String metaModelId, Object... factUniKey) {
return null;
}
@Override
public List<ModelObj> getModelObjs(String metaModelId, List<EntityObj> kEntityObjs) {
return null;
}
}
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册