diff --git a/src/com/engine/organization/entity/extend/po/ExtendTitlePO.java b/src/com/engine/organization/entity/extend/po/ExtendTitlePO.java index 7d7b5406..7aa2c96f 100644 --- a/src/com/engine/organization/entity/extend/po/ExtendTitlePO.java +++ b/src/com/engine/organization/entity/extend/po/ExtendTitlePO.java @@ -25,7 +25,7 @@ public class ExtendTitlePO { /** * 分组标识 */ - private Long groupid; + private Long groupId; /** * 分组名称 @@ -39,7 +39,7 @@ public class ExtendTitlePO { /** * 是否展示 */ - private Integer isShow; + private String isShow; private Integer creator; diff --git a/src/com/engine/organization/mapper/extend/ExtendInfoMapper.java b/src/com/engine/organization/mapper/extend/ExtendInfoMapper.java index 1e93229d..fba88e97 100644 --- a/src/com/engine/organization/mapper/extend/ExtendInfoMapper.java +++ b/src/com/engine/organization/mapper/extend/ExtendInfoMapper.java @@ -21,4 +21,6 @@ public interface ExtendInfoMapper { * @return */ List listFields(@Param("extendType") String extendType, @Param("extendGroupId") String extendGroupId, @Param("tableName") String tableName,@Param("operateType")String operateType); + + int countFieldsByGroupId(@Param("groupId") Long groupId); } diff --git a/src/com/engine/organization/mapper/extend/ExtendInfoMapper.xml b/src/com/engine/organization/mapper/extend/ExtendInfoMapper.xml index b1d8f92e..b9a5d089 100644 --- a/src/com/engine/organization/mapper/extend/ExtendInfoMapper.xml +++ b/src/com/engine/organization/mapper/extend/ExtendInfoMapper.xml @@ -75,6 +75,12 @@ order by show_order + \ No newline at end of file diff --git a/src/com/engine/organization/mapper/extend/ExtendTitleMapper.xml b/src/com/engine/organization/mapper/extend/ExtendTitleMapper.xml index 36599d59..e39e32f5 100644 --- a/src/com/engine/organization/mapper/extend/ExtendTitleMapper.xml +++ b/src/com/engine/organization/mapper/extend/ExtendTitleMapper.xml @@ -3,7 +3,7 @@ - + diff --git a/src/com/engine/organization/service/FieldDefinedService.java b/src/com/engine/organization/service/FieldDefinedService.java index 083a5228..2ecc15de 100644 --- a/src/com/engine/organization/service/FieldDefinedService.java +++ b/src/com/engine/organization/service/FieldDefinedService.java @@ -3,6 +3,7 @@ package com.engine.organization.service; import com.engine.organization.entity.fieldset.TypeTreeDTO; import java.util.List; +import java.util.Map; /** * @Author weaver_cl @@ -12,7 +13,15 @@ import java.util.List; **/ public interface FieldDefinedService { - + List getTree(String moduleName); + /** + * 获取标题分组 + * + * @param groupType + * @return + */ + Map getTabInfo(String groupType); + } diff --git a/src/com/engine/organization/service/impl/ExtServiceImpl.java b/src/com/engine/organization/service/impl/ExtServiceImpl.java index 4f2ea7c1..904a9021 100644 --- a/src/com/engine/organization/service/impl/ExtServiceImpl.java +++ b/src/com/engine/organization/service/impl/ExtServiceImpl.java @@ -160,7 +160,7 @@ public class ExtServiceImpl extends Service implements ExtService { infoPOList.addAll(infoPOList1); List ids = infoPOList.stream().map(ExtendInfoPO::getExtendGroupId).collect(Collectors.toList()); List extendTitles = getExtendTitleMapper().getTitlesByIds(ids); - Set extendGroups = extendTitles.stream().map(ExtendTitlePO::getGroupid).collect(Collectors.toSet()); + Set extendGroups = extendTitles.stream().map(ExtendTitlePO::getGroupId).collect(Collectors.toSet()); // 拓展信息 if (CollectionUtils.isNotEmpty(extendGroups)) { diff --git a/src/com/engine/organization/service/impl/FieldDefinedServiceImpl.java b/src/com/engine/organization/service/impl/FieldDefinedServiceImpl.java index f77ff2ae..6be33e5d 100644 --- a/src/com/engine/organization/service/impl/FieldDefinedServiceImpl.java +++ b/src/com/engine/organization/service/impl/FieldDefinedServiceImpl.java @@ -1,11 +1,18 @@ package com.engine.organization.service.impl; import com.engine.core.impl.Service; +import com.engine.organization.entity.extend.po.ExtendTitlePO; import com.engine.organization.entity.fieldset.TypeTreeDTO; +import com.engine.organization.mapper.extend.ExtendInfoMapper; +import com.engine.organization.mapper.extend.ExtendTitleMapper; import com.engine.organization.service.FieldDefinedService; +import com.engine.organization.util.OrganizationAssert; +import com.engine.organization.util.db.MapperProxyFactory; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @Author weaver_cl @@ -14,6 +21,13 @@ import java.util.List; * @Version V1.0 **/ public class FieldDefinedServiceImpl extends Service implements FieldDefinedService { + private ExtendTitleMapper getExtendTitleMapper() { + return MapperProxyFactory.getProxy(ExtendTitleMapper.class); + } + + private ExtendInfoMapper getExtendInfoMapper() { + return MapperProxyFactory.getProxy(ExtendInfoMapper.class); + } @Override public List getTree(String moduleName) { @@ -21,4 +35,37 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ //int extendType = return typeTreeDTOS; } + + @Override + public Map getTabInfo(String groupType) { + OrganizationAssert.notBlank(groupType, "分组信息有误,请确认"); + Map datas = new HashMap<>(); + Long groupId = Long.parseLong(groupType); + List extendTitleList = getExtendTitleMapper().getTitlesByGroupID(groupId); + List> tabs = new ArrayList<>(); + int idx = 1; + for (ExtendTitlePO extendTitle : extendTitleList) { + Map tab = new HashMap<>(); + tab.put("tabkey", idx++); + tab.put("title", extendTitle.getTitle()); + tab.put("isShow", extendTitle.getIsShow()); + tab.put("groupid", extendTitle.getGroupId()); + tab.put("viewAttr", extendTitle.getGroupId() < 0 ? 1 : 2); + tab.put("editable", editTable(extendTitle.getId())); + tabs.add(tab); + } + datas.put("status", "1"); + datas.put("tabs", tabs); + return datas; + } + + /** + * 判断该分组下是否有字段 + * + * @param id + * @return + */ + private boolean editTable(Long id) { + return getExtendInfoMapper().countFieldsByGroupId(id) > 0; + } } diff --git a/src/com/engine/organization/web/FieldDefinedController.java b/src/com/engine/organization/web/FieldDefinedController.java index c4bd43ef..d1cfaafa 100644 --- a/src/com/engine/organization/web/FieldDefinedController.java +++ b/src/com/engine/organization/web/FieldDefinedController.java @@ -1,5 +1,6 @@ package com.engine.organization.web; +import com.engine.common.util.ParamUtil; import com.engine.common.util.ServiceUtil; import com.engine.organization.util.response.ReturnResult; import com.engine.organization.wrapper.FieldDefinedWrapper; @@ -14,6 +15,7 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; +import java.util.Map; /** * @Author weaver_cl @@ -24,7 +26,7 @@ import javax.ws.rs.core.MediaType; public class FieldDefinedController { private FieldDefinedWrapper getFieldDefinedWrapper(User user) { - return ServiceUtil.getService(FieldDefinedWrapper.class,user); + return ServiceUtil.getService(FieldDefinedWrapper.class, user); } @GET @@ -39,4 +41,18 @@ public class FieldDefinedController { return ReturnResult.exceptionHandle(e.getMessage()); } } + + @GET + @Path("/getTabInfo") + @Produces(MediaType.APPLICATION_JSON) + public ReturnResult getTabInfo(@Context HttpServletRequest request, @Context HttpServletResponse response) { + try { + User user = HrmUserVarify.getUser(request, response); + Map map = ParamUtil.request2Map(request); + String groupType = (String) map.get("groupType"); + return ReturnResult.successed(getFieldDefinedWrapper(user).getTabInfo(groupType)); + } catch (Exception e) { + return ReturnResult.exceptionHandle(e.getMessage()); + } + } } diff --git a/src/com/engine/organization/wrapper/FieldDefinedWrapper.java b/src/com/engine/organization/wrapper/FieldDefinedWrapper.java index 673b12d2..e81c9468 100644 --- a/src/com/engine/organization/wrapper/FieldDefinedWrapper.java +++ b/src/com/engine/organization/wrapper/FieldDefinedWrapper.java @@ -9,6 +9,7 @@ import com.engine.organization.util.response.ReturnResult; import weaver.hrm.User; import java.util.List; +import java.util.Map; /** * @Author weaver_cl @@ -19,7 +20,7 @@ import java.util.List; public class FieldDefinedWrapper extends Service { private FieldDefinedService getFieldDefinedService(User user) { - return ServiceUtil.getService(FieldDefinedServiceImpl.class,user); + return ServiceUtil.getService(FieldDefinedServiceImpl.class, user); } @@ -27,4 +28,14 @@ public class FieldDefinedWrapper extends Service { List treeDTOS = getFieldDefinedService(user).getTree(moduleName); return ReturnResult.successed(); } + + /** + * 获取标题分组 + * + * @param groupType + * @return + */ + public Map getTabInfo(String groupType) { + return getFieldDefinedService(user).getTabInfo(groupType); + } }