Commit 19ad8213 authored by 麻笑宇's avatar 麻笑宇

Merge remote-tracking branch 'origin/develop_tzs_bugfix' into develop_tzs_bugfix

parents 2184d22b 8e45ec03
......@@ -323,4 +323,16 @@ public class JgUseRegistrationManageController extends BaseController {
return ResponseHelper.buildResponse("Redis初始化完成!");
}
/**
* 根据sequenceNbr查询---大屏使用
*
* @param applyNo 申请单号
* @return s
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/handleErrorDeviceCode")
@ApiOperation(httpMethod = "GET", value = "根据applyNo查询证管理表", notes = "根据applyNo查询证管理表")
public ResponseModel<Object> handleErrorDeviceCode(@RequestParam(value = "applyNo") String applyNo) {
return ResponseHelper.buildResponse(jgUseRegistrationManageServiceImpl.handleErrorDeviceCode(applyNo));
}
}
......@@ -2166,12 +2166,23 @@ public class CommonServiceImpl implements ICommonService {
} catch (ParseException e) {
log.error("日期转换失败:", e);
}
String equCode = Optional.ofNullable(equType.get("equCategoryCode")).orElse(equType.get("equDefineCode"));
String registrationCode = equCode + receiveCompanyCode + ym;
ResponseModel<String> responseModel = tzsServiceFeignClient.deviceRegistrationCode(registrationCode);
ResponseModel<String> responseModel = null;
if (isValidCreditCode(receiveCompanyCode)) {
String equCode = Optional.ofNullable(equType.get("equDefineCode")).orElse(equType.get("equCategoryCode"));
String registrationCode = equCode + receiveCompanyCode + ym;
responseModel = tzsServiceFeignClient.deviceRegistrationCode(registrationCode);
}
return responseModel.getResult();
}
// 校验信用代码是否符合要求
public static boolean isValidCreditCode(String creditCode) {
// 检查是否是数字
if (!creditCode.matches("\\d+")) {
throw new BadRequest("接收机构编码错误: " + creditCode + ",请联系管理员!");
}
return true;
}
/**
* 获取最新的使用登记证书
......
......@@ -3,7 +3,9 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationManageDto;
import com.yeejoin.amos.boot.module.jg.api.dto.UseFlagParamDto;
......@@ -15,6 +17,7 @@ import com.yeejoin.amos.boot.module.jg.api.mapper.*;
import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransferService;
import com.yeejoin.amos.boot.module.jg.api.service.IJgUseRegistrationManageService;
import com.yeejoin.amos.boot.module.jg.api.vo.SortVo;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.ymt.api.common.StringUtil;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgMaintenanceRecordInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
......@@ -49,18 +52,19 @@ import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.stream.Collectors;
import static com.alibaba.fastjson.JSON.parseArray;
import static com.yeejoin.amos.boot.module.jg.biz.service.impl.CommonServiceImpl.isValidCreditCode;
import static com.yeejoin.amos.boot.module.jg.biz.service.impl.JgUseRegistrationServiceImpl.getAuditPassedDate;
/**
......@@ -120,6 +124,11 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
CommonMapper commonMapper;
@Autowired
private RedisTemplate<String, String> redisTemplate;
@Autowired
TzsServiceFeignClient tzsServiceFeignClient;
@Autowired
private JgCertificateChangeRecordMapper certificateChangeRecordMapper;
private static final long SCROLL_TIMEOUT = 180000;
private static final int SIZE = 1000;
......@@ -759,4 +768,32 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
jgUseRegistrationManageMapper.initUseRegistrationCodeIntoRedis(String.valueOf(LocalDate.now().getYear() % 100))
.forEach(resultMap -> redisTemplate.opsForValue().set(resultMap.get("prefix"), resultMap.get("code")));
}
public Object handleErrorDeviceCode(String applyNo) {
LambdaQueryWrapper<JgUseRegistrationManage> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(JgUseRegistrationManage::getApplyNo, applyNo);
JgUseRegistrationManage jgUseRegistrationManage = jgUseRegistrationManageMapper.selectOne(queryWrapper);
if (jgUseRegistrationManage != null) {
String ym = "";
try {
ym = Optional.of(DateUtils.dateFormat(jgUseRegistrationManage.getAuditPassDate(), DateUtils.DATE_PATTERN_MM)).orElse(DateUtils.dateFormat(new Date(), DateUtils.DATE_PATTERN_MM));
} catch (ParseException e) {
log.error("日期转换失败:", e);
}
ResponseModel<String> responseModel;
if (isValidCreditCode(jgUseRegistrationManage.getReceiveCompanyCode())) {
String equCode = Optional.ofNullable(jgUseRegistrationManage.getEquDefineCode()).orElse(jgUseRegistrationManage.getEquCategoryCode());
String registrationCode = equCode + jgUseRegistrationManage.getReceiveCompanyCode() + ym;
responseModel = tzsServiceFeignClient.deviceRegistrationCode(registrationCode);
jgUseRegistrationManage.setCertificateNo(responseModel.getResult());
jgUseRegistrationManageMapper.updateById(jgUseRegistrationManage);
LambdaUpdateWrapper<JgCertificateChangeRecord> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(JgCertificateChangeRecord::getApplyNo, applyNo);
updateWrapper.set(JgCertificateChangeRecord::getCertificateNo, responseModel.getResult());
certificateChangeRecordMapper.update(null, updateWrapper);
}
}
return "修复成功!";
}
}
\ No newline at end of file
......@@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -20,6 +19,7 @@ import com.yeejoin.amos.boot.biz.common.entity.TzsBaseEntity;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.common.api.dao.ESEquipmentCategory;
import com.yeejoin.amos.boot.module.common.api.dto.ESEquipmentCategoryDto;
import com.yeejoin.amos.boot.module.jg.api.dto.*;
......@@ -59,6 +59,7 @@ import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import io.seata.spring.annotation.GlobalTransactional;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.compress.utils.Lists;
import org.apache.commons.io.IOUtils;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
......@@ -1810,8 +1811,22 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
if (!ObjectUtils.isEmpty(detail) && !StringUtils.isEmpty(detail.get("organizationCode")) && !StringUtils.isEmpty(detail.get("organizationName"))) {
String receiveOrgCode = (String) detail.get("organizationCode");
String receiveOrgName = (String) detail.get("organizationName");
detail.put("receiveOrgCode", receiveOrgCode + "_" + receiveOrgName);
List<LinkedHashMap> receiveUnitTree = commonServiceImpl.getReceiveUnitTree("register");
List<Map<String, Object>> receiveUnitList = Lists.newArrayList();
if (!receiveUnitTree.isEmpty() && !receiveUnitTree.get(0).isEmpty()) {
convertTreeToListMap(receiveUnitTree.get(0), receiveUnitList);
}
// 查询receiveUnitTree中符合receiveOrgCode的数据
Map<String, Object> resultMap = receiveUnitList.stream().filter(map -> receiveOrgCode.equals(map.get("companyCode"))).findFirst().orElse(null);
if (ValidationUtil.isEmpty(resultMap)) {
detail.put("receiveOrgCode", null);
} else {
String receiveOrgName = (String) resultMap.get("companyName");
detail.put("receiveOrgCode", receiveOrgCode + "_" + receiveOrgName);
}
}
// 监督管理信息
......@@ -1869,6 +1884,17 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
return detail;
}
private void convertTreeToListMap(LinkedHashMap receiveUnit, List<Map<String, Object>> resultList) {
resultList.add(receiveUnit);
if (receiveUnit.containsKey("children") && !ValidationUtil.isEmpty(receiveUnit.get("children"))) {
List<LinkedHashMap> children = (List<LinkedHashMap>) receiveUnit.get("children");
for (LinkedHashMap child : children) {
convertTreeToListMap(child, resultList);
}
}
}
private String setDefaultRecord(JgUseRegistration jgUseRegistration, String record) {
if (StringUtils.isEmpty(record)) {
JgUseRegistrationEq jgUseRegistrationEq = jgUseRegistrationEqService.getOne(new LambdaQueryWrapper<JgUseRegistrationEq>().eq(JgUseRegistrationEq::getEquipTransferId, jgUseRegistration.getSequenceNbr()));
......
......@@ -72,7 +72,7 @@ public class GenerateCodeServiceImpl implements IGenerateCodeService {
*/
@Override
public String createDeviceRegistrationCode(String key) {
return (key.length() == 16) ? generateSequence(key, SEQUENCE_TYPE_DR, LOCK_KEY_DR) : "生成码规则不对!";
return generateSequence(key, SEQUENCE_TYPE_DR, LOCK_KEY_DR);
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment