|
@@ -1,5 +1,6 @@
|
|
|
package com.dragoninfo.dcuc.app.business.impl;
|
|
|
|
|
|
+import cn.hutool.core.thread.ThreadFactoryBuilder;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
@@ -25,10 +26,8 @@ import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import java.io.IOException;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -55,7 +54,8 @@ public class ResourceBusiness implements IResourceBusiness {
|
|
|
*/
|
|
|
private ExecutorService executor = new ThreadPoolExecutor(1, 1,
|
|
|
0L, TimeUnit.MILLISECONDS,
|
|
|
- new LinkedBlockingQueue<Runnable>());
|
|
|
+ new LinkedBlockingQueue<Runnable>(),
|
|
|
+ new ThreadFactoryBuilder().setNamePrefix("menu-resource").build());
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -78,6 +78,106 @@ public class ResourceBusiness implements IResourceBusiness {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean acceptAppResource(AppResourceAcceptDTO acceptDTO) {
|
|
|
+ ResourceTypeEnum appEnum = ResourceTypeEnum.TJ_APP;
|
|
|
+ ResourceSyncDTO syncDTO = new ResourceSyncDTO(appEnum.getResourceId()
|
|
|
+ , appEnum.getResourceType(), appEnum.getResouProvider());
|
|
|
+ AppInfoAcceptDTO appAcceptDTO = acceptDTO.getTAppSystem();
|
|
|
+ syncDTO.setAppCode(appAcceptDTO.getYyxtbh());
|
|
|
+ syncDTO.setAppName(appAcceptDTO.getYyxtmc());
|
|
|
+ syncDTO.setExtId(appAcceptDTO.getId());
|
|
|
+ syncDTO.setContent(JSON.toJSONString(appAcceptDTO));
|
|
|
+ syncDTO.setSync(com.dragoninfo.dcuc.user.user.enumresources.YesNotEnum.YES.getValue());
|
|
|
+ syncService.insertRemoteResourceSync(syncDTO);
|
|
|
+ //同步更新应用表
|
|
|
+ AppResourceDTO appResourceDTO = convertToAppDTO(acceptDTO);
|
|
|
+ appResourceDTO.setResourceId(appEnum.getResourceId());
|
|
|
+ appResourceDTO.setResourceType(appEnum.getResourceType());
|
|
|
+ appResourceDTO.setResourceProvider(appEnum.getResouProvider());
|
|
|
+ resourceService.insertAppResource(appResourceDTO);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 应用资源接收类转为应用DTO
|
|
|
+ * @param acceptDTO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private AppResourceDTO convertToAppDTO(AppResourceAcceptDTO acceptDTO) {
|
|
|
+ AppInfoAcceptDTO appResourceDTO = acceptDTO.getTAppSystem();
|
|
|
+ AppResourceDTO dto = new AppResourceDTO();
|
|
|
+ dto.setAppCode(appResourceDTO.getYyxtbh());
|
|
|
+ dto.setAppName(appResourceDTO.getYyxtmc());
|
|
|
+ dto.setAppStatus(appResourceDTO.getXtzybs());
|
|
|
+ dto.setAppUrl(appResourceDTO.getYyxtfwdz());
|
|
|
+ dto.setBuildUnitCode(appResourceDTO.getYyxtgldwdm());
|
|
|
+ dto.setContractUnitCode(appResourceDTO.getYyxtcjdwdm());
|
|
|
+ String sxrq = appResourceDTO.getSxrq();
|
|
|
+ if(!org.springframework.util.StringUtils.isEmpty(sxrq)){
|
|
|
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ try {
|
|
|
+ Date parse = format.parse(sxrq);
|
|
|
+ dto.setRegistrationTime(parse);
|
|
|
+ }catch (Exception e){
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ dto.setApplyCategory(appResourceDTO.getYyxtfldm());
|
|
|
+ dto.setPoliceSpecies(appResourceDTO.getGajzfldm());
|
|
|
+ //设置菜单资源
|
|
|
+ List<MenuResourceAcceptDTO> tAppFunctionList = acceptDTO.getTAppFunctionList();
|
|
|
+ List<MenuResourceDTO> menusDTOs = new ArrayList<>();
|
|
|
+ for (MenuResourceAcceptDTO mADTO : tAppFunctionList) {
|
|
|
+ MenuResourceDTO menuDTO = new MenuResourceDTO();
|
|
|
+ menuDTO.setFunCode(mADTO.getGnbh());
|
|
|
+ menuDTO.setPFunCode(mADTO.getSjgnbh());
|
|
|
+ menuDTO.setFunName(mADTO.getGnmc());
|
|
|
+ menuDTO.setAppCode(appResourceDTO.getYyxtbh());
|
|
|
+ menuDTO.setStatus(mADTO.getZyzt());
|
|
|
+ menusDTOs.add(menuDTO);
|
|
|
+ }
|
|
|
+ dto.setMenusResources(menusDTOs);
|
|
|
+ return dto;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 应用资源接收类转为应用DTO
|
|
|
+ * @param acceptDTO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public boolean acceptServiceResource(ServiceResourceAcceptDTO acceptDTO) {
|
|
|
+ ResourceTypeEnum serviceEnum = ResourceTypeEnum.TJ_SERVICE;
|
|
|
+ ResourceSyncDTO syncDTO = new ResourceSyncDTO(serviceEnum.getResourceId()
|
|
|
+ , serviceEnum.getResourceType(), serviceEnum.getResouProvider());
|
|
|
+ syncDTO.setServiceCode(acceptDTO.getFWZYBSF());
|
|
|
+ syncDTO.setServiceName(acceptDTO.getFWZYMC());
|
|
|
+ syncDTO.setExtId(acceptDTO.getId());
|
|
|
+ syncDTO.setContent(JSON.toJSONString(acceptDTO));
|
|
|
+ syncDTO.setSync(com.dragoninfo.dcuc.user.user.enumresources.YesNotEnum.YES.getValue());
|
|
|
+ syncService.insertRemoteResourceSync(syncDTO);
|
|
|
+ //同步更新服务表
|
|
|
+ ServiceResourceDTO serviceResourceDTO = convertToServiceDTO(acceptDTO);
|
|
|
+ serviceResourceDTO.setResourceId(serviceEnum.getResourceId());
|
|
|
+ serviceResourceDTO.setResourceType(serviceEnum.getResourceType());
|
|
|
+ serviceResourceDTO.setResourceProvider(serviceEnum.getResouProvider());
|
|
|
+ resourceService.insertServiceResource(serviceResourceDTO);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ private ServiceResourceDTO convertToServiceDTO(ServiceResourceAcceptDTO acceptDTO) {
|
|
|
+ ServiceResourceDTO dto = new ServiceResourceDTO();
|
|
|
+ dto.setServiceCode(acceptDTO.getFWZYBSF());
|
|
|
+ dto.setServiceName(acceptDTO.getFWZYMC());
|
|
|
+ dto.setBuildUnitCode(acceptDTO.getFWZYGLDW_GAJGJGDM());
|
|
|
+ dto.setContractUnitCode(acceptDTO.getFWZYSQDW_JGDM());
|
|
|
+ dto.setServiceUrl(acceptDTO.getFWFWDZ());
|
|
|
+ dto.setServiceStatus(acceptDTO.getFWZYZTDM());
|
|
|
+ return dto;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public List<ResourceRequestResultDTO> getResourceRequestResults(ResourceRequestParamDTO requestParamDTO) {
|
|
|
List<ResourceRequestResultDTO> pageInfos = new ArrayList<>();
|