@@ -9,6 +9,6 @@ package com.ningdatech.pmapi.ding.constants; | |||||
public interface DingOrganizationContant { | public interface DingOrganizationContant { | ||||
String UNIT_TYPE = "GOV_UNIT"; | String UNIT_TYPE = "GOV_UNIT"; | ||||
String GOV_TEMPORARY = "GOV_TEMPORARY"; | |||||
String HOLLOW = "GOV_HOLLOW_DIVISION_NODE"; | String HOLLOW = "GOV_HOLLOW_DIVISION_NODE"; | ||||
} | } |
@@ -1,36 +1,13 @@ | |||||
package com.ningdatech.pmapi.ding.controller; | package com.ningdatech.pmapi.ding.controller; | ||||
import cn.hutool.crypto.digest.MD5; | |||||
import com.alibaba.fastjson.JSON; | |||||
import com.ningdatech.pmapi.common.util.CryptUtils; | |||||
import com.ningdatech.pmapi.common.util.HttpUtil; | |||||
import com.ningdatech.pmapi.common.util.Md5Utils; | |||||
import com.ningdatech.pmapi.common.util.RefreshKeyUtil; | |||||
import com.ningdatech.pmapi.ding.task.EmployeeBatchGetTask; | import com.ningdatech.pmapi.ding.task.EmployeeBatchGetTask; | ||||
import com.ningdatech.pmapi.ding.task.GovBusinessStripsTask; | import com.ningdatech.pmapi.ding.task.GovBusinessStripsTask; | ||||
import com.ningdatech.pmapi.ding.task.OrganizationBatchGetTask; | import com.ningdatech.pmapi.ding.task.OrganizationBatchGetTask; | ||||
import com.ningdatech.pmapi.irs.utils.RefreshTokenUtil; | |||||
import com.ningdatech.pmapi.organization.manage.ProcDefManage; | import com.ningdatech.pmapi.organization.manage.ProcDefManage; | ||||
import io.swagger.annotations.ApiOperation; | import io.swagger.annotations.ApiOperation; | ||||
import liquibase.util.MD5Util; | |||||
import lombok.RequiredArgsConstructor; | import lombok.RequiredArgsConstructor; | ||||
import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||
import org.apache.http.conn.ssl.NoopHostnameVerifier; | |||||
import org.apache.http.conn.ssl.SSLConnectionSocketFactory; | |||||
import org.apache.http.conn.ssl.TrustStrategy; | |||||
import org.apache.http.impl.client.CloseableHttpClient; | |||||
import org.apache.http.impl.client.HttpClientBuilder; | |||||
import org.apache.http.impl.client.HttpClients; | |||||
import org.apache.http.ssl.SSLContexts; | |||||
import org.springframework.http.ResponseEntity; | |||||
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; | |||||
import org.springframework.web.bind.annotation.*; | import org.springframework.web.bind.annotation.*; | ||||
import org.springframework.web.client.RestTemplate; | |||||
import javax.net.ssl.SSLContext; | |||||
import java.io.UnsupportedEncodingException; | |||||
import java.net.URLEncoder; | |||||
import java.security.NoSuchAlgorithmException; | |||||
/** | /** | ||||
* <p> | * <p> | ||||
@@ -103,4 +80,10 @@ public class DingInfoPullController { | |||||
public String init() { | public String init() { | ||||
return procDefManage.init(); | return procDefManage.init(); | ||||
} | } | ||||
@ApiOperation(value = "系统流程配置初始化按区域", notes = "系统流程配置初始化按区域") | |||||
@GetMapping("/init/{areaCode}") | |||||
public String initByArea(@PathVariable String areaCode) { | |||||
return procDefManage.initByArea(areaCode); | |||||
} | |||||
} | } |
@@ -3,6 +3,7 @@ package com.ningdatech.pmapi.organization.manage; | |||||
import cn.hutool.core.util.IdUtil; | import cn.hutool.core.util.IdUtil; | ||||
import com.alibaba.fastjson.JSON; | import com.alibaba.fastjson.JSON; | ||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
import com.google.common.collect.Lists; | |||||
import com.ningdatech.basic.util.StrPool; | import com.ningdatech.basic.util.StrPool; | ||||
import com.ningdatech.pmapi.ding.constants.DingOrganizationContant; | import com.ningdatech.pmapi.ding.constants.DingOrganizationContant; | ||||
import com.ningdatech.pmapi.organization.model.entity.DingOrganization; | import com.ningdatech.pmapi.organization.model.entity.DingOrganization; | ||||
@@ -43,7 +44,9 @@ public class ProcDefManage { | |||||
*/ | */ | ||||
public String init() { | public String init() { | ||||
List<DingOrganization> orgs = organizationService.list(Wrappers.lambdaQuery(DingOrganization.class) | List<DingOrganization> orgs = organizationService.list(Wrappers.lambdaQuery(DingOrganization.class) | ||||
.eq(DingOrganization::getTypeCode, DingOrganizationContant.UNIT_TYPE)); | |||||
.in(DingOrganization::getTypeCode, Lists.newArrayList( | |||||
DingOrganizationContant.UNIT_TYPE,DingOrganizationContant.GOV_TEMPORARY | |||||
))); | |||||
log.info("需要处理初始化单位配置的企业 数量为{}",orgs.size()); | log.info("需要处理初始化单位配置的企业 数量为{}",orgs.size()); | ||||
@@ -101,4 +104,40 @@ public class ProcDefManage { | |||||
defaultHistory.setVersion(0); | defaultHistory.setVersion(0); | ||||
orgProcdefHistoryService.save(defaultHistory); | orgProcdefHistoryService.save(defaultHistory); | ||||
} | } | ||||
public String initByArea(String areaCode) { | |||||
List<DingOrganization> orgs = organizationService.list(Wrappers.lambdaQuery(DingOrganization.class) | |||||
.in(DingOrganization::getTypeCode, Lists.newArrayList( | |||||
DingOrganizationContant.UNIT_TYPE,DingOrganizationContant.GOV_TEMPORARY | |||||
)) | |||||
.eq(DingOrganization::getDivisionCode,areaCode)); | |||||
log.info("{}地区 需要处理初始化单位配置的企业 数量为{}",areaCode,orgs.size()); | |||||
for(DingOrganization org : orgs){ | |||||
log.info("当前是 {}",org.getOrganizationName()); | |||||
String orgCode = org.getOrganizationCode(); | |||||
List<WflowOrgModels> models = orgProcdefService.list(Wrappers.lambdaQuery(WflowOrgModels.class) | |||||
.eq(WflowOrgModels::getOrgCode, orgCode)); | |||||
log.info("已经有的单位流程 {}", JSON.toJSONString(models)); | |||||
List<String> types = models.stream().map(WflowOrgModels::getType).collect(Collectors.toList()); | |||||
//默认流程 | |||||
if(!types.contains(ProcessDefTypeEnum.DEFAULT.name())){ | |||||
saveDef(org,ProcessDefTypeEnum.DEFAULT); | |||||
} | |||||
//盖章流程 | |||||
if(!types.contains(ProcessDefTypeEnum.SEAL.name())){ | |||||
saveDef(org,ProcessDefTypeEnum.SEAL); | |||||
} | |||||
//联审流程 | |||||
if(!types.contains(ProcessDefTypeEnum.JOINT_REVIEW.name())){ | |||||
saveDef(org,ProcessDefTypeEnum.JOINT_REVIEW); | |||||
} | |||||
} | |||||
return "初始化成功"; | |||||
} | |||||
} | } |
@@ -2,6 +2,7 @@ package com.ningdatech.pmapi.scheduler.task; | |||||
import cn.hutool.core.date.StopWatch; | import cn.hutool.core.date.StopWatch; | ||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
import com.google.common.collect.Lists; | |||||
import com.ningdatech.pmapi.ding.constants.DingOrganizationContant; | import com.ningdatech.pmapi.ding.constants.DingOrganizationContant; | ||||
import com.ningdatech.pmapi.ding.task.EmployeeBatchGetTask; | import com.ningdatech.pmapi.ding.task.EmployeeBatchGetTask; | ||||
import com.ningdatech.pmapi.organization.model.entity.DingOrganization; | import com.ningdatech.pmapi.organization.model.entity.DingOrganization; | ||||
@@ -42,7 +43,9 @@ public class BatchUpdateEmployeeTask { | |||||
stopWatch.start(); | stopWatch.start(); | ||||
// 1.查出浙政钉 所有单位 | // 1.查出浙政钉 所有单位 | ||||
List<DingOrganization> units = organizationService.list(Wrappers.lambdaQuery(DingOrganization.class) | List<DingOrganization> units = organizationService.list(Wrappers.lambdaQuery(DingOrganization.class) | ||||
.eq(DingOrganization::getTypeCode, DingOrganizationContant.UNIT_TYPE)); | |||||
.in(DingOrganization::getTypeCode, Lists.newArrayList( | |||||
DingOrganizationContant.UNIT_TYPE,DingOrganizationContant.GOV_TEMPORARY | |||||
))); | |||||
log.info("需要更新的 单位数量为 {}",units.size()); | log.info("需要更新的 单位数量为 {}",units.size()); | ||||