Переглянути джерело

Merge remote-tracking branch 'origin/master'

tags/24080901
WendyYang 1 рік тому
джерело
коміт
f3b57e8e60
4 змінених файлів з 51 додано та 26 видалено
  1. +1
    -1
      pmapi/src/main/java/com/ningdatech/pmapi/ding/constants/DingOrganizationContant.java
  2. +6
    -23
      pmapi/src/main/java/com/ningdatech/pmapi/ding/controller/DingInfoPullController.java
  3. +40
    -1
      pmapi/src/main/java/com/ningdatech/pmapi/organization/manage/ProcDefManage.java
  4. +4
    -1
      pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/BatchUpdateEmployeeTask.java

+ 1
- 1
pmapi/src/main/java/com/ningdatech/pmapi/ding/constants/DingOrganizationContant.java Переглянути файл

@@ -9,6 +9,6 @@ package com.ningdatech.pmapi.ding.constants;
public interface DingOrganizationContant {

String UNIT_TYPE = "GOV_UNIT";
String GOV_TEMPORARY = "GOV_TEMPORARY";
String HOLLOW = "GOV_HOLLOW_DIVISION_NODE";
}

+ 6
- 23
pmapi/src/main/java/com/ningdatech/pmapi/ding/controller/DingInfoPullController.java Переглянути файл

@@ -1,36 +1,13 @@
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.GovBusinessStripsTask;
import com.ningdatech.pmapi.ding.task.OrganizationBatchGetTask;
import com.ningdatech.pmapi.irs.utils.RefreshTokenUtil;
import com.ningdatech.pmapi.organization.manage.ProcDefManage;
import io.swagger.annotations.ApiOperation;
import liquibase.util.MD5Util;
import lombok.RequiredArgsConstructor;
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.client.RestTemplate;

import javax.net.ssl.SSLContext;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.security.NoSuchAlgorithmException;

/**
* <p>
@@ -103,4 +80,10 @@ public class DingInfoPullController {
public String init() {
return procDefManage.init();
}

@ApiOperation(value = "系统流程配置初始化按区域", notes = "系统流程配置初始化按区域")
@GetMapping("/init/{areaCode}")
public String initByArea(@PathVariable String areaCode) {
return procDefManage.initByArea(areaCode);
}
}

+ 40
- 1
pmapi/src/main/java/com/ningdatech/pmapi/organization/manage/ProcDefManage.java Переглянути файл

@@ -3,6 +3,7 @@ package com.ningdatech.pmapi.organization.manage;
import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.google.common.collect.Lists;
import com.ningdatech.basic.util.StrPool;
import com.ningdatech.pmapi.ding.constants.DingOrganizationContant;
import com.ningdatech.pmapi.organization.model.entity.DingOrganization;
@@ -43,7 +44,9 @@ public class ProcDefManage {
*/
public String init() {
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());

@@ -101,4 +104,40 @@ public class ProcDefManage {
defaultHistory.setVersion(0);
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 "初始化成功";
}
}

+ 4
- 1
pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/BatchUpdateEmployeeTask.java Переглянути файл

@@ -2,6 +2,7 @@ package com.ningdatech.pmapi.scheduler.task;

import cn.hutool.core.date.StopWatch;
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.task.EmployeeBatchGetTask;
import com.ningdatech.pmapi.organization.model.entity.DingOrganization;
@@ -42,7 +43,9 @@ public class BatchUpdateEmployeeTask {
stopWatch.start();
// 1.查出浙政钉 所有单位
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());



Завантаження…
Відмінити
Зберегти