Commit 44f51e56 authored by suhuiguang's avatar suhuiguang

Merge branch 'develop_tzs_96333' into develop_tzs_ymt

# Conflicts: # amos-boot-system-tzs/amos-boot-module-ymt/amos-boot-module-ymt-biz/src/main/java/com/yeejoin/amos/boot/module/ymt/biz/service/impl/EquipmentCategoryServiceImpl.java
parents 7832b5df 00068a31
...@@ -6,3 +6,4 @@ target/ ...@@ -6,3 +6,4 @@ target/
/org.eclipse /org.eclipse
.settings .settings
log/ log/
amos-boot-system-tzs/.idea/
...@@ -22,5 +22,10 @@ ...@@ -22,5 +22,10 @@
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.16</version>
</dependency>
</dependencies> </dependencies>
</project> </project>
package com.yeejoin.amos.boot.module.common.api.excel; package com.yeejoin.amos.boot.module.common.api.excel;
import java.io.IOException; import cn.hutool.core.util.ZipUtil;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.google.common.collect.Lists;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.springframework.web.multipart.MultipartFile;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader; import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.read.metadata.ReadSheet; import com.alibaba.excel.read.metadata.ReadSheet;
import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.excel.write.builder.ExcelWriterSheetBuilder; import com.alibaba.excel.write.builder.ExcelWriterSheetBuilder;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.style.WriteCellStyle; import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.metadata.style.WriteFont; import com.alibaba.excel.write.metadata.style.WriteFont;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.google.common.collect.Lists;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.StandardOpenOption;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.stream.Collectors;
public class ExcelUtil { public class ExcelUtil {
private static final Integer DUTY_CAR_START_INDEX = 5; private static final Integer DUTY_CAR_START_INDEX = 5;
/** /**
* 生成excel模板 * 生成excel模板
* *
* @param response * @param response
* @param fileName 下载的文件名, * @param fileName 下载的文件名,
* @param sheetName sheet名 * @param sheetName sheet名
* @param data 导出的数据 * @param data 导出的数据
* @param model 导出的头 * @param model 导出的头
* @param flag true模板填充下拉 false 不填充 * @param flag true模板填充下拉 false 不填充
*/ */
public static void createTemplate(HttpServletResponse response, String fileName, String sheetName, public static void createTemplate(HttpServletResponse response, String fileName, String sheetName,
List<? extends Object> data, Class<?> model, DataSources dataDictionaryMapper, boolean flag) { List<? extends Object> data, Class<?> model, DataSources dataDictionaryMapper, boolean flag) {
HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle(); HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle();
try { try {
// 下拉列表集合 // 下拉列表集合
Map<Integer, String[]> explicitListConstraintMap = new HashMap<>(); Map<Integer, String[]> explicitListConstraintMap = new HashMap<>();
if (flag) { if (flag) {
// 循环获取对应列得下拉列表信息 // 循环获取对应列得下拉列表信息
Field[] declaredFields = model.getDeclaredFields(); Field[] declaredFields = model.getDeclaredFields();
for (int i = 0; i < declaredFields.length; i++) { for (int i = 0; i < declaredFields.length; i++) {
Field field = declaredFields[i]; Field field = declaredFields[i];
// 解析注解信息 // 解析注解信息
ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class); ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class);
resolveExplicitConstraint(explicitListConstraintMap, explicitConstraint, dataDictionaryMapper); resolveExplicitConstraint(explicitListConstraintMap, explicitConstraint, dataDictionaryMapper);
} }
} }
EasyExcel.write(getOutputStream(fileName, response, ExcelTypeEnum.XLSX), model) EasyExcel.write(getOutputStream(fileName, response, ExcelTypeEnum.XLSX), model)
.excelType(ExcelTypeEnum.XLSX).sheet(sheetName) .excelType(ExcelTypeEnum.XLSX).sheet(sheetName)
.registerWriteHandler(new TemplateCellWriteHandlerDate(explicitListConstraintMap)) .registerWriteHandler(new TemplateCellWriteHandlerDate(explicitListConstraintMap))
.registerWriteHandler(new TemplateCellWriteHandler()) .registerWriteHandler(new TemplateCellWriteHandler())
.registerWriteHandler(horizontalCellStyleStrategy).doWrite(data); .registerWriteHandler(horizontalCellStyleStrategy).doWrite(data);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
throw new RuntimeException("系统异常!"); throw new RuntimeException("系统异常!");
} }
} }
/** /**
* 生成excel模板 * 生成excel模板
* *
* @param response * @param response
* @param fileName 下载的文件名, * @param fileName 下载的文件名,
* @param sheetName sheet名 * @param sheetName sheet名
* @param data 导出的数据 * @param data 导出的数据
* @param model 导出的头 * @param model 导出的头
* @param flag true模板填充下拉 false 不填充 * @param flag true模板填充下拉 false 不填充
*/ */
public static void createDutyTemplate(HttpServletResponse response, String fileName, String sheetName, public static void createDutyTemplate(HttpServletResponse response, String fileName, String sheetName,
List<? extends Object> data, Class<?> model, List<String> dayByMonth, String[] dutyNameList, List<? extends Object> data, Class<?> model, List<String> dayByMonth, String[] dutyNameList,
DataSources dataDictionaryMapper, boolean flag, String typeFlag,boolean isTemplete) { DataSources dataDictionaryMapper, boolean flag, String typeFlag, boolean isTemplete) {
HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle(); HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle();
try { try {
// 组装表头 // 组装表头
List<List<String>> dutyCarTitleList = new ArrayList<>(); List<List<String>> dutyCarTitleList = new ArrayList<>();
Field[] declaredFields = model.getDeclaredFields(); Field[] declaredFields = model.getDeclaredFields();
for (int i = 0; i < declaredFields.length; i++) { for (int i = 0; i < declaredFields.length; i++) {
Field field = declaredFields[i]; Field field = declaredFields[i];
ExcelProperty excelProperty = field.getAnnotation(ExcelProperty.class); ExcelProperty excelProperty = field.getAnnotation(ExcelProperty.class);
if (excelProperty != null) { if (excelProperty != null) {
ArrayList<String> head = new ArrayList<>(); ArrayList<String> head = new ArrayList<>();
head.add(excelProperty.value()[0]); head.add(excelProperty.value()[0]);
dutyCarTitleList.add(head); dutyCarTitleList.add(head);
} }
} }
int size = dutyCarTitleList.size(); int size = dutyCarTitleList.size();
if (dayByMonth != null) { if (dayByMonth != null) {
for (int i = 0; i < dayByMonth.size(); i++) { for (int i = 0; i < dayByMonth.size(); i++) {
ArrayList<String> dutyDay = new ArrayList<>(); ArrayList<String> dutyDay = new ArrayList<>();
dutyDay.add(dayByMonth.get(i)); dutyDay.add(dayByMonth.get(i));
dutyCarTitleList.add(dutyDay); dutyCarTitleList.add(dutyDay);
} }
} }
// 下拉列表集合 // 下拉列表集合
Map<Integer, String[]> explicitListConstraintMap = new HashMap<>(); Map<Integer, String[]> explicitListConstraintMap = new HashMap<>();
if (flag) { if (flag) {
// 组装下拉列表 // 组装下拉列表
for (int i = 0; i < declaredFields.length; i++) { for (int i = 0; i < declaredFields.length; i++) {
Field field = declaredFields[i]; Field field = declaredFields[i];
// 解析注解信息 // 解析注解信息
ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class); ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class);
resolveExplicitConstraint(explicitListConstraintMap, explicitConstraint, dataDictionaryMapper); resolveExplicitConstraint(explicitListConstraintMap, explicitConstraint, dataDictionaryMapper);
} }
if (dayByMonth != null) { if (dayByMonth != null) {
for (int i = 0; i < dayByMonth.size(); i++) { for (int i = 0; i < dayByMonth.size(); i++) {
explicitListConstraintMap.put(size + i, dutyNameList); explicitListConstraintMap.put(size + i, dutyNameList);
} }
} }
} }
// String s = new String(fileName.getBytes(), "UTF-8"); // String s = new String(fileName.getBytes(), "UTF-8");
// response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(s, "UTF-8")); // response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(s, "UTF-8"));
ExcelWriterSheetBuilder excelWriterSheetBuilder =EasyExcel ExcelWriterSheetBuilder excelWriterSheetBuilder = EasyExcel
.write(getOutputStream(fileName, response, ExcelTypeEnum.XLSX)) .write(getOutputStream(fileName, response, ExcelTypeEnum.XLSX))
.head(dutyCarTitleList) .head(dutyCarTitleList)
.excelType(ExcelTypeEnum.XLSX).sheet(sheetName); .excelType(ExcelTypeEnum.XLSX).sheet(sheetName);
if ("WXXFZB".equals(typeFlag) && isTemplete) { if ("WXXFZB".equals(typeFlag) && isTemplete) {
List<Map<Integer, String[]>> fireStationExplicitListConstraintMap = new ArrayList<Map<Integer, String[]>>(); List<Map<Integer, String[]>> fireStationExplicitListConstraintMap = new ArrayList<Map<Integer, String[]>>();
List<List<Object>> resultList =new ArrayList<List<Object>>(); List<List<Object>> resultList = new ArrayList<List<Object>>();
data.stream().forEach(i -> { data.stream().forEach(i -> {
Map<Integer, String[]> map = new HashMap<>(); Map<Integer, String[]> map = new HashMap<>();
List<Object> detail = (List<Object>) i; List<Object> detail = (List<Object>) i;
// 微型消防站中的对应单位微型消防站下拉列表数据的集合 // 微型消防站中的对应单位微型消防站下拉列表数据的集合
List<String> fireStationDetailList = (List<String>) detail.get(detail.size()-1); List<String> fireStationDetailList = (List<String>) detail.get(detail.size() - 1);
String[] strings = new String[fireStationDetailList.size()]; String[] strings = new String[fireStationDetailList.size()];
map.put(4, fireStationDetailList.toArray(strings)); map.put(4, fireStationDetailList.toArray(strings));
map.putAll(explicitListConstraintMap); map.putAll(explicitListConstraintMap);
fireStationExplicitListConstraintMap.add(map); fireStationExplicitListConstraintMap.add(map);
detail.remove(detail.size()-1); detail.remove(detail.size() - 1);
resultList.add(detail); resultList.add(detail);
}); });
excelWriterSheetBuilder.registerWriteHandler( excelWriterSheetBuilder.registerWriteHandler(
new TemplateDynamicCellWriteHandlerDate(fireStationExplicitListConstraintMap)) new TemplateDynamicCellWriteHandlerDate(fireStationExplicitListConstraintMap))
.registerWriteHandler(new TemplateCellWriteHandler()) .registerWriteHandler(new TemplateCellWriteHandler())
.registerWriteHandler(horizontalCellStyleStrategy); .registerWriteHandler(horizontalCellStyleStrategy);
excelWriterSheetBuilder.doWrite(resultList); excelWriterSheetBuilder.doWrite(resultList);
} } else if ("JJZB".equals(typeFlag) && isTemplete) {
else if("JJZB".equals(typeFlag) && isTemplete){ List<Map<Integer, String[]>> fireStationExplicitListConstraintMap = new ArrayList<Map<Integer, String[]>>();
List<Map<Integer, String[]>> fireStationExplicitListConstraintMap = new ArrayList<Map<Integer, String[]>>(); List<List<Object>> resultList = new ArrayList<List<Object>>();
List<List<Object>> resultList =new ArrayList<List<Object>>(); data.stream().forEach(i -> {
data.stream().forEach(i -> { Map<Integer, String[]> map = new HashMap<>();
Map<Integer, String[]> map = new HashMap<>(); List<Object> detail = (List<Object>) i;
List<Object> detail = (List<Object>) i; // 微型消防站中的对应单位微型消防站下拉列表数据的集合
// 微型消防站中的对应单位微型消防站下拉列表数据的集合 List<String> fireStationDetailList = (List<String>) detail.get(detail.size() - 1);
List<String> fireStationDetailList = (List<String>) detail.get(detail.size()-1); String[] strings = new String[fireStationDetailList.size()];
String[] strings = new String[fireStationDetailList.size()]; List<String> postTypeNameDetailList = (List<String>) detail.get(detail.size() - 2);
List<String> postTypeNameDetailList = (List<String>) detail.get(detail.size()-2); String[] postTypeNamestrings = new String[postTypeNameDetailList.size()];
String[] postTypeNamestrings = new String[postTypeNameDetailList.size()]; List<String> userNameDetailList = (List<String>) detail.get(detail.size() - 3);
List<String> userNameDetailList = (List<String>) detail.get(detail.size()-3); String[] userNamestrings = new String[userNameDetailList.size()];
String[] userNamestrings = new String[userNameDetailList.size()]; List<String> companyNameList = (List<String>) detail.get(detail.size() - 4);
List<String> companyNameList = (List<String>) detail.get(detail.size()-4); String[] companyNameLists = new String[companyNameList.size()];
String[] companyNameLists = new String[companyNameList.size()]; map.put(4, fireStationDetailList.toArray(strings));
map.put(4, fireStationDetailList.toArray(strings)); map.put(3, postTypeNameDetailList.toArray(postTypeNamestrings));
map.put(3, postTypeNameDetailList.toArray(postTypeNamestrings)); map.put(2, userNameDetailList.toArray(userNamestrings));
map.put(2, userNameDetailList.toArray(userNamestrings)); map.put(1, companyNameList.toArray(companyNameLists));
map.put(1, companyNameList.toArray(companyNameLists)); map.putAll(explicitListConstraintMap);
map.putAll(explicitListConstraintMap); fireStationExplicitListConstraintMap.add(map);
fireStationExplicitListConstraintMap.add(map); detail.remove(detail.size() - 1);
detail.remove(detail.size()-1); detail.remove(detail.size() - 1);
detail.remove(detail.size()-1); detail.remove(detail.size() - 1);
detail.remove(detail.size()-1); detail.remove(detail.size() - 1);
detail.remove(detail.size()-1); resultList.add(detail);
resultList.add(detail); });
}); excelWriterSheetBuilder
excelWriterSheetBuilder .registerWriteHandler(
.registerWriteHandler( new TemplateDynamicCellWriteHandlerDate(fireStationExplicitListConstraintMap))
new TemplateDynamicCellWriteHandlerDate(fireStationExplicitListConstraintMap)) .registerWriteHandler(new TemplateCellWriteHandler())
.registerWriteHandler(new TemplateCellWriteHandler()) .registerWriteHandler(horizontalCellStyleStrategy);
.registerWriteHandler(horizontalCellStyleStrategy); excelWriterSheetBuilder.doWrite(resultList);
excelWriterSheetBuilder.doWrite(resultList); } else {
}else { excelWriterSheetBuilder = excelWriterSheetBuilder
excelWriterSheetBuilder = excelWriterSheetBuilder .registerWriteHandler(
.registerWriteHandler( new TemplateCellWriteHandlerDate(explicitListConstraintMap))
new TemplateCellWriteHandlerDate(explicitListConstraintMap)) .registerWriteHandler(new TemplateCellWriteHandler())
.registerWriteHandler(new TemplateCellWriteHandler()) .registerWriteHandler(horizontalCellStyleStrategy);
.registerWriteHandler(horizontalCellStyleStrategy); excelWriterSheetBuilder.doWrite(data);
excelWriterSheetBuilder.doWrite(data); }
} } catch (Exception e) {
} catch (Exception e) { e.printStackTrace();
e.printStackTrace(); throw new RuntimeException("系统异常!");
throw new RuntimeException("系统异常!");
}
} }
}
/**
/** * 读取 Excel(第一个 sheet) 指定行开始读取
* 读取 Excel(第一个 sheet) 指定行开始读取 *
* * @param excel 文件
* @param excel 文件 * @param rowType 模板实体类
* @param rowType 模板实体类 * @param header 指定不读取的表头行数,
* @param header 指定不读取的表头行数, * @param <T>
* @param <T> * @return 集合数据
* @return 集合数据 * @throws Exception
* @throws Exception */
*/ public static <T> List<T> readFirstSheetExcel(MultipartFile excel, Class<T> rowType, int header) throws Exception {
public static <T> List<T> readFirstSheetExcel(MultipartFile excel, Class<T> rowType, int header) throws Exception { ExcelReader reader = getReader(excel, header);
ExcelReader reader = getReader(excel, header); if (reader == null) {
if (reader == null) { return new ArrayList<>();
return new ArrayList<>(); }
} return readExcel(reader, rowType, 0);
return readExcel(reader, rowType, 0); }
}
/**
/** * 读取 Excel(多个 sheet)
* 读取 Excel(多个 sheet) *
* * @param reader 读取的excel
* @param reader 读取的excel * @param rowModel excel模板实体类
* @param rowModel excel模板实体类 * @param sheetCount sheet
* @param sheetCount sheet * @param <T>
* @param <T> * @return
* @return */
*/ public static <T> List<T> readExcel(ExcelReader reader, Class<T> rowModel, int sheetCount) {
public static <T> List<T> readExcel(ExcelReader reader, Class<T> rowModel, int sheetCount) { if (reader == null) {
if (reader == null) { return new ArrayList<>();
return new ArrayList<>(); }
} ExcelListener<T> excelListener = new ExcelListener<>();
ExcelListener<T> excelListener = new ExcelListener<>(); ReadSheet readSheet = EasyExcel.readSheet(sheetCount).head(rowModel).registerReadListener(excelListener)
ReadSheet readSheet = EasyExcel.readSheet(sheetCount).head(rowModel).registerReadListener(excelListener) .build();
.build(); reader.read(readSheet);
reader.read(readSheet); return excelListener.getList();
return excelListener.getList(); }
}
/**
/** * @param excel 需要解析的 Excel 文件
* @param excel 需要解析的 Excel 文件 * @param header 指定不读取表头行数,
* @param header 指定不读取表头行数, * @return
* @return * @throws Exception
* @throws Exception */
*/ public static ExcelReader getReader(MultipartFile excel, int header) throws Exception {
public static ExcelReader getReader(MultipartFile excel, int header) throws Exception { String fileName = excel.getOriginalFilename();
String fileName = excel.getOriginalFilename(); if (fileName == null) {
if (fileName == null) { throw new Exception("文件不存在!");
throw new Exception("文件不存在!"); }
} if (!fileName.toLowerCase().endsWith(ExcelTypeEnum.XLS.getValue())
if (!fileName.toLowerCase().endsWith(ExcelTypeEnum.XLS.getValue()) && !fileName.toLowerCase().endsWith(ExcelTypeEnum.XLSX.getValue())) {
&& !fileName.toLowerCase().endsWith(ExcelTypeEnum.XLSX.getValue())) { throw new Exception("文件类型异常!");
throw new Exception("文件类型异常!"); }
} InputStream inputStream;
InputStream inputStream; try {
try { inputStream = excel.getInputStream();
inputStream = excel.getInputStream(); return EasyExcel.read(inputStream).headRowNumber(header).build();
return EasyExcel.read(inputStream).headRowNumber(header).build(); } catch (IOException e) {
} catch (IOException e) { // do something
// do something }
} return null;
return null; }
}
/**
/** * 解析注解内容 获取下列表信息
* 解析注解内容 获取下列表信息 *
* * @param explicitConstraint
* @param explicitConstraint * @return
* @return */
*/ public static Map<Integer, String[]> resolveExplicitConstraint(Map<Integer, String[]> explicitListConstraintMap,
public static Map<Integer, String[]> resolveExplicitConstraint(Map<Integer, String[]> explicitListConstraintMap, ExplicitConstraint explicitConstraint, DataSources dataDictionaryMapper) {
ExplicitConstraint explicitConstraint, DataSources dataDictionaryMapper) { if (explicitConstraint == null) {
if (explicitConstraint == null) { return null;
return null; }
} // 固定下拉信息
// 固定下拉信息 String[] source = explicitConstraint.source();
String[] source = explicitConstraint.source(); if (source.length > 0) {
if (source.length > 0) { explicitListConstraintMap.put(explicitConstraint.indexNum(), source);
explicitListConstraintMap.put(explicitConstraint.indexNum(), source); }
} // 动态下拉信息
// 动态下拉信息 Class<? extends ExplicitInterface>[] classes = explicitConstraint.sourceClass();
Class<? extends ExplicitInterface>[] classes = explicitConstraint.sourceClass(); if (classes.length > 0) {
if (classes.length > 0) { ExplicitInterface explicitInterface = null;
ExplicitInterface explicitInterface = null; try {
try { explicitInterface = classes[0].newInstance();
explicitInterface = classes[0].newInstance(); String[] source1 = explicitInterface.source(explicitConstraint.type(), explicitConstraint.method(),
String[] source1 = explicitInterface.source(explicitConstraint.type(), explicitConstraint.method(), dataDictionaryMapper);
dataDictionaryMapper); if (source1.length > 0) {
if (source1.length > 0) { explicitListConstraintMap.put(explicitConstraint.indexNum(), source1);
explicitListConstraintMap.put(explicitConstraint.indexNum(), source1); }
} } catch (InstantiationException e) {
} catch (InstantiationException e) { e.printStackTrace();
e.printStackTrace(); } catch (IllegalAccessException e) {
} catch (IllegalAccessException e) { e.printStackTrace();
e.printStackTrace(); } catch (Exception e) {
} catch (Exception e) { e.printStackTrace();
e.printStackTrace(); }
} }
} return null;
return null; }
}
/**
/** * 导出文件时为Writer生成OutputStream
* 导出文件时为Writer生成OutputStream */
*/ private static OutputStream getOutputStream(String fileName, HttpServletResponse response,
private static OutputStream getOutputStream(String fileName, HttpServletResponse response, ExcelTypeEnum excelTypeEnum) throws Exception {
ExcelTypeEnum excelTypeEnum) throws Exception { // 创建本地文件
// 创建本地文件 String filePath = fileName + excelTypeEnum.getValue();
String filePath = fileName + excelTypeEnum.getValue(); try {
try { fileName = new String(filePath.getBytes(), "UTF-8");
fileName = new String(filePath.getBytes(), "UTF-8"); response.setCharacterEncoding(StandardCharsets.UTF_8.name());
response.setCharacterEncoding(StandardCharsets.UTF_8.name()); response.setContentType("application/vnd.ms-excel");
response.setContentType("application/vnd.ms-excel"); response.addHeader("Content-Disposition", "filename=" + fileName);
response.addHeader("Content-Disposition", "filename=" + fileName); response.setHeader("Content-Disposition",
response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(fileName, StandardCharsets.UTF_8.name()));
"attachment; filename=" + URLEncoder.encode(fileName, StandardCharsets.UTF_8.name())); return response.getOutputStream();
return response.getOutputStream(); } catch (IOException e) {
} catch (IOException e) { throw new Exception("系统异常");
throw new Exception("系统异常"); }
} }
}
/**
/** * 创建我的cell 策略
* 创建我的cell 策略 *
* * @return
* @return */
*/ public static HorizontalCellStyleStrategy setMyCellStyle() {
public static HorizontalCellStyleStrategy setMyCellStyle() {
// // 头的策略 // // 头的策略
// WriteCellStyle headWriteCellStyle = new WriteCellStyle(); // WriteCellStyle headWriteCellStyle = new WriteCellStyle();
...@@ -352,92 +354,183 @@ public class ExcelUtil { ...@@ -352,92 +354,183 @@ public class ExcelUtil {
// // 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭 // // 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// return horizontalCellStyleStrategy; // return horizontalCellStyleStrategy;
// 表头样式策略 // 表头样式策略
WriteCellStyle headWriteCellStyle = new WriteCellStyle(); WriteCellStyle headWriteCellStyle = new WriteCellStyle();
// 设置表头居中对齐 // 设置表头居中对齐
headWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER); headWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
// 表头前景色 // 表头前景色
headWriteCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); headWriteCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
WriteFont headWriteFont = new WriteFont(); WriteFont headWriteFont = new WriteFont();
headWriteFont.setBold(true); headWriteFont.setBold(true);
headWriteFont.setFontName("宋体"); headWriteFont.setFontName("宋体");
headWriteFont.setFontHeightInPoints((short) 10); headWriteFont.setFontHeightInPoints((short) 10);
headWriteCellStyle.setWriteFont(headWriteFont); headWriteCellStyle.setWriteFont(headWriteFont);
// 2 内容样式策略 // 2 内容样式策略
WriteCellStyle contentWriteCellStyle = new WriteCellStyle(); WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
WriteFont contentWriteFont = new WriteFont(); WriteFont contentWriteFont = new WriteFont();
// 内容字体大小 // 内容字体大小
contentWriteFont.setFontName("宋体"); contentWriteFont.setFontName("宋体");
contentWriteFont.setFontHeightInPoints((short) 10); contentWriteFont.setFontHeightInPoints((short) 10);
contentWriteCellStyle.setWriteFont(contentWriteFont); contentWriteCellStyle.setWriteFont(contentWriteFont);
// 设置自动换行 // 设置自动换行
contentWriteCellStyle.setWrapped(true); contentWriteCellStyle.setWrapped(true);
// 设置垂直居中 // 设置垂直居中
contentWriteCellStyle.setVerticalAlignment(VerticalAlignment.CENTER); contentWriteCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
// 头默认了 FillPatternType所以可以不指定。 // 头默认了 FillPatternType所以可以不指定。
// contentWriteCellStyle.setFillPatternType(FillPatternType.SOLID_FOREGROUND); // contentWriteCellStyle.setFillPatternType(FillPatternType.SOLID_FOREGROUND);
// 设置水平居中 // 设置水平居中
contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER); contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
// 设置边框样式 // 设置边框样式
contentWriteCellStyle.setBorderLeft(BorderStyle.THIN); contentWriteCellStyle.setBorderLeft(BorderStyle.THIN);
contentWriteCellStyle.setBorderTop(BorderStyle.THIN); contentWriteCellStyle.setBorderTop(BorderStyle.THIN);
contentWriteCellStyle.setBorderRight(BorderStyle.THIN); contentWriteCellStyle.setBorderRight(BorderStyle.THIN);
contentWriteCellStyle.setBorderBottom(BorderStyle.THIN); contentWriteCellStyle.setBorderBottom(BorderStyle.THIN);
return new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle); return new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
} }
/**
/** * 生成excel模板
* 生成excel模板 *
* * @param response
* @param response * @param fileName 下载的文件名,
* @param fileName 下载的文件名, * @param sheetName sheet名
* @param sheetName sheet名 * @param data 导出的数据
* @param data 导出的数据 */
*/ public static void createTemplateWithHeaders(HttpServletResponse response, String fileName, String sheetName,
public static void createTemplateWithHeaders(HttpServletResponse response, String fileName, String sheetName, List<? extends Object> data, List<List<String>> heads, List<String> headstr, String fileType) {
List<? extends Object> data, List<List<String>> heads, List<String> headstr, String fileType) {
HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle();
HorizontalCellStyleStrategy horizontalCellStyleStrategy = setMyCellStyle(); try {
try { // 下拉列表集合
// 下拉列表集合 List<List<Object>> listData = Lists.newArrayList();
List<List<Object>> listData = Lists.newArrayList();
for (Object t : data) { for (Object t : data) {
List<Object> rowLine = new ArrayList<>(); List<Object> rowLine = new ArrayList<>();
for(String head: headstr) { for (String head : headstr) {
List<Object> row = new ArrayList<>(); List<Object> row = new ArrayList<>();
String getMethodName = "get" + head.substring(0,1).toUpperCase() + head.substring(1); String getMethodName = "get" + head.substring(0, 1).toUpperCase() + head.substring(1);
Class clazz = t.getClass(); Class clazz = t.getClass();
Method getMethod; Method getMethod;
getMethod = clazz.getMethod(getMethodName, new Class[]{} ); getMethod = clazz.getMethod(getMethodName, new Class[]{});
Object value = getMethod.invoke(t, new Object[]{}); Object value = getMethod.invoke(t, new Object[]{});
rowLine.add(value); rowLine.add(value);
} }
listData.add(rowLine); listData.add(rowLine);
} }
ExcelTypeEnum typeEnum = null; ExcelTypeEnum typeEnum = null;
if("1039".equals(fileType)) { if ("1039".equals(fileType)) {
typeEnum = ExcelTypeEnum.XLS; typeEnum = ExcelTypeEnum.XLS;
} else if("1040".equals(fileType)) { } else if ("1040".equals(fileType)) {
typeEnum = ExcelTypeEnum.XLSX; typeEnum = ExcelTypeEnum.XLSX;
} }
EasyExcel.write(getOutputStream(fileName, response, typeEnum)) EasyExcel.write(getOutputStream(fileName, response, typeEnum))
.excelType(typeEnum).sheet(sheetName) .excelType(typeEnum).sheet(sheetName)
.registerWriteHandler(new TemplateCellWriteHandler()) .registerWriteHandler(new TemplateCellWriteHandler())
.registerWriteHandler(horizontalCellStyleStrategy) .registerWriteHandler(horizontalCellStyleStrategy)
.head(heads).doWrite(listData); .head(heads).doWrite(listData);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
throw new RuntimeException("系统异常!"); throw new RuntimeException("系统异常!");
} }
} }
private static ByteArrayOutputStream exportData2(List<?> subList, List<List<String>> heads) {
ByteArrayOutputStream singleOutputStream = new ByteArrayOutputStream();
ExcelWriter excelWriter = EasyExcel.write(singleOutputStream).build();
WriteSheet writeSheet = EasyExcel.writerSheet("电梯信息").build();
writeSheet.setHead(heads);
excelWriter.write(subList, writeSheet);
excelWriter.finish();
return singleOutputStream;
}
public static void exportWithMplThread2(HttpServletResponse response,
String fileName,
List<?> data,
List<List<String>> heads,
String fileType,
Executor executorService,
int pageSize) {
int dataSize = data.size();
int excelNumber = (int)Math.ceil((double)dataSize/pageSize);
int lastDataSize = dataSize % pageSize;
List<CompletableFuture<ByteArrayOutputStream>> futures = new ArrayList<>();
for (int i = 0; i < excelNumber; i++) {
int start = i * pageSize;
int end = start + pageSize;
if (i == excelNumber - 1) {
end = start + (lastDataSize == 0 ? pageSize : lastDataSize);
}
List<?> subList = data.subList(start, end);
CompletableFuture<ByteArrayOutputStream> future = CompletableFuture.supplyAsync(() -> exportData2(subList, heads), executorService)
.exceptionally(ex -> {
ex.printStackTrace();
return null; // Handle exception and return a default result or null
});
futures.add(future);
}
CompletableFuture<Void> allOfFuture = CompletableFuture.allOf(futures.toArray(new CompletableFuture[0]));
CompletableFuture<List<ByteArrayOutputStream>> combinedFuture = allOfFuture
.thenApply(v -> futures.stream()
.map(CompletableFuture::join)
.collect(Collectors.toList()));
List<ByteArrayOutputStream> results = combinedFuture.join();
try {
String encodedFileName = URLEncoder.encode(fileName + ".zip", StandardCharsets.UTF_8.name());
response.setContentType("application/zip");
response.setCharacterEncoding(StandardCharsets.UTF_8.name());
response.setHeader("Content-Disposition", "attachment; filename=" + encodedFileName);
List<File> tempList = new ArrayList<>();
ExcelTypeEnum typeEnum;
if ("1039".equals(fileType)) {
typeEnum = ExcelTypeEnum.XLS;
} else {
typeEnum = ExcelTypeEnum.XLSX;
}
results.forEach(b -> {
try {
File tempFile = File.createTempFile(fileName, typeEnum.getValue());
Files.write(tempFile.toPath(), b.toByteArray(), StandardOpenOption.CREATE);
tempList.add(tempFile);
} catch (IOException e) {
e.printStackTrace();
}
});
File[] tempFiles = tempList.toArray(new File[0]);
File zipFile = new File(fileName + ".zip");
ZipUtil.zip(zipFile, false, tempFiles);
Arrays.stream(tempFiles).forEach(File::delete);
try (OutputStream outputStream = response.getOutputStream();
FileInputStream zipFileStream = new FileInputStream(zipFile);
BufferedInputStream inputStream = new BufferedInputStream(zipFileStream)) {
byte[] buffer = new byte[8192];
int count;
while ((count = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, count);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
zipFile.delete();
}
} catch (Exception e) {
e.printStackTrace();
}
}
} }
package com.yeejoin.amos.latentdanger.business.service.impl; package com.yeejoin.amos.latentdanger.business.service.impl;
import com.google.common.collect.Sets;
import com.yeejoin.amos.boot.biz.common.constants.RuleConstant; import com.yeejoin.amos.boot.biz.common.constants.RuleConstant;
import com.yeejoin.amos.boot.module.common.api.dto.CompanyPerson; import com.yeejoin.amos.boot.module.common.api.dto.CompanyPerson;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto; import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
...@@ -8,7 +7,6 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult; ...@@ -8,7 +7,6 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.rule.RuleTrigger; import com.yeejoin.amos.component.rule.RuleTrigger;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import com.yeejoin.amos.latentdanger.business.dto.LatentDangerRo; import com.yeejoin.amos.latentdanger.business.dto.LatentDangerRo;
import com.yeejoin.amos.latentdanger.business.feign.JcsFeignClient; import com.yeejoin.amos.latentdanger.business.feign.JcsFeignClient;
...@@ -17,15 +15,16 @@ import com.yeejoin.amos.latentdanger.common.enums.LatentDangerState; ...@@ -17,15 +15,16 @@ import com.yeejoin.amos.latentdanger.common.enums.LatentDangerState;
import com.yeejoin.amos.latentdanger.dao.entity.LatentDanger; import com.yeejoin.amos.latentdanger.dao.entity.LatentDanger;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.util.*; import java.util.ArrayList;
import java.util.function.Consumer; import java.util.Collections;
import java.util.function.Predicate; import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* @Author: xl * @Author: xl
...@@ -48,7 +47,8 @@ public class RuleDangerService { ...@@ -48,7 +47,8 @@ public class RuleDangerService {
latentDangerRo.setTerminal(RuleConstant.APP); latentDangerRo.setTerminal(RuleConstant.APP);
List<RoleModel> result = Privilege.roleClient.queryRoleList(roleName, null).getResult(); List<RoleModel> result = Privilege.roleClient.queryRoleList(roleName, null).getResult();
if (result.size() > 0) { if (result.size() > 0) {
List<AgencyUserModel> userModels = Privilege.agencyUserClient.queryByRoleId(String.valueOf(result.get(0).getSequenceNbr()), null).getResult(); List<AgencyUserModel> userModels =
Privilege.agencyUserClient.queryByRoleId(String.valueOf(result.get(0).getSequenceNbr()), null).getResult();
//只发送给本部门的人员 //只发送给本部门的人员
Long pointId = latentDanger.getBizInfo().getLong("pointId"); Long pointId = latentDanger.getBizInfo().getLong("pointId");
......
...@@ -171,7 +171,9 @@ public class AsyncTask { ...@@ -171,7 +171,9 @@ public class AsyncTask {
try { try {
List<RoleModel> result = Privilege.roleClient.queryRoleList(roleName, null).getResult(); List<RoleModel> result = Privilege.roleClient.queryRoleList(roleName, null).getResult();
if (result.size() > 0) { if (result.size() > 0) {
List<AgencyUserModel> userModels = Privilege.agencyUserClient.queryByRoleId(String.valueOf(result.get(0).getSequenceNbr()), null).getResult(); List<AgencyUserModel> userModels =
Privilege.agencyUserClient.queryByRoleId(String.valueOf(result.get(0).getSequenceNbr()), null
).getResult();
List<String> userIds = userModels.stream().map(AgencyUserModel::getUserId).collect(Collectors.toList()); List<String> userIds = userModels.stream().map(AgencyUserModel::getUserId).collect(Collectors.toList());
model.setRecivers(userIds); model.setRecivers(userIds);
} }
......
package com.yeejoin.amos.latentdanger.feign; package com.yeejoin.amos.latentdanger.feign;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -41,6 +21,25 @@ import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel; ...@@ -41,6 +21,25 @@ import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import com.yeejoin.amos.latentdanger.business.util.CommonResponse; import com.yeejoin.amos.latentdanger.business.util.CommonResponse;
import com.yeejoin.amos.latentdanger.business.util.Toke; import com.yeejoin.amos.latentdanger.business.util.Toke;
import com.yeejoin.amos.latentdanger.common.remote.IAMOSSecurityServer; import com.yeejoin.amos.latentdanger.common.remote.IAMOSSecurityServer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Service("remoteSecurityService-danger") @Service("remoteSecurityService-danger")
public class RemoteSecurityService { public class RemoteSecurityService {
......
...@@ -6,9 +6,10 @@ import com.alibaba.fastjson.JSONObject; ...@@ -6,9 +6,10 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.beust.jcommander.internal.Sets; import com.beust.jcommander.internal.Sets;
import com.google.common.base.Joiner; import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.enums.RuleTypeEnum;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; 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.RedisUtils;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
...@@ -17,8 +18,19 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; ...@@ -17,8 +18,19 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.DepartmentModel; import com.yeejoin.amos.feign.privilege.model.DepartmentModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import com.yeejoin.amos.supervision.business.constants.XJConstant; import com.yeejoin.amos.supervision.business.constants.XJConstant;
import com.yeejoin.amos.supervision.business.dao.mapper.*; import com.yeejoin.amos.supervision.business.dao.mapper.CheckReportMapper;
import com.yeejoin.amos.supervision.business.dao.repository.*; import com.yeejoin.amos.supervision.business.dao.mapper.HiddenDangerMapper;
import com.yeejoin.amos.supervision.business.dao.mapper.PlanMapper;
import com.yeejoin.amos.supervision.business.dao.mapper.PlanTaskDetailMapper;
import com.yeejoin.amos.supervision.business.dao.mapper.PlanTaskMapper;
import com.yeejoin.amos.supervision.business.dao.mapper.PointMapper;
import com.yeejoin.amos.supervision.business.dao.mapper.RoutePointItemMapper;
import com.yeejoin.amos.supervision.business.dao.repository.ICheckDao;
import com.yeejoin.amos.supervision.business.dao.repository.IPlanDao;
import com.yeejoin.amos.supervision.business.dao.repository.IPlanTaskDao;
import com.yeejoin.amos.supervision.business.dao.repository.IPlanTaskDetailDao;
import com.yeejoin.amos.supervision.business.dao.repository.IPointInputItemDao;
import com.yeejoin.amos.supervision.business.dao.repository.IRoutePointDao;
import com.yeejoin.amos.supervision.business.dto.OrgUsrFormDto; import com.yeejoin.amos.supervision.business.dto.OrgUsrFormDto;
import com.yeejoin.amos.supervision.business.entity.mybatis.CheckChkExListBo; import com.yeejoin.amos.supervision.business.entity.mybatis.CheckChkExListBo;
import com.yeejoin.amos.supervision.business.entity.mybatis.PointCheckDetailBo; import com.yeejoin.amos.supervision.business.entity.mybatis.PointCheckDetailBo;
...@@ -37,23 +49,28 @@ import com.yeejoin.amos.supervision.business.vo.CalDateVo; ...@@ -37,23 +49,28 @@ import com.yeejoin.amos.supervision.business.vo.CalDateVo;
import com.yeejoin.amos.supervision.business.vo.CodeOrderVo; import com.yeejoin.amos.supervision.business.vo.CodeOrderVo;
import com.yeejoin.amos.supervision.business.vo.LeavePlanTaskVo; import com.yeejoin.amos.supervision.business.vo.LeavePlanTaskVo;
import com.yeejoin.amos.supervision.business.vo.PlanTaskVo; import com.yeejoin.amos.supervision.business.vo.PlanTaskVo;
import com.yeejoin.amos.supervision.common.enums.*; import com.yeejoin.amos.supervision.common.enums.PlanStatusEnum;
import com.yeejoin.amos.boot.biz.common.enums.RuleTypeEnum; import com.yeejoin.amos.supervision.common.enums.PlanTaskDetailIsFinishEnum;
import com.yeejoin.amos.supervision.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.supervision.core.common.dto.DangerDto; import com.yeejoin.amos.supervision.core.common.dto.DangerDto;
import com.yeejoin.amos.supervision.core.common.request.CommonPageable; import com.yeejoin.amos.supervision.core.common.request.CommonPageable;
import com.yeejoin.amos.supervision.core.common.response.AppCheckInputRespone; import com.yeejoin.amos.supervision.core.common.response.AppCheckInputRespone;
import com.yeejoin.amos.supervision.core.common.response.AppPointCheckRespone; import com.yeejoin.amos.supervision.core.common.response.AppPointCheckRespone;
import com.yeejoin.amos.supervision.core.util.DateUtil; import com.yeejoin.amos.supervision.core.util.DateUtil;
import com.yeejoin.amos.supervision.core.util.StringUtil; import com.yeejoin.amos.supervision.core.util.StringUtil;
import com.yeejoin.amos.supervision.dao.entity.*; import com.yeejoin.amos.supervision.dao.entity.Check;
import com.yeejoin.amos.supervision.dao.entity.CheckReport;
import com.yeejoin.amos.supervision.dao.entity.HiddenDanger;
import com.yeejoin.amos.supervision.dao.entity.Plan;
import com.yeejoin.amos.supervision.dao.entity.PlanTask;
import com.yeejoin.amos.supervision.dao.entity.PlanTaskDetail;
import com.yeejoin.amos.supervision.dao.entity.Point;
import com.yeejoin.amos.supervision.exception.YeeException; import com.yeejoin.amos.supervision.exception.YeeException;
import com.yeejoin.amos.supervision.feign.RemoteSecurityService; import com.yeejoin.amos.supervision.feign.RemoteSecurityService;
import com.yeejoin.amos.supervision.quartz.IJobService; import com.yeejoin.amos.supervision.quartz.IJobService;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import com.google.common.collect.Lists;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
...@@ -68,7 +85,17 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil; ...@@ -68,7 +85,17 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.sql.Time; import java.sql.Time;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
......
package com.yeejoin.amos.supervision.feign; package com.yeejoin.amos.supervision.feign;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.supervision.business.feign.JCSFeignClient;
import com.yeejoin.amos.supervision.common.remote.IAMOSSecurityServer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -42,9 +19,29 @@ import com.yeejoin.amos.feign.privilege.model.PermissionModel; ...@@ -42,9 +19,29 @@ import com.yeejoin.amos.feign.privilege.model.PermissionModel;
import com.yeejoin.amos.feign.privilege.util.DesUtil; import com.yeejoin.amos.feign.privilege.util.DesUtil;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel; import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import com.yeejoin.amos.supervision.business.feign.JCSFeignClient;
import com.yeejoin.amos.supervision.business.util.CommonResponse; import com.yeejoin.amos.supervision.business.util.CommonResponse;
import com.yeejoin.amos.supervision.business.util.Toke; import com.yeejoin.amos.supervision.business.util.Toke;
import org.typroject.tyboot.core.foundation.context.RequestContextModel; import com.yeejoin.amos.supervision.common.remote.IAMOSSecurityServer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Service("remoteSecurityService") @Service("remoteSecurityService")
public class RemoteSecurityService { public class RemoteSecurityService {
......
...@@ -11,4 +11,9 @@ public interface BizCommonConstant { ...@@ -11,4 +11,9 @@ public interface BizCommonConstant {
* 所有平台企业数据redisKey * 所有平台企业数据redisKey
*/ */
String COMPANY_TREE_REDIS_KEY = "REGULATOR_UNIT_TREE"; String COMPANY_TREE_REDIS_KEY = "REGULATOR_UNIT_TREE";
/**
* 电梯数据key
*/
String OLD_ELEVATOR_REDIS_KEY = "OLD_ELEVATOR_REDIS_KEY";
} }
...@@ -130,7 +130,7 @@ public class AlertCalledDto extends BaseDto { ...@@ -130,7 +130,7 @@ public class AlertCalledDto extends BaseDto {
private String useSiteCategory; private String useSiteCategory;
@ApiModelProperty(value = "电梯使用状态") @ApiModelProperty(value = "电梯使用状态")
private Integer useStatus; private String useStatus;
// 废弃 // 废弃
@ApiModelProperty(value = "警情地址") @ApiModelProperty(value = "警情地址")
......
...@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty; ...@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* 警情查询DTO * 警情查询DTO
...@@ -54,11 +55,11 @@ public class AlertCalledQueryDto { ...@@ -54,11 +55,11 @@ public class AlertCalledQueryDto {
@ApiModelProperty(value = "电梯地址") @ApiModelProperty(value = "电梯地址")
private String elevatorAddress; private String elevatorAddress;
@ExcelProperty(value = "所属区域", index = 7) @ExcelIgnore
@ApiModelProperty(value = "所属区域") @ApiModelProperty(value = "所属区域")
private String district; private String district;
@ExcelIgnore @ExcelProperty(value = "所属区域", index = 7)
@ApiModelProperty(value = "市+区") @ApiModelProperty(value = "市+区")
private String address; private String address;
...@@ -90,4 +91,6 @@ public class AlertCalledQueryDto { ...@@ -90,4 +91,6 @@ public class AlertCalledQueryDto {
@ApiModelProperty(value = "ID") @ApiModelProperty(value = "ID")
private Long sequenceNbr; private Long sequenceNbr;
@ExcelIgnore
List<String> ids;
} }
...@@ -30,11 +30,11 @@ public class BaseEnterpriseInfoDto extends BaseDto { ...@@ -30,11 +30,11 @@ public class BaseEnterpriseInfoDto extends BaseDto {
@ApiModelProperty(value = "统一社会信用代码") @ApiModelProperty(value = "统一社会信用代码")
@TableField("use_code") @TableField("use_code")
private String socialCreditCode; private String useCode;
@ApiModelProperty(value = "维护保养单位名称") @ApiModelProperty(value = "维护保养单位名称")
@TableField("supervise_org_name") @TableField("use_unit")
private String unitName; private String useUnit;
@ApiModelProperty(value = "省份") @ApiModelProperty(value = "省份")
@TableField("province") @TableField("province")
...@@ -49,7 +49,7 @@ public class BaseEnterpriseInfoDto extends BaseDto { ...@@ -49,7 +49,7 @@ public class BaseEnterpriseInfoDto extends BaseDto {
private String district; private String district;
@ApiModelProperty(value = "区域代码") @ApiModelProperty(value = "区域代码")
@TableField("district") @TableField("supervise_code")
private String regionCode; private String regionCode;
@ApiModelProperty(value = "地址(详细地址,包括道路、门牌号码)") @ApiModelProperty(value = "地址(详细地址,包括道路、门牌号码)")
......
...@@ -20,10 +20,10 @@ import java.util.List; ...@@ -20,10 +20,10 @@ import java.util.List;
public class EnterpriseInfoExportDto { public class EnterpriseInfoExportDto {
@ExcelProperty(value = "统一社会信用代码", index = 1) @ExcelProperty(value = "统一社会信用代码", index = 1)
private String socialCreditCode; private String useCode;
@ExcelProperty(value = "单位名称", index = 0) @ExcelProperty(value = "单位名称", index = 0)
private String unitName; private String useUnit;
@ExcelProperty(value = "所属区域", index = 2) @ExcelProperty(value = "所属区域", index = 2)
private String district; private String district;
......
...@@ -69,9 +69,13 @@ public class RescueProcessDto extends BaseDto { ...@@ -69,9 +69,13 @@ public class RescueProcessDto extends BaseDto {
@ApiModelProperty(value = "是否伤亡") @ApiModelProperty(value = "是否伤亡")
private Boolean casualtiesStatus; private Boolean casualtiesStatus;
@ApiModelProperty(value = "伤亡情况") @ApiModelProperty(value = "受伤人数")
private String casualtiesInfo; private String casualtiesInfo;
@ApiModelProperty(value = "死亡人数")
private String dieNum;
@ApiModelProperty(value = "是否救援成功") @ApiModelProperty(value = "是否救援成功")
private Boolean rescueStatus; private Boolean rescueStatus;
......
...@@ -19,7 +19,7 @@ public class SpecialEquipmentDto { ...@@ -19,7 +19,7 @@ public class SpecialEquipmentDto {
@ExcelIgnore @ExcelIgnore
@ApiModelProperty(value = "主键ID") @ApiModelProperty(value = "主键ID")
protected Long sequenceNbr; protected String sequenceNbr;
@ApiModelProperty(value = "电梯应急救援识别码") @ApiModelProperty(value = "电梯应急救援识别码")
private Integer rescueCode; private Integer rescueCode;
......
...@@ -26,11 +26,11 @@ public class EnterpriseInfo extends BaseEntity { ...@@ -26,11 +26,11 @@ public class EnterpriseInfo extends BaseEntity {
@ApiModelProperty(value = "统一社会信用代码") @ApiModelProperty(value = "统一社会信用代码")
@TableField("use_code") @TableField("use_code")
private String socialCreditCode; private String useCode;
@ApiModelProperty(value = "维护保养单位名称") @ApiModelProperty(value = "维护保养单位名称")
@TableField("use_unit") @TableField("use_unit")
private String unitName; private String useUnit;
@ApiModelProperty(value = "省份") @ApiModelProperty(value = "省份")
@TableField("province") @TableField("province")
...@@ -45,7 +45,7 @@ public class EnterpriseInfo extends BaseEntity { ...@@ -45,7 +45,7 @@ public class EnterpriseInfo extends BaseEntity {
private String district; private String district;
@ApiModelProperty(value = "区域代码") @ApiModelProperty(value = "区域代码")
@TableField("district") @TableField("supervise_code")
private String regionCode; private String regionCode;
@ApiModelProperty(value = "地址(详细地址,包括道路、门牌号码)") @ApiModelProperty(value = "地址(详细地址,包括道路、门牌号码)")
......
...@@ -89,12 +89,18 @@ public class RescueProcess extends BaseEntity { ...@@ -89,12 +89,18 @@ public class RescueProcess extends BaseEntity {
private Boolean casualtiesStatus; private Boolean casualtiesStatus;
/** /**
* 伤亡情况 * 受伤人数
*/ */
@TableField("casualties_info") @TableField("casualties_info")
private String casualtiesInfo; private String casualtiesInfo;
/** /**
* 死亡人数
*/
@TableField("die_num")
private String dieNum;
/**
* 是否救援成功 * 是否救援成功
*/ */
@TableField("rescue_status") @TableField("rescue_status")
......
...@@ -72,7 +72,8 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> { ...@@ -72,7 +72,8 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> {
@Param("alertStatus") String alertStatus, @Param("alertStatus") String alertStatus,
@Param("sortParam") String sortParam, @Param("sortParam") String sortParam,
@Param("sortRule") String sortRule, @Param("sortRule") String sortRule,
@Param("userIds") Set<String> userIds); @Param("userIds") Set<String> userIds,
@Param("ids") List<String> ids);
Map<String, Integer> getTodayEmergencyCount(String regionCode); Map<String, Integer> getTodayEmergencyCount(String regionCode);
......
...@@ -52,7 +52,8 @@ public interface IAlertCalledService { ...@@ -52,7 +52,8 @@ public interface IAlertCalledService {
String alertStage, String alertStage,
String alertStatus, String alertStatus,
String sortParam, String sortParam,
String sortRule); String sortRule,
List<String> ids);
/** /**
* 更新警情阶段信息 * 更新警情阶段信息
......
...@@ -257,6 +257,12 @@ ...@@ -257,6 +257,12 @@
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="ids != null and ids.size>0">
AND a.sequence_nbr in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="sortParam != null and sortParam != '' and sortRule != null and sortRule != '' "> <if test="sortParam != null and sortParam != '' and sortRule != null and sortRule != '' ">
ORDER BY ${sortParam} ${sortRule} ORDER BY ${sortParam} ${sortRule}
</if> </if>
...@@ -541,12 +547,10 @@ ...@@ -541,12 +547,10 @@
ifnull ( ibjui."LONGITUDE_LATITUDE"::json->> 'longitude', null ) AS longitude, ifnull ( ibjui."LONGITUDE_LATITUDE"::json->> 'longitude', null ) AS longitude,
a.alert_stage AS alertStatus, a.alert_stage AS alertStatus,
ibjui.RECORD AS elevatorId, ibjui.RECORD AS elevatorId,
ibjri.SUPERVISORY_CODE AS elevatorCode ibjoi.SUPERVISORY_CODE AS elevatorCode
FROM tz_alert_called a FROM tz_alert_called a
LEFT JOIN tcb_elevator e ON e.sequence_nbr = a.equipment_id
LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi.RECORD = a.equipment_id LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi.RECORD = a.equipment_id
LEFT JOIN idx_biz_jg_use_info ibjui ON ibjui.RECORD = ibjoi.RECORD LEFT JOIN idx_biz_jg_use_info ibjui ON ibjui.RECORD = ibjoi.RECORD
LEFT JOIN idx_biz_jg_register_info ibjri ON ibjri.RECORD = ibjoi.RECORD
WHERE a.is_delete = 0 WHERE a.is_delete = 0
<choose> <choose>
<when test="isHistory == true"> <when test="isHistory == true">
......
...@@ -110,7 +110,7 @@ ...@@ -110,7 +110,7 @@
LEFT JOIN idx_biz_jg_register_info jri on jui.RECORD = jri.RECORD LEFT JOIN idx_biz_jg_register_info jri on jui.RECORD = jri.RECORD
LEFT JOIN idx_biz_jg_maintenance_record_info mri on jui.RECORD = mri.RECORD LEFT JOIN idx_biz_jg_maintenance_record_info mri on jui.RECORD = mri.RECORD
<where> <where>
jri.EQU_LIST = '3000' jri.EQU_LIST = '3000' AND joi.CLAIM_STATUS = '已认领' and jui.RECORD is not null
<if test="dto.regionCode != null and dto.regionCode != ''"> <if test="dto.regionCode != null and dto.regionCode != ''">
and (jui.PROVINCE = #{dto.regionCode} or jui.CITY = #{dto.regionCode} or jui.COUNTY = #{dto.regionCode} and (jui.PROVINCE = #{dto.regionCode} or jui.CITY = #{dto.regionCode} or jui.COUNTY = #{dto.regionCode}
) )
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<if test="dto.useUnit != null and dto.useUnit != ''"> <if test="dto.useUnit != null and dto.useUnit != ''">
and jui.USE_UNIT_NAME like concat('%',#{dto.useUnit},'%') and jui.USE_UNIT_NAME like concat('%',#{dto.useUnit},'%')
</if> </if>
GROUP BY
joi.RECORD
</where> </where>
</select> </select>
<!-- <select id="selectExportDataNew" resultType="com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDtoNew">--> <!-- <select id="selectExportDataNew" resultType="com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDtoNew">-->
...@@ -332,7 +333,6 @@ ...@@ -332,7 +333,6 @@
<select id="selectElevatorList" resultType="java.util.Map"> <select id="selectElevatorList" resultType="java.util.Map">
SELECT SELECT
jui.RECORD AS sequenceNbr, jui.RECORD AS sequenceNbr,
jui.USE_UNIT_NAME AS useUnit,
ifnull ( joi.CODE96333, null ) AS rescueCode, ifnull ( joi.CODE96333, null ) AS rescueCode,
ifnull ( joi.SUPERVISORY_CODE, null ) AS registerCode, ifnull ( joi.SUPERVISORY_CODE, null ) AS registerCode,
ifnull ( jui.USE_UNIT_NAME, null ) AS useUnit, ifnull ( jui.USE_UNIT_NAME, null ) AS useUnit,
...@@ -362,9 +362,8 @@ ...@@ -362,9 +362,8 @@
AND jui.RECORD = #{elevator.originalId} AND jui.RECORD = #{elevator.originalId}
</if> </if>
<if test="elevator.address!=null and elevator.address!='' "> <if test="elevator.address!=null and elevator.address!='' ">
AND jui.ADDRESS = #{elevator.address} AND jui.ADDRESS like concat('%', #{elevator.address}, '%')
</if> </if>
limit 1
</select> </select>
<select id="selectRegisterFiles" resultType="java.util.Map"> <select id="selectRegisterFiles" resultType="java.util.Map">
select USE_REGISTRATION_CERTIFICATE, USE_SIGN, PRODUCT_PHOTO select USE_REGISTRATION_CERTIFICATE, USE_SIGN, PRODUCT_PHOTO
...@@ -400,7 +399,7 @@ ...@@ -400,7 +399,7 @@
LEFT JOIN idx_biz_jg_register_info jri on jui.RECORD = jri.RECORD LEFT JOIN idx_biz_jg_register_info jri on jui.RECORD = jri.RECORD
LEFT JOIN idx_biz_jg_maintenance_record_info mri on jui.RECORD = mri.RECORD LEFT JOIN idx_biz_jg_maintenance_record_info mri on jui.RECORD = mri.RECORD
<where> <where>
jri.EQU_LIST = '3000' jri.EQU_LIST = '3000' AND joi.CLAIM_STATUS = '已认领' and jui.RECORD is not null
<if test="dto.regionCode != null and dto.regionCode != ''"> <if test="dto.regionCode != null and dto.regionCode != ''">
and (jui.PROVINCE = #{dto.regionCode} or jui.CITY = #{dto.regionCode} or jui.COUNTY = #{dto.regionCode} and (jui.PROVINCE = #{dto.regionCode} or jui.CITY = #{dto.regionCode} or jui.COUNTY = #{dto.regionCode}
) )
...@@ -430,7 +429,8 @@ ...@@ -430,7 +429,8 @@
</if> </if>
</where> </where>
limit 10 GROUP BY
joi.RECORD
</select> </select>
<select id="selectElevatorEsList" resultType="java.util.Map"> <select id="selectElevatorEsList" resultType="java.util.Map">
...@@ -471,15 +471,15 @@ limit 10 ...@@ -471,15 +471,15 @@ limit 10
<select id="selectMtByAlertId" resultType="java.util.Map"> <select id="selectMtByAlertId" resultType="java.util.Map">
SELECT SELECT
tbei.sequence_nbr AS sequenceNbr,
ME_MASTER AS userName, ME_MASTER AS userName,
EMERGENCYCALL AS phone, EMERGENCYCALL AS phone,
tbei.address AS address, tbei.address AS address,
tbei.use_unit AS unitName, tbei.use_unit AS unitName,
ibjui."USE_UNIT_CREDIT_CODE" AS useCode tbei.use_code AS useCode
FROM FROM
idx_biz_jg_maintenance_record_info ibjmri idx_biz_jg_maintenance_record_info ibjmri
LEFT JOIN idx_biz_jg_use_info ibjui ON ibjmri."RECORD" = ibjui."RECORD" LEFT JOIN tz_base_enterprise_info tbei ON ibjmri."ME_UNIT_CREDIT_CODE" = tbei.use_code
LEFT JOIN tz_base_enterprise_info tbei ON ibjui."USE_UNIT_CREDIT_CODE" = tbei.use_code
where where
ibjmri.RECORD = #{sequenceNbr} ibjmri.RECORD = #{sequenceNbr}
order by ibjmri.REC_DATE order by ibjmri.REC_DATE
...@@ -491,7 +491,8 @@ limit 10 ...@@ -491,7 +491,8 @@ limit 10
ibjui.SAFETY_MANAGER AS manager, ibjui.SAFETY_MANAGER AS manager,
ibjui.PHONE AS managerPhone, ibjui.PHONE AS managerPhone,
ibjui.USE_UNIT_NAME as useUnitName, ibjui.USE_UNIT_NAME as useUnitName,
tbei.address AS address tbei.address AS address,
tbei.sequence_nbr AS unitId
FROM FROM
idx_biz_jg_use_info ibjui idx_biz_jg_use_info ibjui
LEFT JOIN tz_base_enterprise_info tbei ON ibjui.USE_UNIT_CREDIT_CODE = tbei.use_code LEFT JOIN tz_base_enterprise_info tbei ON ibjui.USE_UNIT_CREDIT_CODE = tbei.use_code
......
...@@ -195,7 +195,7 @@ public class AlertCalledController extends BaseController { ...@@ -195,7 +195,7 @@ public class AlertCalledController extends BaseController {
alertCalledDto.setAddress(elevator.getAddress()); alertCalledDto.setAddress(elevator.getAddress());
alertCalledDto.setRegistrationCode(elevator.getRegisterCode()); alertCalledDto.setRegistrationCode(elevator.getRegisterCode());
alertCalledDto.setDeviceId(String.valueOf(elevator.getRescueCode())); alertCalledDto.setDeviceId(String.valueOf(elevator.getRescueCode()));
alertCalledDto.setUseStatus(elevator.getUseStatus()); alertCalledDto.setUseStatus(String.valueOf(elevator.getUseStatus()));
alertCalledDto.setUseSiteCategory(elevator.getUseSiteCategory()); alertCalledDto.setUseSiteCategory(elevator.getUseSiteCategory());
alertCalledDto.setAlarmType(AlertStageEnums.getEnumById(alertCalledDto.getAlarmTypeCode()).getValue()); alertCalledDto.setAlarmType(AlertStageEnums.getEnumById(alertCalledDto.getAlarmTypeCode()).getValue());
alertCalledDto.setEquipmentClassification("电梯"); alertCalledDto.setEquipmentClassification("电梯");
...@@ -454,7 +454,7 @@ public class AlertCalledController extends BaseController { ...@@ -454,7 +454,7 @@ public class AlertCalledController extends BaseController {
if (!ValidationUtil.isEmpty(alertCalled.getCallTimeStart()) if (!ValidationUtil.isEmpty(alertCalled.getCallTimeStart())
&& !ValidationUtil.isEmpty(alertCalled.getCallTimeEnd())) { && !ValidationUtil.isEmpty(alertCalled.getCallTimeEnd())) {
queryWrapper.between("call_time", alertCalled.getCallTimeStart(), queryWrapper.between("call_time", alertCalled.getCallTimeStart(),
alertCalled.getCallTimeEnd().getTime()); alertCalled.getCallTimeEnd());
} }
} else { } else {
queryWrapper.between("call_time", DateUtils.stampToDate(System.currentTimeMillis(), DateUtils.DATE_PATTERN), queryWrapper.between("call_time", DateUtils.stampToDate(System.currentTimeMillis(), DateUtils.DATE_PATTERN),
...@@ -506,7 +506,7 @@ public class AlertCalledController extends BaseController { ...@@ -506,7 +506,7 @@ public class AlertCalledController extends BaseController {
alertCalledQueryDto.getWorkOrderNumber(),alertCalledQueryDto.getCreator(),alertCalledQueryDto.getEmergency(),alertCalledQueryDto.getEmergencyTimeStart(), alertCalledQueryDto.getWorkOrderNumber(),alertCalledQueryDto.getCreator(),alertCalledQueryDto.getEmergency(),alertCalledQueryDto.getEmergencyTimeStart(),
alertCalledQueryDto.getEmergencyTimeEnd(),alertCalledQueryDto.getEmergencyCall(),alertCalledQueryDto.getDeviceId(),alertCalledQueryDto.getElevatorAddress(), alertCalledQueryDto.getEmergencyTimeEnd(),alertCalledQueryDto.getEmergencyCall(),alertCalledQueryDto.getDeviceId(),alertCalledQueryDto.getElevatorAddress(),
alertCalledQueryDto.getDistrict(),alertCalledQueryDto.getAlertType(),alertCalledQueryDto.getAlertSource(),alertCalledQueryDto.getAlertStage(),alertCalledQueryDto.getAlertStatus(), alertCalledQueryDto.getDistrict(),alertCalledQueryDto.getAlertType(),alertCalledQueryDto.getAlertSource(),alertCalledQueryDto.getAlertStage(),alertCalledQueryDto.getAlertStatus(),
sortParam,sortRule); sortParam,sortRule, null);
Page<AlertCalledQueryDto> result = new Page<AlertCalledQueryDto>(alertCalledQueryDto.getPageNum(), Page<AlertCalledQueryDto> result = new Page<AlertCalledQueryDto>(alertCalledQueryDto.getPageNum(),
alertCalledQueryDto.getPageSize()); alertCalledQueryDto.getPageSize());
long totle = pageBean.getTotal(); long totle = pageBean.getTotal();
...@@ -541,7 +541,7 @@ public class AlertCalledController extends BaseController { ...@@ -541,7 +541,7 @@ public class AlertCalledController extends BaseController {
alertCalledQueryDto.getWorkOrderNumber(),alertCalledQueryDto.getCreator(),alertCalledQueryDto.getEmergency(),alertCalledQueryDto.getEmergencyTimeStart(), alertCalledQueryDto.getWorkOrderNumber(),alertCalledQueryDto.getCreator(),alertCalledQueryDto.getEmergency(),alertCalledQueryDto.getEmergencyTimeStart(),
alertCalledQueryDto.getEmergencyTimeEnd(),alertCalledQueryDto.getEmergencyCall(),alertCalledQueryDto.getDeviceId(),alertCalledQueryDto.getElevatorAddress(), alertCalledQueryDto.getEmergencyTimeEnd(),alertCalledQueryDto.getEmergencyCall(),alertCalledQueryDto.getDeviceId(),alertCalledQueryDto.getElevatorAddress(),
alertCalledQueryDto.getDistrict(),alertCalledQueryDto.getAlertType(),alertCalledQueryDto.getAlertSource(),alertCalledQueryDto.getAlertStage(),alertCalledQueryDto.getAlertStatus(), alertCalledQueryDto.getDistrict(),alertCalledQueryDto.getAlertType(),alertCalledQueryDto.getAlertSource(),alertCalledQueryDto.getAlertStage(),alertCalledQueryDto.getAlertStatus(),
sortParam,sortRule); sortParam,sortRule, alertCalledQueryDto.getIds());
List<AlertCalledQueryDto> list = pageBean.getRecords(); List<AlertCalledQueryDto> list = pageBean.getRecords();
String fileName = "处置记录" + System.currentTimeMillis(); String fileName = "处置记录" + System.currentTimeMillis();
......
...@@ -427,7 +427,7 @@ public class ElevatorController extends BaseController { ...@@ -427,7 +427,7 @@ public class ElevatorController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/init", method = RequestMethod.GET) @RequestMapping(value = "/init", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "电梯信息放入es", notes = "电梯信息放入es") @ApiOperation(httpMethod = "GET", value = "电梯信息放入es", notes = "电梯信息放入es")
public void init(@RequestParam(value = "num",required = false) Integer num) { public ResponseModel<String> init(@RequestParam(value = "num",required = false) Integer num) {
Integer count = iElevatorService.selectUseInfoCount(); Integer count = iElevatorService.selectUseInfoCount();
Integer times = 0; Integer times = 0;
if (ValidationUtil.isEmpty(num) && count != 0) { if (ValidationUtil.isEmpty(num) && count != 0) {
...@@ -441,13 +441,16 @@ public class ElevatorController extends BaseController { ...@@ -441,13 +441,16 @@ public class ElevatorController extends BaseController {
} }
for(int i = 0; i <= times ; i ++ ) { for(int i = 0; i <= times ; i ++ ) {
List<Map<String,Object>> mapList = iElevatorService.selectElevatorEsList(1,1000); List<Map<String,Object>> mapList = iElevatorService.selectElevatorEsList(0,1000);
esElevatorService.saveEsElevator2ES(mapList); if (!ObjectUtils.isEmpty(mapList)){
esElevatorService.saveEsElevator2ES(mapList);
}
// for (Elevator el:elevatorPage.getRecords() // for (Elevator el:elevatorPage.getRecords()
// ) { // ) {
// esElevatorService.saveEsElevatorToES(el); // esElevatorService.saveEsElevatorToES(el);
// } // }
} }
return ResponseHelper.buildResponse("success");
} }
......
...@@ -251,7 +251,7 @@ public class MaintenanceUnitController extends BaseController { ...@@ -251,7 +251,7 @@ public class MaintenanceUnitController extends BaseController {
Object o = field.get(enterpriseInfo); Object o = field.get(enterpriseInfo);
if (o != null) { if (o != null) {
String name = NameUtils.camel2Underline(field.getName()); String name = NameUtils.camel2Underline(field.getName());
if ("city".equalsIgnoreCase(name) || "district".equalsIgnoreCase(name) || "qualification_level".equalsIgnoreCase(name)) { if ("city".equalsIgnoreCase(name) ) {
String fileValue = (String) o; String fileValue = (String) o;
enterpriseInfoQueryWrapper.eq(name, fileValue); enterpriseInfoQueryWrapper.eq(name, fileValue);
} else if ("credit_level".equalsIgnoreCase(name)) { } else if ("credit_level".equalsIgnoreCase(name)) {
...@@ -264,7 +264,7 @@ public class MaintenanceUnitController extends BaseController { ...@@ -264,7 +264,7 @@ public class MaintenanceUnitController extends BaseController {
// 此处由于写接口时表数据还未进行整理,所以此处先默认用文字做查询 // 此处由于写接口时表数据还未进行整理,所以此处先默认用文字做查询
enterpriseInfoQueryWrapper.like(name, "使用单位"); enterpriseInfoQueryWrapper.like(name, "使用单位");
} else { } else {
enterpriseInfoQueryWrapper.notLike(name, "使用单位"); enterpriseInfoQueryWrapper.like(name, "维保单位");
} }
} else { } else {
String fileValue = (String) o; String fileValue = (String) o;
...@@ -301,7 +301,7 @@ public class MaintenanceUnitController extends BaseController { ...@@ -301,7 +301,7 @@ public class MaintenanceUnitController extends BaseController {
Object o = field.get(enterpriseInfo); Object o = field.get(enterpriseInfo);
if (o != null) { if (o != null) {
String name = NameUtils.camel2Underline(field.getName()); String name = NameUtils.camel2Underline(field.getName());
if ("city".equalsIgnoreCase(name) || "district".equalsIgnoreCase(name) || "qualification_level".equalsIgnoreCase(name)) { if ("city".equalsIgnoreCase(name) ) {
String fileValue = (String) o; String fileValue = (String) o;
enterpriseInfoQueryWrapper.eq(name, fileValue); enterpriseInfoQueryWrapper.eq(name, fileValue);
} else if ("credit_level".equalsIgnoreCase(name)) { } else if ("credit_level".equalsIgnoreCase(name)) {
...@@ -314,7 +314,7 @@ public class MaintenanceUnitController extends BaseController { ...@@ -314,7 +314,7 @@ public class MaintenanceUnitController extends BaseController {
// 此处由于写接口时表数据还未进行整理,所以此处先默认用文字做查询 // 此处由于写接口时表数据还未进行整理,所以此处先默认用文字做查询
enterpriseInfoQueryWrapper.like(name, "使用单位"); enterpriseInfoQueryWrapper.like(name, "使用单位");
} else { } else {
enterpriseInfoQueryWrapper.notLike(name, "使用单位"); enterpriseInfoQueryWrapper.like(name, "维保单位");
} }
} else { } else {
String fileValue = (String) o; String fileValue = (String) o;
...@@ -380,6 +380,7 @@ public class MaintenanceUnitController extends BaseController { ...@@ -380,6 +380,7 @@ public class MaintenanceUnitController extends BaseController {
MaintenanceUnitDto maintenanceUnitVo = new MaintenanceUnitDto(); MaintenanceUnitDto maintenanceUnitVo = new MaintenanceUnitDto();
maintenanceUnitVo.setUnitName(ObjectUtils.isEmpty(list.get(0).get("unitName")) ? null :String.valueOf(list.get(0).get("unitName"))); maintenanceUnitVo.setUnitName(ObjectUtils.isEmpty(list.get(0).get("unitName")) ? null :String.valueOf(list.get(0).get("unitName")));
maintenanceUnitVo.setAddress(ObjectUtils.isEmpty(list.get(0).get("address")) ? null :String.valueOf(list.get(0).get("address"))); maintenanceUnitVo.setAddress(ObjectUtils.isEmpty(list.get(0).get("address")) ? null :String.valueOf(list.get(0).get("address")));
maintenanceUnitVo.setSequenceNbr(ObjectUtils.isEmpty(list.get(0).get("sequenceNbr")) ? null : Long.valueOf(String.valueOf(list.get(0).get("sequenceNbr"))));
List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>(); List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>();
DutyPersonDto principal = new DutyPersonDto(); DutyPersonDto principal = new DutyPersonDto();
principal.setDeptName("主要负责人1"); principal.setDeptName("主要负责人1");
......
...@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; ...@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil; import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.elevator.api.common.BizCommonConstant;
import com.yeejoin.amos.boot.module.elevator.api.common.StringUtil;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDto; import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.ExportDto; import com.yeejoin.amos.boot.module.elevator.api.dto.ExportDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.TemplateExport; import com.yeejoin.amos.boot.module.elevator.api.entity.TemplateExport;
...@@ -15,7 +17,10 @@ import com.yeejoin.amos.boot.module.elevator.api.service.IRescueStationService; ...@@ -15,7 +17,10 @@ import com.yeejoin.amos.boot.module.elevator.api.service.IRescueStationService;
import com.yeejoin.amos.boot.module.elevator.api.service.IUseUnitService; import com.yeejoin.amos.boot.module.elevator.api.service.IUseUnitService;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.ElevatorServiceImpl; import com.yeejoin.amos.boot.module.elevator.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.VoiceRecordFileServiceImpl; import com.yeejoin.amos.boot.module.elevator.biz.service.impl.VoiceRecordFileServiceImpl;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.util.StopWatch;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -25,6 +30,7 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController; ...@@ -25,6 +30,7 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.Executor;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.TemplateExportServiceImpl; import com.yeejoin.amos.boot.module.elevator.biz.service.impl.TemplateExportServiceImpl;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
...@@ -69,6 +75,12 @@ public class TemplateExportController extends BaseController { ...@@ -69,6 +75,12 @@ public class TemplateExportController extends BaseController {
@Autowired @Autowired
VoiceRecordFileServiceImpl voiceRecordFileServiceImpl; VoiceRecordFileServiceImpl voiceRecordFileServiceImpl;
@Autowired
RedisUtil redisUtil;
@Autowired
Executor customExecutor;
/** /**
* 新增模板表 * 新增模板表
* *
...@@ -177,7 +189,7 @@ public class TemplateExportController extends BaseController { ...@@ -177,7 +189,7 @@ public class TemplateExportController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "POST", value = "根据字段类型导出", notes = "根据字段类型导出") @ApiOperation(httpMethod = "POST", value = "根据字段类型导出", notes = "根据字段类型导出")
@PostMapping("/exportByTypeParams") @PostMapping("/exportByTypeParams")
public void exportByTypeParams(@RequestBody ExportDto exportDto, HttpServletResponse response) { public void exportByTypeParams(@RequestBody ExportDto exportDto, HttpServletResponse response) throws Exception {
if (ValidationUtil.isEmpty(exportDto.getExportArray()) if (ValidationUtil.isEmpty(exportDto.getExportArray())
|| ValidationUtil.isEmpty(exportDto.getDataType()) || ValidationUtil.isEmpty(exportDto.getDataType())
|| ValidationUtil.isEmpty(exportDto.getFileName()) || ValidationUtil.isEmpty(exportDto.getFileName())
...@@ -206,9 +218,22 @@ public class TemplateExportController extends BaseController { ...@@ -206,9 +218,22 @@ public class TemplateExportController extends BaseController {
heads.add(tempList); heads.add(tempList);
} }
String fileName = exportDto.getFileName(); String fileName = exportDto.getFileName();
if("ELEVATOR".equals(exportDto.getExportType())) { // 查询电梯数据 // 查询电梯数据
list = elevatorServiceImpl.selectExportData(exportDto.getExportId()); if("ELEVATOR".equals(exportDto.getExportType())) {
sheetName = "电梯信息"; if(StringUtil.isNotEmpty(exportDto.getExportId())){
// 选择指定的行-导出逻辑
list = elevatorServiceImpl.selectExportData(exportDto.getExportId());
} else {
// 全部导出-导出逻辑,由于电梯为老存量数据,只是查看,故全部放到redis,解决全部导出时性能问题
if(redisUtil.hasKey(BizCommonConstant.OLD_ELEVATOR_REDIS_KEY)){
list = JSONObject.parseArray(redisUtil.get(BizCommonConstant.OLD_ELEVATOR_REDIS_KEY).toString(),ElevatorDto.class);
} else {
list = elevatorServiceImpl.selectExportData(exportDto.getExportId());
redisUtil.set(BizCommonConstant.OLD_ELEVATOR_REDIS_KEY,JSONObject.toJSONString(list));
}
}
ExcelUtil.exportWithMplThread2(response,fileName,list,heads,exportDto.getFileType(),customExecutor,10000);
return;
} else if("MAINTENANCE_COMPANY".equals(exportDto.getExportType())) { // 查询维保单位数据 } else if("MAINTENANCE_COMPANY".equals(exportDto.getExportType())) { // 查询维保单位数据
list = iMaintenanceUnitService.selectExportData(exportDto.getExportId()); list = iMaintenanceUnitService.selectExportData(exportDto.getExportId());
sheetName = "维保单位"; sheetName = "维保单位";
...@@ -222,7 +247,6 @@ public class TemplateExportController extends BaseController { ...@@ -222,7 +247,6 @@ public class TemplateExportController extends BaseController {
sheetName = "通话录音"; sheetName = "通话录音";
list = voiceRecordFileServiceImpl.selectExportData(exportDto.getExportId()); list = voiceRecordFileServiceImpl.selectExportData(exportDto.getExportId());
} }
ExcelUtil.createTemplateWithHeaders(response, fileName, sheetName, list, heads, headstr, exportDto.getFileType()); ExcelUtil.createTemplateWithHeaders(response, fileName, sheetName, list,heads,headstr,exportDto.getFileType());
} }
} }
...@@ -7,11 +7,10 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController; ...@@ -7,11 +7,10 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.feign.AmosFeignService; import com.yeejoin.amos.boot.biz.common.feign.AmosFeignService;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient; import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.elevator.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.UseUnitDto; import com.yeejoin.amos.boot.module.elevator.api.dto.UseUnitDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.UseUnit; import com.yeejoin.amos.boot.module.elevator.api.entity.UseUnit;
import com.yeejoin.amos.boot.module.elevator.api.service.IUseUnitService; import com.yeejoin.amos.boot.module.elevator.api.service.IUseUnitService;
import com.yeejoin.amos.boot.module.elevator.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.ElevatorServiceImpl; import com.yeejoin.amos.boot.module.elevator.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.elevator.biz.utils.BeanDtoVoUtils; import com.yeejoin.amos.boot.module.elevator.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -27,7 +26,6 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -27,7 +26,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest; import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
...@@ -232,6 +230,8 @@ public class UseUnitController extends BaseController { ...@@ -232,6 +230,8 @@ public class UseUnitController extends BaseController {
UseUnitDto useUnitVo = new UseUnitDto(); UseUnitDto useUnitVo = new UseUnitDto();
useUnitVo.setUseUnitName(ObjectUtils.isEmpty(useUnitMap.get("useUnitName")) ? null : String.valueOf(useUnitMap.get("useUnitName"))); useUnitVo.setUseUnitName(ObjectUtils.isEmpty(useUnitMap.get("useUnitName")) ? null : String.valueOf(useUnitMap.get("useUnitName")));
useUnitVo.setAddress(ObjectUtils.isEmpty(useUnitMap.get("address")) ? null : String.valueOf(useUnitMap.get("address"))); useUnitVo.setAddress(ObjectUtils.isEmpty(useUnitMap.get("address")) ? null : String.valueOf(useUnitMap.get("address")));
useUnitVo.setSequenceNbr(ObjectUtils.isEmpty(useUnitMap.get("unitId")) ? null : Long.valueOf(useUnitMap.get(
"unitId").toString()));
List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>(); List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>();
DutyPersonDto principal = new DutyPersonDto(); DutyPersonDto principal = new DutyPersonDto();
principal.setDeptName("主要负责人"); principal.setDeptName("主要负责人");
......
package com.yeejoin.amos.boot.module.elevator.biz.core.threadpool; package com.yeejoin.amos.boot.module.elevator.biz.core.threadpool;
import org.slf4j.Logger; import org.springframework.context.annotation.Bean;
import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.ExecutorService; import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
/** /**
* 线程池 * 线程池
*/ */
@Configuration
public class AmosThreadPool { public class AmosThreadPool {
/**
* 日志记录器
*/
private static final Logger log = LoggerFactory.getLogger(AmosThreadPool.class);
/** @Bean
* 单例 public Executor customExecutor() {
*/ ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
private static AmosThreadPool instance; // 初始核心线程数
executor.setCorePoolSize(10);
/** // 最大线程数
* 执行服务 executor.setMaxPoolSize(20);
*/ // 任务队列容量
private static ExecutorService executorService; executor.setQueueCapacity(50);
// 线程名前缀
/** executor.setThreadNamePrefix("CustomExecutor-");
* 获取单例 executor.initialize();
* return executor;
* @return
*/
public static AmosThreadPool getInstance() {
if (instance == null) {
synchronized (AmosThreadPool.class) {
if (instance == null) {
instance = new AmosThreadPool();
}
}
}
return instance;
}
static {
executorService = Executors
.newFixedThreadPool(20);
}
/**
* 执行线程
*
* @param task
*/
public void execute(Runnable task) {
executorService.execute(task);
} }
} }
package com.yeejoin.amos.boot.module.elevator.biz.listener; package com.yeejoin.amos.boot.module.elevator.biz.listener;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.elevator.biz.utils.DesUtil; import com.yeejoin.amos.boot.module.elevator.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
...@@ -30,8 +13,15 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; ...@@ -30,8 +13,15 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.ApplicationModel; import com.yeejoin.amos.feign.privilege.model.ApplicationModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import java.util.*;
import java.util.stream.Collectors;
/** /**
* @Description: mqtt监听服务 * @Description: mqtt监听服务
...@@ -41,127 +31,123 @@ import lombok.extern.slf4j.Slf4j; ...@@ -41,127 +31,123 @@ import lombok.extern.slf4j.Slf4j;
@Component @Component
@Slf4j @Slf4j
public class BaseEnterpriseMqTtlListener extends EmqxListener { public class BaseEnterpriseMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}") @Autowired
String product; RedisUtil redisUtil;
@Value("${amos.system.user.app-key:AMOS_STUDIO}") @Autowired
String appkey; DataDictionaryServiceImpl iDataDictionaryService;
@Autowired
RedisUtil redisUtil;
@Autowired @Value("${org.filter.group.seq}")
DataDictionaryServiceImpl iDataDictionaryService; private Long groupSeq;
@Value("${org.filter.group.seq}") @Autowired
private Long groupSeq; StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) throws Exception { public void processMessage(String topic, MqttMessage message) throws Exception {
System.out.println(message); System.out.println(message);
JSONObject object = null; JSONObject object = null;
try { try {
object = JSONObject.parseObject(message.toString()); object = JSONObject.parseObject(message.toString());
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(product); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); List<ApplicationModel> aList = aResult.getResult();
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<ApplicationModel> aList = aResult.getResult();
// List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) // List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
// .map(i -> i.getAppCode()).collect(Collectors.toList()); // .map(i -> i.getAppCode()).collect(Collectors.toList());
FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(object.getLong("sequence_nbr")); FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(object.getLong("sequence_nbr"));
// FeignClientResult<Collection<CompanyModel>> cResult = // FeignClientResult<Collection<CompanyModel>> cResult =
// Privilege.companyClient.queryAgencyTree(null); // Privilege.companyClient.queryAgencyTree(null);
String useCode = object.getString("use_code"); String useCode = object.getString("use_code");
// if (useCode == null || !isUse(useCode, cResult.getResult())) { // if (useCode == null || !isUse(useCode, cResult.getResult())) {
if (cResult.getResult() == null) { if (cResult.getResult() == null) {
CompanyModel companyModel = new CompanyModel(); CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(object.getString("use_unit")); companyModel.setCompanyName(object.getString("use_unit"));
companyModel.setParentId(0L); companyModel.setParentId(0L);
companyModel.setLevel("company"); companyModel.setLevel("company");
String unitTypes = object.getString("unit_type"); String unitTypes = object.getString("unit_type");
companyModel.setCompanyType(unitTypes); companyModel.setCompanyType(unitTypes);
// companyModel.setSequenceNbr(object.getLong("sequence_nbr")); // companyModel.setSequenceNbr(object.getLong("sequence_nbr"));
companyModel.setCompanyCode(useCode); companyModel.setCompanyCode(useCode);
if (object.getString("supervise_org_code") != null) { if (object.getString("supervise_org_code") != null) {
FeignClientResult<HashMap<String, Object>> result = Privilege.companyClient FeignClientResult<HashMap<String, Object>> result = Privilege.companyClient
.queryByOrgcode(object.getString("supervise_org_code")); .queryByOrgcode(object.getString("supervise_org_code"));
// JSONObject parent = // JSONObject parent =
// JSONObject.parseObject(JSONObject.toJSONString(result.getResult())); // JSONObject.parseObject(JSONObject.toJSONString(result.getResult()));
if (result.getResult().get("sequenceNbr") != null) { if (result.getResult().get("sequenceNbr") != null) {
companyModel.setParentId(Long.valueOf(result.getResult().get("sequenceNbr").toString())); companyModel.setParentId(Long.valueOf(result.getResult().get("sequenceNbr").toString()));
} }
} }
FeignClientResult<CompanyModel> createResult = Privilege.companyClient.create(companyModel); FeignClientResult<CompanyModel> createResult = Privilege.companyClient.create(companyModel);
Long companySqr = createResult.getResult().getSequenceNbr(); Long companySqr = createResult.getResult().getSequenceNbr();
String unitCode = object.getString("use_code"); String unitCode = object.getString("use_code");
if (unitCode == null || unitCode.length() < 6) { if (unitCode == null || unitCode.length() < 6) {
log.error("公司统一信用代码长度不够6位"); log.error("公司统一信用代码长度不够6位");
throw new Exception("公司统一信用代码长度不够6位"); throw new Exception("公司统一信用代码长度不够6位");
} }
String userName = unitCode.substring(unitCode.length() - 6, unitCode.length()); String userName = unitCode.substring(unitCode.length() - 6, unitCode.length());
FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName); FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName);
if (uResult.getResult() == null) { if (uResult.getResult() == null) {
FeignClientResult<List<RoleModel>> roleListResult = Privilege.roleClient.queryRoleList(null, null); FeignClientResult<List<RoleModel>> roleListResult = Privilege.roleClient.queryRoleList(null, null);
List<RoleModel> allRoleList = roleListResult.getResult(); List<RoleModel> allRoleList = roleListResult.getResult();
AgencyUserModel userModel = new AgencyUserModel(); AgencyUserModel userModel = new AgencyUserModel();
userModel.setUserName(userName); userModel.setUserName(userName);
userModel.setRealName(userName); userModel.setRealName(userName);
userModel.setPassword(DesUtil.encode(userName, secretKey)); userModel.setPassword(DesUtil.encode(userName, secretKey));
userModel.setRePassword(DesUtil.encode(userName, secretKey)); userModel.setRePassword(DesUtil.encode(userName, secretKey));
// userModel.setMobile(vo.getPhoneNo()); // userModel.setMobile(vo.getPhoneNo());
userModel.setLockStatus("UNLOCK"); userModel.setLockStatus("UNLOCK");
// FeignClientResult<List<RoleModel>> list = // FeignClientResult<List<RoleModel>> list =
// Privilege.roleClient.queryRoleList("使用单位", "admin"); // Privilege.roleClient.queryRoleList("使用单位", "admin");
String[] unitTypeArray = unitTypes.split(","); String[] unitTypeArray = unitTypes.split(",");
List<String> unitTypeList = Arrays.asList(unitTypeArray); List<String> unitTypeList = Arrays.asList(unitTypeArray);
Set<String> roleNameSet = new HashSet<>(); Set<String> roleNameSet = new HashSet<>();
Set<String> appCodesSet = new HashSet<>(); Set<String> appCodesSet = new HashSet<>();
List<RoleModel> userRoleList = new ArrayList<>(); List<RoleModel> userRoleList = new ArrayList<>();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
Map<Long, List<Long>> roleSeqMap = new HashMap<>(); Map<Long, List<Long>> roleSeqMap = new HashMap<>();
for (String unitTypeStr : unitTypeList) { for (String unitTypeStr : unitTypeList) {
DataDictionary unitType = iDataDictionaryService DataDictionary unitType = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getName, unitTypeStr)); .getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getName, unitTypeStr));
String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : ""; String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : "";
String[] appCodes = appCode.split(","); String[] appCodes = appCode.split(",");
Collections.addAll(appCodesSet, appCodes); Collections.addAll(appCodesSet, appCodes);
roleNameSet.add(unitType.getName()); roleNameSet.add(unitType.getName());
userRoleList = allRoleList.stream().filter(r -> r.getRoleName().equals(unitType.getName())) userRoleList = allRoleList.stream().filter(r -> r.getRoleName().equals(unitType.getName()))
.collect(Collectors.toList()); .collect(Collectors.toList());
for (RoleModel r : userRoleList) { for (RoleModel r : userRoleList) {
if (!roleIds.contains(r.getSequenceNbr())) { if (!roleIds.contains(r.getSequenceNbr())) {
roleIds.add(r.getSequenceNbr()); roleIds.add(r.getSequenceNbr());
} }
} }
roleSeqMap.put(companySqr, roleIds); roleSeqMap.put(companySqr, roleIds);
} }
userModel.setAppCodes(new ArrayList<>(appCodesSet)); userModel.setAppCodes(new ArrayList<>(appCodesSet));
userModel.setOrgRoleSeqs(roleSeqMap); userModel.setOrgRoleSeqs(roleSeqMap);
FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel); FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel);
String[] userIds = { userResult.getResult().getUserId() }; String[] userIds = {userResult.getResult().getUserId()};
// if (groupSeq != null) { // if (groupSeq != null) {
// Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds)); // Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds));
// } // }
} }
} }
} }
private boolean isUse(String useCode, Collection<CompanyModel> companys) { private boolean isUse(String useCode, Collection<CompanyModel> companys) {
for (Object obj : companys) { for (Object obj : companys) {
String json = JSONObject.toJSONString(obj); String json = JSONObject.toJSONString(obj);
CompanyModel companyMode = JSONObject.toJavaObject(JSONObject.parseObject(json), CompanyModel.class); CompanyModel companyMode = JSONObject.toJavaObject(JSONObject.parseObject(json), CompanyModel.class);
if (useCode.equals(companyMode.getCompanyCode())) { if (useCode.equals(companyMode.getCompanyCode())) {
return true; return true;
} else if (companyMode.getChildren() != null) { } else if (companyMode.getChildren() != null) {
return isUse(useCode, companyMode.getChildren()); return isUse(useCode, companyMode.getChildren());
} }
} }
return false; return false;
} }
} }
...@@ -6,6 +6,7 @@ import java.util.List; ...@@ -6,6 +6,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.StartPlatformTokenService;
import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -36,16 +37,14 @@ public class CarcylUnitInspectMqTtlListener extends EmqxListener { ...@@ -36,16 +37,14 @@ public class CarcylUnitInspectMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appkey;
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${org.filter.group.seq}") @Value("${org.filter.group.seq}")
private Long groupSeq; private Long groupSeq;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) throws Exception { public void processMessage(String topic, MqttMessage message) throws Exception {
...@@ -56,9 +55,7 @@ public class CarcylUnitInspectMqTtlListener extends EmqxListener { ...@@ -56,9 +55,7 @@ public class CarcylUnitInspectMqTtlListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications(); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<ApplicationModel> aList = aResult.getResult(); List<ApplicationModel> aList = aResult.getResult();
List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
......
...@@ -5,18 +5,16 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,18 +5,16 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.elevator.api.service.IEquipmentCategoryService; import com.yeejoin.amos.boot.module.elevator.api.service.IEquipmentCategoryService;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.elevator.flc.api.service.IRegUnitInfoService; import com.yeejoin.amos.boot.module.elevator.flc.api.service.IRegUnitInfoService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.annotation.PostConstruct;
import javax.annotation.Resource; import javax.annotation.Resource;
@Component @Component
...@@ -40,11 +38,6 @@ public class PlatformUserTopicMessage extends EmqxListener { ...@@ -40,11 +38,6 @@ public class PlatformUserTopicMessage extends EmqxListener {
@Autowired @Autowired
RedisUtils redisUtil; RedisUtils redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Autowired @Autowired
IEquipmentCategoryService equipmentCategoryService; IEquipmentCategoryService equipmentCategoryService;
...@@ -52,11 +45,12 @@ public class PlatformUserTopicMessage extends EmqxListener { ...@@ -52,11 +45,12 @@ public class PlatformUserTopicMessage extends EmqxListener {
@Autowired @Autowired
IRegUnitInfoService regUnitInfoService; IRegUnitInfoService regUnitInfoService;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) { public void processMessage(String topic, MqttMessage message) {
RequestContext.setAppKey(appKey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
JSONObject jsonObject = JSON.parseObject(message.toString()); JSONObject jsonObject = JSON.parseObject(message.toString());
JSONObject result = jsonObject.getJSONObject("result"); JSONObject result = jsonObject.getJSONObject("result");
JSONObject dataResult = result.getJSONObject("result"); JSONObject dataResult = result.getJSONObject("result");
......
...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.module.elevator.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.elevator.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.elevator.biz.service.impl.TzBaseEnterpriseInfoServiceImpl; import com.yeejoin.amos.boot.module.elevator.biz.service.impl.TzBaseEnterpriseInfoServiceImpl;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.elevator.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.elevator.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -16,14 +16,15 @@ import org.eclipse.paho.client.mqttv3.MqttMessage; ...@@ -16,14 +16,15 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
@Component @Component
@Slf4j @Slf4j
...@@ -40,11 +41,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -40,11 +41,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}") @Autowired
String product; StartPlatformTokenService platformTokenService;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Override @Override
public void processMessage(String s, MqttMessage message) throws Exception { public void processMessage(String s, MqttMessage message) throws Exception {
...@@ -58,15 +56,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -58,15 +56,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appKey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
//判断库中业务tz_base_enterprise_info是否存在 //判断库中业务tz_base_enterprise_info是否存在
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
queryWrapper.eq("use_code",object.getString("unit_code")); queryWrapper.eq("use_code", object.getString("unit_code"));
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper); TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper);
if(!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)){ if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
...@@ -95,14 +91,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -95,14 +91,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
//业务表更新条件构造器 //业务表更新条件构造器
UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>(); UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("use_code",object.getString("unit_code")); updateWrapper.eq("use_code", object.getString("unit_code"));
String regCode = object.getString("reg_code"); String regCode = object.getString("reg_code");
CompanyModel supervisePrivilegeCompanyModel; CompanyModel supervisePrivilegeCompanyModel;
if (!ValidationUtil.isEmpty(regCode)) { if (!ValidationUtil.isEmpty(regCode)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult();
if(ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)){ if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult();
if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) { if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
...@@ -120,37 +116,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -120,37 +116,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode()); tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode());
tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName()); tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName());
if(ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())){ if (ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())) {
tzBaseEnterpriseInfo.setUnitType(""); tzBaseEnterpriseInfo.setUnitType("");
} }
try { try {
if (tzBaseEnterprisePrivilegeInfo == null ) { if (tzBaseEnterprisePrivilegeInfo == null) {
tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo); tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo);
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
} catch(Exception e) { } catch (Exception e) {
logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage()); logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage());
} }
} }
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){ public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
if(companyModels == null){ if (companyModels == null) {
return map; return map;
} }
Iterator iter = companyModels.iterator(); Iterator iter = companyModels.iterator();
while(iter.hasNext()){ while (iter.hasNext()) {
String json = JSON.toJSONString(iter.next()); String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class); CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
String code = companyModel.getCompanyCode(); String code = companyModel.getCompanyCode();
if(code.length() >=6){ if (code.length() >= 6) {
code = code.substring(0, 6); code = code.substring(0, 6);
} }
map.put(code,companyModel); map.put(code, companyModel);
getCompanyInfoMap(companyModel.getChildren(),map); getCompanyInfoMap(companyModel.getChildren(), map);
} }
return map; return map;
} }
......
...@@ -8,15 +8,31 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -8,15 +8,31 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; 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.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto; import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.service.ISourceFileService; import com.yeejoin.amos.boot.module.common.api.service.ISourceFileService;
import com.yeejoin.amos.boot.module.elevator.api.dto.*; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.*; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledFormDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledObjsDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledQueryDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledRecordDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertHandlerDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertHandlerInfoDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertPaperInfoDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.FormValue;
import com.yeejoin.amos.boot.module.elevator.api.dto.TzsCitInfoDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.WechatMyBusinessListDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.WechatMyBussinessDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.elevator.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchPaper;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchTask;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.TzsCitInfo;
import com.yeejoin.amos.boot.module.elevator.api.entity.VoiceRecordFile;
import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.EquipmentClassifityEnum; import com.yeejoin.amos.boot.module.elevator.api.enums.EquipmentClassifityEnum;
...@@ -41,7 +57,15 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest; ...@@ -41,7 +57,15 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -141,7 +165,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall ...@@ -141,7 +165,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
alertCalledDto.setProvince(String.valueOf(map.get("province"))); alertCalledDto.setProvince(String.valueOf(map.get("province")));
alertCalledDto.setCity(String.valueOf(map.get("city"))); alertCalledDto.setCity(String.valueOf(map.get("city")));
alertCalledDto.setDistrict(String.valueOf(map.get("district"))); alertCalledDto.setDistrict(String.valueOf(map.get("district")));
alertCalledDto.setUseStatus(Integer.valueOf(String.valueOf(map.get("useStatus")))); alertCalledDto.setUseStatus(String.valueOf(map.get("useStatus")));
alertCalledDto.setUseSiteCategory(String.valueOf(map.get("useSiteCategory"))); alertCalledDto.setUseSiteCategory(String.valueOf(map.get("useSiteCategory")));
alertCalledDto.setUseUnit(String.valueOf(map.get("useUnit"))); alertCalledDto.setUseUnit(String.valueOf(map.get("useUnit")));
alertCalledDto.setRegionCode(String.valueOf(map.get("regionCode"))); alertCalledDto.setRegionCode(String.valueOf(map.get("regionCode")));
...@@ -161,18 +185,6 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall ...@@ -161,18 +185,6 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
// alertCalledDto.setUseUnit(elevator.getUseUnit()); // alertCalledDto.setUseUnit(elevator.getUseUnit());
// alertCalledDto.setRegionCode(elevator.getRegionCode()); // alertCalledDto.setRegionCode(elevator.getRegionCode());
// } // }
if(!ValidationUtil.isEmpty(alertCalledDto.getUseSiteCategory())) {
LambdaQueryWrapper<DataDictionary> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(DataDictionary::getCode, alertCalledDto.getUseSiteCategory());
DataDictionary dataDictionary = iDataDictionaryService.getOne(wrapper);
if (!ValidationUtil.isEmpty(dataDictionary)) {
alertCalledDto.setUseSiteCategory(dataDictionary.getName());
} else {
alertCalledDto.setUseSiteCategory("");
}
} else {
alertCalledDto.setUseSiteCategory("");
}
String voiceRecord = ""; String voiceRecord = "";
VoiceRecordFile temp = voiceRecordFileServiceImpl.getOne(new LambdaQueryWrapper<VoiceRecordFile>().eq(VoiceRecordFile::getAlertId,id).eq(VoiceRecordFile::getAlertStageCode,"860").orderByAsc(VoiceRecordFile::getRecDate)); VoiceRecordFile temp = voiceRecordFileServiceImpl.getOne(new LambdaQueryWrapper<VoiceRecordFile>().eq(VoiceRecordFile::getAlertId,id).eq(VoiceRecordFile::getAlertStageCode,"860").orderByAsc(VoiceRecordFile::getRecDate));
if(temp != null) { if(temp != null) {
...@@ -232,16 +244,16 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall ...@@ -232,16 +244,16 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
alertCalledDto.setProvince(elevator.getProvince()); alertCalledDto.setProvince(elevator.getProvince());
alertCalledDto.setCity(elevator.getCity()); alertCalledDto.setCity(elevator.getCity());
alertCalledDto.setDistrict(elevator.getDistrict()); alertCalledDto.setDistrict(elevator.getDistrict());
alertCalledDto.setUseStatus(elevator.getUseStatus()); alertCalledDto.setUseStatus(String.valueOf(elevator.getUseStatus()));
alertCalledDto.setUseSiteCategory(elevator.getUseSiteCategory()); alertCalledDto.setUseSiteCategory(elevator.getUseSiteCategory());
alertCalledDto.setUseUnit(elevator.getUseUnit()); alertCalledDto.setUseUnit(elevator.getUseUnit());
alertCalledDto.setRegionCode(elevator.getRegionCode()); alertCalledDto.setRegionCode(elevator.getRegionCode());
} }
String voiceRecord = ""; String voiceRecord = "";
VoiceRecordFile temp = voiceRecordFileServiceImpl.getOne(new LambdaQueryWrapper<VoiceRecordFile>().eq(VoiceRecordFile::getAlertId,id).eq(VoiceRecordFile::getAlertStageCode,"860").orderByAsc(VoiceRecordFile::getRecDate)); // VoiceRecordFile temp = voiceRecordFileServiceImpl.getOne(new LambdaQueryWrapper<VoiceRecordFile>().eq(VoiceRecordFile::getAlertId,id).eq(VoiceRecordFile::getAlertStageCode,"860").orderByAsc(VoiceRecordFile::getRecDate));
if(temp != null) { // if(temp != null) {
voiceRecord = temp.getFilePath(); // voiceRecord = temp.getFilePath();
} // }
AlertCalledFormDto alertCalledFormVo = new AlertCalledFormDto(alertCalledDto, formValue,voiceRecord); AlertCalledFormDto alertCalledFormVo = new AlertCalledFormDto(alertCalledDto, formValue,voiceRecord);
return alertCalledFormVo; return alertCalledFormVo;
} }
...@@ -262,7 +274,8 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall ...@@ -262,7 +274,8 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
String alertStage, String alertStage,
String alertStatus, String alertStatus,
String sortParam, String sortParam,
String sortRule String sortRule,
List<String> ids
) { ) {
//获取当前登陆人所在单位的下的所有接警人员的userId //获取当前登陆人所在单位的下的所有接警人员的userId
Set<String> userIds = new HashSet<>(); Set<String> userIds = new HashSet<>();
...@@ -280,7 +293,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall ...@@ -280,7 +293,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
Page<List<AlertCalledQueryDto>>list = alertCalledMapper.queryAlertListByQueryDto(page, Page<List<AlertCalledQueryDto>>list = alertCalledMapper.queryAlertListByQueryDto(page,
workOrderNumber,creator,emergency,emergencyTimeStart, workOrderNumber,creator,emergency,emergencyTimeStart,
emergencyTimeEnd,emergencyCall,deviceId,elevatorAddress,district,alertType, emergencyTimeEnd,emergencyCall,deviceId,elevatorAddress,district,alertType,
alertSource,alertStage,alertStatus,sortParam,sortRule,userIds); alertSource,alertStage,alertStatus,sortParam,sortRule,userIds,ids);
Page<AlertCalledQueryDto> page1 = new Page<>(); Page<AlertCalledQueryDto> page1 = new Page<>();
List<AlertCalledQueryDto> resultDtoList = JSONArray.parseArray(JSONArray.toJSONString(list.getRecords()),AlertCalledQueryDto.class); List<AlertCalledQueryDto> resultDtoList = JSONArray.parseArray(JSONArray.toJSONString(list.getRecords()),AlertCalledQueryDto.class);
page1.setCurrent(page.getCurrent()); page1.setCurrent(page.getCurrent());
......
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.elevator.biz.service.impl; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.elevator.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
...@@ -18,8 +19,6 @@ import com.yeejoin.amos.boot.module.elevator.api.dto.RescueProcessDto; ...@@ -18,8 +19,6 @@ import com.yeejoin.amos.boot.module.elevator.api.dto.RescueProcessDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.AlertFormValue; import com.yeejoin.amos.boot.module.elevator.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchPaper;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchTask; import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchTask;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam; import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam;
...@@ -181,7 +180,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa ...@@ -181,7 +180,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
Map<String,Object> map = elevatorServiceImpl.selectByAlertId(alertId); Map<String,Object> map = elevatorServiceImpl.selectByAlertId(alertId);
if(!ObjectUtils.isEmpty(map.get("sequenceNbr"))) { if(!ObjectUtils.isEmpty(map.get("sequenceNbr"))) {
List<Map<String,Object>> mapList = elevatorMapper.selectMtByAlertId(String.valueOf(map.get("sequenceNbr"))); List<Map<String,Object>> mapList = elevatorMapper.selectMtByAlertId(String.valueOf(map.get("sequenceNbr")));
if(ObjectUtils.isEmpty(mapList)){ if(!ObjectUtils.isEmpty(mapList) && CollectionUtils.isEmpty(mapList)){
dispatchPaper.setRepairOrgCreditCode(String.valueOf(mapList.get(0).get("useCode"))); dispatchPaper.setRepairOrgCreditCode(String.valueOf(mapList.get(0).get("useCode")));
} }
} }
......
...@@ -24,21 +24,18 @@ import com.yeejoin.amos.boot.module.elevator.api.entity.AlertCalled; ...@@ -24,21 +24,18 @@ import com.yeejoin.amos.boot.module.elevator.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.elevator.api.entity.AlertFormValue; import com.yeejoin.amos.boot.module.elevator.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchPaper;
import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchTask; import com.yeejoin.amos.boot.module.elevator.api.entity.DispatchTask;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.elevator.api.entity.RescueProcess; import com.yeejoin.amos.boot.module.elevator.api.entity.RescueProcess;
import com.yeejoin.amos.boot.module.elevator.api.entity.RescueStation; import com.yeejoin.amos.boot.module.elevator.api.entity.RescueStation;
import com.yeejoin.amos.boot.module.elevator.api.entity.Template; import com.yeejoin.amos.boot.module.elevator.api.entity.Template;
import com.yeejoin.amos.boot.module.elevator.api.entity.UseUnit; import com.yeejoin.amos.boot.module.elevator.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.elevator.api.entity.WechatRelation; import com.yeejoin.amos.boot.module.elevator.api.entity.WechatRelation;
import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums; import com.yeejoin.amos.boot.module.elevator.api.enums.DispatchPaperEnums;
import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam; import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam;
import com.yeejoin.amos.boot.module.elevator.api.mapper.DispatchTaskMapper; import com.yeejoin.amos.boot.module.elevator.api.mapper.DispatchTaskMapper;
import com.yeejoin.amos.boot.module.elevator.api.service.IDispatchTaskService; import com.yeejoin.amos.boot.module.elevator.api.service.IDispatchTaskService;
import com.yeejoin.amos.boot.module.elevator.api.service.IMaintenanceUnitService;
import com.yeejoin.amos.boot.module.elevator.api.service.IRescueStationService; import com.yeejoin.amos.boot.module.elevator.api.service.IRescueStationService;
import com.yeejoin.amos.boot.module.elevator.api.service.IUseUnitService; import com.yeejoin.amos.boot.module.elevator.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.boot.module.elevator.biz.utils.BeanDtoVoUtils; import com.yeejoin.amos.boot.module.elevator.biz.utils.BeanDtoVoUtils;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
...@@ -89,10 +86,7 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc ...@@ -89,10 +86,7 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
AlertFormValueServiceImpl iAlertFormValueService; AlertFormValueServiceImpl iAlertFormValueService;
@Autowired @Autowired
IUseUnitService iUseUnitService; ITzBaseEnterpriseInfoService enterpriseInfoService;
@Autowired
IMaintenanceUnitService iMaintenanceUnitService;
@Autowired @Autowired
IRescueStationService iRescueStationService; IRescueStationService iRescueStationService;
...@@ -185,12 +179,7 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc ...@@ -185,12 +179,7 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
// Elevator elevator = elevatorServiceImpl.selectByAlertId(alertId); // Elevator elevator = elevatorServiceImpl.selectByAlertId(alertId);
Map<String,Object> map = elevatorServiceImpl.selectByAlertId(alertId); Map<String,Object> map = elevatorServiceImpl.selectByAlertId(alertId);
String address = map.get("address") == null ? "" : String.valueOf(map.get("address")); String address = map.get("address") == null ? "" : String.valueOf(map.get("address"));
String useSiteCategory = ""; String useSiteCategory = map.get("useSiteCategory") == null ? "" : String.valueOf(map.get("useSiteCategory"));
if (!ValidationUtil.isEmpty(String.valueOf(map.get("useSiteCategory")))) {
String categoryCode = String.valueOf(map.get("useSiteCategory"));
DataDictionary categoryDict = iDataDictionaryService.getByCode(categoryCode, "USE_SITE_CATEGORY");
useSiteCategory = ValidationUtil.isEmpty(categoryDict) ? "" : categoryDict.getName();
}
String useUnit = String.valueOf(map.get("useUnit")); String useUnit = String.valueOf(map.get("useUnit"));
content = content.replace("$call_time",createTime).replace("$address",address).replace("$rescue_code",rescueCode).replace("$use_site_category",useSiteCategory); content = content.replace("$call_time",createTime).replace("$address",address).replace("$rescue_code",rescueCode).replace("$use_site_category",useSiteCategory);
String typeCode = ""; String typeCode = "";
...@@ -835,10 +824,11 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc ...@@ -835,10 +824,11 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
flag = this.save(dispatchTask); flag = this.save(dispatchTask);
if(flag) { // 创建好派遣任务单以后根据任务单类型修改派遣单信息 if(flag) { // 创建好派遣任务单以后根据任务单类型修改派遣单信息
// 社会信用代码 根据类型查找放入 // 社会信用代码 根据类型查找放入
MaintenanceUnit maintenanceUnit = null; TzBaseEnterpriseInfo maintenanceUnit;
switch (dispatchTask.getOrgTypeCode()) { switch (dispatchTask.getOrgTypeCode()) {
case "useUnit": // 使用单位 case "useUnit": // 使用单位
UseUnit useUnit = iUseUnitService.getById(dispatchTask.getResponseOrgId()); TzBaseEnterpriseInfo useUnit =
enterpriseInfoService.getById(dispatchTask.getResponseOrgId());
dispatchPaper.setUseOrgId(useUnit.getSequenceNbr()); dispatchPaper.setUseOrgId(useUnit.getSequenceNbr());
dispatchPaper.setUseOrgTaskId(dispatchTask.getSequenceNbr()); dispatchPaper.setUseOrgTaskId(dispatchTask.getSequenceNbr());
if(AlertStageEnums.getEnumById(dispatchPaper.getAlertCode()).getCode().equals(AlertStageEnums.KRJY.getCode())) { if(AlertStageEnums.getEnumById(dispatchPaper.getAlertCode()).getCode().equals(AlertStageEnums.KRJY.getCode())) {
...@@ -851,13 +841,13 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc ...@@ -851,13 +841,13 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
} }
break; break;
case "repairUnit": case "repairUnit":
maintenanceUnit = iMaintenanceUnitService.getById(dispatchTask.getResponseOrgId()); maintenanceUnit = enterpriseInfoService.getById(dispatchTask.getResponseOrgId());
dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr()); dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr());
dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr()); dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr());
break; break;
case "levelOneUnit": case "levelOneUnit":
maintenanceUnit = iMaintenanceUnitService.getById(dispatchTask.getResponseOrgId()); maintenanceUnit = enterpriseInfoService.getById(dispatchTask.getResponseOrgId());
String socialCreditCode = maintenanceUnit.getSocialCreditCode(); String socialCreditCode = maintenanceUnit.getUseCode();
dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr()); dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr());
dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr()); dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr());
// 修改动态字段 // 修改动态字段
......
package com.yeejoin.amos.boot.module.elevator.biz.service.impl; package com.yeejoin.amos.boot.module.elevator.biz.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -450,7 +451,7 @@ public class ESElevatorServiceImpl { ...@@ -450,7 +451,7 @@ public class ESElevatorServiceImpl {
if(!ValidationUtil.isEmpty(keyword)) { if(!ValidationUtil.isEmpty(keyword)) {
BoolQueryBuilder qb0 = QueryBuilders.boolQuery(). BoolQueryBuilder qb0 = QueryBuilders.boolQuery().
must(QueryBuilders.termQuery("rescueCode", keyword)); must(QueryBuilders.matchQuery("rescueCode.keyword", keyword));
boolMust.should(qb0); boolMust.should(qb0);
BoolQueryBuilder qb1 = QueryBuilders.boolQuery(). BoolQueryBuilder qb1 = QueryBuilders.boolQuery().
must(QueryBuilders.matchQuery("address", keyword)); must(QueryBuilders.matchQuery("address", keyword));
...@@ -486,6 +487,7 @@ public class ESElevatorServiceImpl { ...@@ -486,6 +487,7 @@ public class ESElevatorServiceImpl {
catch (Exception e) catch (Exception e)
{ {
// TODO: handle exception // TODO: handle exception
e.printStackTrace();
} }
result.setRecords(list); result.setRecords(list);
result.setTotal(total); result.setTotal(total);
......
package com.yeejoin.amos.boot.module.elevator.biz.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.module.elevator.api.common.BizCommonConstant;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDto;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class ElevatorAppRunner implements ApplicationRunner {
@Autowired
RedisUtil redisUtil;
@Autowired
ElevatorServiceImpl elevatorServiceImpl;
@Override
public void run(ApplicationArguments args) {
// 缓存电梯数据
List<ElevatorDto> list = elevatorServiceImpl.selectExportData(null);
redisUtil.set(BizCommonConstant.OLD_ELEVATOR_REDIS_KEY, JSONObject.toJSONString(list));
}
}
...@@ -13,19 +13,21 @@ import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; ...@@ -13,19 +13,21 @@ import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil; import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto; import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import com.yeejoin.amos.boot.module.elevator.api.dto.*; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.*; import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDto;
import com.yeejoin.amos.boot.module.elevator.api.enums.EquimentEnum; import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDtoNew;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorInsureDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorWlInfoDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.EquipmentCategory;
import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam; import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam;
import com.yeejoin.amos.boot.module.elevator.api.mapper.ElevatorMapper; import com.yeejoin.amos.boot.module.elevator.api.mapper.ElevatorMapper;
import com.yeejoin.amos.boot.module.elevator.api.service.IElevatorInsureRelationService;
import com.yeejoin.amos.boot.module.elevator.api.service.IElevatorService; import com.yeejoin.amos.boot.module.elevator.api.service.IElevatorService;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockMultipartFile; import org.springframework.mock.web.MockMultipartFile;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -153,7 +155,7 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev ...@@ -153,7 +155,7 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev
if(useSiteCategory != null) { if(useSiteCategory != null) {
elevatorDto.setUseSiteCategoryName(useSiteCategory.getName()); elevatorDto.setUseSiteCategoryName(useSiteCategory.getName());
} }
if(elevatorDto.getUseStatus() == 1) { if("1".equals(elevatorDto.getUseStatus())) {
elevatorDto.setUseStatusStr("在用"); elevatorDto.setUseStatusStr("在用");
} else { } else {
elevatorDto.setUseStatusStr("停用"); elevatorDto.setUseStatusStr("停用");
...@@ -212,8 +214,9 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev ...@@ -212,8 +214,9 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev
public Map<String,Object> selectByAlertId(Long alertId) { public Map<String,Object> selectByAlertId(Long alertId) {
AlertCalledDto alertCalledDto = alertCalledServiceImpl.queryBySeq(alertId); AlertCalledDto alertCalledDto = alertCalledServiceImpl.queryBySeq(alertId);
if (ValidationUtil.isEmpty(alertCalledDto) if (ValidationUtil.isEmpty(alertCalledDto)
|| ValidationUtil.isEmpty(alertCalledDto.getDeviceId())) || ValidationUtil.isEmpty(alertCalledDto.getDeviceId())) {
throw new BadRequest("警情不存在或者设备编码不存在"); throw new BadRequest("警情不存在或者设备编码不存在");
}
// 设备类型 和 编码 确定设备的使用单位或者维保单位 // 设备类型 和 编码 确定设备的使用单位或者维保单位
String equipmentClassificationCode = alertCalledDto.getEquipmentClassificationCode(); String equipmentClassificationCode = alertCalledDto.getEquipmentClassificationCode();
String deviceId = alertCalledDto.getEquipmentId(); String deviceId = alertCalledDto.getEquipmentId();
...@@ -224,8 +227,9 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev ...@@ -224,8 +227,9 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev
// LambdaQueryWrapper<Elevator> queryWrapper = new LambdaQueryWrapper<>(); // LambdaQueryWrapper<Elevator> queryWrapper = new LambdaQueryWrapper<>();
// queryWrapper.eq(Elevator::getSequenceNbr, deviceId); // queryWrapper.eq(Elevator::getSequenceNbr, deviceId);
// Elevator elevator = this.getOne(queryWrapper); // Elevator elevator = this.getOne(queryWrapper);
if (ValidationUtil.isEmpty(map)) if (ValidationUtil.isEmpty(map)) {
throw new BadRequest("设备未找到"); throw new BadRequest("设备未找到");
}
return map; return map;
} }
......
package com.yeejoin.amos.boot.module.elevator.biz.service.impl; package com.yeejoin.amos.boot.module.elevator.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.elevator.api.dto.DispatchPaperFormDto; import com.yeejoin.amos.boot.module.elevator.api.dto.DispatchPaperFormDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.DispatchTaskDto; import com.yeejoin.amos.boot.module.elevator.api.dto.DispatchTaskDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.RescueProcessDto; import com.yeejoin.amos.boot.module.elevator.api.dto.RescueProcessDto;
...@@ -60,6 +63,8 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu ...@@ -60,6 +63,8 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu
@Autowired @Autowired
AlertCalledServiceImpl iAlertCalledService; AlertCalledServiceImpl iAlertCalledService;
@Autowired
RedisUtils redisUtils;
/** /**
* 分页查询 * 分页查询
*/ */
...@@ -173,6 +178,11 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu ...@@ -173,6 +178,11 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu
repairConsultServiceImpl.saveRepairConsultByAlertIdType(dispatchTask.getAlertId(),"PQ", dispatchTask.getSequenceNbr(),sendUser); repairConsultServiceImpl.saveRepairConsultByAlertIdType(dispatchTask.getAlertId(),"PQ", dispatchTask.getSequenceNbr(),sendUser);
} }
} else { } else {
if (Boolean.TRUE.equals(rescueProcessDto.getCasualtiesStatus())){
updateMessage(rescueProcessDto, "injured_num");
updateMessage(rescueProcessDto, "die_num");
redisUtils.del(RedisKey.TZS_ALERTCALLED_ID+rescueProcessDto.getAlertId());
}
rescueProcessDto.setDispatchTime(null); rescueProcessDto.setDispatchTime(null);
rescueProcessDto.setDispatchStatus(null); rescueProcessDto.setDispatchStatus(null);
rescueProcessDto.setDispatchUserId(null); rescueProcessDto.setDispatchUserId(null);
...@@ -253,6 +263,19 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu ...@@ -253,6 +263,19 @@ public class RescueProcessServiceImpl extends BaseService<RescueProcessDto,Rescu
return flag; return flag;
} }
private void updateMessage(RescueProcessDto rescueProcessDto, String fieldCode){
LambdaQueryWrapper<AlertFormValue> lambda = new QueryWrapper<AlertFormValue>().lambda();
lambda.eq(AlertFormValue::getAlertCalledId, rescueProcessDto.getAlertId());
lambda.eq(AlertFormValue::getFieldCode, fieldCode);
List<AlertFormValue> alertFormValues = iAlertFormValueService.getBaseMapper().selectList(lambda);
AlertFormValue alertFormValue = alertFormValues.get(0);
if ("die_num".equals(fieldCode)){
alertFormValue.setFieldValue(rescueProcessDto.getDieNum());
}else {
alertFormValue.setFieldValue(rescueProcessDto.getCasualtiesInfo());
}
iAlertFormValueService.updateById(alertFormValue);
}
@Override @Override
public Boolean updateByAlertId(RescueProcessDto rescueProcessDto) { public Boolean updateByAlertId(RescueProcessDto rescueProcessDto) {
QueryWrapper<RescueProcess> templateQueryWrapper = new QueryWrapper<>(); QueryWrapper<RescueProcess> templateQueryWrapper = new QueryWrapper<>();
......
package com.yeejoin.amos.boot.module.elevator.biz.service.impl; package com.yeejoin.amos.boot.module.elevator.biz.service.impl;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
@Service @Service
public class StartPlatformTokenService { public class StartPlatformTokenService {
@Value("${admin.product}")
String product;
@Value("${admin.appkey}")
String appkey;
@Value("${admin.user}")
String user;
@Value("${admin.password}")
String password;
@Value("${amos.secret.key}") @Autowired
String secretKey; RedisUtil redisUtil;
@Autowired @Autowired
RedisUtil redisUtil; AmosRequestContext amosRequestContext;
@Autowired
AmosRequestContext amosRequestContext;
public void getToken() { public void getToken() {
RequestContext.setProduct(product); RequestContext.setProduct(amosRequestContext.getProduct());
RequestContext.setAppKey(appkey); RequestContext.setAppKey(amosRequestContext.getAppKey());
String token = amosRequestContext.getToken(); RequestContext.setToken(amosRequestContext.getToken());
System.out.println("token:" + token); }
RequestContext.setToken(token);
redisUtil.set("platform_token", token);
}
} }
...@@ -11,8 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -11,8 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.elevator.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.elevator.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.boot.module.elevator.api.dto.BaseUnitLicenceDto; import com.yeejoin.amos.boot.module.elevator.api.dto.BaseUnitLicenceDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.EquEnterDto; import com.yeejoin.amos.boot.module.elevator.api.dto.EquEnterDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.elevator.api.dto.TzBaseEnterpriseInfoDto;
...@@ -21,7 +19,6 @@ import com.yeejoin.amos.boot.module.elevator.api.entity.PageParam; ...@@ -21,7 +19,6 @@ import com.yeejoin.amos.boot.module.elevator.api.entity.PageParam;
import com.yeejoin.amos.boot.module.elevator.api.entity.SpeUseUnit; import com.yeejoin.amos.boot.module.elevator.api.entity.SpeUseUnit;
import com.yeejoin.amos.boot.module.elevator.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.elevator.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.elevator.api.mapper.TzBaseEnterpriseInfoMapper; import com.yeejoin.amos.boot.module.elevator.api.mapper.TzBaseEnterpriseInfoMapper;
import com.yeejoin.amos.boot.module.elevator.api.service.IBaseUnitLicenceService;
import com.yeejoin.amos.boot.module.elevator.api.service.ITzBaseEnterpriseInfoService; import com.yeejoin.amos.boot.module.elevator.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.elevator.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.elevator.flc.api.dto.RegUnitIcDto; import com.yeejoin.amos.boot.module.elevator.flc.api.dto.RegUnitIcDto;
...@@ -30,19 +27,18 @@ import com.yeejoin.amos.boot.module.elevator.flc.api.entity.RegUnitIc; ...@@ -30,19 +27,18 @@ import com.yeejoin.amos.boot.module.elevator.flc.api.entity.RegUnitIc;
import com.yeejoin.amos.boot.module.elevator.flc.api.entity.RegUnitInfo; import com.yeejoin.amos.boot.module.elevator.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.elevator.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.elevator.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.boot.module.elevator.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.elevator.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.boot.module.elevator.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.elevator.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.IdPasswordAuthModel;
import com.yeejoin.amos.feign.privilege.util.DesUtil;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
...@@ -58,445 +54,425 @@ import java.util.stream.Collectors; ...@@ -58,445 +54,425 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
public class TzBaseEnterpriseInfoServiceImpl public class TzBaseEnterpriseInfoServiceImpl
extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper> extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper>
implements ITzBaseEnterpriseInfoService { implements ITzBaseEnterpriseInfoService {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}") @Autowired
String product; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
@Value("${admin.product.web}") @Autowired
String webProduct; BaseUnitLicenceServiceImpl baseUnitLicenceService;
@Value("${admin.appkey}") @Autowired
String appkey; RegUnitIcServiceImpl regUnitIcService;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; @Lazy
RegUnitInfoServiceImpl regUnitInfoService;
@Autowired
BaseUnitLicenceServiceImpl baseUnitLicenceService; @Autowired
private SpeUseUnitServiceImpl speUseUnitService;
@Autowired
RegUnitIcServiceImpl regUnitIcService; @Autowired
private AccessFeignService accessFeignService;
@Autowired
@Lazy @Autowired
RegUnitInfoServiceImpl regUnitInfoService; DataDictionaryServiceImpl iDataDictionaryService;
@Autowired @Autowired
private IBaseUnitLicenceService iBaseUnitLicenceService; RegUnitInfoMapper regUnitInfoMapper;
@Autowired @Value("${redis.cache.failure.time}")
private SpeUseUnitServiceImpl speUseUnitService; private Long redisRegionTimeSecond;
@Autowired
private AccessFeignService accessFeignService; /**
* 企业管理员变更缓存key前缀
@Autowired */
private ITzBaseEnterpriseInfoService tzBaseEnterpriseInfoService; private final String adminChange = "ADMIN_CHANGE_";
@Autowired @Autowired
DataDictionaryServiceImpl iDataDictionaryService; private EquipmentCategoryServiceImpl equipmentCategoryService;
@Autowired
RegUnitInfoMapper regUnitInfoMapper; @Autowired
StartPlatformTokenService platformTokenService;
@Value("${tzs.admin.name:tzs_admin}")
private String tzsAdminName; @Override
public List<EquEnterDto> getInfo(String sequenceNbr) {
@Value("${tzs.admin.pwd:a1234567}") return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr);
private String tzsAdminPwd; }
@Value("${redis.cache.failure.time}") @Override
private Long redisRegionTimeSecond; public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
List<String> orgCodeList = new ArrayList<>();
/**机器人用户token缓存key */ if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) {
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN"; FeignClientResult<CompanyModel> result = Privilege.companyClient
.seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey()));
/** if (result.getResult() != null) {
* 企业管理员变更缓存key前缀 tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode());
*/ }
private final String adminChange = "ADMIN_CHANGE_"; }
@Autowired Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
private EquipmentCategoryServiceImpl equipmentCategoryService; List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType();
if (!ValidationUtil.isEmpty(companyType1)) {
@Override for (JSONObject jsonObject : companyType1) {
public List<EquEnterDto> getInfo(String sequenceNbr) { String orgCode = jsonObject.getString("orgCode");
return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr); if (!ValidationUtil.isEmpty(orgCode)) {
} orgCodeList.add(orgCode);
}
@Override }
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) { }
List<String> orgCodeList = new ArrayList<>();
if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) { return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto, orgCodeList);
FeignClientResult<CompanyModel> result = Privilege.companyClient }
.seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey()));
if (result.getResult() != null) { @Override
tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode()); public TzBaseEnterpriseInfoDto detail(Long id) {
} TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
} TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id);
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); if (tzBaseEnterpriseInfo != null) {
List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType(); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
if (!ValidationUtil.isEmpty(companyType1)) { tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto()));
for (JSONObject jsonObject : companyType1) { tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto()));
String orgCode = jsonObject.getString("orgCode"); tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense()));
if (!ValidationUtil.isEmpty(orgCode)) { tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur()));
orgCodeList.add(orgCode); tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory()));
} }
} // 许可信息
} List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto,orgCodeList); List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
} if (!ValidationUtil.isEmpty(unitLicences)) {
for (BaseUnitLicence baseUnitLicence : unitLicences) {
@Override BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
public TzBaseEnterpriseInfoDto detail(Long id) { BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); unitLicenceDtos.add(baseUnitLicenceDto);
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id); }
if (tzBaseEnterpriseInfo != null) { }
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto())); // 管理员信息
tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto())); RegUnitInfo regUnitInfo = regUnitInfoService.getOne(
tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense())); new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur())); RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto();
tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory())); if (regUnitInfo != null) {
} BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto);
// 许可信息 }
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo) || ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto()));
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto);
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
if (!ValidationUtil.isEmpty(unitLicences)) { // 工商信息
for (BaseUnitLicence baseUnitLicence : unitLicences) { RegUnitIc regUnitIc = regUnitIcService.getOne(
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto(); new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto); RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
unitLicenceDtos.add(baseUnitLicenceDto); if (regUnitIc != null) {
} BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
} }
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos); tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
// 管理员信息 return tzBaseEnterpriseInfoDto;
RegUnitInfo regUnitInfo = regUnitInfoService.getOne(
new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); }
RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto();
if (regUnitInfo != null) { @Override
BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto); public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) {
} TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode));
regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo)||ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto())); return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo);
tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto); }
// 工商信息 private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo) {
RegUnitIc regUnitIc = regUnitIcService.getOne( TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr());
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult();
if (regUnitIc != null) { if (!ValidationUtil.isEmpty(resultMap)) {
BeanUtils.copyProperties(regUnitIc, regUnitIcDto); String area = String.valueOf(resultMap.get("area"));
} String city = area.substring(0, area.indexOf("市") + 1);
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); String district = area.substring(city.length());
return tzBaseEnterpriseInfoDto; if (district.equals("高新区")) {
district = "雁塔区";
} }
String industryName = "";
@Override DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM");
public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) { if (!ValidationUtil.isEmpty(dataDictionary)) {
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode)); industryName = dataDictionary.getName();
return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo); }
} String approveDate = String.valueOf(resultMap.get("approval_time"));
approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate;
private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo){ approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate;
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr()); approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate;
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode")));
Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult(); String approve = approveDate.substring(0, 10) + "核准";
if (!ValidationUtil.isEmpty(resultMap)) { tzBaseEnterpriseInfoDto.setApproval(approve);
String area = String.valueOf(resultMap.get("area")); try {
String city = area.substring(0, area.indexOf("市") + 1); regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd"));
String district = area.substring(city.length()); } catch (ParseException e) {
if (district.equals("高新区")) { e.printStackTrace();
district = "雁塔区"; }
} regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName")));
String industryName = ""; regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority")));
DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM"); for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) {
if (!ValidationUtil.isEmpty(dataDictionary)) { if (djjg.getName().equals(resultMap.get("registration_authority"))) {
industryName = dataDictionary.getName(); regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString());
} }
String approveDate = String.valueOf(resultMap.get("approval_time")); }
approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate; regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status")));
approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate; regUnitIcDto.setProvince("陕西省");
approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate; regUnitIcDto.setCity(city);
regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode"))); regUnitIcDto.setDistrict(district);
String approve = approveDate.substring(0, 10) + "核准"; regUnitIcDto.setStree(String.valueOf(resultMap.get("street")));
tzBaseEnterpriseInfoDto.setApproval(approve); regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community")));
try { regUnitIcDto.setAddress(String.valueOf(resultMap.get("address")));
regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd")); regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
} catch (ParseException e) { regUnitIcDto.setIndustryName(industryName);
e.printStackTrace(); regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district);
} ArrayList<Object> objects = new ArrayList<>();
regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName"))); objects.add("陕西省");
regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority"))); objects.add(city);
for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) { objects.add(district);
if(djjg.getName().equals(resultMap.get("registration_authority"))){ regUnitIcDto.setRegisterAddressList(objects);
regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString()); regUnitIcDto.setIsNotAccess("1");
} } else {
} regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto();
regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status"))); regUnitIcDto.setIsNotAccess("0");
regUnitIcDto.setProvince("陕西省"); }
regUnitIcDto.setCity(city); tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
regUnitIcDto.setDistrict(district); tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate());
regUnitIcDto.setStree(String.valueOf(resultMap.get("street"))); return tzBaseEnterpriseInfoDto;
regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community"))); }
regUnitIcDto.setAddress(String.valueOf(resultMap.get("address")));
regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople"))); @Override
regUnitIcDto.setIndustryName(industryName); public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) {
regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName));
ArrayList<Object> objects = new ArrayList<>(); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo);
objects.add("陕西省"); ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>();
objects.add(city); result.add(tzBaseEnterpriseInfoDto);
objects.add(district); Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
regUnitIcDto.setRegisterAddressList(objects); return page.setRecords(result);
regUnitIcDto.setIsNotAccess("1"); }
} else {
regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto(); @Override
regUnitIcDto.setIsNotAccess("0"); public List<EquEnterDto> getInfoByUseUnit(String userUnit) {
} return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit);
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); }
tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate());
return tzBaseEnterpriseInfoDto; @Override
} public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) {
if (ValidationUtil.isEmpty(useUnit)) {
@Override return new TzBaseEnterpriseInfoDto();
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) { }
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName)); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit);
ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>(); if (tzBaseEnterpriseInfo != null) {
result.add(tzBaseEnterpriseInfoDto); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); }
return page.setRecords(result); // 许可信息
} List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
@Override List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
public List<EquEnterDto> getInfoByUseUnit(String userUnit) { if (!ValidationUtil.isEmpty(unitLicences)) {
return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit); for (BaseUnitLicence baseUnitLicence : unitLicences) {
} BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
@Override unitLicenceDtos.add(baseUnitLicenceDto);
public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) { }
if(ValidationUtil.isEmpty(useUnit)){ }
return new TzBaseEnterpriseInfoDto();
} tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); // 工商信息
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit); RegUnitIc regUnitIc = regUnitIcService.getOne(
if (tzBaseEnterpriseInfo != null) { new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
} if (regUnitIc != null) {
// 许可信息 BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() }
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>(); return tzBaseEnterpriseInfoDto;
if (!ValidationUtil.isEmpty(unitLicences)) {
for (BaseUnitLicence baseUnitLicence : unitLicences) { }
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto); @Override
unitLicenceDtos.add(baseUnitLicenceDto); public String syncEnterpriseInfo() {
} platformTokenService.getToken();
}
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
// 工商信息 //获取平台企业表企业名称及sequence_code,并装入map中
RegUnitIc regUnitIc = regUnitIcService.getOne( Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult();
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); Map<String, CompanyModel> companyMap = new HashMap<>();
RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
if (regUnitIc != null) { getCompanyInfoMap(companyModels, companyMap);
BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
} int size = 500;
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); int total = speUseUnitService.count();
return tzBaseEnterpriseInfoDto; int current = total / size;
current = current + 1;
} for (int i = 1; i <= current; i++) {
@Override
public String syncEnterpriseInfo() { IPage<SpeUseUnit> page = new Page<>();
RequestContext.setAppKey(appkey); page.setCurrent(i);
RequestContext.setProduct(product); page.setSize(size);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords();
for (SpeUseUnit speUseUnit : speUseUnitList) {
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
if (speUseUnit.getSyncState() != 3) {
//获取平台企业表企业名称及sequence_code,并装入map中 CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult();
Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
Map<String,CompanyModel> companyMap = new HashMap<>(); queryWrapper.eq("use_code", speUseUnit.getCerCode());
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper);
getCompanyInfoMap(companyModels,companyMap);
Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult();
int size = 500;
int total = speUseUnitService.count(); if (ValidationUtil.isEmpty(resultMap)) {
int current = total/size; if (!ValidationUtil.isEmpty(companyPrivilegeModel)) {
current = current + 1; List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(), null, null, null).getResult();
for(int i = 1; i<=current; i++){ if (ValidationUtil.isEmpty(agencyUserModelList)) {
//spe表中的数据在工商查不到,且平台无用户,将删除企业数据
Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
IPage<SpeUseUnit> page = new Page<>(); if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
page.setCurrent(i); this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr());
page.setSize(size); }
List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords(); }
for (SpeUseUnit speUseUnit : speUseUnitList) { }
//spe表中的数据在工商查不到,设置spe表状态为1
if(speUseUnit.getSyncState() != 3){ speUseUnit.setSyncState(1);
CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult(); speUseUnitService.updateById(speUseUnit);
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); } else {
queryWrapper.eq("use_code",speUseUnit.getCerCode()); CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult();
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper); CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(speUseUnit.getName());
Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult(); companyModel.setCompanyCode(speUseUnit.getCerCode());
companyModel.setLevel("company");
if (ValidationUtil.isEmpty(resultMap)){ companyModel.setAgencyCode("tzs");
if(!ValidationUtil.isEmpty(companyPrivilegeModel)){ companyModel.setCompanyType("使用单位");
List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(),null,null,null).getResult(); companyModel.setAddress(String.valueOf(resultMap.get("address")));
if(ValidationUtil.isEmpty(agencyUserModelList)){ companyModel.setParentId(privilegeCompanyModel.getSequenceNbr());
//spe表中的数据在工商查不到,且平台无用户,将删除企业数据
Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) { String area = String.valueOf(resultMap.get("area"));
this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr()); String province = "";
} if (area.contains("省")) {
} province = area.substring(0, area.indexOf("省") + 1);
} }
//spe表中的数据在工商查不到,设置spe表状态为1 String city = "";
speUseUnit.setSyncState(1); if (area.contains("市")) {
speUseUnitService.updateById(speUseUnit); city = area.substring(province.length(), area.indexOf("市") + 1);
}else { }
CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult(); String district = area.substring(city.length() + province.length());
CompanyModel companyModel = new CompanyModel(); TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo();
companyModel.setCompanyName(speUseUnit.getName()); baseEnterpriseInfo.setUseUnit(speUseUnit.getName());
companyModel.setCompanyCode(speUseUnit.getCerCode()); baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode());
companyModel.setLevel("company"); baseEnterpriseInfo.setUnitType("使用单位");
companyModel.setAgencyCode("tzs"); baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority")));
companyModel.setCompanyType("使用单位"); baseEnterpriseInfo.setProvince(province);
companyModel.setAddress(String.valueOf(resultMap.get("address"))); baseEnterpriseInfo.setCity(city);
companyModel.setParentId(privilegeCompanyModel.getSequenceNbr()); baseEnterpriseInfo.setDistrict(district);
baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street")));
baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community")));
String area = String.valueOf(resultMap.get("area")); baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address")));
String province = ""; baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
if (area.contains("省")) { baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry")));
province = area.substring(0, area.indexOf("省") + 1); baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority")));
} baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode());
String city = ""; baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status")));
if (area.contains("市")) { baseEnterpriseInfo.setUnitType("使用单位");
city = area.substring(province.length(), area.indexOf("市") + 1); baseEnterpriseInfoList.add(baseEnterpriseInfo);
}
String district = area.substring(city.length() + province.length());
TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo(); //保存平台和业务的企业信息
baseEnterpriseInfo.setUseUnit(speUseUnit.getName()); try {
baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode()); if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) {
baseEnterpriseInfo.setUnitType("使用单位"); //当企业表、平台表 中没有时
baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority"))); this.save(baseEnterpriseInfo);
baseEnterpriseInfo.setProvince(province); Privilege.companyClient.create(companyModel);
baseEnterpriseInfo.setCity(city); } else if (tzBaseEnterprisePrivilegeInfo == null) {
baseEnterpriseInfo.setDistrict(district); //企业表没有,平台表有
baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street"))); this.save(baseEnterpriseInfo);
baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community"))); if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address"))); companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople"))); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry"))); }
baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority"))); } else if (companyPrivilegeModel == null) {
baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode()); //平台表没有,企业表有
baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status"))); if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
baseEnterpriseInfo.setUnitType("使用单位"); tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
baseEnterpriseInfoList.add(baseEnterpriseInfo); this.updateById(tzBaseEnterprisePrivilegeInfo);
}
Privilege.companyClient.create(companyModel);
//保存平台和业务的企业信息 } else {
try { //企业表有 平台表有
if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) { if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
//当企业表、平台表 中没有时 companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
this.save(baseEnterpriseInfo); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
Privilege.companyClient.create(companyModel); }
} else if (tzBaseEnterprisePrivilegeInfo == null) { if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
//企业表没有,平台表有 tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
this.save(baseEnterpriseInfo); this.updateById(tzBaseEnterprisePrivilegeInfo);
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) { }
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType()); }
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr()); setSpeUseUnitState(3, speUseUnit);
} } catch (Exception e) {
} else if (companyPrivilegeModel == null) { System.out.println(e.getMessage());
//平台表没有,企业表有 //当报错时 设置状态为 2
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) { speUseUnit.setSyncState(2);
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType()); speUseUnitService.updateById(speUseUnit);
this.updateById(tzBaseEnterprisePrivilegeInfo); }
} }
Privilege.companyClient.create(companyModel); }
} else { }
//企业表有 平台表有 }
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) { return "ok";
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType()); }
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
} @Override
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) { public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) {
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType()); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo();
this.updateById(tzBaseEnterprisePrivilegeInfo); tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString()));
}
} tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory")));
setSpeUseUnitState(3,speUseUnit); Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude");
} catch (Exception e) { tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address"));
System.out.println(e.getMessage()); tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude")));
//当报错时 设置状态为 2 tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude")));
speUseUnit.setSyncState(2); tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact")));
speUseUnitService.updateById(speUseUnit); tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone")));
} tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense")));
} tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor")));
} tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode")));
} tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName")));
}
return "ok"; //修改工商信息
} RegUnitIc regUnitIc = new RegUnitIc();
List<String> addressList = (List<String>) map.get("registerAddressList");
@Override tzBaseEnterpriseInfo.setProvince(addressList.get(0));
public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) { tzBaseEnterpriseInfo.setCity(addressList.get(1));
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo(); tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString())); tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory"))); tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude"); regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address")); regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude"))); Date approvedDate = new Date();
tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude"))); try {
tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact"))); approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone"))); } catch (ParseException e) {
tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense"))); throw new RuntimeException(e);
tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor"))); }
tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode"))); regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName"))); regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
//修改工商信息 });
RegUnitIc regUnitIc = new RegUnitIc();
List<String> addressList = (List<String>) map.get("registerAddressList");
tzBaseEnterpriseInfo.setProvince(addressList.get(0));
tzBaseEnterpriseInfo.setCity(addressList.get(1));
tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
Date approvedDate = new Date();
try {
approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
} catch (ParseException e) {
throw new RuntimeException(e);
}
regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
});
// regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode())); // regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode()));
//修改许可信息 //修改许可信息
List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences"); List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences");
// baseUnitLicenceService.saveOrUpdateBatch(licences); // baseUnitLicenceService.saveOrUpdateBatch(licences);
// boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo); // boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo);
boolean b = true; boolean b = true;
if (b) { if (b) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
...@@ -507,12 +483,12 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -507,12 +483,12 @@ public class TzBaseEnterpriseInfoServiceImpl
} }
@Override @Override
public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) { public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) {
List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds); List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds);
if (!ObjectUtils.isEmpty(enterpriseLabels)) { if (!ObjectUtils.isEmpty(enterpriseLabels)) {
for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) { for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) {
// 标签递增逻辑 // 标签递增逻辑
// if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) { // if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) {
// String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels()); // String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels());
// tzBaseEnterpriseInfo.setRegulatoryLabels(result); // tzBaseEnterpriseInfo.setRegulatoryLabels(result);
...@@ -520,91 +496,73 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -520,91 +496,73 @@ public class TzBaseEnterpriseInfoServiceImpl
// String labels = String.join(",", enterpriseLabels); // String labels = String.join(",", enterpriseLabels);
// tzBaseEnterpriseInfo.setRegulatoryLabels(labels); // tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
// } // }
String labels = String.join(",", enterpriseLabels); String labels = String.join(",", enterpriseLabels);
tzBaseEnterpriseInfo.setRegulatoryLabels(labels); tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
} }
} else { } else {
tzBaseEnterpriseInfos.forEach(item -> { tzBaseEnterpriseInfos.forEach(item -> {
item.setRegulatoryLabels(null); item.setRegulatoryLabels(null);
}); });
} }
this.updateBatchById(tzBaseEnterpriseInfos); this.updateBatchById(tzBaseEnterpriseInfos);
return "success"; return "success";
} }
private String checkLabel(List<String> enterpriseLabels, String result) { private String checkLabel(List<String> enterpriseLabels, String result) {
List<String> strings = Arrays.asList(result.split(",")); List<String> strings = Arrays.asList(result.split(","));
ArrayList<String> res = new ArrayList<>(strings); ArrayList<String> res = new ArrayList<>(strings);
List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList()); List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList());
res.addAll(collect); res.addAll(collect);
return String.join(",", res); return String.join(",", res);
} }
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { @Override
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); //每一个企业只有一个管理员,所以当前登录用户即管理员用户
RequestContext.setAppKey(appkey); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setProduct(webProduct); platformTokenService.getToken();
//获取机器人的token,获取不到则去登录 Map<String, Object> resultMap = new HashMap<>();
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) { if (!ObjectUtils.isEmpty(me)) {
loginCtiUser(); RegUnitInfo regUnitInfo = new RegUnitInfo();
} String unitCode = String.valueOf(map.get("unitCode"));
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN))); regUnitInfo.setAdminName(String.valueOf(map.get("adminName")));
Map<String, Object> resultMap = new HashMap<>(); regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber")));
if (!ObjectUtils.isEmpty(me)) { regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto")));
RegUnitInfo regUnitInfo = new RegUnitInfo(); regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel")));
String unitCode = String.valueOf(map.get("unitCode")); me.setMobile(String.valueOf(map.get("adminTel")));
regUnitInfo.setAdminName(String.valueOf(map.get("adminName"))); me.setRealName(String.valueOf(map.get("adminName")));
regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber"))); FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId")));
regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto"))); if (200 == updateResult.getStatus()) {
regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel"))); regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode));
me.setMobile(String.valueOf(map.get("adminTel"))); resultMap.put("success", regUnitInfo);
me.setRealName(String.valueOf(map.get("adminName"))); redisUtil.del(adminChange + map.get("adminTel"));
FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId"))); } else {
if (200 == updateResult.getStatus()) { resultMap.put("fail", "平台用户修改失败,请联系管理员");
regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode)); }
resultMap.put("success", regUnitInfo); } else {
redisUtil.del(adminChange + map.get("adminTel")); resultMap.put("fail", "平台用户不存在");
} else { }
resultMap.put("fail", "平台用户修改失败,请联系管理员"); return resultMap;
} }
} else {
resultMap.put("fail", "平台用户不存在");
} public void setSpeUseUnitState(int state, SpeUseUnit speUseUnit) {
return resultMap; speUseUnit.setSyncState(state);
} speUseUnitService.updateById(speUseUnit);
}
//机器人用户登录
private void loginCtiUser() { public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz"); if (companyModels == null) {
IdPasswordAuthModel loninData = new IdPasswordAuthModel(); return map;
loninData.setLoginId(tzsAdminName); }
loninData.setPassword(passwd); Iterator iter = companyModels.iterator();
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData); while (iter.hasNext()) {
if(loginResult.getStatus() == 200) { String json = JSON.toJSONString(iter.next());
HashMap resultMap = (HashMap) loginResult.getResult(); CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond); map.put(companyModel.getCompanyName(), companyModel);
} getCompanyInfoMap(companyModel.getChildren(), map);
} }
return map;
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
speUseUnit.setSyncState(state);
speUseUnitService.updateById(speUseUnit);
}
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){
if(companyModels == null){
return map;
}
Iterator iter = companyModels.iterator();
while(iter.hasNext()){
String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class);
map.put(companyModel.getCompanyName(),companyModel);
getCompanyInfoMap(companyModel.getChildren(),map);
}
return map;
}
} }
...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por ...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por
eureka.instance.ip-address=172.16.3.34 eureka.instance.ip-address=172.16.3.34
## ES properties: ## ES properties:
elasticsearch.username=elastic elasticsearch.username=elastic
elasticsearch.password=a123456 elasticsearch.password=123456
spring.elasticsearch.rest.uris=http://172.16.10.230:9200 spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
......
...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
......
...@@ -9,7 +9,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -9,7 +9,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.Menu; import com.yeejoin.amos.boot.biz.common.utils.Menu;
import com.yeejoin.amos.boot.biz.common.utils.TreeParser; import com.yeejoin.amos.boot.biz.common.utils.TreeParser;
import com.yeejoin.amos.boot.module.app.api.common.MobileLoginParam; import com.yeejoin.amos.boot.module.app.api.common.MobileLoginParam;
import com.yeejoin.amos.boot.module.app.api.dto.EquipExportDto;
import com.yeejoin.amos.boot.module.app.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.app.api.dto.TzBaseEnterpriseInfoDto;
import com.yeejoin.amos.boot.module.app.api.entity.EquipmentCategory; import com.yeejoin.amos.boot.module.app.api.entity.EquipmentCategory;
import com.yeejoin.amos.boot.module.app.api.entity.PageParam; import com.yeejoin.amos.boot.module.app.api.entity.PageParam;
...@@ -30,7 +29,14 @@ import io.swagger.annotations.ApiOperation; ...@@ -30,7 +29,14 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
...@@ -256,8 +262,8 @@ public class TzsAppController { ...@@ -256,8 +262,8 @@ public class TzsAppController {
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(value = "获取机器人登录token", notes = "获取机器人登录token") @ApiOperation(value = "获取机器人登录token", notes = "获取机器人登录token")
@GetMapping(value = "/acquireToken") @GetMapping(value = "/acquireToken")
synchronized public String getRobotLoginToken() { synchronized public ResponseModel<String> getRobotLoginToken() {
return amosRequestContext.getToken(); return ResponseHelper.buildResponse(amosRequestContext.getToken());
} }
/** /**
......
package com.yeejoin.amos.boot.module.app.biz.controller;
import com.yeejoin.amos.boot.module.app.biz.service.impl.TzsAuthServiceImpl;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
@RestController
@Slf4j
@Api(tags = "wechat小程序接口")
@RequestMapping(value = "/wechat")
public class TzsWeChatController {
@Autowired
AmosRequestContext amosRequestContext;
@Autowired
TzsAuthServiceImpl authServiceImpl;
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(value = "获取机器人登录token", notes = "获取机器人登录token")
@GetMapping(value = "/api/acquireToken")
synchronized public ResponseModel<String> getRobotLoginToken() {
return ResponseHelper.buildResponse(authServiceImpl.getUserToken());
}
}
package com.yeejoin.amos.boot.module.app.biz.service.impl; package com.yeejoin.amos.boot.module.app.biz.service.impl;
import com.yeejoin.amos.boot.module.app.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.yeejoin.amos.boot.module.app.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
@Service @Service
public class StartPlatformTokenService { public class StartPlatformTokenService {
@Value("${admin.product}") @Autowired
String product; RedisUtil redisUtil;
@Value("${admin.appkey}")
String appkey;
@Value("${admin.user}")
String user;
@Value("${admin.password}")
String password;
@Value("${amos.secret.key}")
String secretKey;
@Autowired @Autowired
RedisUtil redisUtil; AmosRequestContext amosRequestContext;
@Autowired
AmosRequestContext amosRequestContext;
public void getToken() { public void getToken() {
RequestContext.setProduct(product); RequestContext.setProduct(amosRequestContext.getProduct());
RequestContext.setAppKey(appkey); RequestContext.setAppKey(amosRequestContext.getAppKey());
String token = amosRequestContext.getToken(); RequestContext.setToken(amosRequestContext.getToken());
System.out.println("token:" + token); }
RequestContext.setToken(token);
redisUtil.set("platform_token", token);
}
} }
...@@ -39,6 +39,7 @@ import com.yeejoin.amos.feign.privilege.util.DesUtil; ...@@ -39,6 +39,7 @@ import com.yeejoin.amos.feign.privilege.util.DesUtil;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
...@@ -63,15 +64,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -63,15 +64,6 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}")
String product;
@Value("${admin.product.web}")
String webProduct;
@Value("${admin.appkey}")
String appkey;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
...@@ -82,37 +74,24 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -82,37 +74,24 @@ public class TzBaseEnterpriseInfoServiceImpl
RegUnitIcServiceImpl regUnitIcService; RegUnitIcServiceImpl regUnitIcService;
@Autowired @Autowired
@Lazy
RegUnitInfoServiceImpl regUnitInfoService; RegUnitInfoServiceImpl regUnitInfoService;
@Autowired @Autowired
private IBaseUnitLicenceService iBaseUnitLicenceService;
@Autowired
private SpeUseUnitServiceImpl speUseUnitService; private SpeUseUnitServiceImpl speUseUnitService;
@Autowired @Autowired
private AccessFeignService accessFeignService; private AccessFeignService accessFeignService;
@Autowired @Autowired
private ITzBaseEnterpriseInfoService tzBaseEnterpriseInfoService;
@Autowired
DataDictionaryServiceImpl iDataDictionaryService; DataDictionaryServiceImpl iDataDictionaryService;
@Autowired @Autowired
RegUnitInfoMapper regUnitInfoMapper; RegUnitInfoMapper regUnitInfoMapper;
@Value("${tzs.admin.name:tzs_admin}")
private String tzsAdminName;
@Value("${tzs.admin.pwd:a1234567}")
private String tzsAdminPwd;
@Value("${redis.cache.failure.time}") @Value("${redis.cache.failure.time}")
private Long redisRegionTimeSecond; private Long redisRegionTimeSecond;
/**机器人用户token缓存key */
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN";
/** /**
* 企业管理员变更缓存key前缀 * 企业管理员变更缓存key前缀
*/ */
...@@ -120,6 +99,9 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -120,6 +99,9 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
private EquipmentCategoryServiceImpl equipmentCategoryService; private EquipmentCategoryServiceImpl equipmentCategoryService;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public List<EquEnterDto> getInfo(String sequenceNbr) { public List<EquEnterDto> getInfo(String sequenceNbr) {
return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr); return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr);
...@@ -313,9 +295,7 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -313,9 +295,7 @@ public class TzBaseEnterpriseInfoServiceImpl
@Override @Override
public String syncEnterpriseInfo() { public String syncEnterpriseInfo() {
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>(); List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
...@@ -538,16 +518,11 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -538,16 +518,11 @@ public class TzBaseEnterpriseInfoServiceImpl
return String.join(",", res); return String.join(",", res);
} }
@Override
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 //每一个企业只有一个管理员,所以当前登录用户即管理员用户
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(webProduct);
//获取机器人的token,获取不到则去登录
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) {
loginCtiUser();
}
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN)));
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
if (!ObjectUtils.isEmpty(me)) { if (!ObjectUtils.isEmpty(me)) {
RegUnitInfo regUnitInfo = new RegUnitInfo(); RegUnitInfo regUnitInfo = new RegUnitInfo();
...@@ -572,18 +547,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -572,18 +547,6 @@ public class TzBaseEnterpriseInfoServiceImpl
return resultMap; return resultMap;
} }
//机器人用户登录
private void loginCtiUser() {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz");
IdPasswordAuthModel loninData = new IdPasswordAuthModel();
loninData.setLoginId(tzsAdminName);
loninData.setPassword(passwd);
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData);
if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult();
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond);
}
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){ public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
......
...@@ -48,6 +48,11 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -48,6 +48,11 @@ public class TzsAuthServiceImpl implements TzsAuthService {
@Value("${cti.user.pwd}") @Value("${cti.user.pwd}")
private String ctiUserPwd; private String ctiUserPwd;
@Value("${amos.wechat.robot.user}")
private String weRobotUser;
@Value("${amos.wechat.robot.password}")
private String weRobotPassword;
/** /**
* saveUserRedis设置过期时间 * saveUserRedis设置过期时间
...@@ -58,6 +63,7 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -58,6 +63,7 @@ public class TzsAuthServiceImpl implements TzsAuthService {
@Autowired @Autowired
private StartPlatformTokenService startPlatformTokenService; private StartPlatformTokenService startPlatformTokenService;
String weChatToken = "WECHAT_TOKEN";
@Override @Override
public List<String> getUserRegionCode() { public List<String> getUserRegionCode() {
...@@ -149,20 +155,18 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -149,20 +155,18 @@ public class TzsAuthServiceImpl implements TzsAuthService {
} }
private void loginUser(String userName, String password, String token) {
private void loginCtiUser() { String pwd = DesUtil.encode(password, "qaz");
String passwd = DesUtil.encode(ctiUserPwd, "qaz"); IdPasswordAuthModel loginData = new IdPasswordAuthModel();
IdPasswordAuthModel loninData = new IdPasswordAuthModel(); loginData.setLoginId(userName);
loninData.setLoginId(ctiUserName); loginData.setPassword(pwd);
loninData.setPassword(passwd); FeignClientResult loginResult = Privilege.authClient.idpassword(loginData);
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData);
if(loginResult.getStatus() == 200) { if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult(); HashMap resultMap = (HashMap) loginResult.getResult();
redisUtils.set(RedisKey.CTI_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond); redisUtils.set(token, resultMap.get("token").toString(), redisRegionTimeSecond);
} }
} }
public void setRequestContext() { public void setRequestContext() {
// 需要登录后台账号 // 需要登录后台账号
RequestContext.setAppKey("AMOS_STUDIO"); RequestContext.setAppKey("AMOS_STUDIO");
...@@ -173,10 +177,10 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -173,10 +177,10 @@ public class TzsAuthServiceImpl implements TzsAuthService {
boolean validToken = TokenOperation.refresh(redisUtils.get(RedisKey.CTI_USER_TOKEN).toString()); boolean validToken = TokenOperation.refresh(redisUtils.get(RedisKey.CTI_USER_TOKEN).toString());
// 登陆 // 登陆
if (!validToken) { if (!validToken) {
this.loginCtiUser(); this.loginUser(ctiUserName, ctiUserPwd, RedisKey.CTI_USER_TOKEN);
} }
} else { // 登陆 } else { // 登陆
this.loginCtiUser(); this.loginUser(ctiUserName, ctiUserPwd, RedisKey.CTI_USER_TOKEN);
} }
} }
String ctiToken = redisUtils.get(RedisKey.CTI_USER_TOKEN).toString(); String ctiToken = redisUtils.get(RedisKey.CTI_USER_TOKEN).toString();
...@@ -193,7 +197,6 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -193,7 +197,6 @@ public class TzsAuthServiceImpl implements TzsAuthService {
} }
private void saveUserRedis(AgencyUserModel user, String token) { private void saveUserRedis(AgencyUserModel user, String token) {
String authToken = RedisKey.buildReginKey(user.getUserId(), token); String authToken = RedisKey.buildReginKey(user.getUserId(), token);
if (redisUtils.hasKey(authToken)) { if (redisUtils.hasKey(authToken)) {
...@@ -229,5 +232,23 @@ public class TzsAuthServiceImpl implements TzsAuthService { ...@@ -229,5 +232,23 @@ public class TzsAuthServiceImpl implements TzsAuthService {
redisUtils.set(authToken, JSONObject.toJSONString(reginParams), redisRegionTimeSecond); redisUtils.set(authToken, JSONObject.toJSONString(reginParams), redisRegionTimeSecond);
} }
public String getUserToken() {
// 需要登录后台账号
RequestContext.setAppKey("AMOS_STUDIO");
RequestContext.setProduct("AMOS_STUDIO_WEB");
synchronized (TzsAuthServiceImpl.class) {
if (redisUtils.hasKey(weChatToken)) {
// 验证token
boolean validToken = TokenOperation.refresh(redisUtils.get(weChatToken).toString());
// 登陆
if (!validToken) {
this.loginUser(weRobotUser, weRobotPassword, weChatToken);
}
} else { // 登陆
this.loginUser(weRobotUser, weRobotPassword, weChatToken);
}
}
String weToken = redisUtils.get(weChatToken).toString();
return weToken;
}
} }
\ No newline at end of file
...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.32:${server.por ...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.32:${server.por
eureka.instance.ip-address=172.16.3.32 eureka.instance.ip-address=172.16.3.32
## ES properties: ## ES properties:
elasticsearch.username=elastic elasticsearch.username=elastic
elasticsearch.password=a123456 elasticsearch.password=123456
spring.elasticsearch.rest.uris=http://172.16.10.230:9200 spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
......
...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
...@@ -164,4 +160,7 @@ tzs.auth.user.photo=/public/common/userPic.png ...@@ -164,4 +160,7 @@ tzs.auth.user.photo=/public/common/userPic.png
tzs.WxApp.appId=wx48a1b1915b10d14b tzs.WxApp.appId=wx48a1b1915b10d14b
tzs.WxApp.secret=ac4f4a9d3c97676badb70c19a2f37b16 tzs.WxApp.secret=ac4f4a9d3c97676badb70c19a2f37b16
tzs.WxApp.grant-type=authorization_code tzs.WxApp.grant-type=authorization_code
\ No newline at end of file
amos.wechat.robot.user=we_robot
amos.wechat.robot.password=a1234567
\ No newline at end of file
...@@ -3,7 +3,6 @@ package com.yeejoin.amos.boot.module.cylinder.biz.service.impl; ...@@ -3,7 +3,6 @@ package com.yeejoin.amos.boot.module.cylinder.biz.service.impl;
import com.yeejoin.amos.boot.module.cylinder.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.cylinder.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext; import com.yeejoin.amos.component.robot.AmosRequestContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
...@@ -11,34 +10,16 @@ import org.typroject.tyboot.core.foundation.context.RequestContext; ...@@ -11,34 +10,16 @@ import org.typroject.tyboot.core.foundation.context.RequestContext;
@Service @Service
public class StartPlatformTokenService { public class StartPlatformTokenService {
@Value("${admin.product}") @Autowired
String product; RedisUtil redisUtil;
@Value("${admin.appkey}")
String appkey;
@Value("${admin.user}")
String user;
@Value("${admin.password}")
String password;
@Value("${amos.secret.key}") @Autowired
String secretKey; AmosRequestContext amosRequestContext;
@Autowired
RedisUtil redisUtil;
@Autowired
AmosRequestContext amosRequestContext;
public void getToken() { public void getToken() {
RequestContext.setProduct(product); RequestContext.setProduct(amosRequestContext.getProduct());
RequestContext.setAppKey(appkey); RequestContext.setAppKey(amosRequestContext.getAppKey());
String token = amosRequestContext.getToken(); RequestContext.setToken(amosRequestContext.getToken());
System.out.println("token:" + token); }
RequestContext.setToken(token);
redisUtil.set("platform_token", token);
}
} }
...@@ -11,9 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -11,9 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.cylinder.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.api.dto.BaseUnitLicenceDto; import com.yeejoin.amos.boot.module.cylinder.api.dto.BaseUnitLicenceDto;
import com.yeejoin.amos.boot.module.cylinder.api.dto.EquEnterDto; import com.yeejoin.amos.boot.module.cylinder.api.dto.EquEnterDto;
import com.yeejoin.amos.boot.module.cylinder.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.cylinder.api.dto.TzBaseEnterpriseInfoDto;
...@@ -22,26 +19,25 @@ import com.yeejoin.amos.boot.module.cylinder.api.entity.PageParam; ...@@ -22,26 +19,25 @@ import com.yeejoin.amos.boot.module.cylinder.api.entity.PageParam;
import com.yeejoin.amos.boot.module.cylinder.api.entity.SpeUseUnit; import com.yeejoin.amos.boot.module.cylinder.api.entity.SpeUseUnit;
import com.yeejoin.amos.boot.module.cylinder.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.cylinder.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.cylinder.api.mapper.TzBaseEnterpriseInfoMapper; import com.yeejoin.amos.boot.module.cylinder.api.mapper.TzBaseEnterpriseInfoMapper;
import com.yeejoin.amos.boot.module.cylinder.api.service.IBaseUnitLicenceService;
import com.yeejoin.amos.boot.module.cylinder.api.service.ITzBaseEnterpriseInfoService; import com.yeejoin.amos.boot.module.cylinder.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.boot.module.cylinder.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.RegUnitIcDto; import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.RegUnitIcDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.RegUnitInfoDto; import com.yeejoin.amos.boot.module.cylinder.flc.api.dto.RegUnitInfoDto;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.RegUnitIc; import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.RegUnitIc;
import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.RegUnitInfo; import com.yeejoin.amos.boot.module.cylinder.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.cylinder.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.cylinder.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.cylinder.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.IdPasswordAuthModel;
import com.yeejoin.amos.feign.privilege.util.DesUtil;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
...@@ -57,444 +53,425 @@ import java.util.stream.Collectors; ...@@ -57,444 +53,425 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
public class TzBaseEnterpriseInfoServiceImpl public class TzBaseEnterpriseInfoServiceImpl
extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper> extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper>
implements ITzBaseEnterpriseInfoService { implements ITzBaseEnterpriseInfoService {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}") @Autowired
String product; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
@Value("${admin.product.web}") @Autowired
String webProduct; BaseUnitLicenceServiceImpl baseUnitLicenceService;
@Value("${admin.appkey}") @Autowired
String appkey; RegUnitIcServiceImpl regUnitIcService;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; RegUnitInfoServiceImpl regUnitInfoService;
@Autowired
BaseUnitLicenceServiceImpl baseUnitLicenceService; @Autowired
private SpeUseUnitServiceImpl speUseUnitService;
@Autowired
RegUnitIcServiceImpl regUnitIcService; @Autowired
private AccessFeignService accessFeignService;
@Autowired
RegUnitInfoServiceImpl regUnitInfoService; @Autowired
DataDictionaryServiceImpl iDataDictionaryService;
@Autowired
private IBaseUnitLicenceService iBaseUnitLicenceService; @Autowired
RegUnitInfoMapper regUnitInfoMapper;
@Autowired
private SpeUseUnitServiceImpl speUseUnitService;
@Value("${redis.cache.failure.time}")
@Autowired private Long redisRegionTimeSecond;
private AccessFeignService accessFeignService;
/**
@Autowired * 企业管理员变更缓存key前缀
private ITzBaseEnterpriseInfoService tzBaseEnterpriseInfoService; */
@Autowired private final String adminChange = "ADMIN_CHANGE_";
DataDictionaryServiceImpl iDataDictionaryService;
@Autowired
@Autowired private EquipmentCategoryServiceImpl equipmentCategoryService;
RegUnitInfoMapper regUnitInfoMapper;
@Autowired
@Value("${tzs.admin.name:tzs_admin}") StartPlatformTokenService platformTokenService;
private String tzsAdminName;
@Override
@Value("${tzs.admin.pwd:a1234567}") public List<EquEnterDto> getInfo(String sequenceNbr) {
private String tzsAdminPwd; return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr);
}
@Value("${redis.cache.failure.time}")
private Long redisRegionTimeSecond; @Override
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
/**机器人用户token缓存key */ List<String> orgCodeList = new ArrayList<>();
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN"; if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) {
FeignClientResult<CompanyModel> result = Privilege.companyClient
/** .seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey()));
* 企业管理员变更缓存key前缀 if (result.getResult() != null) {
*/ tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode());
private final String adminChange = "ADMIN_CHANGE_"; }
@Autowired }
private EquipmentCategoryServiceImpl equipmentCategoryService; Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType();
@Override if (!ValidationUtil.isEmpty(companyType1)) {
public List<EquEnterDto> getInfo(String sequenceNbr) { for (JSONObject jsonObject : companyType1) {
return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr); String orgCode = jsonObject.getString("orgCode");
} if (!ValidationUtil.isEmpty(orgCode)) {
orgCodeList.add(orgCode);
@Override }
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) { }
List<String> orgCodeList = new ArrayList<>(); }
if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) {
FeignClientResult<CompanyModel> result = Privilege.companyClient return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto, orgCodeList);
.seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey())); }
if (result.getResult() != null) {
tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode()); @Override
} public TzBaseEnterpriseInfoDto detail(Long id) {
} TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id);
List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType(); if (tzBaseEnterpriseInfo != null) {
if (!ValidationUtil.isEmpty(companyType1)) { BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
for (JSONObject jsonObject : companyType1) { tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto()));
String orgCode = jsonObject.getString("orgCode"); tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto()));
if (!ValidationUtil.isEmpty(orgCode)) { tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense()));
orgCodeList.add(orgCode); tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur()));
} tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory()));
} }
} // 许可信息
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto,orgCodeList); .eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
} List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
if (!ValidationUtil.isEmpty(unitLicences)) {
@Override for (BaseUnitLicence baseUnitLicence : unitLicences) {
public TzBaseEnterpriseInfoDto detail(Long id) { BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id); unitLicenceDtos.add(baseUnitLicenceDto);
if (tzBaseEnterpriseInfo != null) { }
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); }
tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto())); tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto())); // 管理员信息
tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense())); RegUnitInfo regUnitInfo = regUnitInfoService.getOne(
tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur())); new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory())); RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto();
} if (regUnitInfo != null) {
// 许可信息 BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto);
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() }
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo) || ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto()));
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>(); tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto);
if (!ValidationUtil.isEmpty(unitLicences)) {
for (BaseUnitLicence baseUnitLicence : unitLicences) { // 工商信息
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto(); RegUnitIc regUnitIc = regUnitIcService.getOne(
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto); new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
unitLicenceDtos.add(baseUnitLicenceDto); RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
} if (regUnitIc != null) {
} BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos); }
// 管理员信息 tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
RegUnitInfo regUnitInfo = regUnitInfoService.getOne( return tzBaseEnterpriseInfoDto;
new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto(); }
if (regUnitInfo != null) {
BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto); @Override
} public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) {
regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo)||ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto())); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode));
tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto); return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo);
}
// 工商信息
RegUnitIc regUnitIc = regUnitIcService.getOne( private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo) {
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr());
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
if (regUnitIc != null) { Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult();
BeanUtils.copyProperties(regUnitIc, regUnitIcDto); if (!ValidationUtil.isEmpty(resultMap)) {
} String area = String.valueOf(resultMap.get("area"));
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); String city = area.substring(0, area.indexOf("市") + 1);
return tzBaseEnterpriseInfoDto; String district = area.substring(city.length());
if (district.equals("高新区")) {
} district = "雁塔区";
}
@Override String industryName = "";
public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) { DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM");
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode)); if (!ValidationUtil.isEmpty(dataDictionary)) {
return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo); industryName = dataDictionary.getName();
} }
String approveDate = String.valueOf(resultMap.get("approval_time"));
private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo){ approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate;
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr()); approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate;
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate;
Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult(); regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode")));
if (!ValidationUtil.isEmpty(resultMap)) { String approve = approveDate.substring(0, 10) + "核准";
String area = String.valueOf(resultMap.get("area")); tzBaseEnterpriseInfoDto.setApproval(approve);
String city = area.substring(0, area.indexOf("市") + 1); try {
String district = area.substring(city.length()); regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd"));
if (district.equals("高新区")) { } catch (ParseException e) {
district = "雁塔区"; e.printStackTrace();
} }
String industryName = ""; regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName")));
DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM"); regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority")));
if (!ValidationUtil.isEmpty(dataDictionary)) { for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) {
industryName = dataDictionary.getName(); if (djjg.getName().equals(resultMap.get("registration_authority"))) {
} regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString());
String approveDate = String.valueOf(resultMap.get("approval_time")); }
approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate; }
approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate; regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status")));
approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate; regUnitIcDto.setProvince("陕西省");
regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode"))); regUnitIcDto.setCity(city);
String approve = approveDate.substring(0, 10) + "核准"; regUnitIcDto.setDistrict(district);
tzBaseEnterpriseInfoDto.setApproval(approve); regUnitIcDto.setStree(String.valueOf(resultMap.get("street")));
try { regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community")));
regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd")); regUnitIcDto.setAddress(String.valueOf(resultMap.get("address")));
} catch (ParseException e) { regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
e.printStackTrace(); regUnitIcDto.setIndustryName(industryName);
} regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district);
regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName"))); ArrayList<Object> objects = new ArrayList<>();
regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority"))); objects.add("陕西省");
for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) { objects.add(city);
if(djjg.getName().equals(resultMap.get("registration_authority"))){ objects.add(district);
regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString()); regUnitIcDto.setRegisterAddressList(objects);
} regUnitIcDto.setIsNotAccess("1");
} } else {
regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status"))); regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto();
regUnitIcDto.setProvince("陕西省"); regUnitIcDto.setIsNotAccess("0");
regUnitIcDto.setCity(city); }
regUnitIcDto.setDistrict(district); tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
regUnitIcDto.setStree(String.valueOf(resultMap.get("street"))); tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate());
regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community"))); return tzBaseEnterpriseInfoDto;
regUnitIcDto.setAddress(String.valueOf(resultMap.get("address"))); }
regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
regUnitIcDto.setIndustryName(industryName); @Override
regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district); public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) {
ArrayList<Object> objects = new ArrayList<>(); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName));
objects.add("陕西省"); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo);
objects.add(city); ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>();
objects.add(district); result.add(tzBaseEnterpriseInfoDto);
regUnitIcDto.setRegisterAddressList(objects); Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
regUnitIcDto.setIsNotAccess("1"); return page.setRecords(result);
} else { }
regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto();
regUnitIcDto.setIsNotAccess("0"); @Override
} public List<EquEnterDto> getInfoByUseUnit(String userUnit) {
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit);
tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate()); }
return tzBaseEnterpriseInfoDto;
} @Override
public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) {
@Override if (ValidationUtil.isEmpty(useUnit)) {
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) { return new TzBaseEnterpriseInfoDto();
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName)); }
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>(); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit);
result.add(tzBaseEnterpriseInfoDto); if (tzBaseEnterpriseInfo != null) {
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
return page.setRecords(result); }
} // 许可信息
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
@Override .eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
public List<EquEnterDto> getInfoByUseUnit(String userUnit) { List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit); if (!ValidationUtil.isEmpty(unitLicences)) {
} for (BaseUnitLicence baseUnitLicence : unitLicences) {
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
@Override BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) { unitLicenceDtos.add(baseUnitLicenceDto);
if(ValidationUtil.isEmpty(useUnit)){ }
return new TzBaseEnterpriseInfoDto(); }
}
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit); // 工商信息
if (tzBaseEnterpriseInfo != null) { RegUnitIc regUnitIc = regUnitIcService.getOne(
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
} RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
// 许可信息 if (regUnitIc != null) {
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); }
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>(); tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
if (!ValidationUtil.isEmpty(unitLicences)) { return tzBaseEnterpriseInfoDto;
for (BaseUnitLicence baseUnitLicence : unitLicences) {
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto(); }
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
unitLicenceDtos.add(baseUnitLicenceDto); @Override
} public String syncEnterpriseInfo() {
} platformTokenService.getToken();
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos); List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
// 工商信息
RegUnitIc regUnitIc = regUnitIcService.getOne( //获取平台企业表企业名称及sequence_code,并装入map中
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult();
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); Map<String, CompanyModel> companyMap = new HashMap<>();
if (regUnitIc != null) {
BeanUtils.copyProperties(regUnitIc, regUnitIcDto); getCompanyInfoMap(companyModels, companyMap);
}
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); int size = 500;
return tzBaseEnterpriseInfoDto; int total = speUseUnitService.count();
int current = total / size;
} current = current + 1;
for (int i = 1; i <= current; i++) {
@Override
public String syncEnterpriseInfo() {
RequestContext.setAppKey(appkey); IPage<SpeUseUnit> page = new Page<>();
RequestContext.setProduct(product); page.setCurrent(i);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); page.setSize(size);
List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords();
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>(); for (SpeUseUnit speUseUnit : speUseUnitList) {
//获取平台企业表企业名称及sequence_code,并装入map中 if (speUseUnit.getSyncState() != 3) {
Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult(); CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult();
Map<String,CompanyModel> companyMap = new HashMap<>(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
queryWrapper.eq("use_code", speUseUnit.getCerCode());
getCompanyInfoMap(companyModels,companyMap); TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper);
int size = 500; Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult();
int total = speUseUnitService.count();
int current = total/size; if (ValidationUtil.isEmpty(resultMap)) {
current = current + 1; if (!ValidationUtil.isEmpty(companyPrivilegeModel)) {
for(int i = 1; i<=current; i++){ List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(), null, null, null).getResult();
if (ValidationUtil.isEmpty(agencyUserModelList)) {
//spe表中的数据在工商查不到,且平台无用户,将删除企业数据
IPage<SpeUseUnit> page = new Page<>(); Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
page.setCurrent(i); if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
page.setSize(size); this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr());
List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords(); }
for (SpeUseUnit speUseUnit : speUseUnitList) { }
}
if(speUseUnit.getSyncState() != 3){ //spe表中的数据在工商查不到,设置spe表状态为1
CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult(); speUseUnit.setSyncState(1);
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); speUseUnitService.updateById(speUseUnit);
queryWrapper.eq("use_code",speUseUnit.getCerCode()); } else {
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper); CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult();
CompanyModel companyModel = new CompanyModel();
Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult(); companyModel.setCompanyName(speUseUnit.getName());
companyModel.setCompanyCode(speUseUnit.getCerCode());
if (ValidationUtil.isEmpty(resultMap)){ companyModel.setLevel("company");
if(!ValidationUtil.isEmpty(companyPrivilegeModel)){ companyModel.setAgencyCode("tzs");
List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(),null,null,null).getResult(); companyModel.setCompanyType("使用单位");
if(ValidationUtil.isEmpty(agencyUserModelList)){ companyModel.setAddress(String.valueOf(resultMap.get("address")));
//spe表中的数据在工商查不到,且平台无用户,将删除企业数据 companyModel.setParentId(privilegeCompanyModel.getSequenceNbr());
Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr()); String area = String.valueOf(resultMap.get("area"));
} String province = "";
} if (area.contains("省")) {
} province = area.substring(0, area.indexOf("省") + 1);
//spe表中的数据在工商查不到,设置spe表状态为1 }
speUseUnit.setSyncState(1); String city = "";
speUseUnitService.updateById(speUseUnit); if (area.contains("市")) {
}else { city = area.substring(province.length(), area.indexOf("市") + 1);
CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult(); }
CompanyModel companyModel = new CompanyModel(); String district = area.substring(city.length() + province.length());
companyModel.setCompanyName(speUseUnit.getName()); TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo();
companyModel.setCompanyCode(speUseUnit.getCerCode()); baseEnterpriseInfo.setUseUnit(speUseUnit.getName());
companyModel.setLevel("company"); baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode());
companyModel.setAgencyCode("tzs"); baseEnterpriseInfo.setUnitType("使用单位");
companyModel.setCompanyType("使用单位"); baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority")));
companyModel.setAddress(String.valueOf(resultMap.get("address"))); baseEnterpriseInfo.setProvince(province);
companyModel.setParentId(privilegeCompanyModel.getSequenceNbr()); baseEnterpriseInfo.setCity(city);
baseEnterpriseInfo.setDistrict(district);
baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street")));
String area = String.valueOf(resultMap.get("area")); baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community")));
String province = ""; baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address")));
if (area.contains("省")) { baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
province = area.substring(0, area.indexOf("省") + 1); baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry")));
} baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority")));
String city = ""; baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode());
if (area.contains("市")) { baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status")));
city = area.substring(province.length(), area.indexOf("市") + 1); baseEnterpriseInfo.setUnitType("使用单位");
} baseEnterpriseInfoList.add(baseEnterpriseInfo);
String district = area.substring(city.length() + province.length());
TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo();
baseEnterpriseInfo.setUseUnit(speUseUnit.getName()); //保存平台和业务的企业信息
baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode()); try {
baseEnterpriseInfo.setUnitType("使用单位"); if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) {
baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority"))); //当企业表、平台表 中没有时
baseEnterpriseInfo.setProvince(province); this.save(baseEnterpriseInfo);
baseEnterpriseInfo.setCity(city); Privilege.companyClient.create(companyModel);
baseEnterpriseInfo.setDistrict(district); } else if (tzBaseEnterprisePrivilegeInfo == null) {
baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street"))); //企业表没有,平台表有
baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community"))); this.save(baseEnterpriseInfo);
baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address"))); if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople"))); companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry"))); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority"))); }
baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode()); } else if (companyPrivilegeModel == null) {
baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status"))); //平台表没有,企业表有
baseEnterpriseInfo.setUnitType("使用单位"); if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
baseEnterpriseInfoList.add(baseEnterpriseInfo); tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
this.updateById(tzBaseEnterprisePrivilegeInfo);
}
//保存平台和业务的企业信息 Privilege.companyClient.create(companyModel);
try { } else {
if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) { //企业表有 平台表有
//当企业表、平台表 中没有时 if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
this.save(baseEnterpriseInfo); companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
Privilege.companyClient.create(companyModel); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
} else if (tzBaseEnterprisePrivilegeInfo == null) { }
//企业表没有,平台表有 if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
this.save(baseEnterpriseInfo); tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) { this.updateById(tzBaseEnterprisePrivilegeInfo);
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType()); }
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr()); }
} setSpeUseUnitState(3, speUseUnit);
} else if (companyPrivilegeModel == null) { } catch (Exception e) {
//平台表没有,企业表有 System.out.println(e.getMessage());
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) { //当报错时 设置状态为 2
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType()); speUseUnit.setSyncState(2);
this.updateById(tzBaseEnterprisePrivilegeInfo); speUseUnitService.updateById(speUseUnit);
} }
Privilege.companyClient.create(companyModel); }
} else { }
//企业表有 平台表有 }
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) { }
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType()); return "ok";
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr()); }
}
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) { @Override
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType()); public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) {
this.updateById(tzBaseEnterprisePrivilegeInfo); TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo();
} tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString()));
}
setSpeUseUnitState(3,speUseUnit); tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory")));
} catch (Exception e) { Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude");
System.out.println(e.getMessage()); tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address"));
//当报错时 设置状态为 2 tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude")));
speUseUnit.setSyncState(2); tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude")));
speUseUnitService.updateById(speUseUnit); tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact")));
} tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone")));
} tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense")));
} tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor")));
} tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode")));
} tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName")));
return "ok";
} //修改工商信息
RegUnitIc regUnitIc = new RegUnitIc();
@Override List<String> addressList = (List<String>) map.get("registerAddressList");
public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) { tzBaseEnterpriseInfo.setProvince(addressList.get(0));
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo(); tzBaseEnterpriseInfo.setCity(addressList.get(1));
tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString())); tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory"))); tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude"); tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address")); regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude"))); regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude"))); Date approvedDate = new Date();
tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact"))); try {
tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone"))); approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense"))); } catch (ParseException e) {
tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor"))); throw new RuntimeException(e);
tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode"))); }
tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName"))); regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
//修改工商信息 RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
RegUnitIc regUnitIc = new RegUnitIc(); });
List<String> addressList = (List<String>) map.get("registerAddressList");
tzBaseEnterpriseInfo.setProvince(addressList.get(0));
tzBaseEnterpriseInfo.setCity(addressList.get(1));
tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
Date approvedDate = new Date();
try {
approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
} catch (ParseException e) {
throw new RuntimeException(e);
}
regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
});
// regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode())); // regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode()));
//修改许可信息 //修改许可信息
List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences"); List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences");
// baseUnitLicenceService.saveOrUpdateBatch(licences); // baseUnitLicenceService.saveOrUpdateBatch(licences);
// boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo); // boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo);
boolean b = true; boolean b = true;
if (b) { if (b) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
...@@ -505,12 +482,12 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -505,12 +482,12 @@ public class TzBaseEnterpriseInfoServiceImpl
} }
@Override @Override
public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) { public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) {
List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds); List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds);
if (!ObjectUtils.isEmpty(enterpriseLabels)) { if (!ObjectUtils.isEmpty(enterpriseLabels)) {
for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) { for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) {
// 标签递增逻辑 // 标签递增逻辑
// if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) { // if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) {
// String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels()); // String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels());
// tzBaseEnterpriseInfo.setRegulatoryLabels(result); // tzBaseEnterpriseInfo.setRegulatoryLabels(result);
...@@ -518,91 +495,72 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -518,91 +495,72 @@ public class TzBaseEnterpriseInfoServiceImpl
// String labels = String.join(",", enterpriseLabels); // String labels = String.join(",", enterpriseLabels);
// tzBaseEnterpriseInfo.setRegulatoryLabels(labels); // tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
// } // }
String labels = String.join(",", enterpriseLabels); String labels = String.join(",", enterpriseLabels);
tzBaseEnterpriseInfo.setRegulatoryLabels(labels); tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
} }
} else { } else {
tzBaseEnterpriseInfos.forEach(item -> { tzBaseEnterpriseInfos.forEach(item -> {
item.setRegulatoryLabels(null); item.setRegulatoryLabels(null);
}); });
} }
this.updateBatchById(tzBaseEnterpriseInfos); this.updateBatchById(tzBaseEnterpriseInfos);
return "success"; return "success";
} }
private String checkLabel(List<String> enterpriseLabels, String result) { private String checkLabel(List<String> enterpriseLabels, String result) {
List<String> strings = Arrays.asList(result.split(",")); List<String> strings = Arrays.asList(result.split(","));
ArrayList<String> res = new ArrayList<>(strings); ArrayList<String> res = new ArrayList<>(strings);
List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList()); List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList());
res.addAll(collect); res.addAll(collect);
return String.join(",", res); return String.join(",", res);
} }
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { @Override
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); //每一个企业只有一个管理员,所以当前登录用户即管理员用户
RequestContext.setAppKey(appkey); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setProduct(webProduct); platformTokenService.getToken();
//获取机器人的token,获取不到则去登录 Map<String, Object> resultMap = new HashMap<>();
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) { if (!ObjectUtils.isEmpty(me)) {
loginCtiUser(); RegUnitInfo regUnitInfo = new RegUnitInfo();
} String unitCode = String.valueOf(map.get("unitCode"));
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN))); regUnitInfo.setAdminName(String.valueOf(map.get("adminName")));
Map<String, Object> resultMap = new HashMap<>(); regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber")));
if (!ObjectUtils.isEmpty(me)) { regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto")));
RegUnitInfo regUnitInfo = new RegUnitInfo(); regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel")));
String unitCode = String.valueOf(map.get("unitCode")); me.setMobile(String.valueOf(map.get("adminTel")));
regUnitInfo.setAdminName(String.valueOf(map.get("adminName"))); me.setRealName(String.valueOf(map.get("adminName")));
regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber"))); FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId")));
regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto"))); if (200 == updateResult.getStatus()) {
regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel"))); regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode));
me.setMobile(String.valueOf(map.get("adminTel"))); resultMap.put("success", regUnitInfo);
me.setRealName(String.valueOf(map.get("adminName"))); redisUtil.del(adminChange + map.get("adminTel"));
FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId"))); } else {
if (200 == updateResult.getStatus()) { resultMap.put("fail", "平台用户修改失败,请联系管理员");
regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode)); }
resultMap.put("success", regUnitInfo); } else {
redisUtil.del(adminChange + map.get("adminTel")); resultMap.put("fail", "平台用户不存在");
} else { }
resultMap.put("fail", "平台用户修改失败,请联系管理员"); return resultMap;
} }
} else {
resultMap.put("fail", "平台用户不存在"); public void setSpeUseUnitState(int state, SpeUseUnit speUseUnit) {
} speUseUnit.setSyncState(state);
return resultMap; speUseUnitService.updateById(speUseUnit);
} }
//机器人用户登录 public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
private void loginCtiUser() { if (companyModels == null) {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz"); return map;
IdPasswordAuthModel loninData = new IdPasswordAuthModel(); }
loninData.setLoginId(tzsAdminName); Iterator iter = companyModels.iterator();
loninData.setPassword(passwd); while (iter.hasNext()) {
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData); String json = JSON.toJSONString(iter.next());
if(loginResult.getStatus() == 200) { CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
HashMap resultMap = (HashMap) loginResult.getResult(); map.put(companyModel.getCompanyName(), companyModel);
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond); getCompanyInfoMap(companyModel.getChildren(), map);
} }
} return map;
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
speUseUnit.setSyncState(state);
speUseUnitService.updateById(speUseUnit);
}
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){
if(companyModels == null){
return map;
}
Iterator iter = companyModels.iterator();
while(iter.hasNext()){
String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class);
map.put(companyModel.getCompanyName(),companyModel);
getCompanyInfoMap(companyModel.getChildren(),map);
}
return map;
}
} }
...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por ...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por
eureka.instance.ip-address=172.16.3.34 eureka.instance.ip-address=172.16.3.34
## ES properties: ## ES properties:
elasticsearch.username=elastic elasticsearch.username=elastic
elasticsearch.password=a123456 elasticsearch.password=123456
spring.elasticsearch.rest.uris=http://172.16.10.230:9200 spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
......
...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -124,11 +124,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
......
...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON; ...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.module.jczs.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.jczs.biz.service.impl.TzBaseEnterpriseInfoServiceImpl; import com.yeejoin.amos.boot.module.jczs.biz.service.impl.TzBaseEnterpriseInfoServiceImpl;
import com.yeejoin.amos.boot.module.jczs.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.jczs.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil;
...@@ -40,11 +41,9 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -40,11 +41,9 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}") @Autowired
String appKey; StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String s, MqttMessage message) throws Exception { public void processMessage(String s, MqttMessage message) throws Exception {
...@@ -58,9 +57,7 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -58,9 +57,7 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appKey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
//判断库中业务tz_base_enterprise_info是否存在 //判断库中业务tz_base_enterprise_info是否存在
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
......
package com.yeejoin.amos.boot.module.jczs.biz.service.impl; package com.yeejoin.amos.boot.module.jczs.biz.service.impl;
import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
@Service @Service
public class StartPlatformTokenService { public class StartPlatformTokenService {
@Value("${admin.product}") @Autowired
String product; RedisUtil redisUtil;
@Value("${admin.appkey}")
String appkey;
@Value("${admin.user}")
String user;
@Value("${admin.password}")
String password;
@Value("${amos.secret.key}") @Autowired
String secretKey; AmosRequestContext amosRequestContext;
@Autowired
RedisUtil redisUtil;
@Autowired
AmosRequestContext amosRequestContext;
public void getToken() { public void getToken() {
RequestContext.setProduct(product); RequestContext.setProduct(amosRequestContext.getProduct());
RequestContext.setAppKey(appkey); RequestContext.setAppKey(amosRequestContext.getAppKey());
String token = amosRequestContext.getToken(); RequestContext.setToken(amosRequestContext.getToken());
System.out.println("token:" + token); }
RequestContext.setToken(token);
redisUtil.set("platform_token", token);
}
} }
...@@ -11,8 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -11,8 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.jczs.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.jczs.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.boot.module.jczs.api.dto.BaseUnitLicenceDto; import com.yeejoin.amos.boot.module.jczs.api.dto.BaseUnitLicenceDto;
import com.yeejoin.amos.boot.module.jczs.api.dto.EquEnterDto; import com.yeejoin.amos.boot.module.jczs.api.dto.EquEnterDto;
import com.yeejoin.amos.boot.module.jczs.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.jczs.api.dto.TzBaseEnterpriseInfoDto;
...@@ -21,7 +19,6 @@ import com.yeejoin.amos.boot.module.jczs.api.entity.PageParam; ...@@ -21,7 +19,6 @@ import com.yeejoin.amos.boot.module.jczs.api.entity.PageParam;
import com.yeejoin.amos.boot.module.jczs.api.entity.SpeUseUnit; import com.yeejoin.amos.boot.module.jczs.api.entity.SpeUseUnit;
import com.yeejoin.amos.boot.module.jczs.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.jczs.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.jczs.api.mapper.TzBaseEnterpriseInfoMapper; import com.yeejoin.amos.boot.module.jczs.api.mapper.TzBaseEnterpriseInfoMapper;
import com.yeejoin.amos.boot.module.jczs.api.service.IBaseUnitLicenceService;
import com.yeejoin.amos.boot.module.jczs.api.service.ITzBaseEnterpriseInfoService; import com.yeejoin.amos.boot.module.jczs.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.jczs.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.jczs.flc.api.dto.RegUnitIcDto; import com.yeejoin.amos.boot.module.jczs.flc.api.dto.RegUnitIcDto;
...@@ -30,12 +27,12 @@ import com.yeejoin.amos.boot.module.jczs.flc.api.entity.RegUnitIc; ...@@ -30,12 +27,12 @@ import com.yeejoin.amos.boot.module.jczs.flc.api.entity.RegUnitIc;
import com.yeejoin.amos.boot.module.jczs.flc.api.entity.RegUnitInfo; import com.yeejoin.amos.boot.module.jczs.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.jczs.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.jczs.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.boot.module.jczs.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.jczs.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.boot.module.jczs.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.jczs.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.IdPasswordAuthModel;
import com.yeejoin.amos.feign.privilege.util.DesUtil;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -57,444 +54,421 @@ import java.util.stream.Collectors; ...@@ -57,444 +54,421 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
public class TzBaseEnterpriseInfoServiceImpl public class TzBaseEnterpriseInfoServiceImpl
extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper> extends BaseService<TzBaseEnterpriseInfoDto, TzBaseEnterpriseInfo, TzBaseEnterpriseInfoMapper>
implements ITzBaseEnterpriseInfoService { implements ITzBaseEnterpriseInfoService {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}") @Autowired
String product; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
@Value("${admin.product.web}") @Autowired
String webProduct; BaseUnitLicenceServiceImpl baseUnitLicenceService;
@Value("${admin.appkey}") @Autowired
String appkey; RegUnitIcServiceImpl regUnitIcService;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; RegUnitInfoServiceImpl regUnitInfoService;
@Autowired @Autowired
BaseUnitLicenceServiceImpl baseUnitLicenceService; private SpeUseUnitServiceImpl speUseUnitService;
@Autowired @Autowired
RegUnitIcServiceImpl regUnitIcService; private AccessFeignService accessFeignService;
@Autowired @Autowired
RegUnitInfoServiceImpl regUnitInfoService; DataDictionaryServiceImpl iDataDictionaryService;
@Autowired
RegUnitInfoMapper regUnitInfoMapper;
@Value("${redis.cache.failure.time}")
private Long redisRegionTimeSecond;
@Autowired
StartPlatformTokenService platformTokenService;
/**
* 企业管理员变更缓存key前缀
*/
private final String adminChange = "ADMIN_CHANGE_";
@Autowired
private EquipmentCategoryServiceImpl equipmentCategoryService;
@Override
public List<EquEnterDto> getInfo(String sequenceNbr) {
return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr);
}
@Override
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
List<String> orgCodeList = new ArrayList<>();
if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) {
FeignClientResult<CompanyModel> result = Privilege.companyClient
.seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey()));
if (result.getResult() != null) {
tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode());
}
}
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType();
if (!ValidationUtil.isEmpty(companyType1)) {
for (JSONObject jsonObject : companyType1) {
String orgCode = jsonObject.getString("orgCode");
if (!ValidationUtil.isEmpty(orgCode)) {
orgCodeList.add(orgCode);
}
}
}
return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto, orgCodeList);
}
@Override
public TzBaseEnterpriseInfoDto detail(Long id) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id);
if (tzBaseEnterpriseInfo != null) {
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto()));
tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto()));
tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense()));
tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur()));
tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory()));
}
// 许可信息
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
if (!ValidationUtil.isEmpty(unitLicences)) {
for (BaseUnitLicence baseUnitLicence : unitLicences) {
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
unitLicenceDtos.add(baseUnitLicenceDto);
}
}
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
// 管理员信息
RegUnitInfo regUnitInfo = regUnitInfoService.getOne(
new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto();
if (regUnitInfo != null) {
BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto);
}
regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo) || ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto()));
tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto);
// 工商信息
RegUnitIc regUnitIc = regUnitIcService.getOne(
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
if (regUnitIc != null) {
BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
}
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
return tzBaseEnterpriseInfoDto;
}
@Override
public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) {
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode));
return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo);
}
private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr());
RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult();
if (!ValidationUtil.isEmpty(resultMap)) {
String area = String.valueOf(resultMap.get("area"));
String city = area.substring(0, area.indexOf("市") + 1);
String district = area.substring(city.length());
if (district.equals("高新区")) {
district = "雁塔区";
}
String industryName = "";
DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM");
if (!ValidationUtil.isEmpty(dataDictionary)) {
industryName = dataDictionary.getName();
}
String approveDate = String.valueOf(resultMap.get("approval_time"));
approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate;
approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate;
approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate;
regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode")));
String approve = approveDate.substring(0, 10) + "核准";
tzBaseEnterpriseInfoDto.setApproval(approve);
try {
regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd"));
} catch (ParseException e) {
e.printStackTrace();
}
regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName")));
regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority")));
for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) {
if (djjg.getName().equals(resultMap.get("registration_authority"))) {
regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString());
}
}
regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status")));
regUnitIcDto.setProvince("陕西省");
regUnitIcDto.setCity(city);
regUnitIcDto.setDistrict(district);
regUnitIcDto.setStree(String.valueOf(resultMap.get("street")));
regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community")));
regUnitIcDto.setAddress(String.valueOf(resultMap.get("address")));
regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
regUnitIcDto.setIndustryName(industryName);
regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district);
ArrayList<Object> objects = new ArrayList<>();
objects.add("陕西省");
objects.add(city);
objects.add(district);
regUnitIcDto.setRegisterAddressList(objects);
regUnitIcDto.setIsNotAccess("1");
} else {
regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto();
regUnitIcDto.setIsNotAccess("0");
}
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate());
return tzBaseEnterpriseInfoDto;
}
@Autowired @Override
private IBaseUnitLicenceService iBaseUnitLicenceService; public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) {
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName));
@Autowired TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo);
private SpeUseUnitServiceImpl speUseUnitService; ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>();
result.add(tzBaseEnterpriseInfoDto);
@Autowired Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
private AccessFeignService accessFeignService; return page.setRecords(result);
}
@Autowired
private ITzBaseEnterpriseInfoService tzBaseEnterpriseInfoService; @Override
@Autowired public List<EquEnterDto> getInfoByUseUnit(String userUnit) {
DataDictionaryServiceImpl iDataDictionaryService; return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit);
}
@Autowired
RegUnitInfoMapper regUnitInfoMapper; @Override
public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) {
@Value("${tzs.admin.name:tzs_admin}") if (ValidationUtil.isEmpty(useUnit)) {
private String tzsAdminName; return new TzBaseEnterpriseInfoDto();
}
@Value("${tzs.admin.pwd:a1234567}") TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
private String tzsAdminPwd; TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit);
if (tzBaseEnterpriseInfo != null) {
@Value("${redis.cache.failure.time}") BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
private Long redisRegionTimeSecond; }
// 许可信息
/**机器人用户token缓存key */ List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>()
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN"; .eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>();
/** if (!ValidationUtil.isEmpty(unitLicences)) {
* 企业管理员变更缓存key前缀 for (BaseUnitLicence baseUnitLicence : unitLicences) {
*/ BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto();
private final String adminChange = "ADMIN_CHANGE_"; BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto);
@Autowired unitLicenceDtos.add(baseUnitLicenceDto);
private EquipmentCategoryServiceImpl equipmentCategoryService; }
}
@Override
public List<EquEnterDto> getInfo(String sequenceNbr) { tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos);
return tzBaseEnterpriseInfoMapper.getInfo(sequenceNbr); // 工商信息
} RegUnitIc regUnitIc = regUnitIcService.getOne(
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
@Override RegUnitIcDto regUnitIcDto = new RegUnitIcDto();
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) { if (regUnitIc != null) {
List<String> orgCodeList = new ArrayList<>(); BeanUtils.copyProperties(regUnitIc, regUnitIcDto);
if (tzBaseEnterpriseInfoDto.getSuperviseKey() != null) { }
FeignClientResult<CompanyModel> result = Privilege.companyClient tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
.seleteOne(Long.valueOf(tzBaseEnterpriseInfoDto.getSuperviseKey())); return tzBaseEnterpriseInfoDto;
if (result.getResult() != null) {
tzBaseEnterpriseInfoDto.setSuperviseOrgCode(result.getResult().getOrgCode()); }
}
} @Override
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); public String syncEnterpriseInfo() {
List<JSONObject> companyType1 = equipmentCategoryService.getCompanyType(); platformTokenService.getToken();
if (!ValidationUtil.isEmpty(companyType1)) { List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
for (JSONObject jsonObject : companyType1) {
String orgCode = jsonObject.getString("orgCode"); //获取平台企业表企业名称及sequence_code,并装入map中
if (!ValidationUtil.isEmpty(orgCode)) { Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult();
orgCodeList.add(orgCode); Map<String, CompanyModel> companyMap = new HashMap<>();
}
} getCompanyInfoMap(companyModels, companyMap);
}
int size = 500;
return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto,orgCodeList); int total = speUseUnitService.count();
} int current = total / size;
current = current + 1;
@Override for (int i = 1; i <= current; i++) {
public TzBaseEnterpriseInfoDto detail(Long id) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = this.getById(id); IPage<SpeUseUnit> page = new Page<>();
if (tzBaseEnterpriseInfo != null) { page.setCurrent(i);
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); page.setSize(size);
tzBaseEnterpriseInfoDto.setSafetyTwoPhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyTwoPhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyTwoPhoto())); List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords();
tzBaseEnterpriseInfoDto.setSafetyOnePhoto(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getSafetyOnePhoto()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getSafetyOnePhoto())); for (SpeUseUnit speUseUnit : speUseUnitList) {
tzBaseEnterpriseInfoDto.setUnitBusinessLicense(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitBusinessLicense()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitBusinessLicense()));
tzBaseEnterpriseInfoDto.setUnitExequatur(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getUnitExequatur()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getUnitExequatur())); if (speUseUnit.getSyncState() != 3) {
tzBaseEnterpriseInfoDto.setEquipCategory(ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getEquipCategory()) ? new ArrayList() : JSON.parseArray(tzBaseEnterpriseInfo.getEquipCategory())); CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult();
} QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
// 许可信息 queryWrapper.eq("use_code", speUseUnit.getCerCode());
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper);
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode()));
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>(); Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult();
if (!ValidationUtil.isEmpty(unitLicences)) {
for (BaseUnitLicence baseUnitLicence : unitLicences) { if (ValidationUtil.isEmpty(resultMap)) {
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto(); if (!ValidationUtil.isEmpty(companyPrivilegeModel)) {
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto); List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(), null, null, null).getResult();
unitLicenceDtos.add(baseUnitLicenceDto); if (ValidationUtil.isEmpty(agencyUserModelList)) {
} //spe表中的数据在工商查不到,且平台无用户,将删除企业数据
} Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos); if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
// 管理员信息 this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr());
RegUnitInfo regUnitInfo = regUnitInfoService.getOne( }
new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); }
RegUnitInfoDto regUnitInfoDto = new RegUnitInfoDto(); }
if (regUnitInfo != null) { //spe表中的数据在工商查不到,设置spe表状态为1
BeanUtils.copyProperties(regUnitInfo, regUnitInfoDto); speUseUnit.setSyncState(1);
} speUseUnitService.updateById(speUseUnit);
regUnitInfoDto.setAdminIdCardPhoto((ValidationUtil.isEmpty(regUnitInfo)||ValidationUtil.isEmpty(regUnitInfo.getAdminIdCardPhoto())) ? new ArrayList() : JSON.parseArray(regUnitInfo.getAdminIdCardPhoto())); } else {
tzBaseEnterpriseInfoDto.setRegUnitInfoDto(regUnitInfoDto); CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult();
CompanyModel companyModel = new CompanyModel();
// 工商信息 companyModel.setCompanyName(speUseUnit.getName());
RegUnitIc regUnitIc = regUnitIcService.getOne( companyModel.setCompanyCode(speUseUnit.getCerCode());
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); companyModel.setLevel("company");
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); companyModel.setAgencyCode("tzs");
if (regUnitIc != null) { companyModel.setCompanyType("使用单位");
BeanUtils.copyProperties(regUnitIc, regUnitIcDto); companyModel.setAddress(String.valueOf(resultMap.get("address")));
} companyModel.setParentId(privilegeCompanyModel.getSequenceNbr());
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
return tzBaseEnterpriseInfoDto;
String area = String.valueOf(resultMap.get("area"));
} String province = "";
if (area.contains("省")) {
@Override province = area.substring(0, area.indexOf("省") + 1);
public TzBaseEnterpriseInfoDto getInfoByUseCode(String useCode) { }
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_code", useCode)); String city = "";
return ObjectUtils.isEmpty(tzBaseEnterpriseInfo) ? null : getDetail(tzBaseEnterpriseInfo); if (area.contains("市")) {
} city = area.substring(province.length(), area.indexOf("市") + 1);
}
private TzBaseEnterpriseInfoDto getDetail(TzBaseEnterpriseInfo tzBaseEnterpriseInfo){ String district = area.substring(city.length() + province.length());
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = detail(tzBaseEnterpriseInfo.getSequenceNbr()); TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo();
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); baseEnterpriseInfo.setUseUnit(speUseUnit.getName());
Map<String, Object> resultMap = accessFeignService.getData(tzBaseEnterpriseInfoDto.getUseCode()).getResult(); baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode());
if (!ValidationUtil.isEmpty(resultMap)) { baseEnterpriseInfo.setUnitType("使用单位");
String area = String.valueOf(resultMap.get("area")); baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority")));
String city = area.substring(0, area.indexOf("市") + 1); baseEnterpriseInfo.setProvince(province);
String district = area.substring(city.length()); baseEnterpriseInfo.setCity(city);
if (district.equals("高新区")) { baseEnterpriseInfo.setDistrict(district);
district = "雁塔区"; baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street")));
} baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community")));
String industryName = ""; baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address")));
DataDictionary dataDictionary = iDataDictionaryService.getByCode(String.valueOf(resultMap.get("industryCode")), "HYXLDM"); baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
if (!ValidationUtil.isEmpty(dataDictionary)) { baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry")));
industryName = dataDictionary.getName(); baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority")));
} baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode());
String approveDate = String.valueOf(resultMap.get("approval_time")); baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status")));
approveDate = approveDate.contains("年") ? approveDate.replace("年", "-") : approveDate; baseEnterpriseInfo.setUnitType("使用单位");
approveDate = approveDate.contains("月") ? approveDate.replace("月", "-") : approveDate; baseEnterpriseInfoList.add(baseEnterpriseInfo);
approveDate = approveDate.contains("日") ? approveDate.replace("日", "-") : approveDate;
regUnitIcDto.setUnitCode(String.valueOf(resultMap.get("creditCode")));
String approve = approveDate.substring(0, 10) + "核准"; //保存平台和业务的企业信息
tzBaseEnterpriseInfoDto.setApproval(approve); try {
try { if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) {
regUnitIcDto.setApprovedDate(DateUtils.dateParse(approveDate, "yyyy-MM-dd")); //当企业表、平台表 中没有时
} catch (ParseException e) { this.save(baseEnterpriseInfo);
e.printStackTrace(); Privilege.companyClient.create(companyModel);
} } else if (tzBaseEnterprisePrivilegeInfo == null) {
regUnitIcDto.setUnitName(String.valueOf(resultMap.get("unitName"))); //企业表没有,平台表有
regUnitIcDto.setRegisteredOrgan(String.valueOf(resultMap.get("registration_authority"))); this.save(baseEnterpriseInfo);
for (DataDictionary djjg : iDataDictionaryService.getByType("DJJG")) { if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
if(djjg.getName().equals(resultMap.get("registration_authority"))){ companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
regUnitIcDto.setRegisteredOrganCode(djjg.getSequenceNbr().toString()); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
} }
} } else if (companyPrivilegeModel == null) {
regUnitIcDto.setBusinessState(String.valueOf(resultMap.get("operating_status"))); //平台表没有,企业表有
regUnitIcDto.setProvince("陕西省"); if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
regUnitIcDto.setCity(city); tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
regUnitIcDto.setDistrict(district); this.updateById(tzBaseEnterprisePrivilegeInfo);
regUnitIcDto.setStree(String.valueOf(resultMap.get("street"))); }
regUnitIcDto.setCommunity(String.valueOf(resultMap.get("community"))); Privilege.companyClient.create(companyModel);
regUnitIcDto.setAddress(String.valueOf(resultMap.get("address"))); } else {
regUnitIcDto.setLegalPerson(String.valueOf(resultMap.get("legalPeople"))); //企业表有 平台表有
regUnitIcDto.setIndustryName(industryName); if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
regUnitIcDto.setRegisterAddress("陕西省/" + city + "/" + district); companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
ArrayList<Object> objects = new ArrayList<>(); Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
objects.add("陕西省"); }
objects.add(city); if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
objects.add(district); tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
regUnitIcDto.setRegisterAddressList(objects); this.updateById(tzBaseEnterprisePrivilegeInfo);
regUnitIcDto.setIsNotAccess("1"); }
} else { }
regUnitIcDto = tzBaseEnterpriseInfoDto.getRegUnitIcDto(); setSpeUseUnitState(3, speUseUnit);
regUnitIcDto.setIsNotAccess("0"); } catch (Exception e) {
} System.out.println(e.getMessage());
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto); //当报错时 设置状态为 2
tzBaseEnterpriseInfoDto.setApprovalTime(regUnitIcDto.getApprovedDate()); speUseUnit.setSyncState(2);
return tzBaseEnterpriseInfoDto; speUseUnitService.updateById(speUseUnit);
} }
}
@Override }
public IPage<TzBaseEnterpriseInfoDto> page(PageParam pageParam, String companyName) { }
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectOne(new QueryWrapper<TzBaseEnterpriseInfo>().eq("use_unit", companyName)); }
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = getDetail(tzBaseEnterpriseInfo); return "ok";
ArrayList<TzBaseEnterpriseInfoDto> result = new ArrayList<>(); }
result.add(tzBaseEnterpriseInfoDto);
Page<TzBaseEnterpriseInfoDto> page = new Page<>(pageParam.getCurrent(), pageParam.getSize()); @Override
return page.setRecords(result); public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) {
} TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo();
tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString()));
@Override
public List<EquEnterDto> getInfoByUseUnit(String userUnit) { tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory")));
return tzBaseEnterpriseInfoMapper.getInfoByUseUnit(userUnit); Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude");
} tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address"));
tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude")));
@Override tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude")));
public TzBaseEnterpriseInfoDto selectByUseUnit(String useUnit) { tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact")));
if(ValidationUtil.isEmpty(useUnit)){ tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone")));
return new TzBaseEnterpriseInfoDto(); tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense")));
} tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor")));
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode")));
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = tzBaseEnterpriseInfoMapper.selectByUseUnit(useUnit); tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName")));
if (tzBaseEnterpriseInfo != null) {
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); //修改工商信息
} RegUnitIc regUnitIc = new RegUnitIc();
// 许可信息 List<String> addressList = (List<String>) map.get("registerAddressList");
List<BaseUnitLicence> unitLicences = baseUnitLicenceService.list(new LambdaQueryWrapper<BaseUnitLicence>() tzBaseEnterpriseInfo.setProvince(addressList.get(0));
.eq(BaseUnitLicence::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); tzBaseEnterpriseInfo.setCity(addressList.get(1));
List<BaseUnitLicenceDto> unitLicenceDtos = new ArrayList<BaseUnitLicenceDto>(); tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
if (!ValidationUtil.isEmpty(unitLicences)) { tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
for (BaseUnitLicence baseUnitLicence : unitLicences) { tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
BaseUnitLicenceDto baseUnitLicenceDto = new BaseUnitLicenceDto(); tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
BeanUtils.copyProperties(baseUnitLicence, baseUnitLicenceDto); regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
unitLicenceDtos.add(baseUnitLicenceDto); regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
} Date approvedDate = new Date();
} try {
approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
tzBaseEnterpriseInfoDto.setUnitLicences(unitLicenceDtos); } catch (ParseException e) {
// 工商信息 throw new RuntimeException(e);
RegUnitIc regUnitIc = regUnitIcService.getOne( }
new LambdaQueryWrapper<RegUnitIc>().eq(RegUnitIc::getUnitCode, tzBaseEnterpriseInfo.getUseCode())); regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
RegUnitIcDto regUnitIcDto = new RegUnitIcDto(); regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
if (regUnitIc != null) { RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
BeanUtils.copyProperties(regUnitIc, regUnitIcDto); });
}
tzBaseEnterpriseInfoDto.setRegUnitIcDto(regUnitIcDto);
return tzBaseEnterpriseInfoDto;
}
@Override
public String syncEnterpriseInfo() {
RequestContext.setAppKey(appkey);
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
//获取平台企业表企业名称及sequence_code,并装入map中
Collection<CompanyModel> companyModels = Privilege.companyClient.queryAgencyTree(null).getResult();
Map<String,CompanyModel> companyMap = new HashMap<>();
getCompanyInfoMap(companyModels,companyMap);
int size = 500;
int total = speUseUnitService.count();
int current = total/size;
current = current + 1;
for(int i = 1; i<=current; i++){
IPage<SpeUseUnit> page = new Page<>();
page.setCurrent(i);
page.setSize(size);
List<SpeUseUnit> speUseUnitList = speUseUnitService.page(page).getRecords();
for (SpeUseUnit speUseUnit : speUseUnitList) {
if(speUseUnit.getSyncState() != 3){
CompanyModel companyPrivilegeModel = Privilege.companyClient.queryByCompanyCode(speUseUnit.getCerCode()).getResult();
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
queryWrapper.eq("use_code",speUseUnit.getCerCode());
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = this.getOne(queryWrapper);
Map<String, Object> resultMap = accessFeignService.getData(speUseUnit.getCerCode()).getResult();
if (ValidationUtil.isEmpty(resultMap)){
if(!ValidationUtil.isEmpty(companyPrivilegeModel)){
List<AgencyUserModel> agencyUserModelList = Privilege.agencyUserClient.queryByCompanyId(companyPrivilegeModel.getSequenceNbr(),null,null,null).getResult();
if(ValidationUtil.isEmpty(agencyUserModelList)){
//spe表中的数据在工商查不到,且平台无用户,将删除企业数据
Privilege.companyClient.deleteCompany(String.valueOf(companyPrivilegeModel.getSequenceNbr()));
if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
this.deleteBySeq(tzBaseEnterprisePrivilegeInfo.getSequenceNbr());
}
}
}
//spe表中的数据在工商查不到,设置spe表状态为1
speUseUnit.setSyncState(1);
speUseUnitService.updateById(speUseUnit);
}else {
CompanyModel privilegeCompanyModel = Privilege.companyClient.queryByCompanyName(String.valueOf(resultMap.get("registration_authority"))).getResult();
CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(speUseUnit.getName());
companyModel.setCompanyCode(speUseUnit.getCerCode());
companyModel.setLevel("company");
companyModel.setAgencyCode("tzs");
companyModel.setCompanyType("使用单位");
companyModel.setAddress(String.valueOf(resultMap.get("address")));
companyModel.setParentId(privilegeCompanyModel.getSequenceNbr());
String area = String.valueOf(resultMap.get("area"));
String province = "";
if (area.contains("省")) {
province = area.substring(0, area.indexOf("省") + 1);
}
String city = "";
if (area.contains("市")) {
city = area.substring(province.length(), area.indexOf("市") + 1);
}
String district = area.substring(city.length() + province.length());
TzBaseEnterpriseInfo baseEnterpriseInfo = new TzBaseEnterpriseInfo();
baseEnterpriseInfo.setUseUnit(speUseUnit.getName());
baseEnterpriseInfo.setUseCode(speUseUnit.getCerCode());
baseEnterpriseInfo.setUnitType("使用单位");
baseEnterpriseInfo.setRegistrationAuthority(String.valueOf(resultMap.get("registration_authority")));
baseEnterpriseInfo.setProvince(province);
baseEnterpriseInfo.setCity(city);
baseEnterpriseInfo.setDistrict(district);
baseEnterpriseInfo.setStreet(String.valueOf(resultMap.get("street")));
baseEnterpriseInfo.setCommunity(String.valueOf(resultMap.get("community")));
baseEnterpriseInfo.setAddress(String.valueOf(resultMap.get("address")));
baseEnterpriseInfo.setLegalPerson(String.valueOf(resultMap.get("legalPeople")));
baseEnterpriseInfo.setIndustry(String.valueOf(resultMap.get("industry")));
baseEnterpriseInfo.setSuperviseOrgName(String.valueOf(resultMap.get("registration_authority")));
baseEnterpriseInfo.setSuperviseOrgCode(privilegeCompanyModel.getOrgCode());
baseEnterpriseInfo.setOperatingStatus(String.valueOf(resultMap.get("operating_status")));
baseEnterpriseInfo.setUnitType("使用单位");
baseEnterpriseInfoList.add(baseEnterpriseInfo);
//保存平台和业务的企业信息
try {
if (tzBaseEnterprisePrivilegeInfo == null && companyPrivilegeModel == null) {
//当企业表、平台表 中没有时
this.save(baseEnterpriseInfo);
Privilege.companyClient.create(companyModel);
} else if (tzBaseEnterprisePrivilegeInfo == null) {
//企业表没有,平台表有
this.save(baseEnterpriseInfo);
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
}
} else if (companyPrivilegeModel == null) {
//平台表没有,企业表有
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
this.updateById(tzBaseEnterprisePrivilegeInfo);
}
Privilege.companyClient.create(companyModel);
} else {
//企业表有 平台表有
if (!companyPrivilegeModel.getCompanyType().contains(companyModel.getCompanyType())) {
companyPrivilegeModel.setCompanyType(companyPrivilegeModel.getCompanyType() + "," + companyModel.getCompanyType());
Privilege.companyClient.update(companyPrivilegeModel, companyPrivilegeModel.getSequenceNbr());
}
if (!tzBaseEnterprisePrivilegeInfo.getUnitType().contains(baseEnterpriseInfo.getUnitType())) {
tzBaseEnterprisePrivilegeInfo.setUnitType(tzBaseEnterprisePrivilegeInfo.getUnitType() + "," + baseEnterpriseInfo.getUnitType());
this.updateById(tzBaseEnterprisePrivilegeInfo);
}
}
setSpeUseUnitState(3,speUseUnit);
} catch (Exception e) {
System.out.println(e.getMessage());
//当报错时 设置状态为 2
speUseUnit.setSyncState(2);
speUseUnitService.updateById(speUseUnit);
}
}
}
}
}
return "ok";
}
@Override
public TzBaseEnterpriseInfoDto companyInfoUpdate(Map<String, Object> map) {
TzBaseEnterpriseInfo tzBaseEnterpriseInfo = new TzBaseEnterpriseInfo();
tzBaseEnterpriseInfo.setSequenceNbr(Long.valueOf(map.get("sequenceNbr").toString()));
tzBaseEnterpriseInfo.setEquipCategory(JSON.toJSONString(map.get("equipCategory")));
Map<String, String> map1 = (Map<String, String>) map.get("longitudeLatitude");
tzBaseEnterpriseInfo.setAddress(ObjectUtils.isEmpty(map1.get("address")) ? null : map1.get("address"));
tzBaseEnterpriseInfo.setLongitude(ObjectUtils.isEmpty(map1.get("longitude")) ? null : String.valueOf(map1.get("longitude")));
tzBaseEnterpriseInfo.setLatitude(ObjectUtils.isEmpty(map1.get("latitude")) ? null : String.valueOf(map1.get("latitude")));
tzBaseEnterpriseInfo.setUseContact(ObjectUtils.isEmpty(map.get("useContact")) ? null : String.valueOf(map.get("useContact")));
tzBaseEnterpriseInfo.setContactPhone(ObjectUtils.isEmpty(map.get("contactPhone")) ? null : String.valueOf(map.get("contactPhone")));
tzBaseEnterpriseInfo.setUnitBusinessLicense(ObjectUtils.isEmpty(map.get("unitBusinessLicense")) ? null : JSON.toJSONString(map.get("unitBusinessLicense")));
tzBaseEnterpriseInfo.setIndustrySupervisor(ObjectUtils.isEmpty(map.get("industrySupervisor")) ? null : String.valueOf(map.get("industrySupervisor")));
tzBaseEnterpriseInfo.setSuperviseOrgCode(ObjectUtils.isEmpty(map.get("superviseOrgCode")) ? null : String.valueOf(map.get("superviseOrgCode")));
tzBaseEnterpriseInfo.setSuperviseOrgName(ObjectUtils.isEmpty(map.get("superviseOrgName")) ? null : String.valueOf(map.get("superviseOrgName")));
//修改工商信息
RegUnitIc regUnitIc = new RegUnitIc();
List<String> addressList = (List<String>) map.get("registerAddressList");
tzBaseEnterpriseInfo.setProvince(addressList.get(0));
tzBaseEnterpriseInfo.setCity(addressList.get(1));
tzBaseEnterpriseInfo.setDistrict(addressList.get(3));
tzBaseEnterpriseInfo.setCommunity(ObjectUtils.isEmpty(map.get("community")) ? null : String.valueOf(map.get("community")));
tzBaseEnterpriseInfo.setStreet(ObjectUtils.isEmpty(map.get("stree")) ? null : String.valueOf(map.get("stree")));
tzBaseEnterpriseInfo.setLegalPerson(ObjectUtils.isEmpty(map.get("legalPerson")) ? null : String.valueOf(map.get("legalPerson")));
regUnitIc.setIndustryName(ObjectUtils.isEmpty(map.get("industryName")) ? null : String.valueOf(map.get("industryName")));
regUnitIc.setRegisteredOrgan(ObjectUtils.isEmpty(map.get("registeredOrgan")) ? null : String.valueOf(map.get("registeredOrgan")));
Date approvedDate = new Date();
try {
approvedDate = DateUtils.dateParse(String.valueOf(map.get("approvedDate")), "yyyy-MM-dd");
} catch (ParseException e) {
throw new RuntimeException(e);
}
regUnitIc.setBusinessState(ObjectUtils.isEmpty(map.get("businessState")) ? null : String.valueOf(map.get("businessState")));
regUnitIc.setApprovedDate(ObjectUtils.isEmpty(map.get("approvedDate")) ? null : approvedDate);
RegUnitIcDto regUnitIcDto = JSON.parseObject(JSON.toJSONString(map.get("regUnitIcDto")), new TypeReference<RegUnitIcDto>() {
});
// regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode())); // regUnitIcService.update(regUnitIc, new QueryWrapper<RegUnitIc>().eq("unit_code", regUnitIcDto.getUnitCode()));
//修改许可信息 //修改许可信息
List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences"); List<BaseUnitLicence> licences = (List<BaseUnitLicence>) map.get("unitLicences");
// baseUnitLicenceService.saveOrUpdateBatch(licences); // baseUnitLicenceService.saveOrUpdateBatch(licences);
// boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo); // boolean b = tzBaseEnterpriseInfoService.updateById(tzBaseEnterpriseInfo);
boolean b = true; boolean b = true;
if (b) { if (b) {
TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto(); TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto = new TzBaseEnterpriseInfoDto();
BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto); BeanUtils.copyProperties(tzBaseEnterpriseInfo, tzBaseEnterpriseInfoDto);
...@@ -505,12 +479,12 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -505,12 +479,12 @@ public class TzBaseEnterpriseInfoServiceImpl
} }
@Override @Override
public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) { public String setLabel(List<Long> enterpriseIds, List<String> enterpriseLabels) {
List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds); List<TzBaseEnterpriseInfo> tzBaseEnterpriseInfos = tzBaseEnterpriseInfoMapper.selectBatchIds(enterpriseIds);
if (!ObjectUtils.isEmpty(enterpriseLabels)) { if (!ObjectUtils.isEmpty(enterpriseLabels)) {
for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) { for (TzBaseEnterpriseInfo tzBaseEnterpriseInfo : tzBaseEnterpriseInfos) {
// 标签递增逻辑 // 标签递增逻辑
// if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) { // if (!ObjectUtils.isEmpty(tzBaseEnterpriseInfo.getRegulatoryLabels())) {
// String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels()); // String result = checkLabel(enterpriseLabels, tzBaseEnterpriseInfo.getRegulatoryLabels());
// tzBaseEnterpriseInfo.setRegulatoryLabels(result); // tzBaseEnterpriseInfo.setRegulatoryLabels(result);
...@@ -518,91 +492,73 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -518,91 +492,73 @@ public class TzBaseEnterpriseInfoServiceImpl
// String labels = String.join(",", enterpriseLabels); // String labels = String.join(",", enterpriseLabels);
// tzBaseEnterpriseInfo.setRegulatoryLabels(labels); // tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
// } // }
String labels = String.join(",", enterpriseLabels); String labels = String.join(",", enterpriseLabels);
tzBaseEnterpriseInfo.setRegulatoryLabels(labels); tzBaseEnterpriseInfo.setRegulatoryLabels(labels);
} }
} else { } else {
tzBaseEnterpriseInfos.forEach(item -> { tzBaseEnterpriseInfos.forEach(item -> {
item.setRegulatoryLabels(null); item.setRegulatoryLabels(null);
}); });
} }
this.updateBatchById(tzBaseEnterpriseInfos); this.updateBatchById(tzBaseEnterpriseInfos);
return "success"; return "success";
} }
private String checkLabel(List<String> enterpriseLabels, String result) { private String checkLabel(List<String> enterpriseLabels, String result) {
List<String> strings = Arrays.asList(result.split(",")); List<String> strings = Arrays.asList(result.split(","));
ArrayList<String> res = new ArrayList<>(strings); ArrayList<String> res = new ArrayList<>(strings);
List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList()); List<String> collect = enterpriseLabels.stream().filter(item -> !strings.contains(item)).collect(Collectors.toList());
res.addAll(collect); res.addAll(collect);
return String.join(",", res); return String.join(",", res);
} }
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { @Override
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); //每一个企业只有一个管理员,所以当前登录用户即管理员用户
RequestContext.setAppKey(appkey); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setProduct(webProduct); platformTokenService.getToken();
//获取机器人的token,获取不到则去登录 Map<String, Object> resultMap = new HashMap<>();
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) { if (!ObjectUtils.isEmpty(me)) {
loginCtiUser(); RegUnitInfo regUnitInfo = new RegUnitInfo();
} String unitCode = String.valueOf(map.get("unitCode"));
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN))); regUnitInfo.setAdminName(String.valueOf(map.get("adminName")));
Map<String, Object> resultMap = new HashMap<>(); regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber")));
if (!ObjectUtils.isEmpty(me)) { regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto")));
RegUnitInfo regUnitInfo = new RegUnitInfo(); regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel")));
String unitCode = String.valueOf(map.get("unitCode")); me.setMobile(String.valueOf(map.get("adminTel")));
regUnitInfo.setAdminName(String.valueOf(map.get("adminName"))); me.setRealName(String.valueOf(map.get("adminName")));
regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber"))); FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId")));
regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto"))); if (200 == updateResult.getStatus()) {
regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel"))); regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode));
me.setMobile(String.valueOf(map.get("adminTel"))); resultMap.put("success", regUnitInfo);
me.setRealName(String.valueOf(map.get("adminName"))); redisUtil.del(adminChange + map.get("adminTel"));
FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId"))); } else {
if (200 == updateResult.getStatus()) { resultMap.put("fail", "平台用户修改失败,请联系管理员");
regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode)); }
resultMap.put("success", regUnitInfo); } else {
redisUtil.del(adminChange + map.get("adminTel")); resultMap.put("fail", "平台用户不存在");
} else { }
resultMap.put("fail", "平台用户修改失败,请联系管理员"); return resultMap;
} }
} else {
resultMap.put("fail", "平台用户不存在");
} public void setSpeUseUnitState(int state, SpeUseUnit speUseUnit) {
return resultMap; speUseUnit.setSyncState(state);
} speUseUnitService.updateById(speUseUnit);
}
//机器人用户登录
private void loginCtiUser() { public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz"); if (companyModels == null) {
IdPasswordAuthModel loninData = new IdPasswordAuthModel(); return map;
loninData.setLoginId(tzsAdminName); }
loninData.setPassword(passwd); Iterator iter = companyModels.iterator();
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData); while (iter.hasNext()) {
if(loginResult.getStatus() == 200) { String json = JSON.toJSONString(iter.next());
HashMap resultMap = (HashMap) loginResult.getResult(); CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond); map.put(companyModel.getCompanyName(), companyModel);
} getCompanyInfoMap(companyModel.getChildren(), map);
} }
return map;
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
speUseUnit.setSyncState(state);
speUseUnitService.updateById(speUseUnit);
}
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){
if(companyModels == null){
return map;
}
Iterator iter = companyModels.iterator();
while(iter.hasNext()){
String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class);
map.put(companyModel.getCompanyName(),companyModel);
getCompanyInfoMap(companyModel.getChildren(),map);
}
return map;
}
} }
...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por ...@@ -13,7 +13,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por
eureka.instance.ip-address=172.16.3.34 eureka.instance.ip-address=172.16.3.34
## ES properties: ## ES properties:
elasticsearch.username=elastic elasticsearch.username=elastic
elasticsearch.password=a123456 elasticsearch.password=123456
spring.elasticsearch.rest.uris=http://172.16.10.230:9200 spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
......
...@@ -122,11 +122,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -122,11 +122,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
......
...@@ -32,6 +32,9 @@ public class TzsUserInfoDto extends BaseDto { ...@@ -32,6 +32,9 @@ public class TzsUserInfoDto extends BaseDto {
@ApiModelProperty(value = "岗位") @ApiModelProperty(value = "岗位")
private String post; private String post;
@ApiModelProperty(value = "岗位名称")
private String postName;
@ApiModelProperty(value = "联系电话") @ApiModelProperty(value = "联系电话")
private String phone; private String phone;
...@@ -62,6 +65,9 @@ public class TzsUserInfoDto extends BaseDto { ...@@ -62,6 +65,9 @@ public class TzsUserInfoDto extends BaseDto {
@ApiModelProperty(value = "单位名称") @ApiModelProperty(value = "单位名称")
private String unitName; private String unitName;
@ApiModelProperty(value = "单位编码")
private String unitCode;
@ApiModelProperty(value = "平台账号id") @ApiModelProperty(value = "平台账号id")
private String amosUserId; private String amosUserId;
......
...@@ -52,6 +52,12 @@ public class TzsUserInfo extends BaseEntity { ...@@ -52,6 +52,12 @@ public class TzsUserInfo extends BaseEntity {
private String post; private String post;
/** /**
* 岗位名称
*/
@TableField("post_name")
private String postName;
/**
* 联系电话 * 联系电话
*/ */
@TableField("phone") @TableField("phone")
...@@ -105,6 +111,14 @@ public class TzsUserInfo extends BaseEntity { ...@@ -105,6 +111,14 @@ public class TzsUserInfo extends BaseEntity {
*/ */
@TableField("unit_name") @TableField("unit_name")
private String unitName; private String unitName;
/**
* 企业编码
*/
@TableField("unit_code")
private String unitCode;
/** /**
* 头像 * 头像
*/ */
......
...@@ -4,27 +4,29 @@ ...@@ -4,27 +4,29 @@
<select id="selectPageMessage" resultType="com.yeejoin.amos.boot.module.tcm.api.dto.TzsUserInfoDto"> <select id="selectPageMessage" resultType="com.yeejoin.amos.boot.module.tcm.api.dto.TzsUserInfoDto">
SELECT SELECT
sequence_nbr , sequence_nbr,
name, name,
certificate_type, certificate_type,
certificate_num, certificate_num,
post, post,
phone, post_name,
birthday, phone,
unit_name, birthday,
speciality, unit_name,
profile, speciality,
amos_user_name, profile,
amos_user_id, amos_user_name,
lock_status, amos_user_id,
CASE lock_status,
WHEN gender = 1 THEN CASE
'男' ELSE '女' WHEN gender = 1 THEN
END AS gender '男' ELSE '女'
END AS gender
FROM FROM
tzs_user_info tzs_user_info
<where> <where>
is_delete = false is_delete = false
and unit_code = #{dto.unitCode}
<if test="dto.name != '' and dto.name != null"> <if test="dto.name != '' and dto.name != null">
and name like concat('%',#{dto.name},'%') and name like concat('%',#{dto.name},'%')
</if> </if>
...@@ -43,10 +45,10 @@ ...@@ -43,10 +45,10 @@
<if test="dto.amosUserName != '' and dto.amosUserName != null"> <if test="dto.amosUserName != '' and dto.amosUserName != null">
and amos_user_name like concat('%',#{dto.amosUserName},'%') and amos_user_name like concat('%',#{dto.amosUserName},'%')
</if> </if>
<if test="dto.post != '' and dto.post != null"> <if test="dto.postName != '' and dto.postName != null">
and post like concat('%',#{dto.post},'%') and post_name like concat('%',#{dto.postName},'%')
</if> </if>
</where> </where>
order by rec_date order by rec_date desc
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -37,6 +37,7 @@ import org.springframework.core.env.Environment; ...@@ -37,6 +37,7 @@ import org.springframework.core.env.Environment;
import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.EnableTransactionManagement; import org.springframework.transaction.annotation.EnableTransactionManagement;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.restful.exception.GlobalExceptionHandler;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc; import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
import java.net.InetAddress; import java.net.InetAddress;
...@@ -107,7 +108,7 @@ public class AmosTcmApplication { ...@@ -107,7 +108,7 @@ public class AmosTcmApplication {
String ip = InetAddress.getLocalHost().getHostAddress(); String ip = InetAddress.getLocalHost().getHostAddress();
String port = env.getProperty("server.port"); String port = env.getProperty("server.port");
String path = oConvertUtils.getString(env.getProperty("server.servlet.context-path")); String path = oConvertUtils.getString(env.getProperty("server.servlet.context-path"));
GlobalExceptionHandler.setAlwaysOk(true);
logger.info("\n----------------------------------------------------------\n\t" logger.info("\n----------------------------------------------------------\n\t"
+ "Application Amos-Biz-Boot is running! Access URLs:\n\t" + "Swagger文档: \thttp://" + ip + ":" + port + "Application Amos-Biz-Boot is running! Access URLs:\n\t" + "Swagger文档: \thttp://" + ip + ":" + port
+ path + "/doc.html\n" + "----------------------------------------------------------"); + path + "/doc.html\n" + "----------------------------------------------------------");
......
...@@ -300,6 +300,14 @@ public class EquipmentCategoryController extends BaseController { ...@@ -300,6 +300,14 @@ public class EquipmentCategoryController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/refresh")
@ApiOperation(httpMethod = "GET", value = "更新管辖分局树缓存,运维人员使用", notes = "更新管辖分局树缓存,运维人员使用")
public ResponseModel<Object> refreshTree(){
return ResponseHelper.buildResponse(equipmentCategoryService.creatTree());
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getTable") @GetMapping(value = "/getTable")
@ApiOperation(httpMethod = "GET", value = "设备认领和设备管理通用接口", notes = "设备认领和设备管理通用接口") @ApiOperation(httpMethod = "GET", value = "设备认领和设备管理通用接口", notes = "设备认领和设备管理通用接口")
public ResponseModel<Page<Map<String,Object>>> getTable(@RequestParam Map<String,Object> map) { public ResponseModel<Page<Map<String,Object>>> getTable(@RequestParam Map<String,Object> map) {
......
package com.yeejoin.amos.boot.module.tcm.biz.controller; package com.yeejoin.amos.boot.module.tcm.biz.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
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.RedisUtils;
import com.yeejoin.amos.boot.module.tcm.api.dto.EquEnterDto; import com.yeejoin.amos.boot.module.tcm.api.dto.EquEnterDto;
import com.yeejoin.amos.boot.module.tcm.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.tcm.api.dto.TzBaseEnterpriseInfoDto;
import com.yeejoin.amos.boot.module.tcm.api.entity.PageParam; import com.yeejoin.amos.boot.module.tcm.api.entity.PageParam;
import com.yeejoin.amos.boot.module.tcm.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.tcm.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.tcm.api.service.ITzBaseEnterpriseInfoService; import com.yeejoin.amos.boot.module.tcm.api.service.ITzBaseEnterpriseInfoService;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
...@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
...@@ -172,14 +173,14 @@ public class TzBaseEnterpriseInfoController { ...@@ -172,14 +173,14 @@ public class TzBaseEnterpriseInfoController {
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/info", method = RequestMethod.GET) @GetMapping(value = "/info")
@ApiOperation(httpMethod = "GET", value = "查询企业端当前登录人所在企业详情", notes = "查询企业端当前登录人所在企业详情") @ApiOperation(httpMethod = "GET", value = "查询企业端当前登录人所在企业详情", notes = "查询企业端当前登录人所在企业详情")
public ResponseModel<IPage<TzBaseEnterpriseInfoDto>> pageInfo(PageParam pageParam) { public ResponseModel<IPage<TzBaseEnterpriseInfoDto>> pageInfo(PageParam pageParam) {
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class); List<CompanyModel> companyModels = FeignUtil.remoteCall(() -> Privilege.companyClient.queryListByChild(RequestContext.getExeUserId()));
if (ObjectUtils.isEmpty(reginParams)) { if (companyModels.isEmpty()) {
return null; throw new BadRequest("未指定人员归属单位信息");
} }
return ResponseHelper.buildResponse(iTzBaseEnterpriseInfoService.page(pageParam, reginParams.getCompany().getCompanyName())); return ResponseHelper.buildResponse(iTzBaseEnterpriseInfoService.page(pageParam, companyModels.get(0).getCompanyName()));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
...@@ -201,14 +202,7 @@ public class TzBaseEnterpriseInfoController { ...@@ -201,14 +202,7 @@ public class TzBaseEnterpriseInfoController {
@ApiOperation(httpMethod = "POST", value = "修改企业信息", notes = "修改企业信息") @ApiOperation(httpMethod = "POST", value = "修改企业信息", notes = "修改企业信息")
public ResponseModel<Object> adminInfoUpdate(@RequestBody Map<String, Object> map) { public ResponseModel<Object> adminInfoUpdate(@RequestBody Map<String, Object> map) {
Map<String, Object> result = iTzBaseEnterpriseInfoService.adminInfoUpdate(map); Map<String, Object> result = iTzBaseEnterpriseInfoService.adminInfoUpdate(map);
if (result.containsKey("fail")) { return ResponseHelper.buildResponse(result);
ResponseModel responseModel = new ResponseModel();
responseModel.setStatus(500);
responseModel.setDevMessage(result.get("fail").toString());
return responseModel;
} else {
return ResponseHelper.buildResponse(result.get("success"));
}
} }
/** /**
......
...@@ -10,6 +10,7 @@ import com.yeejoin.amos.boot.module.tcm.api.entity.TzsUserInfo; ...@@ -10,6 +10,7 @@ import com.yeejoin.amos.boot.module.tcm.api.entity.TzsUserInfo;
import com.yeejoin.amos.boot.module.tcm.api.entity.TzsUserQualifications; import com.yeejoin.amos.boot.module.tcm.api.entity.TzsUserQualifications;
import com.yeejoin.amos.boot.module.tcm.api.service.ITzsUserInfoService; import com.yeejoin.amos.boot.module.tcm.api.service.ITzsUserInfoService;
import com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzsUserInfoServiceImpl; import com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzsUserInfoServiceImpl;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
...@@ -18,11 +19,14 @@ import io.swagger.annotations.ApiOperation; ...@@ -18,11 +19,14 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -44,17 +48,17 @@ public class TzsUserInfoController extends BaseController { ...@@ -44,17 +48,17 @@ public class TzsUserInfoController extends BaseController {
public ResponseModel<TzsUserInfoDto> save(@RequestBody JSONObject map) { public ResponseModel<TzsUserInfoDto> save(@RequestBody JSONObject map) {
Map<String, Object> userInfo = (Map<String, Object>)map.get("userInfo"); Map<String, Object> userInfo = (Map<String, Object>)map.get("userInfo");
TzsUserInfoDto tzsUserInfo = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfoDto.class); TzsUserInfoDto tzsUserInfo = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfoDto.class);
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); List<CompanyModel> companyModels = FeignUtil.remoteCall(()->Privilege.companyClient.queryListByChild(RequestContext.getExeUserId()));
if(!ObjectUtils.isEmpty(me)){ if(companyModels.isEmpty()){
List<CompanyModel> companys = me.getCompanys(); throw new BadRequest("未指定人员归属单位信息");
if (!ObjectUtils.isEmpty(companys)){
tzsUserInfo.setUnitName(companys.get(0).getCompanyName());
}
} }
tzsUserInfo.setUnitName(companyModels.get(0).getCompanyName());
tzsUserInfo.setUnitCode(companyModels.get(0).getCompanyCode());
tzsUserInfo.setRecDate(new Date());
Map<String, Object> qualificationsInfo = (Map<String, Object>)map.get("qualificationsInfo"); Map<String, Object> qualificationsInfo = (Map<String, Object>)map.get("qualificationsInfo");
Object subForm = qualificationsInfo.get("subForm"); Object subForm = qualificationsInfo.get("subForm");
List<TzsUserQualifications> list = JSON.parseArray(JSON.toJSONString(subForm), TzsUserQualifications.class); List<TzsUserQualifications> list = JSON.parseArray(JSON.toJSONString(subForm), TzsUserQualifications.class);
tzsUserInfo.setPostName(tzsUserInfoServiceImpl.setPostName(tzsUserInfo.getPost()));
tzsUserInfo = tzsUserInfoServiceImpl.createWithModel(tzsUserInfo); tzsUserInfo = tzsUserInfoServiceImpl.createWithModel(tzsUserInfo);
if (!ObjectUtils.isEmpty(list)){ if (!ObjectUtils.isEmpty(list)){
tzsUserInfoService.addQualificationsMessage(String.valueOf(tzsUserInfo.getSequenceNbr()),list); tzsUserInfoService.addQualificationsMessage(String.valueOf(tzsUserInfo.getSequenceNbr()),list);
...@@ -70,17 +74,18 @@ public class TzsUserInfoController extends BaseController { ...@@ -70,17 +74,18 @@ public class TzsUserInfoController extends BaseController {
@RequestParam Long rowId) { @RequestParam Long rowId) {
Map<String, Object> userInfo = (Map<String, Object>)map.get("userInfo"); Map<String, Object> userInfo = (Map<String, Object>)map.get("userInfo");
TzsUserInfo tzsUserInfo = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfo.class); TzsUserInfo tzsUserInfo = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfo.class);
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); List<CompanyModel> companyModels = FeignUtil.remoteCall(()->Privilege.companyClient.queryListByChild(RequestContext.getExeUserId()));
if(!ObjectUtils.isEmpty(me)){ if(companyModels.isEmpty()){
List<CompanyModel> companys = me.getCompanys(); throw new BadRequest("未指定人员归属单位信息");
if (!ObjectUtils.isEmpty(companys)){
tzsUserInfo.setUnitName(companys.get(0).getCompanyName());
}
} }
tzsUserInfo.setUnitName(companyModels.get(0).getCompanyName());
tzsUserInfo.setUnitCode(companyModels.get(0).getCompanyCode());
Map<String, Object> qualificationsInfo = (Map<String, Object>)map.get("qualificationsInfo"); Map<String, Object> qualificationsInfo = (Map<String, Object>)map.get("qualificationsInfo");
Object subForm = qualificationsInfo.get("subForm"); Object subForm = qualificationsInfo.get("subForm");
List<TzsUserQualifications> list = JSON.parseArray(JSON.toJSONString(subForm), TzsUserQualifications.class); List<TzsUserQualifications> list = JSON.parseArray(JSON.toJSONString(subForm), TzsUserQualifications.class);
tzsUserInfo.setSequenceNbr(rowId); tzsUserInfo.setSequenceNbr(rowId);
tzsUserInfo.setRecDate(new Date());
tzsUserInfo.setPostName(tzsUserInfoServiceImpl.setPostName(tzsUserInfo.getPost()));
tzsUserInfoServiceImpl.updateById(tzsUserInfo); tzsUserInfoServiceImpl.updateById(tzsUserInfo);
if (!ObjectUtils.isEmpty(list)){ if (!ObjectUtils.isEmpty(list)){
tzsUserInfoService.updateQualificationsMessage(String.valueOf(tzsUserInfo.getSequenceNbr()),list); tzsUserInfoService.updateQualificationsMessage(String.valueOf(tzsUserInfo.getSequenceNbr()),list);
...@@ -113,10 +118,16 @@ public class TzsUserInfoController extends BaseController { ...@@ -113,10 +118,16 @@ public class TzsUserInfoController extends BaseController {
public ResponseModel<IPage<TzsUserInfoDto>> queryForPage(@RequestParam(value = "current") String current, public ResponseModel<IPage<TzsUserInfoDto>> queryForPage(@RequestParam(value = "current") String current,
@RequestParam(value = "size") String size, @RequestParam(value = "size") String size,
TzsUserInfoDto dto) { TzsUserInfoDto dto) {
List<CompanyModel> companyModels = FeignUtil.remoteCall(()->Privilege.companyClient.queryListByChild(RequestContext.getExeUserId()));
if(companyModels.isEmpty()){
throw new BadRequest("未指定人员归属单位信息");
}
dto.setUnitCode(companyModels.get(0).getCompanyCode());
Page<TzsUserInfoDto> page = new Page<>(); Page<TzsUserInfoDto> page = new Page<>();
page.setCurrent(Long.parseLong(current)); page.setCurrent(Long.parseLong(current));
page.setSize(Long.parseLong(size)); page.setSize(Long.parseLong(size));
return ResponseHelper.buildResponse(tzsUserInfoService.page( dto,page)); return ResponseHelper.buildResponse(tzsUserInfoService.page(dto,page));
} }
......
package com.yeejoin.amos.boot.module.tcm.biz.listener; package com.yeejoin.amos.boot.module.tcm.biz.listener;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.tcm.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.tcm.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.tcm.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.ApplicationModel; import com.yeejoin.amos.feign.privilege.model.ApplicationModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import java.util.*;
import java.util.stream.Collectors;
/** /**
* @Description: mqtt监听服务 * @Description: mqtt监听服务
...@@ -41,127 +31,123 @@ import lombok.extern.slf4j.Slf4j; ...@@ -41,127 +31,123 @@ import lombok.extern.slf4j.Slf4j;
@Component @Component
@Slf4j @Slf4j
public class BaseEnterpriseMqTtlListener extends EmqxListener { public class BaseEnterpriseMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}") @Autowired
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appkey;
@Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Autowired @Autowired
DataDictionaryServiceImpl iDataDictionaryService; DataDictionaryServiceImpl iDataDictionaryService;
@Value("${org.filter.group.seq}")
private Long groupSeq;
@Value("${org.filter.group.seq}") @Autowired
private Long groupSeq; StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) throws Exception { public void processMessage(String topic, MqttMessage message) throws Exception {
System.out.println(message); System.out.println(message);
JSONObject object = null; JSONObject object = null;
try { try {
object = JSONObject.parseObject(message.toString()); object = JSONObject.parseObject(message.toString());
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appkey); platformTokenService.setRequestContext();
RequestContext.setProduct(product); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); List<ApplicationModel> aList = aResult.getResult();
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<ApplicationModel> aList = aResult.getResult();
// List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) // List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
// .map(i -> i.getAppCode()).collect(Collectors.toList()); // .map(i -> i.getAppCode()).collect(Collectors.toList());
FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(object.getLong("sequence_nbr")); FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(object.getLong("sequence_nbr"));
// FeignClientResult<Collection<CompanyModel>> cResult = // FeignClientResult<Collection<CompanyModel>> cResult =
// Privilege.companyClient.queryAgencyTree(null); // Privilege.companyClient.queryAgencyTree(null);
String useCode = object.getString("use_code"); String useCode = object.getString("use_code");
// if (useCode == null || !isUse(useCode, cResult.getResult())) { // if (useCode == null || !isUse(useCode, cResult.getResult())) {
if (cResult.getResult() == null) { if (cResult.getResult() == null) {
CompanyModel companyModel = new CompanyModel(); CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(object.getString("use_unit")); companyModel.setCompanyName(object.getString("use_unit"));
companyModel.setParentId(0L); companyModel.setParentId(0L);
companyModel.setLevel("company"); companyModel.setLevel("company");
String unitTypes = object.getString("unit_type"); String unitTypes = object.getString("unit_type");
companyModel.setCompanyType(unitTypes); companyModel.setCompanyType(unitTypes);
// companyModel.setSequenceNbr(object.getLong("sequence_nbr")); // companyModel.setSequenceNbr(object.getLong("sequence_nbr"));
companyModel.setCompanyCode(useCode); companyModel.setCompanyCode(useCode);
if (object.getString("supervise_org_code") != null) { if (object.getString("supervise_org_code") != null) {
FeignClientResult<HashMap<String, Object>> result = Privilege.companyClient FeignClientResult<HashMap<String, Object>> result = Privilege.companyClient
.queryByOrgcode(object.getString("supervise_org_code")); .queryByOrgcode(object.getString("supervise_org_code"));
// JSONObject parent = // JSONObject parent =
// JSONObject.parseObject(JSONObject.toJSONString(result.getResult())); // JSONObject.parseObject(JSONObject.toJSONString(result.getResult()));
if (result.getResult().get("sequenceNbr") != null) { if (result.getResult().get("sequenceNbr") != null) {
companyModel.setParentId(Long.valueOf(result.getResult().get("sequenceNbr").toString())); companyModel.setParentId(Long.valueOf(result.getResult().get("sequenceNbr").toString()));
} }
} }
FeignClientResult<CompanyModel> createResult = Privilege.companyClient.create(companyModel); FeignClientResult<CompanyModel> createResult = Privilege.companyClient.create(companyModel);
Long companySqr = createResult.getResult().getSequenceNbr(); Long companySqr = createResult.getResult().getSequenceNbr();
String unitCode = object.getString("use_code"); String unitCode = object.getString("use_code");
if (unitCode == null || unitCode.length() < 6) { if (unitCode == null || unitCode.length() < 6) {
log.error("公司统一信用代码长度不够6位"); log.error("公司统一信用代码长度不够6位");
throw new Exception("公司统一信用代码长度不够6位"); throw new Exception("公司统一信用代码长度不够6位");
} }
String userName = unitCode.substring(unitCode.length() - 6, unitCode.length()); String userName = unitCode.substring(unitCode.length() - 6, unitCode.length());
FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName); FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName);
if (uResult.getResult() == null) { if (uResult.getResult() == null) {
FeignClientResult<List<RoleModel>> roleListResult = Privilege.roleClient.queryRoleList(null, null); FeignClientResult<List<RoleModel>> roleListResult = Privilege.roleClient.queryRoleList(null, null);
List<RoleModel> allRoleList = roleListResult.getResult(); List<RoleModel> allRoleList = roleListResult.getResult();
AgencyUserModel userModel = new AgencyUserModel(); AgencyUserModel userModel = new AgencyUserModel();
userModel.setUserName(userName); userModel.setUserName(userName);
userModel.setRealName(userName); userModel.setRealName(userName);
userModel.setPassword(DesUtil.encode(userName, secretKey)); userModel.setPassword(DesUtil.encode(userName, secretKey));
userModel.setRePassword(DesUtil.encode(userName, secretKey)); userModel.setRePassword(DesUtil.encode(userName, secretKey));
// userModel.setMobile(vo.getPhoneNo()); // userModel.setMobile(vo.getPhoneNo());
userModel.setLockStatus("UNLOCK"); userModel.setLockStatus("UNLOCK");
// FeignClientResult<List<RoleModel>> list = // FeignClientResult<List<RoleModel>> list =
// Privilege.roleClient.queryRoleList("使用单位", "admin"); // Privilege.roleClient.queryRoleList("使用单位", "admin");
String[] unitTypeArray = unitTypes.split(","); String[] unitTypeArray = unitTypes.split(",");
List<String> unitTypeList = Arrays.asList(unitTypeArray); List<String> unitTypeList = Arrays.asList(unitTypeArray);
Set<String> roleNameSet = new HashSet<>(); Set<String> roleNameSet = new HashSet<>();
Set<String> appCodesSet = new HashSet<>(); Set<String> appCodesSet = new HashSet<>();
List<RoleModel> userRoleList = new ArrayList<>(); List<RoleModel> userRoleList = new ArrayList<>();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
Map<Long, List<Long>> roleSeqMap = new HashMap<>(); Map<Long, List<Long>> roleSeqMap = new HashMap<>();
for (String unitTypeStr : unitTypeList) { for (String unitTypeStr : unitTypeList) {
DataDictionary unitType = iDataDictionaryService DataDictionary unitType = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getName, unitTypeStr)); .getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getName, unitTypeStr));
String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : ""; String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : "";
String[] appCodes = appCode.split(","); String[] appCodes = appCode.split(",");
Collections.addAll(appCodesSet, appCodes); Collections.addAll(appCodesSet, appCodes);
roleNameSet.add(unitType.getName()); roleNameSet.add(unitType.getName());
userRoleList = allRoleList.stream().filter(r -> r.getRoleName().equals(unitType.getName())) userRoleList = allRoleList.stream().filter(r -> r.getRoleName().equals(unitType.getName()))
.collect(Collectors.toList()); .collect(Collectors.toList());
for (RoleModel r : userRoleList) { for (RoleModel r : userRoleList) {
if (!roleIds.contains(r.getSequenceNbr())) { if (!roleIds.contains(r.getSequenceNbr())) {
roleIds.add(r.getSequenceNbr()); roleIds.add(r.getSequenceNbr());
} }
} }
roleSeqMap.put(companySqr, roleIds); roleSeqMap.put(companySqr, roleIds);
} }
userModel.setAppCodes(new ArrayList<>(appCodesSet)); userModel.setAppCodes(new ArrayList<>(appCodesSet));
userModel.setOrgRoleSeqs(roleSeqMap); userModel.setOrgRoleSeqs(roleSeqMap);
FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel); FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel);
String[] userIds = { userResult.getResult().getUserId() }; String[] userIds = {userResult.getResult().getUserId()};
// if (groupSeq != null) { // if (groupSeq != null) {
// Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds)); // Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds));
// } // }
} }
} }
} }
private boolean isUse(String useCode, Collection<CompanyModel> companys) { private boolean isUse(String useCode, Collection<CompanyModel> companys) {
for (Object obj : companys) { for (Object obj : companys) {
String json = JSONObject.toJSONString(obj); String json = JSONObject.toJSONString(obj);
CompanyModel companyMode = JSONObject.toJavaObject(JSONObject.parseObject(json), CompanyModel.class); CompanyModel companyMode = JSONObject.toJavaObject(JSONObject.parseObject(json), CompanyModel.class);
if (useCode.equals(companyMode.getCompanyCode())) { if (useCode.equals(companyMode.getCompanyCode())) {
return true; return true;
} else if (companyMode.getChildren() != null) { } else if (companyMode.getChildren() != null) {
return isUse(useCode, companyMode.getChildren()); return isUse(useCode, companyMode.getChildren());
} }
} }
return false; return false;
} }
} }
package com.yeejoin.amos.boot.module.tcm.biz.listener; package com.yeejoin.amos.boot.module.tcm.biz.listener;
import java.util.ArrayList; import com.alibaba.fastjson.JSONObject;
import java.util.HashMap; import com.yeejoin.amos.boot.module.tcm.biz.service.impl.StartPlatformTokenService;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.tcm.biz.utils.DesUtil; import com.yeejoin.amos.boot.module.tcm.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.ApplicationModel; import com.yeejoin.amos.feign.privilege.model.ApplicationModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* @Description: mqtt监听服务 * @Description: mqtt监听服务
...@@ -33,78 +31,74 @@ import lombok.extern.slf4j.Slf4j; ...@@ -33,78 +31,74 @@ import lombok.extern.slf4j.Slf4j;
@Component @Component
@Slf4j @Slf4j
public class CarcylUnitInspectMqTtlListener extends EmqxListener { public class CarcylUnitInspectMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}") @Autowired
String appkey;
@Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${org.filter.group.seq}") @Value("${org.filter.group.seq}")
private Long groupSeq; private Long groupSeq;
@Override @Autowired
public void processMessage(String topic, MqttMessage message) throws Exception { StartPlatformTokenService platformTokenService;
System.out.println(message);
JSONObject object = null; @Override
try { public void processMessage(String topic, MqttMessage message) throws Exception {
object = JSONObject.parseObject(message.toString()); System.out.println(message);
} catch (Exception e) { JSONObject object = null;
throw new Exception("公司同步消息解析失败"); try {
} object = JSONObject.parseObject(message.toString());
RequestContext.setAppKey(appkey); } catch (Exception e) {
RequestContext.setProduct(product); throw new Exception("公司同步消息解析失败");
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); }
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications(); platformTokenService.setRequestContext();
List<ApplicationModel> aList = aResult.getResult(); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) List<ApplicationModel> aList = aResult.getResult();
.map(i -> i.getAppCode()).collect(Collectors.toList()); List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
.map(i -> i.getAppCode()).collect(Collectors.toList());
String uuid = object.getString("id"); String uuid = object.getString("id");
Long id = Long.valueOf(uuid.replaceAll("-","").hashCode()); Long id = Long.valueOf(uuid.replaceAll("-", "").hashCode());
FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(id); FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(id);
if (cResult.getResult() == null) { if (cResult.getResult() == null) {
CompanyModel companyModel = new CompanyModel(); CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(object.getString("inspect_unit_name")); companyModel.setCompanyName(object.getString("inspect_unit_name"));
companyModel.setParentId(0L); companyModel.setParentId(0L);
companyModel.setLevel("company"); companyModel.setLevel("company");
companyModel.setSequenceNbr(id); companyModel.setSequenceNbr(id);
companyModel.setCompanyCode(object.getString("org_unit_name")); companyModel.setCompanyCode(object.getString("org_unit_name"));
companyModel.setCompanyType("检验单位"); companyModel.setCompanyType("检验单位");
Privilege.companyClient.create(companyModel); Privilege.companyClient.create(companyModel);
} }
String unitCode = object.getString("org_unit_name"); String unitCode = object.getString("org_unit_name");
if (unitCode == null || unitCode.length() < 6) { if (unitCode == null || unitCode.length() < 6) {
log.error("公司统一信用代码长度不够6位"); log.error("公司统一信用代码长度不够6位");
throw new Exception("公司统一信用代码长度不够6位"); throw new Exception("公司统一信用代码长度不够6位");
} }
String userName = unitCode.substring(unitCode.length() - 6, unitCode.length()); String userName = unitCode.substring(unitCode.length() - 6, unitCode.length());
FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName); FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName);
if (uResult.getResult() == null) { if (uResult.getResult() == null) {
AgencyUserModel userModel = new AgencyUserModel(); AgencyUserModel userModel = new AgencyUserModel();
userModel.setUserName(userName); userModel.setUserName(userName);
userModel.setRealName(userName); userModel.setRealName(userName);
userModel.setPassword(DesUtil.encode(userName, secretKey)); userModel.setPassword(DesUtil.encode(userName, secretKey));
userModel.setRePassword(DesUtil.encode(userName, secretKey)); userModel.setRePassword(DesUtil.encode(userName, secretKey));
// userModel.setMobile(vo.getPhoneNo()); // userModel.setMobile(vo.getPhoneNo());
userModel.setLockStatus("UNLOCK"); userModel.setLockStatus("UNLOCK");
FeignClientResult<List<RoleModel>> list = Privilege.roleClient.queryRoleList("检验单位", "admin"); FeignClientResult<List<RoleModel>> list = Privilege.roleClient.queryRoleList("检验单位", "admin");
Map<Long, List<Long>> orgRoles = new HashMap<>(); Map<Long, List<Long>> orgRoles = new HashMap<>();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
roleIds.add(list.getResult().get(0).getSequenceNbr()); roleIds.add(list.getResult().get(0).getSequenceNbr());
orgRoles.put(id, roleIds); orgRoles.put(id, roleIds);
userModel.setAppCodes(appCodes); userModel.setAppCodes(appCodes);
userModel.setOrgRoleSeqs(orgRoles); userModel.setOrgRoleSeqs(orgRoles);
FeignClientResult<AgencyUserModel> userResult =Privilege.agencyUserClient.create(userModel); FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel);
String[] userIds = {userResult.getResult().getUserId()}; String[] userIds = {userResult.getResult().getUserId()};
// if (groupSeq != null) { // if (groupSeq != null) {
// Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds)); // Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds));
// } // }
} }
} }
} }
...@@ -5,16 +5,15 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,16 +5,15 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.tcm.api.service.IEquipmentCategoryService; import com.yeejoin.amos.boot.module.tcm.api.service.IEquipmentCategoryService;
import com.yeejoin.amos.boot.module.tcm.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.tcm.flc.api.service.IRegUnitInfoService; import com.yeejoin.amos.boot.module.tcm.flc.api.service.IRegUnitInfoService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -39,23 +38,18 @@ public class PlatformUserTopicMessage extends EmqxListener { ...@@ -39,23 +38,18 @@ public class PlatformUserTopicMessage extends EmqxListener {
@Autowired @Autowired
RedisUtils redisUtil; RedisUtils redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Autowired @Autowired
IEquipmentCategoryService equipmentCategoryService; IEquipmentCategoryService equipmentCategoryService;
@Autowired @Autowired
IRegUnitInfoService regUnitInfoService; IRegUnitInfoService regUnitInfoService;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) { public void processMessage(String topic, MqttMessage message) {
RequestContext.setAppKey(appKey); platformTokenService.setRequestContext();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
JSONObject jsonObject = JSON.parseObject(message.toString()); JSONObject jsonObject = JSON.parseObject(message.toString());
JSONObject result = jsonObject.getJSONObject("result"); JSONObject result = jsonObject.getJSONObject("result");
JSONObject dataResult = result.getJSONObject("result"); JSONObject dataResult = result.getJSONObject("result");
......
...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.module.tcm.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.tcm.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.tcm.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzBaseEnterpriseInfoServiceImpl; import com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzBaseEnterpriseInfoServiceImpl;
import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.tcm.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.tcm.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.tcm.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -16,14 +16,16 @@ import org.eclipse.paho.client.mqttv3.MqttMessage; ...@@ -16,14 +16,16 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
@Component @Component
@Slf4j @Slf4j
...@@ -40,11 +42,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -40,11 +42,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}") @Autowired
String product; StartPlatformTokenService platformTokenService;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Override @Override
public void processMessage(String s, MqttMessage message) throws Exception { public void processMessage(String s, MqttMessage message) throws Exception {
...@@ -58,15 +57,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -58,15 +57,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appKey); platformTokenService.setRequestContext();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
//判断库中业务tz_base_enterprise_info是否存在 //判断库中业务tz_base_enterprise_info是否存在
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
queryWrapper.eq("use_code",object.getString("unit_code")); queryWrapper.eq("use_code", object.getString("unit_code"));
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper); TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper);
if(!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)){ if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
...@@ -95,14 +92,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -95,14 +92,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
//业务表更新条件构造器 //业务表更新条件构造器
UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>(); UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("use_code",object.getString("unit_code")); updateWrapper.eq("use_code", object.getString("unit_code"));
String regCode = object.getString("reg_code"); String regCode = object.getString("reg_code");
CompanyModel supervisePrivilegeCompanyModel; CompanyModel supervisePrivilegeCompanyModel;
if (!ValidationUtil.isEmpty(regCode)) { if (!ValidationUtil.isEmpty(regCode)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult();
if(ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)){ if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult();
if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) { if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
...@@ -120,37 +117,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -120,37 +117,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode()); tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode());
tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName()); tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName());
if(ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())){ if (ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())) {
tzBaseEnterpriseInfo.setUnitType(""); tzBaseEnterpriseInfo.setUnitType("");
} }
try { try {
if (tzBaseEnterprisePrivilegeInfo == null ) { if (tzBaseEnterprisePrivilegeInfo == null) {
tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo); tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo);
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
} catch(Exception e) { } catch (Exception e) {
logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage()); logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage());
} }
} }
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){ public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
if(companyModels == null){ if (companyModels == null) {
return map; return map;
} }
Iterator iter = companyModels.iterator(); Iterator iter = companyModels.iterator();
while(iter.hasNext()){ while (iter.hasNext()) {
String json = JSON.toJSONString(iter.next()); String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class); CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
String code = companyModel.getCompanyCode(); String code = companyModel.getCompanyCode();
if(code.length() >=6){ if (code.length() >= 6) {
code = code.substring(0, 6); code = code.substring(0, 6);
} }
map.put(code,companyModel); map.put(code, companyModel);
getCompanyInfoMap(companyModel.getChildren(),map); getCompanyInfoMap(companyModel.getChildren(), map);
} }
return map; return map;
} }
......
...@@ -25,17 +25,9 @@ import com.yeejoin.amos.boot.module.tcm.flc.api.feign.PrivilegeFeginService; ...@@ -25,17 +25,9 @@ import com.yeejoin.amos.boot.module.tcm.flc.api.feign.PrivilegeFeginService;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.QueryBuilders;
...@@ -122,7 +114,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -122,7 +114,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
private String code; private String code;
@Autowired @Autowired
RestHighLevelClient restHighLevelClient; RestHighLevelClient restHighLevelClient;
@Autowired @Autowired
private RedisUtils redisUtils; private RedisUtils redisUtils;
...@@ -256,7 +248,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -256,7 +248,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
//生成码 //生成码
Map<String, String> codeMap; Map<String, String> codeMap;
synchronized (EquipmentCategoryServiceImpl.class) { synchronized (EquipmentCategoryServiceImpl.class) {
codeMap = creatCode(city, county, equipCategory, null,null); codeMap = creatCode(city, county, equipCategory, null, null);
} }
if (ObjectUtils.isEmpty(codeMap)) { if (ObjectUtils.isEmpty(codeMap)) {
return new HashMap<>(); return new HashMap<>();
...@@ -276,7 +268,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -276,7 +268,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
List<CategoryOtherInfo> categoryOtherInfo = categoryOtherInfoMapper.selectList(new QueryWrapper<CategoryOtherInfo>().eq("SUPERVISORY_CODE", supervisorCode)); List<CategoryOtherInfo> categoryOtherInfo = categoryOtherInfoMapper.selectList(new QueryWrapper<CategoryOtherInfo>().eq("SUPERVISORY_CODE", supervisorCode));
if (categoryOtherInfo.size() > 0) { if (categoryOtherInfo.size() > 0) {
// categoryOtherInfoMapper.updateCode(supervisorCode, equState); // categoryOtherInfoMapper.updateCode(supervisorCode, equState);
supervisoryCodeInfoMapper.update(supervisoryCodeInfo,new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code",supervisoryCodeInfo.getSupervisoryCode())); supervisoryCodeInfoMapper.update(supervisoryCodeInfo, new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code", supervisoryCodeInfo.getSupervisoryCode()));
} else { } else {
supervisoryCodeInfo.setStatus(equState); supervisoryCodeInfo.setStatus(equState);
supervisoryCodeInfoMapper.insert(supervisoryCodeInfo); supervisoryCodeInfoMapper.insert(supervisoryCodeInfo);
...@@ -298,7 +290,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -298,7 +290,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
@Override @Override
public List<LinkedHashMap> creatTree() { public List<LinkedHashMap> creatTree() {
FeignClientResult tree = privilegeFeginService.tree(RequestContext.getToken(),RequestContext.getAppKey(),RequestContext.getProduct()); FeignClientResult tree = privilegeFeginService.tree(RequestContext.getToken(), RequestContext.getAppKey(), RequestContext.getProduct());
List<LinkedHashMap> result = (List<LinkedHashMap>) tree.getResult(); List<LinkedHashMap> result = (List<LinkedHashMap>) tree.getResult();
List<LinkedHashMap> treeData = deleteRegulatorTreeData(result); List<LinkedHashMap> treeData = deleteRegulatorTreeData(result);
List<LinkedHashMap> supervisionTree = treeData.stream().filter(e -> code.equals(e.get("orgCode"))).collect(Collectors.toList()); List<LinkedHashMap> supervisionTree = treeData.stream().filter(e -> code.equals(e.get("orgCode"))).collect(Collectors.toList());
...@@ -337,15 +329,27 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -337,15 +329,27 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
* @return 筛选过滤后不包含使用单位的管辖机构树 * @return 筛选过滤后不包含使用单位的管辖机构树
*/ */
private List<LinkedHashMap> deleteRegulatorTreeData(List<LinkedHashMap> result) { private List<LinkedHashMap> deleteRegulatorTreeData(List<LinkedHashMap> result) {
// 需排除的公司类型
String excludeCompanyType = "检验检测机构";
Iterator it = result.iterator(); Iterator it = result.iterator();
while (it.hasNext()) { while (it.hasNext()) {
LinkedHashMap e = (LinkedHashMap) it.next(); LinkedHashMap e = (LinkedHashMap) it.next();
//删除使用单位 //删除使用单位
if ("company".equals(e.get("level"))) { if ("company".equals(e.get("level"))) {
it.remove(); it.remove();
// 一行数据可能 满足几个remove,所以需要删除后,继续下一循环
continue;
}
// 删除检验检测机构类似公司
if(excludeCompanyType.equals(e.get("companyType"))){
it.remove();
// 一行数据可能 满足几个remove,所以需要删除后,继续下一循环
continue;
} }
if (e.get("companyName").toString().contains("行政审批局")) { if (e.get("companyName").toString().contains("行政审批局")) {
it.remove(); it.remove();
// 一行数据可能 满足几个remove,所以需要删除后,继续下一循环
continue;
} }
if (!ObjectUtils.isEmpty(e.get("children"))) { if (!ObjectUtils.isEmpty(e.get("children"))) {
deleteRegulatorTreeData((List<LinkedHashMap>) e.get("children")); deleteRegulatorTreeData((List<LinkedHashMap>) e.get("children"));
...@@ -474,7 +478,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -474,7 +478,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
/** /**
* 具体生成监管码和电梯96333识别码逻辑 * 具体生成监管码和电梯96333识别码逻辑
*/ */
private synchronized Map<String, String> creatCode(String city, String county, String equipCategory, String code96333,String supervisionCode) { private synchronized Map<String, String> creatCode(String city, String county, String equipCategory, String code96333, String supervisionCode) {
Map<String, String> resultMap = new HashMap<>(); Map<String, String> resultMap = new HashMap<>();
StringBuilder supervisorCode = new StringBuilder(); StringBuilder supervisorCode = new StringBuilder();
StringBuilder elevatorCode = new StringBuilder(); StringBuilder elevatorCode = new StringBuilder();
...@@ -483,24 +487,24 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -483,24 +487,24 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
//判断是否需要生成96333电梯码 //判断是否需要生成96333电梯码
if (equipCategory.startsWith("3") && !XIAN.equals(city)) { if (equipCategory.startsWith("3") && !XIAN.equals(city)) {
//判断数据是否携带96333电梯码,携带则使用,不携带则生成 //判断数据是否携带96333电梯码,携带则使用,不携带则生成
if("null".equals(code96333)){ if ("null".equals(code96333)) {
prefix = getPrefix(EquipmentCategoryEnum.XZQHDT.getCode(), city); prefix = getPrefix(EquipmentCategoryEnum.XZQHDT.getCode(), city);
//查询未使用的电梯码 //查询未使用的电梯码
categoryOtherInfo = categoryOtherInfoMapper.selectElevatorCode(prefix, EquipmentCategoryEnum.WSY.getCode()); categoryOtherInfo = categoryOtherInfoMapper.selectElevatorCode(prefix, EquipmentCategoryEnum.WSY.getCode());
//如果存在未使用的电梯码则启用未使用的否则创建 //如果存在未使用的电梯码则启用未使用的否则创建
String elevator = ObjectUtils.isEmpty(categoryOtherInfo) ? createElevatorCode(city, county) : categoryOtherInfo.getCode(); String elevator = ObjectUtils.isEmpty(categoryOtherInfo) ? createElevatorCode(city, county) : categoryOtherInfo.getCode();
if(!ObjectUtils.isEmpty(categoryOtherInfo)){ if (!ObjectUtils.isEmpty(categoryOtherInfo)) {
supervisoryCodeInfoMapper.delete(new QueryWrapper<SupervisoryCodeInfo>().eq("code96333",categoryOtherInfo.getCode())); supervisoryCodeInfoMapper.delete(new QueryWrapper<SupervisoryCodeInfo>().eq("code96333", categoryOtherInfo.getCode()));
} }
elevatorCode.append(elevator); elevatorCode.append(elevator);
resultMap.put("creatStatus",CREATE); resultMap.put("creatStatus", CREATE);
} else { } else {
elevatorCode.append(code96333); elevatorCode.append(code96333);
resultMap.put("creatStatus",NOT_CREATE); resultMap.put("creatStatus", NOT_CREATE);
} }
} }
//判断原数据是否存在监管码,存在则用原监管码即可,不存在则生成 //判断原数据是否存在监管码,存在则用原监管码即可,不存在则生成
if("null".equals(supervisionCode)){ if ("null".equals(supervisionCode)) {
String supervisor = createSupervisorCode(city, county, equipCategory); String supervisor = createSupervisorCode(city, county, equipCategory);
supervisorCode.append(supervisor); supervisorCode.append(supervisor);
} else { } else {
...@@ -519,12 +523,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -519,12 +523,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
supervisoryCodeInfo.setCreateStatus(resultMap.get("creatStatus")); supervisoryCodeInfo.setCreateStatus(resultMap.get("creatStatus"));
supervisoryCodeInfo.setSupervisoryCode(String.valueOf(supervisorCode)); supervisoryCodeInfo.setSupervisoryCode(String.valueOf(supervisorCode));
supervisoryCodeInfo.setStatus(equState); supervisoryCodeInfo.setStatus(equState);
if(ObjectUtils.isEmpty(selectOne)){ if (ObjectUtils.isEmpty(selectOne)) {
supervisoryCodeInfoMapper.insert(supervisoryCodeInfo); supervisoryCodeInfoMapper.insert(supervisoryCodeInfo);
} else { } else {
selectOne.setCode96333(String.valueOf(elevatorCode)); selectOne.setCode96333(String.valueOf(elevatorCode));
supervisoryCodeInfoMapper.update(selectOne, supervisoryCodeInfoMapper.update(selectOne,
new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code",selectOne.getSupervisoryCode())); new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code", selectOne.getSupervisoryCode()));
} }
resultMap.put("superviseCode", ObjectUtils.isEmpty(supervisorCode) ? null : supervisorCode.toString()); resultMap.put("superviseCode", ObjectUtils.isEmpty(supervisorCode) ? null : supervisorCode.toString());
resultMap.put("code96333", ObjectUtils.isEmpty(elevatorCode) ? null : elevatorCode.toString()); resultMap.put("code96333", ObjectUtils.isEmpty(elevatorCode) ? null : elevatorCode.toString());
...@@ -792,7 +796,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -792,7 +796,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
return list; return list;
} }
public List<EquipExportVo> getEquipExportData(EquipExportDto dto){ public List<EquipExportVo> getEquipExportData(EquipExportDto dto) {
ArrayList<EquipExportVo> list = new ArrayList<>(); ArrayList<EquipExportVo> list = new ArrayList<>();
List<JSONObject> objectList = getCompanyType(); List<JSONObject> objectList = getCompanyType();
if (!ValidationUtil.isEmpty(dto.getEQU_STATE())) { if (!ValidationUtil.isEmpty(dto.getEQU_STATE())) {
...@@ -811,7 +815,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -811,7 +815,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
dto.setORG_BRANCH_CODE(orgCode); dto.setORG_BRANCH_CODE(orgCode);
} }
List<EquipExportVo> equipExportData = equipmentCategoryMapper.getEquipExportData(dto); List<EquipExportVo> equipExportData = equipmentCategoryMapper.getEquipExportData(dto);
if (!ObjectUtils.isEmpty(equipExportData) ) { if (!ObjectUtils.isEmpty(equipExportData)) {
list.addAll(equipExportData); list.addAll(equipExportData);
} }
} }
...@@ -851,23 +855,22 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -851,23 +855,22 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} }
@Override @Override
@Async @Async
public void createEquipmentCategoryData() { public void createEquipmentCategoryData() {
if(log.isInfoEnabled()){ if (log.isInfoEnabled()) {
log.info("初始化一码通总览数据开始"); log.info("初始化一码通总览数据开始");
} }
equipmentCategoryDataService.remove(new QueryWrapper<>()); equipmentCategoryDataService.remove(new QueryWrapper<>());
getCategoryData(null,null); getCategoryData(null, null);
} }
private List<EquipmentCategoryData> getCategoryData(List<String> unitCodes,List<String> orgBranchCodes) { private List<EquipmentCategoryData> getCategoryData(List<String> unitCodes, List<String> orgBranchCodes) {
StopWatch stopWatch = new StopWatch(); StopWatch stopWatch = new StopWatch();
stopWatch.start(); stopWatch.start();
List<EquipmentCategoryData> list = new ArrayList<>(); List<EquipmentCategoryData> list = new ArrayList<>();
// 查询所有单位 // 查询所有单位
List<Map<String, Object>> allUnitList = equipmentCategoryMapper.getAllUnit(unitCodes,orgBranchCodes); List<Map<String, Object>> allUnitList = equipmentCategoryMapper.getAllUnit(unitCodes, orgBranchCodes);
// 统计查询不同单位、不同装备定义、不同状态下的设备数量 // 统计查询不同单位、不同装备定义、不同状态下的设备数量
List<UseUnitCreditCodeCategoryDto> equipCountList = equipmentCategoryMapper.useUnitCreditCodeCategoryCount(); List<UseUnitCreditCodeCategoryDto> equipCountList = equipmentCategoryMapper.useUnitCreditCodeCategoryCount();
// 查询8大类设备定义 // 查询8大类设备定义
...@@ -875,31 +878,31 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -875,31 +878,31 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
// 组织EquipmentCategoryData表数据 // 组织EquipmentCategoryData表数据
for (Map<String, Object> map : allUnitList) { for (Map<String, Object> map : allUnitList) {
EquipmentCategoryData equipmentCategoryData = new EquipmentCategoryData(); EquipmentCategoryData equipmentCategoryData = new EquipmentCategoryData();
if(ObjectUtils.isEmpty(map.get("supervise_org_code")) || ObjectUtils.isEmpty(map.get(USE_CODE))){ if (ObjectUtils.isEmpty(map.get("supervise_org_code")) || ObjectUtils.isEmpty(map.get(USE_CODE))) {
continue; continue;
} }
equipmentCategoryData.setOrgBranchCode(map.get("supervise_org_code").toString()); equipmentCategoryData.setOrgBranchCode(map.get("supervise_org_code").toString());
equipmentCategoryData.setUnitCode(map.get(USE_CODE).toString()); equipmentCategoryData.setUnitCode(map.get(USE_CODE).toString());
// 指定单位的设备统计信息 // 指定单位的设备统计信息
List<UseUnitCreditCodeCategoryDto> unitEquipCountList = equipCountList.stream().filter(r->r.getUseUnitCreditCode().equals(map.get(USE_CODE).toString())).collect(Collectors.toList()); List<UseUnitCreditCodeCategoryDto> unitEquipCountList = equipCountList.stream().filter(r -> r.getUseUnitCreditCode().equals(map.get(USE_CODE).toString())).collect(Collectors.toList());
unitEquipCountList = unitEquipCountList.stream().filter(r->r.getOrgBranchCode().equals(map.get(ORG_BRANCH_CODE).toString())).collect(Collectors.toList()); unitEquipCountList = unitEquipCountList.stream().filter(r -> r.getOrgBranchCode().equals(map.get(ORG_BRANCH_CODE).toString())).collect(Collectors.toList());
for (EquipmentCategory category : equipmentCategories) { for (EquipmentCategory category : equipmentCategories) {
Map<String, Object> data = new HashMap<>(); Map<String, Object> data = new HashMap<>();
data.put("waitClaim", unitEquipCountList.stream().filter(r->r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.DRL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum()); data.put("waitClaim", unitEquipCountList.stream().filter(r -> r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.DRL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum());
data.put("alreadyClaim", unitEquipCountList.stream().filter(r->r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.YRL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum()); data.put("alreadyClaim", unitEquipCountList.stream().filter(r -> r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.YRL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum());
data.put("refuseClaim", unitEquipCountList.stream().filter(r->r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.YJL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum()); data.put("refuseClaim", unitEquipCountList.stream().filter(r -> r.getEquList().equals(category.getCode()) && EquipmentCategoryEnum.YJL.getName().equals(r.getClaimStatus())).collect(Collectors.summarizingLong(UseUnitCreditCodeCategoryDto::getTotal)).getSum());
this.set8CategoryCountData(equipmentCategoryData, category, data); this.set8CategoryCountData(equipmentCategoryData, category, data);
} }
equipmentCategoryData.setRecDate(new Date()); equipmentCategoryData.setRecDate(new Date());
list.add(equipmentCategoryData); list.add(equipmentCategoryData);
} }
if(!ObjectUtils.isEmpty(unitCodes)){ if (!ObjectUtils.isEmpty(unitCodes)) {
equipmentCategoryDataMapper.delete(new QueryWrapper<EquipmentCategoryData>().in("unit_code",unitCodes)); equipmentCategoryDataMapper.delete(new QueryWrapper<EquipmentCategoryData>().in("unit_code", unitCodes));
} }
equipmentCategoryDataService.saveOrUpdateBatch(list); equipmentCategoryDataService.saveOrUpdateBatch(list);
stopWatch.stop(); stopWatch.stop();
if(log.isInfoEnabled()){ if (log.isInfoEnabled()) {
log.info("总览数据刷新结束,耗时:{} 秒",stopWatch.getTotalTimeSeconds()); log.info("总览数据刷新结束,耗时:{} 秒", stopWatch.getTotalTimeSeconds());
} }
return list; return list;
} }
...@@ -938,19 +941,19 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -938,19 +941,19 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
private List<EquipmentCategory> getEquipmentCategories() { private List<EquipmentCategory> getEquipmentCategories() {
LambdaQueryWrapper<EquipmentCategory> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<EquipmentCategory> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.likeLeft(EquipmentCategory::getCode,"000"); lambdaQueryWrapper.likeLeft(EquipmentCategory::getCode, "000");
lambdaQueryWrapper.ne(EquipmentCategory::getCode,"7000"); lambdaQueryWrapper.ne(EquipmentCategory::getCode, "7000");
lambdaQueryWrapper.ne(EquipmentCategory::getCode,"F000"); lambdaQueryWrapper.ne(EquipmentCategory::getCode, "F000");
return equipmentCategoryMapper.selectList(lambdaQueryWrapper); return equipmentCategoryMapper.selectList(lambdaQueryWrapper);
} }
private List<EquipmentCategoryData> updateEquipmentCategoryData(String unitCode,String orgBranchCode) { private List<EquipmentCategoryData> updateEquipmentCategoryData(String unitCode, String orgBranchCode) {
List<String> unitCodeList = new ArrayList<>(); List<String> unitCodeList = new ArrayList<>();
unitCodeList.add(unitCode); unitCodeList.add(unitCode);
List<String> orgBranchCodeList = new ArrayList<>(); List<String> orgBranchCodeList = new ArrayList<>();
orgBranchCodeList.add(orgBranchCode); orgBranchCodeList.add(orgBranchCode);
List<EquipmentCategoryData> equipmentCategoryData = getCategoryData(unitCodeList,null); List<EquipmentCategoryData> equipmentCategoryData = getCategoryData(unitCodeList, null);
return equipmentCategoryData; return equipmentCategoryData;
} }
...@@ -961,7 +964,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -961,7 +964,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
List<String> records = new ArrayList<>(); List<String> records = new ArrayList<>();
List<ESEquipmentCategoryDto> list = new ArrayList<>(); List<ESEquipmentCategoryDto> list = new ArrayList<>();
if(recordList.toString().contains("[")){ if (recordList.toString().contains("[")) {
for (String record : (List<String>) recordList) { for (String record : (List<String>) recordList) {
records.add(record); records.add(record);
ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto(); ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto();
...@@ -984,15 +987,15 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -984,15 +987,15 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
orgBranchCodeList.add(String.valueOf(objectMap.get("orgBranchCode"))); orgBranchCodeList.add(String.valueOf(objectMap.get("orgBranchCode")));
} }
if(!ObjectUtils.isEmpty(superviseCodeList)){ if (!ObjectUtils.isEmpty(superviseCodeList)) {
supervisoryCodeInfoMapper.updateStatus(superviseCodeList); supervisoryCodeInfoMapper.updateStatus(superviseCodeList);
} }
//删除涉及的19张表的数据 //删除涉及的19张表的数据
superviseInfoMapper.deleteDataAll(records); superviseInfoMapper.deleteDataAll(records);
// 根据统一信用代码更新总览表 // 根据统一信用代码更新总览表
if(!ObjectUtils.isEmpty(unitCodeList)){ if (!ObjectUtils.isEmpty(unitCodeList)) {
getCategoryData(unitCodeList,orgBranchCodeList); getCategoryData(unitCodeList, orgBranchCodeList);
} }
//删除es中的数据 //删除es中的数据
esEquipmentCategory.deleteAll(list); esEquipmentCategory.deleteAll(list);
...@@ -1054,11 +1057,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1054,11 +1057,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
responseModel = idxFeignService.batchUpdate(null, null, map); responseModel = idxFeignService.batchUpdate(null, null, map);
} }
stopWatch.stop(); stopWatch.stop();
if(log.isInfoEnabled()){ if (log.isInfoEnabled()) {
log.info("通用提交耗时:{} 秒",stopWatch.getTotalTimeSeconds()); log.info("通用提交耗时:{} 秒", stopWatch.getTotalTimeSeconds());
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(),e); log.error(e.getMessage(), e);
supervisoryCodeInfo.setStatus(EquipmentCategoryEnum.BF.getCode()); supervisoryCodeInfo.setStatus(EquipmentCategoryEnum.BF.getCode());
ResponseModel<Object> response = new ResponseModel<>(); ResponseModel<Object> response = new ResponseModel<>();
response.setDevMessage(e.getMessage()); response.setDevMessage(e.getMessage());
...@@ -1067,8 +1070,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1067,8 +1070,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
response.setStatus(HttpStatus.BAD_REQUEST.value()); response.setStatus(HttpStatus.BAD_REQUEST.value());
return response; return response;
} finally { } finally {
updateEquipmentCategoryData(unitCode,orgBranchCode); updateEquipmentCategoryData(unitCode, orgBranchCode);
supervisoryCodeInfoMapper.update(supervisoryCodeInfo,new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code",supervisoryCodeInfo.getSupervisoryCode())); supervisoryCodeInfoMapper.update(supervisoryCodeInfo, new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code", supervisoryCodeInfo.getSupervisoryCode()));
} }
return responseModel; return responseModel;
} }
...@@ -1100,6 +1103,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1100,6 +1103,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
Long count = bizJdbcTemplate.queryForObject(countSql, Long.class); Long count = bizJdbcTemplate.queryForObject(countSql, Long.class);
return count; return count;
} }
/** /**
* es数据同步 * es数据同步
* *
...@@ -1176,10 +1180,10 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1176,10 +1180,10 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
*/ */
public ESEquipmentCategoryDto saveESEquipmentCategory(Map<String, Object> map) { public ESEquipmentCategoryDto saveESEquipmentCategory(Map<String, Object> map) {
//处理时间问题 //处理时间问题
String recDate1 = map.get("REC_DATE").toString().substring(0,19); String recDate1 = map.get("REC_DATE").toString().substring(0, 19);
long time = Timestamp.valueOf(recDate1).getTime(); long time = Timestamp.valueOf(recDate1).getTime();
map.put("REC_DATE",time); map.put("REC_DATE", time);
ESEquipmentCategoryDto dto = JSONObject.parseObject(toJSONString(map), ESEquipmentCategoryDto.class); ESEquipmentCategoryDto dto = JSONObject.parseObject(toJSONString(map), ESEquipmentCategoryDto.class);
ESEquipmentCategoryDto save = esEquipmentCategory.save(dto); ESEquipmentCategoryDto save = esEquipmentCategory.save(dto);
if (!ObjectUtils.isEmpty(save)) { if (!ObjectUtils.isEmpty(save)) {
...@@ -1191,6 +1195,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1191,6 +1195,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} }
return save; return save;
} }
public Page<JSONObject> queryByKeys(JSONObject map) { public Page<JSONObject> queryByKeys(JSONObject map) {
// //根据当前登录人查询 // //根据当前登录人查询
if (!ValidationUtil.isEmpty(map.get(EQUSTATE))) { if (!ValidationUtil.isEmpty(map.get(EQUSTATE))) {
...@@ -1219,12 +1224,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1219,12 +1224,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
//SEQUENCE_NBR //SEQUENCE_NBR
if (!ObjectUtils.isEmpty(map.getString("SEQUENCE_NBR"))) { if (!ObjectUtils.isEmpty(map.getString("SEQUENCE_NBR"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchPhraseQuery("SEQUENCE_NBR", "*"+map.getString("SEQUENCE_NBR")+"*")); meBuilder.must(QueryBuilders.matchPhraseQuery("SEQUENCE_NBR", "*" + map.getString("SEQUENCE_NBR") + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_NAME"))) { if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_NAME"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery(); BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.matchPhraseQuery("ORG_BRANCH_NAME", "*"+map.getString("ORG_BRANCH_NAME")+"*" )); query.must(QueryBuilders.matchPhraseQuery("ORG_BRANCH_NAME", "*" + map.getString("ORG_BRANCH_NAME") + "*"));
boolMust.must(query); boolMust.must(query);
} }
if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_CODE"))) {
...@@ -1234,12 +1239,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1234,12 +1239,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} }
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_NAME"))) { if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_NAME"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery(); BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_NAME", "*"+map.getString("USE_UNIT_NAME")+"*")); query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_NAME", "*" + map.getString("USE_UNIT_NAME") + "*"));
boolMust.must(query); boolMust.must(query);
} }
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchPhraseQuery("USE_UNIT_CREDIT_CODE", "*"+map.getString("USE_UNIT_CREDIT_CODE")+"*")); meBuilder.must(QueryBuilders.matchPhraseQuery("USE_UNIT_CREDIT_CODE", "*" + map.getString("USE_UNIT_CREDIT_CODE") + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("EQU_LIST_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("EQU_LIST_CODE"))) {
...@@ -1249,23 +1254,23 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1249,23 +1254,23 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} }
if (!ObjectUtils.isEmpty(map.getString("EQU_LIST"))) { if (!ObjectUtils.isEmpty(map.getString("EQU_LIST"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_LIST", "*"+map.getString("EQU_LIST")+"*")); meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_LIST", "*" + map.getString("EQU_LIST") + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("EQU_CATEGORY"))) { if (!ObjectUtils.isEmpty(map.getString("EQU_CATEGORY"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_CATEGORY", "*"+map.getString("EQU_CATEGORY")+"*")); meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_CATEGORY", "*" + map.getString("EQU_CATEGORY") + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("USE_ORG_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("USE_ORG_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.wildcardQuery("USE_ORG_CODE", "*"+map.getString("USE_ORG_CODE").toLowerCase()+"*")); meBuilder.must(QueryBuilders.wildcardQuery("USE_ORG_CODE", "*" + map.getString("USE_ORG_CODE").toLowerCase() + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("CODE96333"))) { if (!ObjectUtils.isEmpty(map.getString("CODE96333"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.wildcardQuery("CODE96333", "*"+map.getString("CODE96333").toLowerCase()+"*")); meBuilder.must(QueryBuilders.wildcardQuery("CODE96333", "*" + map.getString("CODE96333").toLowerCase() + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("EQU_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("EQU_CODE"))) {
...@@ -1276,7 +1281,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1276,7 +1281,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
if (!ObjectUtils.isEmpty(map.getString("SUPERVISORY_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("SUPERVISORY_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.wildcardQuery("SUPERVISORY_CODE", "*"+map.getString("SUPERVISORY_CODE").toLowerCase()+"*")); meBuilder.must(QueryBuilders.wildcardQuery("SUPERVISORY_CODE", "*" + map.getString("SUPERVISORY_CODE").toLowerCase() + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("USE_PLACE"))) { if (!ObjectUtils.isEmpty(map.getString("USE_PLACE"))) {
...@@ -1289,14 +1294,14 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1289,14 +1294,14 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
query.must(QueryBuilders.matchPhraseQuery("ADDRESS", "*" + map.getString("ADDRESS") + "*")); query.must(QueryBuilders.matchPhraseQuery("ADDRESS", "*" + map.getString("ADDRESS") + "*"));
boolMust.must(query); boolMust.must(query);
} }
if (!ObjectUtils.isEmpty(map.getString("EQU_STATE")) ) { if (!ObjectUtils.isEmpty(map.getString("EQU_STATE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchQuery("EQU_STATE", map.getLong("EQU_STATE"))); meBuilder.must(QueryBuilders.matchQuery("EQU_STATE", map.getLong("EQU_STATE")));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
if (!ObjectUtils.isEmpty(map.getString("STATUS"))) { if (!ObjectUtils.isEmpty(map.getString("STATUS"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchPhraseQuery("STATUS", "*"+map.getString("STATUS")+"*")); meBuilder.must(QueryBuilders.matchPhraseQuery("STATUS", "*" + map.getString("STATUS") + "*"));
boolMust.must(meBuilder); boolMust.must(meBuilder);
} }
builder.query(boolMust); builder.query(boolMust);
......
...@@ -30,6 +30,7 @@ import com.yeejoin.amos.boot.module.tcm.flc.api.feign.AccessFeignService; ...@@ -30,6 +30,7 @@ import com.yeejoin.amos.boot.module.tcm.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.boot.module.tcm.flc.api.mapper.RegUnitInfoMapper; import com.yeejoin.amos.boot.module.tcm.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitIcServiceImpl; import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitIcServiceImpl;
import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitInfoServiceImpl; import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
...@@ -44,6 +45,7 @@ import org.springframework.util.ObjectUtils; ...@@ -44,6 +45,7 @@ import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.text.ParseException; import java.text.ParseException;
import java.util.*; import java.util.*;
...@@ -63,15 +65,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -63,15 +65,6 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}")
String product;
@Value("${admin.product.web}")
String webProduct;
@Value("${admin.appkey}")
String appkey;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
...@@ -85,7 +78,7 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -85,7 +78,7 @@ public class TzBaseEnterpriseInfoServiceImpl
RegUnitInfoServiceImpl regUnitInfoService; RegUnitInfoServiceImpl regUnitInfoService;
@Autowired @Autowired
private IBaseUnitLicenceService iBaseUnitLicenceService; private StartPlatformTokenService platformTokenService;
@Autowired @Autowired
private SpeUseUnitServiceImpl speUseUnitService; private SpeUseUnitServiceImpl speUseUnitService;
...@@ -101,18 +94,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -101,18 +94,6 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
RegUnitInfoMapper regUnitInfoMapper; RegUnitInfoMapper regUnitInfoMapper;
@Value("${tzs.admin.name:tzs_admin}")
private String tzsAdminName;
@Value("${tzs.admin.pwd:a1234567}")
private String tzsAdminPwd;
@Value("${redis.cache.failure.time}")
private Long redisRegionTimeSecond;
/**机器人用户token缓存key */
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN";
/** /**
* 企业管理员变更缓存key前缀 * 企业管理员变更缓存key前缀
*/ */
...@@ -313,10 +294,7 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -313,10 +294,7 @@ public class TzBaseEnterpriseInfoServiceImpl
@Override @Override
public String syncEnterpriseInfo() { public String syncEnterpriseInfo() {
RequestContext.setAppKey(appkey); platformTokenService.setRequestContext();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>(); List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
//获取平台企业表企业名称及sequence_code,并装入map中 //获取平台企业表企业名称及sequence_code,并装入map中
...@@ -536,54 +514,33 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -536,54 +514,33 @@ public class TzBaseEnterpriseInfoServiceImpl
return String.join(",", res); return String.join(",", res);
} }
@Override
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 //每一个企业只有一个管理员,所以当前登录用户即管理员用户
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setAppKey(appkey); //自己不能修改自己 所以需要设置为机器人
RequestContext.setProduct(webProduct); platformTokenService.setRequestContext();
//获取机器人的token,获取不到则去登录
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) {
loginCtiUser();
}
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN)));
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
if (!ObjectUtils.isEmpty(me)) { RegUnitInfo regUnitInfo = new RegUnitInfo();
RegUnitInfo regUnitInfo = new RegUnitInfo(); String unitCode = String.valueOf(map.get("unitCode"));
String unitCode = String.valueOf(map.get("unitCode")); regUnitInfo.setAdminName(String.valueOf(map.get("adminName")));
regUnitInfo.setAdminName(String.valueOf(map.get("adminName"))); regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber")));
regUnitInfo.setAdminIdNumber(String.valueOf(map.get("adminIdNumber"))); regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto")));
regUnitInfo.setAdminIdCardPhoto(JSON.toJSONString(map.get("adminIdCardPhoto"))); regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel")));
regUnitInfo.setAdminTel(String.valueOf(map.get("adminTel"))); me.setMobile(regUnitInfo.getAdminTel());
me.setMobile(String.valueOf(map.get("adminTel"))); me.setRealName(String.valueOf(map.get("adminName")));
me.setRealName(String.valueOf(map.get("adminName"))); try {
FeignClientResult<AgencyUserModel> updateResult = Privilege.agencyUserClient.update(me, String.valueOf(map.get("adminUserId"))); Privilege.agencyUserClient.update(me, me.getUserId());
if (200 == updateResult.getStatus()) { regUnitInfoService.update(regUnitInfo, new LambdaQueryWrapper<RegUnitInfo>().eq(RegUnitInfo::getUnitCode, unitCode));
regUnitInfoService.update(regUnitInfo, new QueryWrapper<RegUnitInfo>().eq("unit_code", unitCode)); } catch (Exception e) {
resultMap.put("success", regUnitInfo); log.error(e.getMessage(),e);
redisUtil.del(adminChange + map.get("adminTel")); throw new BadRequest(e.getMessage());
} else {
resultMap.put("fail", "平台用户修改失败,请联系管理员");
}
} else {
resultMap.put("fail", "平台用户不存在");
} }
resultMap.put("success", regUnitInfo);
redisUtil.del(adminChange + map.get("adminTel"));
return resultMap; return resultMap;
} }
//机器人用户登录
private void loginCtiUser() {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz");
IdPasswordAuthModel loninData = new IdPasswordAuthModel();
loninData.setLoginId(tzsAdminName);
loninData.setPassword(passwd);
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData);
if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult();
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond);
}
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){ public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
speUseUnit.setSyncState(state); speUseUnit.setSyncState(state);
speUseUnitService.updateById(speUseUnit); speUseUnitService.updateById(speUseUnit);
......
...@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.dao.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; 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.RedisKey;
...@@ -19,6 +18,7 @@ import com.yeejoin.amos.boot.module.tcm.api.mapper.TzsUserInfoMapper; ...@@ -19,6 +18,7 @@ import com.yeejoin.amos.boot.module.tcm.api.mapper.TzsUserInfoMapper;
import com.yeejoin.amos.boot.module.tcm.api.service.ITzsUserInfoService; import com.yeejoin.amos.boot.module.tcm.api.service.ITzsUserInfoService;
import com.yeejoin.amos.boot.module.tcm.api.vo.TzsUserInfoVo; import com.yeejoin.amos.boot.module.tcm.api.vo.TzsUserInfoVo;
import com.yeejoin.amos.boot.module.tcm.api.vo.TzsUserQualificationsVo; import com.yeejoin.amos.boot.module.tcm.api.vo.TzsUserQualificationsVo;
import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
...@@ -32,6 +32,7 @@ import org.typroject.tyboot.core.foundation.context.RequestContext; ...@@ -32,6 +32,7 @@ import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
@Service @Service
public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserInfo, TzsUserInfoMapper> implements ITzsUserInfoService { public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserInfo, TzsUserInfoMapper> implements ITzsUserInfoService {
...@@ -45,8 +46,11 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -45,8 +46,11 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
@Autowired @Autowired
private RedisUtils redisUtils; private RedisUtils redisUtils;
@Autowired @Autowired
private DataDictionaryMapper dataDictionaryMapper; RegUnitInfoServiceImpl regUnitInfoService;
//企业人员角色 //企业人员角色
private final String USER_ROLE = "QYRYJS"; private final String USER_ROLE = "QYRYJS";
//企业人员用户组 //企业人员用户组
...@@ -57,38 +61,37 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -57,38 +61,37 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
@Autowired @Autowired
private TzsUserQualificationsServiceImpl tzsUserQualificationsService; private TzsUserQualificationsServiceImpl tzsUserQualificationsService;
@Override @Override
public Page<TzsUserInfoDto> page(TzsUserInfoDto dto, Page<TzsUserInfoDto> page) { public Page<TzsUserInfoDto> page(TzsUserInfoDto dto, Page<TzsUserInfoDto> page) {
Page<TzsUserInfoDto> tzsUserInfoDtoPage = tzsUserInfoMapper.selectPageMessage(page, dto); Page<TzsUserInfoDto> tzsUserInfoDtoPage = tzsUserInfoMapper.selectPageMessage(page, dto);
tzsUserInfoDtoPage.getRecords().forEach(item ->{ tzsUserInfoDtoPage.getRecords().forEach(item -> {
if (!ObjectUtils.isEmpty(item.getProfile())){ if (!ObjectUtils.isEmpty(item.getProfile())) {
List<CommonFile> commonFiles = JSON.parseArray(item.getProfile(), CommonFile.class); List<CommonFile> commonFiles = JSON.parseArray(item.getProfile(), CommonFile.class);
item.setProfile(commonFiles.get(0).getUrl()); item.setProfile(commonFiles.get(0).getUrl());
} }
if (!ObjectUtils.isEmpty(item.getBirthday())){ if (!ObjectUtils.isEmpty(item.getBirthday())) {
int age = getAge(item.getBirthday()); int age = getAge(item.getBirthday());
item.setAge(Math.max(age, 0)); item.setAge(Math.max(age, 0));
} }
if (!ObjectUtils.isEmpty(item.getPost())){
JSONArray objects = JSON.parseArray(item.getPost());
item.setPost(null);
LambdaQueryWrapper<DataDictionary> lambda = new QueryWrapper<DataDictionary>().lambda();
lambda.in(DataDictionary::getSequenceNbr, objects);
List<DataDictionary> dataDictionaries = dataDictionaryMapper.selectList(lambda);
dataDictionaries.forEach(post ->{
if (!ObjectUtils.isEmpty(item.getPost())){
item.setPost(item.getPost() + "," +post.getName());
}else {
item.setPost(post.getName());
}
});
}
}); });
return tzsUserInfoDtoPage; return tzsUserInfoDtoPage;
} }
public String setPostName(String postKey) {
JSONArray dictIds = JSON.parseArray(postKey);
if (dictIds == null || dictIds.isEmpty()) {
return "";
}
LambdaQueryWrapper<DataDictionary> lambda = new QueryWrapper<DataDictionary>().lambda();
lambda.in(DataDictionary::getSequenceNbr, dictIds);
List<DataDictionary> dataDictionaries = regUnitInfoService.initAllDataDictionaryList();
List<DataDictionary> postDataList = dataDictionaries.stream().filter(d -> dictIds.stream().anyMatch(id -> id.toString().equals(d.getSequenceNbr().toString()))).collect(Collectors.toList());
return postDataList.stream().map(DataDictionary::getName).collect(Collectors.joining(","));
}
public int getAge(Date birth) {
private int getAge(Date birth) {
Calendar cal = Calendar.getInstance(); Calendar cal = Calendar.getInstance();
int thisYear = cal.get(Calendar.YEAR); int thisYear = cal.get(Calendar.YEAR);
int thisMonth = cal.get(Calendar.MONTH); int thisMonth = cal.get(Calendar.MONTH);
...@@ -151,8 +154,8 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -151,8 +154,8 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
Map<String, Object> maps = new HashMap<>(); Map<String, Object> maps = new HashMap<>();
TzsUserInfo tzsUserInfo = tzsUserInfoMapper.selectById(id); TzsUserInfo tzsUserInfo = tzsUserInfoMapper.selectById(id);
TzsUserInfoVo tzsUserInfoVo = new TzsUserInfoVo(); TzsUserInfoVo tzsUserInfoVo = new TzsUserInfoVo();
BeanUtils.copyProperties(tzsUserInfo, tzsUserInfoVo, "identification","profile","post"); BeanUtils.copyProperties(tzsUserInfo, tzsUserInfoVo, "identification", "profile", "post");
if (!ObjectUtils.isEmpty(tzsUserInfo.getPost())){ if (!ObjectUtils.isEmpty(tzsUserInfo.getPost())) {
tzsUserInfoVo.setPost(JSON.parseArray(tzsUserInfo.getPost())); tzsUserInfoVo.setPost(JSON.parseArray(tzsUserInfo.getPost()));
} }
tzsUserInfoVo.setIdentification(ObjectUtils.isEmpty(tzsUserInfo.getIdentification()) ? new ArrayList() : JSON.parseArray(tzsUserInfo.getIdentification())); tzsUserInfoVo.setIdentification(ObjectUtils.isEmpty(tzsUserInfo.getIdentification()) ? new ArrayList() : JSON.parseArray(tzsUserInfo.getIdentification()));
...@@ -162,15 +165,15 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -162,15 +165,15 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
lambda.eq(TzsUserQualifications::getUserInfoId, id); lambda.eq(TzsUserQualifications::getUserInfoId, id);
ArrayList<TzsUserQualificationsVo> tzsUserQualificationsVos = new ArrayList<>(); ArrayList<TzsUserQualificationsVo> tzsUserQualificationsVos = new ArrayList<>();
List<TzsUserQualifications> list = tzsUserQualificationsService.getBaseMapper().selectList(lambda); List<TzsUserQualifications> list = tzsUserQualificationsService.getBaseMapper().selectList(lambda);
list.forEach(item ->{ list.forEach(item -> {
TzsUserQualificationsVo vo = new TzsUserQualificationsVo(); TzsUserQualificationsVo vo = new TzsUserQualificationsVo();
BeanUtils.copyProperties(item, vo,"file"); BeanUtils.copyProperties(item, vo, "file");
vo.setFile(ObjectUtils.isEmpty(item.getFile()) ? new ArrayList() : JSON.parseArray(item.getFile())); vo.setFile(ObjectUtils.isEmpty(item.getFile()) ? new ArrayList() : JSON.parseArray(item.getFile()));
tzsUserQualificationsVos.add(vo); tzsUserQualificationsVos.add(vo);
}); });
HashMap<String, Object> subForm = new HashMap<>(); HashMap<String, Object> subForm = new HashMap<>();
subForm.put("subForm", tzsUserQualificationsVos); subForm.put("subForm", tzsUserQualificationsVos);
maps.put("qualificationsInfo",subForm); maps.put("qualificationsInfo", subForm);
return maps; return maps;
} }
...@@ -262,7 +265,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -262,7 +265,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
userResult = Privilege.agencyUserClient.unlockUsers(amosUserId); userResult = Privilege.agencyUserClient.unlockUsers(amosUserId);
lockStatus = 200 == userResult.getStatus() ? UNLOCK : LOCK; lockStatus = 200 == userResult.getStatus() ? UNLOCK : LOCK;
} }
if(!ObjectUtils.isEmpty(lockStatus)){ if (!ObjectUtils.isEmpty(lockStatus)) {
TzsUserInfo tzsUserInfo = new TzsUserInfo(); TzsUserInfo tzsUserInfo = new TzsUserInfo();
tzsUserInfo.setSequenceNbr(sequenceNbr); tzsUserInfo.setSequenceNbr(sequenceNbr);
tzsUserInfo.setLockStatus(lockStatus); tzsUserInfo.setLockStatus(lockStatus);
......
...@@ -115,7 +115,7 @@ public class RegUnitInfoController extends BaseController { ...@@ -115,7 +115,7 @@ public class RegUnitInfoController extends BaseController {
@ApiOperation(httpMethod = "GET", value = "单位注册校验", notes = "单位注册校验") @ApiOperation(httpMethod = "GET", value = "单位注册校验", notes = "单位注册校验")
public ResponseModel<RegUnitInfoDto> unitCheck(@PathVariable String unitCode, public ResponseModel<RegUnitInfoDto> unitCheck(@PathVariable String unitCode,
@RequestParam String unitType, @RequestParam String unitType,
@RequestParam String companyName) { @RequestParam(required = false) String companyName) {
if (ValidationUtil.isEmpty(unitCode)) { if (ValidationUtil.isEmpty(unitCode)) {
throw new BadRequest("单位编码不能为空"); throw new BadRequest("单位编码不能为空");
} }
...@@ -159,8 +159,6 @@ public class RegUnitInfoController extends BaseController { ...@@ -159,8 +159,6 @@ public class RegUnitInfoController extends BaseController {
return ResponseHelper.buildResponse(iRegUnitInfoService.getDictionaryWithTreeFillId(type)); return ResponseHelper.buildResponse(iRegUnitInfoService.getDictionaryWithTreeFillId(type));
} }
// @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/management-unit/tree") @GetMapping(value = "/management-unit/tree")
@ApiOperation(httpMethod = "GET", value = "管辖机构树", notes = "管辖机构树") @ApiOperation(httpMethod = "GET", value = "管辖机构树", notes = "管辖机构树")
......
...@@ -374,6 +374,9 @@ public class RegUnitInfoServiceImpl extends BaseService<RegUnitInfoDto, RegUnitI ...@@ -374,6 +374,9 @@ public class RegUnitInfoServiceImpl extends BaseService<RegUnitInfoDto, RegUnitI
if (resultMap == null){ if (resultMap == null){
throw new BadRequest("工商信息接口查询失败,请稍后再试!"); throw new BadRequest("工商信息接口查询失败,请稍后再试!");
} }
if (ObjectUtils.isEmpty(resultMap)) {
throw new BadRequest("未查询到企业信息,请核对!");
}
if(!ValidationUtil.isEmpty(resultMap)){ if(!ValidationUtil.isEmpty(resultMap)){
// 2.2 工商信息组装 // 2.2 工商信息组装
String area = String.valueOf(resultMap.get("area")); String area = String.valueOf(resultMap.get("area"));
...@@ -479,7 +482,7 @@ public class RegUnitInfoServiceImpl extends BaseService<RegUnitInfoDto, RegUnitI ...@@ -479,7 +482,7 @@ public class RegUnitInfoServiceImpl extends BaseService<RegUnitInfoDto, RegUnitI
"getName", "getParent", null, "getCode"); "getName", "getParent", null, "getCode");
} }
private List<DataDictionary> initAllDataDictionaryList() { public List<DataDictionary> initAllDataDictionaryList() {
List<DataDictionary> dictionaries; List<DataDictionary> dictionaries;
// 使用双重检查锁定 // 使用双重检查锁定
if (redisUtil.hasKey(BizCommonConstant.TCM_ALL_DATA_DICT_REDIS_KEY)) { if (redisUtil.hasKey(BizCommonConstant.TCM_ALL_DATA_DICT_REDIS_KEY)) {
......
...@@ -14,7 +14,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por ...@@ -14,7 +14,7 @@ eureka.instance.metadata-map.management.api-docs=http://172.16.3.34:${server.por
eureka.instance.ip-address=172.16.3.34 eureka.instance.ip-address=172.16.3.34
## ES properties: ## ES properties:
elasticsearch.username=elastic elasticsearch.username=elastic
elasticsearch.password=a123456 elasticsearch.password=123456
spring.elasticsearch.rest.uris=http://172.16.10.230:9200 spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
......
...@@ -132,11 +132,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -132,11 +132,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
......
...@@ -21,7 +21,7 @@ public class EsElevator { ...@@ -21,7 +21,7 @@ public class EsElevator {
/** 主键 */ /** 主键 */
@Id @Id
private Long sequenceNbr; private String sequenceNbr;
/** /**
* 注册编码 * 注册编码
......
package com.yeejoin.amos.boot.module.ymt.api.mapper; package com.yeejoin.amos.boot.module.ymt.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.ymt.api.entity.EsElevator;
import com.yeejoin.amos.boot.module.ymt.api.entity.SuperviseInfo; import com.yeejoin.amos.boot.module.ymt.api.entity.SuperviseInfo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -21,4 +22,6 @@ public interface SuperviseInfoMapper extends BaseMapper<SuperviseInfo> { ...@@ -21,4 +22,6 @@ public interface SuperviseInfoMapper extends BaseMapper<SuperviseInfo> {
List<String> selectSuperviseCodeList(@Param("records") List<String> records); List<String> selectSuperviseCodeList(@Param("records") List<String> records);
void deleteDataAll(@Param("records") List<String> records); void deleteDataAll(@Param("records") List<String> records);
EsElevator selectElevatorEsList(String record);
} }
...@@ -101,29 +101,29 @@ ...@@ -101,29 +101,29 @@
</update> </update>
<select id="checkCode" resultType="java.util.Map"> <select id="checkCode" resultType="java.util.Map">
SELECT SELECT 1
<if test="equCode != null and equCode != ''"> <if test="useOrgCode != null and useOrgCode != ''">
(SELECT COUNT ( 1 ) FROM idx_biz_jg_register_info ibjri ,(SELECT COUNT ( 1 ) FROM idx_biz_jg_register_info ibjri
LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi."RECORD" = ibjri."RECORD" LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi."RECORD" = ibjri."RECORD"
WHERE ibjri."EQU_CODE" = #{equCode} WHERE ibjri."USE_ORG_CODE" = #{useOrgCode} and ibjoi."CLAIM_STATUS" = '已认领'
<if test="type != 'save' "> <if test="type != 'save'">
and ibjri."RECORD" != #{record} and ibjoi."CLAIM_STATUS" = '已认领' and ibjri."RECORD" != #{record}
</if> </if>
) AS equCode, ) AS useOrgCode
</if> </if>
<if test="useOrgCode != null and useOrgCode != ''"> <if test="equCode != null and equCode != ''">
(SELECT COUNT ( 1 ) FROM idx_biz_jg_register_info ibjri ,(SELECT COUNT ( 1 ) FROM idx_biz_jg_register_info ibjri
LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi."RECORD" = ibjri."RECORD" LEFT JOIN idx_biz_jg_other_info ibjoi ON ibjoi."RECORD" = ibjri."RECORD"
WHERE ibjri."USE_ORG_CODE" = #{useOrgCode} WHERE ibjri."EQU_CODE" = #{equCode} and ibjoi."CLAIM_STATUS" = '已认领'
<if test="type != 'save'"> <if test="type != 'save' ">
and ibjri."RECORD" != #{record} and ibjoi."CLAIM_STATUS" = '已认领' and ibjri."RECORD" != #{record}
</if> </if>
) AS useOrgCode, ) AS equCode
</if> </if>
<if test="code96333 != null and code96333 != ''"> <if test="code96333 != null and code96333 != ''">
(SELECT COUNT ( 1 ) FROM idx_biz_jg_other_info ibjoi WHERE ibjoi."CODE96333" = #{code96333} ,(SELECT COUNT ( 1 ) FROM idx_biz_jg_other_info ibjoi WHERE ibjoi."CODE96333" = #{code96333} and ibjoi."CLAIM_STATUS" = '已认领'
<if test="type != 'save'"> <if test="type != 'save'">
and ibjoi."RECORD" != #{record} and ibjoi."CLAIM_STATUS" = '已认领' and ibjoi."RECORD" != #{record}
</if> </if>
) AS code ) AS code
</if> </if>
......
...@@ -108,4 +108,28 @@ ...@@ -108,4 +108,28 @@
#{record} #{record}
</foreach> </foreach>
</delete> </delete>
<select id="selectElevatorEsList" resultType="com.yeejoin.amos.boot.module.ymt.api.entity.EsElevator">
SELECT
jui.RECORD AS sequenceNbr,
ifnull ( jui.USE_INNER_CODE, null ) AS innerNum,
ifnull ( joi.CODE96333, null ) AS rescueCode,
ifnull ( joi.SUPERVISORY_CODE, null ) AS registerCode,
ifnull ( jui.ADDRESS, null ) AS address,
ifnull ( jui.PROVINCE_NAME, null ) AS province,
ifnull ( jui.CITY_NAME, null ) AS city,
ifnull ( jui.COUNTY_NAME, null ) AS district,
ifnull ( jui."LONGITUDE_LATITUDE"::json->> 'latitude', null ) AS latitude,
ifnull ( jui."LONGITUDE_LATITUDE"::json->> 'longitude', null ) AS longitude,
concat(jui.PROVINCE, '#',jui.CITY, '#',jui.COUNTY) AS regionCode
FROM
idx_biz_jg_use_info jui
LEFT JOIN idx_biz_jg_other_info joi ON jui.RECORD = joi.RECORD
LEFT JOIN idx_biz_jg_register_info jri ON jri.RECORD = jui.RECORD
WHERE jri.EQU_LIST = '3000'
AND joi.CLAIM_STATUS = '已认领'
AND jui.RECORD = #{record}
ORDER BY jui.REC_DATE
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -5,6 +5,7 @@ import org.redisson.Redisson; ...@@ -5,6 +5,7 @@ import org.redisson.Redisson;
import org.redisson.api.RedissonClient; import org.redisson.api.RedissonClient;
import org.redisson.config.Config; import org.redisson.config.Config;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
...@@ -13,39 +14,37 @@ import org.springframework.context.annotation.Configuration; ...@@ -13,39 +14,37 @@ import org.springframework.context.annotation.Configuration;
@Slf4j @Slf4j
public class RedissonManager { public class RedissonManager {
//集群环境使用 //集群环境使用
// @Value("${spring.redis.cluster.nodes}") @Value("${spring.redis.cluster.nodes:default}")
// private String clusterNodes; private String clusterNodes;
//通用 //通用
@Value("${spring.redis.password}") @Value("${spring.redis.password}")
private String password; private String password;
//单机环境使用 //单机环境使用
@Value("${spring.redis.host}") @Value("${spring.redis.host:default}")
private String host; private String host;
//单机环境使用 //单机环境使用
@Value("${spring.redis.port}") @Value("${spring.redis.port:default}")
private String port; private String port;
@Bean
@ConditionalOnProperty(name = "spring.redis.mode", havingValue = "cluster")
public RedissonClient redissonClient() {
Config config = new Config();
config.useClusterServers()
.addNodeAddress(clusterNodes.split(","))
.setPassword(password);
return Redisson.create(config);
}
@Bean @Bean
public RedissonClient redissonClient() { @ConditionalOnProperty(name = "spring.redis.mode", havingValue = "singleton", matchIfMissing = true)
//集群环境使用 public RedissonClient redissonSingletonClient() {
// log.info("clusterNodes{}",clusterNodes); // 单机打包使用
// log.info("password{}",password);
//
// Config config = new Config();
// config.useClusterServers()
// .addNodeAddress(clusterNodes.split(","))
// .setPassword(password);
// return Redisson.create(config);
//单机打包使用
Config config = new Config(); Config config = new Config();
config.useSingleServer().setAddress(host + ":" + port).setPassword(password); config.useSingleServer().setAddress(host + ":" + port).setPassword(password);
return Redisson.create(config); return Redisson.create(config);
......
...@@ -422,7 +422,7 @@ public class ElevatorController extends BaseController { ...@@ -422,7 +422,7 @@ public class ElevatorController extends BaseController {
elevatorPage = elevatorService.page(elevatorPage); elevatorPage = elevatorService.page(elevatorPage);
for (Elevator el:elevatorPage.getRecords() for (Elevator el:elevatorPage.getRecords()
) { ) {
esElevatorService.saveEsElevatorToES(el); // esElevatorService.saveEsElevatorToES(el);
} }
} }
} }
......
...@@ -400,27 +400,22 @@ public class EquipmentCategoryController extends BaseController { ...@@ -400,27 +400,22 @@ public class EquipmentCategoryController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/exportImageZip") @GetMapping(value = "/exportImageZip")
@ApiOperation(httpMethod = "GET", value = "设备监管码、电梯码批量导出压缩包", notes = "设备监管码、电梯码批量导出压缩包") @ApiOperation(httpMethod = "GET", value = "设备监管码、电梯码批量导出压缩包", notes = "设备监管码、电梯码批量导出压缩包")
public void exportImageZip(HttpServletResponse response, EquipExportDto dto, @RequestParam("type") String type, @RequestParam("pageNum") Long pageNum, @RequestParam("size") Long size) throws IOException { public void exportImageZip(HttpServletResponse response, @RequestParam Map<String, Object> map) throws IOException {
String type = String.valueOf(map.get("type"));
ImageSizeEnums imageSizeEnums = ImageSizeEnums.getEnumByCode(type); ImageSizeEnums imageSizeEnums = ImageSizeEnums.getEnumByCode(type);
//创建list 存放图片 //创建list 存放图片
List<File> fileList = new ArrayList<>(); List<File> fileList = new ArrayList<>();
if (!ObjectUtils.isEmpty(dto.getUSE_PLACE())) { JSONObject jsonObject = new JSONObject(map);
String address = dto.getUSE_PLACE().substring(1, dto.getUSE_PLACE().length() - 1); Page<JSONObject> pageList = equipmentCategoryServiceImpl.queryByKeys(jsonObject);
address = address.replace(", ", "/"); List<JSONObject> equipExportData;
dto.setUSE_PLACE(address); if (map.containsKey("ids") && !ObjectUtils.isEmpty(map.get("ids"))) {
} List<String> strings = Arrays.asList(String.valueOf(map.get("ids")).split(","));
List<EquipExportVo> equipExportData = equipmentCategoryServiceImpl.exportImageZip(dto, pageNum, size); equipExportData = pageList.getRecords().stream().filter(item -> strings.contains(String.valueOf(item.get("SEQUENCE_NBR")))).collect(Collectors.toList());
List<EquipExportVo> unique = equipExportData.stream().filter(item -> !ObjectUtils.isEmpty(item.getSupervisoryCode())).collect( } else {
Collectors.collectingAndThen( equipExportData = pageList.getRecords();
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(EquipExportVo::getSupervisoryCode))), ArrayList::new)
);
if (ImageSizeEnums.DT.getCode().equals(type)){
unique = unique.stream().filter(item -> !ObjectUtils.isEmpty(item.getCode96333())).collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(EquipExportVo::getCode96333))), ArrayList::new)
);
} }
if (ObjectUtils.isEmpty(unique)){
if (ObjectUtils.isEmpty(equipExportData)) {
File zipFile = File.createTempFile("设备码信息", ".zip"); File zipFile = File.createTempFile("设备码信息", ".zip");
File nullFile = File.createTempFile("当前导出数据为空+", ".txt"); File nullFile = File.createTempFile("当前导出数据为空+", ".txt");
fileList.add(nullFile); fileList.add(nullFile);
...@@ -429,18 +424,22 @@ public class EquipmentCategoryController extends BaseController { ...@@ -429,18 +424,22 @@ public class EquipmentCategoryController extends BaseController {
ImageUtils.downloadResourceZip("设备码信息.zip", zipFile.getAbsolutePath(), response); ImageUtils.downloadResourceZip("设备码信息.zip", zipFile.getAbsolutePath(), response);
zipFile.delete(); zipFile.delete();
} }
for (EquipExportVo equipExportDatum : unique) { if (ImageSizeEnums.DT.getCode().equals(type)) {
InputStream bgImgFile = getClass().getClassLoader().getResourceAsStream("temp/" + imageSizeEnums.getBgPath()); for (JSONObject equipExportDatum : equipExportData.stream().filter(item -> !ObjectUtils.isEmpty(item.get("CODE96333"))).collect(Collectors.toList())) {
if (ImageSizeEnums.DT.getCode().equals(type) && !ObjectUtils.isEmpty(equipExportDatum.getCode96333()) && !ObjectUtils.isEmpty(equipExportDatum.getSupervisoryCode())) { InputStream bgImgFile = getClass().getClassLoader().getResourceAsStream("temp/" + imageSizeEnums.getBgPath());
File QrCodeFile = File.createTempFile(equipExportDatum.getCode96333() + "+", ".png"); File QrCodeFile = File.createTempFile(equipExportDatum.get("CODE96333") + "+", ".png");
ImageUtils.creatQRCode(QrCodeFile, bgImgFile, imageSizeEnums.getWith(), imageSizeEnums.getHeight(), REGULATORY_CODE_PREFIX + equipExportDatum.getSupervisoryCode(), "", equipExportDatum.getCode96333(), imageSizeEnums.getSize(), imageSizeEnums.getImagesX(), imageSizeEnums.getImagesY(), imageSizeEnums.getText1X(), imageSizeEnums.getText1Y(), imageSizeEnums.getText2X(), imageSizeEnums.getText2Y()); ImageUtils.creatQRCode(QrCodeFile, bgImgFile, imageSizeEnums.getWith(), imageSizeEnums.getHeight(), REGULATORY_CODE_PREFIX + equipExportDatum.get("SUPERVISORY_CODE"), "", String.valueOf(equipExportDatum.get("CODE96333")), imageSizeEnums.getSize(), imageSizeEnums.getImagesX(), imageSizeEnums.getImagesY(), imageSizeEnums.getText1X(), imageSizeEnums.getText1Y(), imageSizeEnums.getText2X(), imageSizeEnums.getText2Y());
fileList.add(new File(QrCodeFile.getAbsolutePath())); fileList.add(new File(QrCodeFile.getAbsolutePath()));
} else if (!ObjectUtils.isEmpty(equipExportDatum.getSupervisoryCode())) { bgImgFile.close();
File QrCodeFile = File.createTempFile(equipExportDatum.getSupervisoryCode() + "+", ".png"); }
ImageUtils.creatQRCode(QrCodeFile, bgImgFile, imageSizeEnums.getWith(), imageSizeEnums.getHeight(), REGULATORY_CODE_PREFIX + equipExportDatum.getSupervisoryCode(), "", equipExportDatum.getSupervisoryCode(), imageSizeEnums.getSize(), imageSizeEnums.getImagesX(), imageSizeEnums.getImagesY(), imageSizeEnums.getText1X(), imageSizeEnums.getText1Y(), imageSizeEnums.getText2X(), imageSizeEnums.getText2Y()); } else {
for (JSONObject equipExportDatum : equipExportData.stream().filter(item -> !ObjectUtils.isEmpty(item.get("SUPERVISORY_CODE"))).collect(Collectors.toList())) {
InputStream bgImgFile = getClass().getClassLoader().getResourceAsStream("temp/" + imageSizeEnums.getBgPath());
File QrCodeFile = File.createTempFile(equipExportDatum.get("SUPERVISORY_CODE") + "+", ".png");
ImageUtils.creatQRCode(QrCodeFile, bgImgFile, imageSizeEnums.getWith(), imageSizeEnums.getHeight(), REGULATORY_CODE_PREFIX + equipExportDatum.get("SUPERVISORY_CODE"), "", String.valueOf(equipExportDatum.get("SUPERVISORY_CODE")), imageSizeEnums.getSize(), imageSizeEnums.getImagesX(), imageSizeEnums.getImagesY(), imageSizeEnums.getText1X(), imageSizeEnums.getText1Y(), imageSizeEnums.getText2X(), imageSizeEnums.getText2Y());
fileList.add(new File(QrCodeFile.getAbsolutePath())); fileList.add(new File(QrCodeFile.getAbsolutePath()));
bgImgFile.close();
} }
bgImgFile.close();
} }
File zipFile = File.createTempFile("设备码信息", ".zip"); File zipFile = File.createTempFile("设备码信息", ".zip");
// 调用压缩方法 // 调用压缩方法
...@@ -451,4 +450,5 @@ public class EquipmentCategoryController extends BaseController { ...@@ -451,4 +450,5 @@ public class EquipmentCategoryController extends BaseController {
} }
} }
...@@ -11,6 +11,7 @@ import java.util.Map; ...@@ -11,6 +11,7 @@ import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.ymt.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.ymt.biz.utils.DesUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil;
import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.MqttMessage;
...@@ -44,11 +45,6 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener { ...@@ -44,11 +45,6 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appkey;
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
...@@ -58,6 +54,9 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener { ...@@ -58,6 +54,9 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener {
@Value("${org.filter.group.seq}") @Value("${org.filter.group.seq}")
private Long groupSeq; private Long groupSeq;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) throws Exception { public void processMessage(String topic, MqttMessage message) throws Exception {
System.out.println(message); System.out.println(message);
...@@ -67,9 +66,7 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener { ...@@ -67,9 +66,7 @@ public class BaseEnterpriseMqTtlListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications(); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<ApplicationModel> aList = aResult.getResult(); List<ApplicationModel> aList = aResult.getResult();
// List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) // List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
......
package com.yeejoin.amos.boot.module.ymt.biz.listener; package com.yeejoin.amos.boot.module.ymt.biz.listener;
import java.util.ArrayList; import com.alibaba.fastjson.JSONObject;
import java.util.HashMap; import com.yeejoin.amos.boot.module.ymt.biz.service.impl.StartPlatformTokenService;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.ymt.biz.utils.DesUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.DesUtil;
import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.ApplicationModel; import com.yeejoin.amos.feign.privilege.model.ApplicationModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel; import com.yeejoin.amos.feign.privilege.model.RoleModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* @Description: mqtt监听服务 * @Description: mqtt监听服务
...@@ -33,78 +31,74 @@ import lombok.extern.slf4j.Slf4j; ...@@ -33,78 +31,74 @@ import lombok.extern.slf4j.Slf4j;
@Component @Component
@Slf4j @Slf4j
public class CarcylUnitInspectMqTtlListener extends EmqxListener { public class CarcylUnitInspectMqTtlListener extends EmqxListener {
@Value("${amos.secret.key}") @Value("${amos.secret.key}")
String secretKey; String secretKey;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}") @Autowired
String appkey;
@Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${org.filter.group.seq}") @Value("${org.filter.group.seq}")
private Long groupSeq; private Long groupSeq;
@Override @Autowired
public void processMessage(String topic, MqttMessage message) throws Exception { StartPlatformTokenService platformTokenService;
System.out.println(message);
JSONObject object = null; @Override
try { public void processMessage(String topic, MqttMessage message) throws Exception {
object = JSONObject.parseObject(message.toString()); System.out.println(message);
} catch (Exception e) { JSONObject object = null;
throw new Exception("公司同步消息解析失败"); try {
} object = JSONObject.parseObject(message.toString());
RequestContext.setAppKey(appkey); } catch (Exception e) {
RequestContext.setProduct(product); throw new Exception("公司同步消息解析失败");
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token"))); }
FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications(); platformTokenService.getToken();
List<ApplicationModel> aList = aResult.getResult(); FeignClientResult<List<ApplicationModel>> aResult = Privilege.applicationClient.queryAgencyApplications();
List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1) List<ApplicationModel> aList = aResult.getResult();
.map(i -> i.getAppCode()).collect(Collectors.toList()); List<String> appCodes = aList.stream().filter(i -> "监管端,企业端".indexOf(i.getAppName()) != -1)
.map(i -> i.getAppCode()).collect(Collectors.toList());
String uuid = object.getString("id"); String uuid = object.getString("id");
Long id = Long.valueOf(uuid.replaceAll("-","").hashCode()); Long id = Long.valueOf(uuid.replaceAll("-", "").hashCode());
FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(id); FeignClientResult<CompanyModel> cResult = Privilege.companyClient.seleteOne(id);
if (cResult.getResult() == null) { if (cResult.getResult() == null) {
CompanyModel companyModel = new CompanyModel(); CompanyModel companyModel = new CompanyModel();
companyModel.setCompanyName(object.getString("inspect_unit_name")); companyModel.setCompanyName(object.getString("inspect_unit_name"));
companyModel.setParentId(0L); companyModel.setParentId(0L);
companyModel.setLevel("company"); companyModel.setLevel("company");
companyModel.setSequenceNbr(id); companyModel.setSequenceNbr(id);
companyModel.setCompanyCode(object.getString("org_unit_name")); companyModel.setCompanyCode(object.getString("org_unit_name"));
companyModel.setCompanyType("检验单位"); companyModel.setCompanyType("检验单位");
Privilege.companyClient.create(companyModel); Privilege.companyClient.create(companyModel);
} }
String unitCode = object.getString("org_unit_name"); String unitCode = object.getString("org_unit_name");
if (unitCode == null || unitCode.length() < 6) { if (unitCode == null || unitCode.length() < 6) {
log.error("公司统一信用代码长度不够6位"); log.error("公司统一信用代码长度不够6位");
throw new Exception("公司统一信用代码长度不够6位"); throw new Exception("公司统一信用代码长度不够6位");
} }
String userName = unitCode.substring(unitCode.length() - 6, unitCode.length()); String userName = unitCode.substring(unitCode.length() - 6, unitCode.length());
FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName); FeignClientResult<AgencyUserModel> uResult = Privilege.agencyUserClient.queryByUserName(userName);
if (uResult.getResult() == null) { if (uResult.getResult() == null) {
AgencyUserModel userModel = new AgencyUserModel(); AgencyUserModel userModel = new AgencyUserModel();
userModel.setUserName(userName); userModel.setUserName(userName);
userModel.setRealName(userName); userModel.setRealName(userName);
userModel.setPassword(DesUtil.encode(userName, secretKey)); userModel.setPassword(DesUtil.encode(userName, secretKey));
userModel.setRePassword(DesUtil.encode(userName, secretKey)); userModel.setRePassword(DesUtil.encode(userName, secretKey));
// userModel.setMobile(vo.getPhoneNo()); // userModel.setMobile(vo.getPhoneNo());
userModel.setLockStatus("UNLOCK"); userModel.setLockStatus("UNLOCK");
FeignClientResult<List<RoleModel>> list = Privilege.roleClient.queryRoleList("检验单位", "admin"); FeignClientResult<List<RoleModel>> list = Privilege.roleClient.queryRoleList("检验单位", "admin");
Map<Long, List<Long>> orgRoles = new HashMap<>(); Map<Long, List<Long>> orgRoles = new HashMap<>();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
roleIds.add(list.getResult().get(0).getSequenceNbr()); roleIds.add(list.getResult().get(0).getSequenceNbr());
orgRoles.put(id, roleIds); orgRoles.put(id, roleIds);
userModel.setAppCodes(appCodes); userModel.setAppCodes(appCodes);
userModel.setOrgRoleSeqs(orgRoles); userModel.setOrgRoleSeqs(orgRoles);
FeignClientResult<AgencyUserModel> userResult =Privilege.agencyUserClient.create(userModel); FeignClientResult<AgencyUserModel> userResult = Privilege.agencyUserClient.create(userModel);
String[] userIds = {userResult.getResult().getUserId()}; String[] userIds = {userResult.getResult().getUserId()};
// if (groupSeq != null) { // if (groupSeq != null) {
// Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds)); // Privilege.groupUserClient.create(groupSeq, Arrays.asList(userIds));
// } // }
} }
} }
} }
...@@ -5,16 +5,15 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,16 +5,15 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.ymt.api.service.IEquipmentCategoryService; import com.yeejoin.amos.boot.module.ymt.api.service.IEquipmentCategoryService;
import com.yeejoin.amos.boot.module.ymt.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.ymt.flc.api.service.IRegUnitInfoService; import com.yeejoin.amos.boot.module.ymt.flc.api.service.IRegUnitInfoService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -39,23 +38,18 @@ public class PlatformUserTopicMessage extends EmqxListener { ...@@ -39,23 +38,18 @@ public class PlatformUserTopicMessage extends EmqxListener {
@Autowired @Autowired
RedisUtils redisUtil; RedisUtils redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}")
String product;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Autowired @Autowired
IEquipmentCategoryService equipmentCategoryService; IEquipmentCategoryService equipmentCategoryService;
@Autowired @Autowired
IRegUnitInfoService regUnitInfoService; IRegUnitInfoService regUnitInfoService;
@Autowired
StartPlatformTokenService platformTokenService;
@Override @Override
public void processMessage(String topic, MqttMessage message) { public void processMessage(String topic, MqttMessage message) {
RequestContext.setAppKey(appKey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
JSONObject jsonObject = JSON.parseObject(message.toString()); JSONObject jsonObject = JSON.parseObject(message.toString());
JSONObject result = jsonObject.getJSONObject("result"); JSONObject result = jsonObject.getJSONObject("result");
JSONObject dataResult = result.getJSONObject("result"); JSONObject dataResult = result.getJSONObject("result");
......
...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo; import com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.ymt.biz.service.impl.StartPlatformTokenService;
import com.yeejoin.amos.boot.module.ymt.biz.service.impl.TzBaseEnterpriseInfoServiceImpl; import com.yeejoin.amos.boot.module.ymt.biz.service.impl.TzBaseEnterpriseInfoServiceImpl;
import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil;
import com.yeejoin.amos.boot.module.ymt.flc.api.feign.AccessFeignService; import com.yeejoin.amos.boot.module.ymt.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -16,14 +16,15 @@ import org.eclipse.paho.client.mqttv3.MqttMessage; ...@@ -16,14 +16,15 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener; import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
@Component @Component
@Slf4j @Slf4j
...@@ -40,11 +41,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -40,11 +41,8 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${amos.system.user.product:AMOS_STUDIO_WEB}") @Autowired
String product; StartPlatformTokenService platformTokenService;
@Value("${amos.system.user.app-key:AMOS_STUDIO}")
String appKey;
@Override @Override
public void processMessage(String s, MqttMessage message) throws Exception { public void processMessage(String s, MqttMessage message) throws Exception {
...@@ -58,15 +56,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -58,15 +56,13 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
} catch (Exception e) { } catch (Exception e) {
throw new Exception("公司同步消息解析失败"); throw new Exception("公司同步消息解析失败");
} }
RequestContext.setAppKey(appKey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
//判断库中业务tz_base_enterprise_info是否存在 //判断库中业务tz_base_enterprise_info是否存在
QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>(); QueryWrapper<TzBaseEnterpriseInfo> queryWrapper = new QueryWrapper<TzBaseEnterpriseInfo>();
queryWrapper.eq("use_code",object.getString("unit_code")); queryWrapper.eq("use_code", object.getString("unit_code"));
TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper); TzBaseEnterpriseInfo tzBaseEnterprisePrivilegeInfo = tzBaseEnterpriseInfoService.getOne(queryWrapper);
if(!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)){ if (!ValidationUtil.isEmpty(tzBaseEnterprisePrivilegeInfo)) {
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
...@@ -95,14 +91,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -95,14 +91,14 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
//业务表更新条件构造器 //业务表更新条件构造器
UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>(); UpdateWrapper<TzBaseEnterpriseInfo> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("use_code",object.getString("unit_code")); updateWrapper.eq("use_code", object.getString("unit_code"));
String regCode = object.getString("reg_code"); String regCode = object.getString("reg_code");
CompanyModel supervisePrivilegeCompanyModel; CompanyModel supervisePrivilegeCompanyModel;
if (!ValidationUtil.isEmpty(regCode)) { if (!ValidationUtil.isEmpty(regCode)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode(regCode).getResult();
if(ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)){ if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult(); supervisePrivilegeCompanyModel = Privilege.companyClient.queryByCompanyCode("610000").getResult();
if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) { if (ValidationUtil.isEmpty(supervisePrivilegeCompanyModel)) {
...@@ -120,37 +116,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener { ...@@ -120,37 +116,37 @@ public class PrivilegeCompanyUpdateAddListener extends EmqxListener {
tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode()); tzBaseEnterpriseInfo.setSuperviseOrgCode(supervisePrivilegeCompanyModel.getOrgCode());
tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName()); tzBaseEnterpriseInfo.setSuperviseOrgName(supervisePrivilegeCompanyModel.getCompanyName());
if(ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())){ if (ValidationUtil.isEmpty(tzBaseEnterpriseInfo.getUnitType())) {
tzBaseEnterpriseInfo.setUnitType(""); tzBaseEnterpriseInfo.setUnitType("");
} }
try { try {
if (tzBaseEnterprisePrivilegeInfo == null ) { if (tzBaseEnterprisePrivilegeInfo == null) {
tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo); tzBaseEnterpriseInfoService.save(tzBaseEnterpriseInfo);
accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr")); accessFeignService.updateSyncCompanyState(object.getString("sequence_nbr"));
return; return;
} }
} catch(Exception e) { } catch (Exception e) {
logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage()); logger.error("【" + object.getString("unit_name") + "】许可信息同步【失败】:" + e.getMessage());
} }
} }
public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels,Map<String, CompanyModel> map){ public Map<String, CompanyModel> getCompanyInfoMap(Collection companyModels, Map<String, CompanyModel> map) {
if(companyModels == null){ if (companyModels == null) {
return map; return map;
} }
Iterator iter = companyModels.iterator(); Iterator iter = companyModels.iterator();
while(iter.hasNext()){ while (iter.hasNext()) {
String json = JSON.toJSONString(iter.next()); String json = JSON.toJSONString(iter.next());
CompanyModel companyModel = JSON.parseObject(json,CompanyModel.class); CompanyModel companyModel = JSON.parseObject(json, CompanyModel.class);
String code = companyModel.getCompanyCode(); String code = companyModel.getCompanyCode();
if(code.length() >=6){ if (code.length() >= 6) {
code = code.substring(0, 6); code = code.substring(0, 6);
} }
map.put(code,companyModel); map.put(code, companyModel);
getCompanyInfoMap(companyModel.getChildren(),map); getCompanyInfoMap(companyModel.getChildren(), map);
} }
return map; return map;
} }
......
...@@ -92,32 +92,32 @@ public class ESElevatorServiceImpl { ...@@ -92,32 +92,32 @@ public class ESElevatorServiceImpl {
* *
* @param elevator 电梯信息 * @param elevator 电梯信息
*/ */
public EsElevator saveEsElevatorToES(Elevator elevator) // public EsElevator saveEsElevatorToES(Elevator elevator)
{ // {
EsElevator esElevator = new EsElevator(); // EsElevator esElevator = new EsElevator();
if(StringUtils.isNotEmpty(elevator.getLongitude())) { // if(StringUtils.isNotEmpty(elevator.getLongitude())) {
esElevator.setLongitude(Double.parseDouble(elevator.getLongitude())); // esElevator.setLongitude(Double.parseDouble(elevator.getLongitude()));
} // }
if(StringUtils.isNotEmpty(elevator.getLatitude())) { // if(StringUtils.isNotEmpty(elevator.getLatitude())) {
esElevator.setLatitude(Double.parseDouble(elevator.getLatitude())); // esElevator.setLatitude(Double.parseDouble(elevator.getLatitude()));
} // }
esElevator.setAddress(elevator.getAddress()); // esElevator.setAddress(elevator.getAddress());
esElevator.setCity(elevator.getCity()); // esElevator.setCity(elevator.getCity());
esElevator.setDistrict(elevator.getDistrict()); // esElevator.setDistrict(elevator.getDistrict());
esElevator.setProvince(elevator.getProvince()); // esElevator.setProvince(elevator.getProvince());
esElevator.setRegionCode(elevator.getRegionCode()); // esElevator.setRegionCode(elevator.getRegionCode());
esElevator.setRescueCode(elevator.getRescueCode().toString()); // esElevator.setRescueCode(elevator.getRescueCode().toString());
esElevator.setRegisterCode(elevator.getRegisterCode()); // esElevator.setRegisterCode(elevator.getRegisterCode());
esElevator.setSequenceNbr(elevator.getSequenceNbr()); // esElevator.setSequenceNbr(elevator.getSequenceNbr());
esElevator.setInnerNum(elevator.getInnerNum()); // esElevator.setInnerNum(elevator.getInnerNum());
if(StringUtils.isNotBlank(elevator.getLatitude()) && StringUtils.isNotBlank(elevator.getLongitude())) { // if(StringUtils.isNotBlank(elevator.getLatitude()) && StringUtils.isNotBlank(elevator.getLongitude())) {
Double lat = Double.parseDouble(elevator.getLatitude()); // Double lat = Double.parseDouble(elevator.getLatitude());
Double lon = Double.parseDouble(elevator.getLongitude()); // Double lon = Double.parseDouble(elevator.getLongitude());
esElevator.setLocation(new GeoPoint(lat,lon)); // esElevator.setLocation(new GeoPoint(lat,lon));
} // }
esElavtorRepository.save(esElevator); // esElavtorRepository.save(esElevator);
return esElevator; // return esElevator;
} // }
/** /**
......
...@@ -21,6 +21,7 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentTypeEnum; ...@@ -21,6 +21,7 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*; import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.boot.module.ymt.api.service.IEquipmentCategoryService; import com.yeejoin.amos.boot.module.ymt.api.service.IEquipmentCategoryService;
import com.yeejoin.amos.boot.module.ymt.api.vo.EquipExportVo; import com.yeejoin.amos.boot.module.ymt.api.vo.EquipExportVo;
import com.yeejoin.amos.boot.module.ymt.biz.dao.ESElavtorRepository;
import com.yeejoin.amos.boot.module.ymt.biz.dao.ESEquipmentCategory; import com.yeejoin.amos.boot.module.ymt.biz.dao.ESEquipmentCategory;
import com.yeejoin.amos.boot.module.ymt.biz.utils.JsonUtils; import com.yeejoin.amos.boot.module.ymt.biz.utils.JsonUtils;
import com.yeejoin.amos.boot.module.ymt.flc.api.feign.IdxFeignService; import com.yeejoin.amos.boot.module.ymt.flc.api.feign.IdxFeignService;
...@@ -35,6 +36,7 @@ import org.elasticsearch.action.search.SearchRequest; ...@@ -35,6 +36,7 @@ import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.common.geo.GeoPoint;
import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.AggregationBuilders;
...@@ -42,6 +44,7 @@ import org.elasticsearch.search.aggregations.bucket.terms.Terms; ...@@ -42,6 +44,7 @@ import org.elasticsearch.search.aggregations.bucket.terms.Terms;
import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder; import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder;
import org.elasticsearch.search.builder.SearchSourceBuilder; import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.search.sort.SortOrder; import org.elasticsearch.search.sort.SortOrder;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient; import org.redisson.api.RedissonClient;
import org.springframework.aop.framework.AopContext; import org.springframework.aop.framework.AopContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -214,7 +217,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -214,7 +217,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
@Autowired @Autowired
private static final String TABLENAME = "tableName"; private static final String TABLENAME = "tableName";
@Autowired
private ESElavtorRepository esElavtorRepository;
@Value("${regulator.unit.code}") @Value("${regulator.unit.code}")
private String code; private String code;
...@@ -286,10 +290,6 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -286,10 +290,6 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
@Autowired @Autowired
RestHighLevelClient restHighLevelClient; RestHighLevelClient restHighLevelClient;
private static String USE_CODE = "use_code";
private static String ORG_BRANCH_CODE = "supervise_org_code";
private ExecutorService threadPool = Executors.newCachedThreadPool(); private ExecutorService threadPool = Executors.newCachedThreadPool();
/** /**
...@@ -350,11 +350,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -350,11 +350,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
if ("company".equals(level)) { if ("company".equals(level)) {
BoolQueryBuilder query = QueryBuilders.boolQuery(); BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_CREDIT_CODE", companyCode)); query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_CREDIT_CODE", companyCode));
boolMust.must(query); boolMust.must(query);
} else { } else {
BoolQueryBuilder query = QueryBuilders.boolQuery(); BoolQueryBuilder query = QueryBuilders.boolQuery();
query.must(QueryBuilders.matchPhrasePrefixQuery("ORG_BRANCH_CODE", orgCode)); query.must(QueryBuilders.matchPhrasePrefixQuery("ORG_BRANCH_CODE", orgCode));
boolMust.must(query); boolMust.must(query);
} }
TermsAggregationBuilder field1Aggregation = AggregationBuilders TermsAggregationBuilder field1Aggregation = AggregationBuilders
...@@ -371,7 +371,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -371,7 +371,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
builder.aggregation(field1Aggregation); builder.aggregation(field1Aggregation);
builder.size(0); builder.size(0);
request.source(builder); request.source(builder);
Map<String,Object> statusCountMap = new HashMap<>(); Map<String, Object> statusCountMap = new HashMap<>();
try { try {
SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT); SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
Terms field1Terms = response.getAggregations().get("group_by_code"); Terms field1Terms = response.getAggregations().get("group_by_code");
...@@ -392,7 +392,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -392,7 +392,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
item.put("waitClaim", this.getCountNumber(item.get("code").toString(), "waitClaim", statusCountMap)); item.put("waitClaim", this.getCountNumber(item.get("code").toString(), "waitClaim", statusCountMap));
item.put("alreadyClaim", this.getCountNumber(item.get("code").toString(), "alreadyClaim", statusCountMap)); item.put("alreadyClaim", this.getCountNumber(item.get("code").toString(), "alreadyClaim", statusCountMap));
item.put("refuseClaim", this.getCountNumber(item.get("code").toString(), "refuseClaim", statusCountMap)); item.put("refuseClaim", this.getCountNumber(item.get("code").toString(), "refuseClaim", statusCountMap));
item.put("sum", Long.parseLong(item.get("waitClaim").toString()) + Long.parseLong(item.get("alreadyClaim").toString()) + Long.parseLong(item.get("refuseClaim").toString())); item.put("sum", Long.parseLong(item.get("waitClaim").toString()) + Long.parseLong(item.get("alreadyClaim").toString()) + Long.parseLong(item.get("refuseClaim").toString()));
list.add(item); list.add(item);
} }
page.setCurrent(1); page.setCurrent(1);
...@@ -401,9 +401,9 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -401,9 +401,9 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
return page; return page;
} }
private Long getCountNumber(String type, String status, Map<String, Object> statusCountMap) { private Long getCountNumber(String type, String status, Map<String, Object> statusCountMap) {
String key = type + "|" + status; String key = type + "|" + status;
return Long.parseLong(statusCountMap.getOrDefault(key,"0").toString()); return Long.parseLong(statusCountMap.getOrDefault(key, "0").toString());
} }
/** /**
...@@ -588,11 +588,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -588,11 +588,11 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
@Override @Override
public String checkCode(Map<String, Object> obj) { public String checkCode(Map<String, Object> obj) {
String result = null; String result = null;
String type = (String) obj.get("type"); String type = ObjectUtils.isEmpty(obj.get("type")) ? null : String.valueOf(obj.get("type"));
String code96333 = String.valueOf(obj.get("CODE96333")); String code96333 = ObjectUtils.isEmpty(obj.get("CODE96333")) ? null : String.valueOf(obj.get("CODE96333"));
String equCode = (String) obj.get("EQU_CODE"); String equCode = ObjectUtils.isEmpty(obj.get("EQU_CODE")) ? null : String.valueOf(obj.get("EQU_CODE"));
String useOrgCode = (String) obj.get("USE_ORG_CODE"); String useOrgCode = ObjectUtils.isEmpty(obj.get("USE_ORG_CODE")) ? null : String.valueOf(obj.get("USE_ORG_CODE"));
String record = (String) obj.get("id"); String record = ObjectUtils.isEmpty(obj.get("id")) ? null : String.valueOf(obj.get("id"));
Map<String, Long> map = categoryOtherInfoMapper.checkCode(type, code96333, equCode, useOrgCode, record); Map<String, Long> map = categoryOtherInfoMapper.checkCode(type, code96333, equCode, useOrgCode, record);
if (map.containsKey("equCode") && map.get("equCode") > 0) { if (map.containsKey("equCode") && map.get("equCode") > 0) {
result = "设备代码重复,请确认数据是否输入正确,或联系管辖机构处理。"; result = "设备代码重复,请确认数据是否输入正确,或联系管辖机构处理。";
...@@ -1280,19 +1280,25 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1280,19 +1280,25 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
Object recordList = map.get("recordList"); Object recordList = map.get("recordList");
List<String> records = new ArrayList<>(); List<String> records = new ArrayList<>();
List<ESEquipmentCategoryDto> list = new ArrayList<>(); List<ESEquipmentCategoryDto> list = new ArrayList<>();
List<EsElevator> esElevatorList = new ArrayList<>();
if (recordList.toString().contains("[")) { if (recordList.toString().contains("[")) {
for (String record : (List<String>) recordList) { for (String record : (List<String>) recordList) {
records.add(record); records.add(record);
ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto(); ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto();
esEquipmentCategoryDto.setSEQUENCE_NBR(record); esEquipmentCategoryDto.setSEQUENCE_NBR(record);
list.add(esEquipmentCategoryDto); list.add(esEquipmentCategoryDto);
EsElevator esElevator = new EsElevator();
esElevator.setSequenceNbr(record);
esElevatorList.add(esElevator);
} }
} else { } else {
records.add(recordList.toString()); records.add(recordList.toString());
ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto(); ESEquipmentCategoryDto esEquipmentCategoryDto = new ESEquipmentCategoryDto();
esEquipmentCategoryDto.setSEQUENCE_NBR(recordList.toString()); esEquipmentCategoryDto.setSEQUENCE_NBR(recordList.toString());
list.add(esEquipmentCategoryDto); list.add(esEquipmentCategoryDto);
EsElevator esElevator = new EsElevator();
esElevator.setSequenceNbr(recordList.toString());
esElevatorList.add(esElevator);
} }
//删除监管码表数据 //删除监管码表数据
List<String> superviseCodeList = superviseInfoMapper.selectSuperviseCodeList(records); List<String> superviseCodeList = superviseInfoMapper.selectSuperviseCodeList(records);
...@@ -1307,7 +1313,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1307,7 +1313,8 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
if (!ObjectUtils.isEmpty(superviseCodeList)) { if (!ObjectUtils.isEmpty(superviseCodeList)) {
supervisoryCodeInfoMapper.updateStatus(superviseCodeList); supervisoryCodeInfoMapper.updateStatus(superviseCodeList);
} }
//删除es中elev中的相关数据
esElavtorRepository.deleteAll(esElevatorList);
//删除涉及的19张表的数据 //删除涉及的19张表的数据
superviseInfoMapper.deleteDataAll(records); superviseInfoMapper.deleteDataAll(records);
//删除es中的数据 //删除es中的数据
...@@ -1334,10 +1341,10 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1334,10 +1341,10 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
useInfoFrom.put("REC_DATE", dateFormat.format(calendar.getTime())); useInfoFrom.put("REC_DATE", dateFormat.format(calendar.getTime()));
String unitCode = String.valueOf(useInfoFrom.get("USE_UNIT_CREDIT_CODE")); String unitCode = String.valueOf(useInfoFrom.get("USE_UNIT_CREDIT_CODE"));
LinkedHashMap supervisionMap = (LinkedHashMap) map.get(supervision_form_id); LinkedHashMap supervisionMap = (LinkedHashMap) map.get(supervision_form_id);
boolean saveFlag = false;
String record = null; String record = null;
LinkedHashMap superviseMap = (LinkedHashMap) map.get("data"); LinkedHashMap superviseMap = (LinkedHashMap) map.get("data");
String equCategory = String.valueOf(superviseMap.get("equCategory")); String equCategory = String.valueOf(superviseMap.get("equCategory"));
try { try {
String claimStatus = String.valueOf(superviseMap.get("claimStatus")); String claimStatus = String.valueOf(superviseMap.get("claimStatus"));
String code96333 = String.valueOf(superviseMap.get("code96333")); String code96333 = String.valueOf(superviseMap.get("code96333"));
...@@ -1352,26 +1359,16 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1352,26 +1359,16 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
EquipmentCategoryServiceImpl categoryService = (EquipmentCategoryServiceImpl) AopContext.currentProxy(); EquipmentCategoryServiceImpl categoryService = (EquipmentCategoryServiceImpl) AopContext.currentProxy();
//生成码 //生成码
//集群模式使用 //集群模式使用
// RLock lock = redissonClient.getLock(LOCK_KEY); RLock lock = redissonClient.getLock(LOCK_KEY);
// lock.lock(); // 获取锁 lock.lock(); // 获取锁
// log.info("加锁成功"); log.info("加锁成功");
// codeMap = categoryService.creatCode(city, county, equCategory, code96333, supervisionCode); codeMap = categoryService.creatCode(city, county, equCategory, code96333, supervisionCode);
// log.info("生成码成功"); log.info("生成码成功");
// lock.unlock(); // 释放锁 lock.unlock(); // 释放锁
// log.info("释放锁"); log.info("释放锁");
// log.info("已生成对应监管码或96333电梯识别码"); log.info("已生成对应监管码或96333电梯识别码");
//单机模式使用 //删除map中的冗余数据,添加对应监管码和96333码调用idx多表单页提交接口吧保存数据
// boolean flag = false; map.remove("data");
// if (lock.tryLock(3, 5, TimeUnit.SECONDS)) {
codeMap = categoryService.creatCode(city, county, equCategory, code96333, supervisionCode);
log.info("已生成对应监管码或96333电梯识别码");
// flag = true;
// }
// if (flag) {
// lock.unlock(); // 释放锁
// log.info("释放锁");
// }
//添加对应监管码和96333码调用通用新增保存接口进行修改
supervisionMap.put("CODE96333", codeMap.get("code96333")); supervisionMap.put("CODE96333", codeMap.get("code96333"));
supervisionMap.put("SUPERVISORY_CODE", codeMap.get("superviseCode")); supervisionMap.put("SUPERVISORY_CODE", codeMap.get("superviseCode"));
map.put(supervision_form_id, supervisionMap); map.put(supervision_form_id, supervisionMap);
...@@ -1413,11 +1410,15 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1413,11 +1410,15 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
if (log.isInfoEnabled()) { if (log.isInfoEnabled()) {
log.info("通用提交耗时:{} 秒", stopWatch3.getTotalTimeSeconds()); log.info("通用提交耗时:{} 秒", stopWatch3.getTotalTimeSeconds());
} }
String finalRecord = record;
threadPool.submit(() -> { threadPool.submit(() -> {
log.info("已生成对应监管码" + supervisionMap.get("SUPERVISORY_CODE")); if (log.isInfoEnabled()) {
log.info("已生成对应96333电梯识别码" + supervisionMap.get("CODE96333")); log.info("企业统一信用代码-------->>>>>>>>>>{}", unitCode);
log.info("已生成对应监管码" + supervisionMap.get("SUPERVISORY_CODE"));
log.info("已生成对应96333电梯识别码" + supervisionMap.get("CODE96333"));
}
supervisoryCodeInfoMapper.update(supervisoryCodeInfo, new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code", supervisionMap.get("SUPERVISORY_CODE"))); supervisoryCodeInfoMapper.update(supervisoryCodeInfo, new QueryWrapper<SupervisoryCodeInfo>().eq("supervisory_code", supervisionMap.get("SUPERVISORY_CODE")));
log.info("unitCode-------->>>>>>>>>>{}", unitCode); saveEsElevator2ES(finalRecord);
}); });
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
...@@ -1652,12 +1653,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1652,12 +1653,12 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
mainPartsList = getAccessoryEntity(registerForm, subFormMainPartsList, main_parts, record, date, type); mainPartsList = getAccessoryEntity(registerForm, subFormMainPartsList, main_parts, record, date, type);
} }
} }
IdxBizJgRegisterInfo registerInfo =JSON.parseObject(JSON.toJSONString(registerForm), IdxBizJgRegisterInfo.class); IdxBizJgRegisterInfo registerInfo = JSON.parseObject(JSON.toJSONString(registerForm), IdxBizJgRegisterInfo.class);
registerInfo.setRecord(record); registerInfo.setRecord(record);
registerInfo.setRecDate(date); registerInfo.setRecDate(date);
registerInfo.setSequenceNbr("save".equals(type) ? null : registerForm.get("sequenceNbr").toString()); registerInfo.setSequenceNbr("save".equals(type) ? null : registerForm.get("sequenceNbr").toString());
idxBizJgRegisterInfoService.saveOrUpdate(registerInfo); idxBizJgRegisterInfoService.saveOrUpdate(registerInfo);
if (!ObjectUtils.isEmpty(mainPartsList)) { if (!ObjectUtils.isEmpty(mainPartsList)) {
idxBizJgMainPartsService.saveOrUpdateBatch(mainPartsList); idxBizJgMainPartsService.saveOrUpdateBatch(mainPartsList);
} }
...@@ -1667,14 +1668,14 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1667,14 +1668,14 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
return record; return record;
} }
private List getAccessoryEntity(Map<String, Object> map, List<String> list, String subFormType, String record, Date date,String type) { private List getAccessoryEntity(Map<String, Object> map, List<String> list, String subFormType, String record, Date date, String type) {
List<IdxBizJgMainParts> mainPartsList = new ArrayList<>(); List<IdxBizJgMainParts> mainPartsList = new ArrayList<>();
List<IdxBizJgProtectionDevices> protectionDevicesList = new ArrayList<>(); List<IdxBizJgProtectionDevices> protectionDevicesList = new ArrayList<>();
if ("mainParts".equals(subFormType)) { if ("mainParts".equals(subFormType)) {
for (Object s : list) { for (Object s : list) {
List subFormMainPartsList = (ArrayList) map.get(s); List subFormMainPartsList = (ArrayList) map.get(s);
if(!ObjectUtils.isEmpty(subFormMainPartsList)){ if (!ObjectUtils.isEmpty(subFormMainPartsList)) {
for (Object obj : subFormMainPartsList) { for (Object obj : subFormMainPartsList) {
IdxBizJgMainParts mainParts = JSON.parseObject(JSON.toJSONString(obj), IdxBizJgMainParts.class); IdxBizJgMainParts mainParts = JSON.parseObject(JSON.toJSONString(obj), IdxBizJgMainParts.class);
mainParts.setRecord(record); mainParts.setRecord(record);
...@@ -1688,7 +1689,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1688,7 +1689,7 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} else { } else {
for (Object s : list) { for (Object s : list) {
List subFormProtectionDevicesList = (ArrayList) map.get(s); List subFormProtectionDevicesList = (ArrayList) map.get(s);
if(!ObjectUtils.isEmpty(subFormProtectionDevicesList)){ if (!ObjectUtils.isEmpty(subFormProtectionDevicesList)) {
for (Object obj : subFormProtectionDevicesList) { for (Object obj : subFormProtectionDevicesList) {
IdxBizJgProtectionDevices protectionDevices = JSON.parseObject(JSON.toJSONString(obj), IdxBizJgProtectionDevices.class); IdxBizJgProtectionDevices protectionDevices = JSON.parseObject(JSON.toJSONString(obj), IdxBizJgProtectionDevices.class);
protectionDevices.setRecord(record); protectionDevices.setRecord(record);
...@@ -1703,7 +1704,24 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD ...@@ -1703,7 +1704,24 @@ public class EquipmentCategoryServiceImpl extends BaseService<EquipmentCategoryD
} }
//分页查询所有数据 private void saveEsElevator2ES(String record) {
List<String> recordList = new ArrayList<>();
recordList.add(record);
EsElevator esElevator = superviseInfoMapper.selectElevatorEsList(record);
if (!ObjectUtils.isEmpty(esElevator)) {
Double lat = esElevator.getLatitude();
Double lon = esElevator.getLongitude();
esElevator.setLocation(new GeoPoint(lat, lon));
}
esElavtorRepository.save(esElevator);
superviseInfoMapper.updateRecordBatch(recordList);
}
/**
* 分页查询所有数据
* @param map
* @return
*/
public Page<Map<String, Object>> getAll(Map<String, Object> map) { public Page<Map<String, Object>> getAll(Map<String, Object> map) {
String tableName = map.get(TABLENAME).toString(); String tableName = map.get(TABLENAME).toString();
Assert.hasText(tableName, "表名不能为空"); Assert.hasText(tableName, "表名不能为空");
......
package com.yeejoin.amos.boot.module.ymt.biz.service.impl; package com.yeejoin.amos.boot.module.ymt.biz.service.impl;
import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil; import com.yeejoin.amos.boot.module.ymt.biz.utils.RedisUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.yeejoin.amos.component.robot.AmosRequestContext;
@Service @Service
public class StartPlatformTokenService { public class StartPlatformTokenService {
@Value("${admin.product}") @Autowired
String product; RedisUtil redisUtil;
@Value("${admin.appkey}")
String appkey;
@Value("${admin.user}")
String user;
@Value("${admin.password}")
String password;
@Value("${amos.secret.key}") @Autowired
String secretKey; AmosRequestContext amosRequestContext;
@Autowired
RedisUtil redisUtil;
@Autowired
AmosRequestContext amosRequestContext;
public void getToken() { public void getToken() {
RequestContext.setProduct(product); RequestContext.setProduct(amosRequestContext.getProduct());
RequestContext.setAppKey(appkey); RequestContext.setAppKey(amosRequestContext.getAppKey());
String token = amosRequestContext.getToken(); RequestContext.setToken(amosRequestContext.getToken());
System.out.println("token:" + token); }
RequestContext.setToken(token);
redisUtil.set("platform_token", token);
}
} }
...@@ -41,7 +41,6 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -41,7 +41,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
...@@ -63,15 +62,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -63,15 +62,6 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
@Value("${admin.product}")
String product;
@Value("${admin.product.web}")
String webProduct;
@Value("${admin.appkey}")
String appkey;
@Autowired @Autowired
private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper; private TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
...@@ -84,8 +74,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -84,8 +74,6 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired @Autowired
RegUnitInfoServiceImpl regUnitInfoService; RegUnitInfoServiceImpl regUnitInfoService;
@Autowired
private IBaseUnitLicenceService iBaseUnitLicenceService;
@Autowired @Autowired
private SpeUseUnitServiceImpl speUseUnitService; private SpeUseUnitServiceImpl speUseUnitService;
...@@ -94,29 +82,23 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -94,29 +82,23 @@ public class TzBaseEnterpriseInfoServiceImpl
private AccessFeignService accessFeignService; private AccessFeignService accessFeignService;
@Autowired @Autowired
private ITzBaseEnterpriseInfoService tzBaseEnterpriseInfoService;
@Autowired
DataDictionaryServiceImpl iDataDictionaryService; DataDictionaryServiceImpl iDataDictionaryService;
@Autowired @Autowired
RegUnitInfoMapper regUnitInfoMapper; RegUnitInfoMapper regUnitInfoMapper;
@Value("${tzs.admin.name:tzs_admin}") @Autowired
private String tzsAdminName; StartPlatformTokenService platformTokenService;
@Value("${tzs.admin.pwd:a1234567}")
private String tzsAdminPwd;
@Value("${redis.cache.failure.time}") @Value("${redis.cache.failure.time}")
private Long redisRegionTimeSecond; private Long redisRegionTimeSecond;
/**机器人用户token缓存key */
public static final String TZS_USER_TOKEN = "TZS_USER_TOKEN";
/** /**
* 企业管理员变更缓存key前缀 * 企业管理员变更缓存key前缀
*/ */
private final String adminChange = "ADMIN_CHANGE_"; private final String adminChange = "ADMIN_CHANGE_";
@Autowired @Autowired
private EquipmentCategoryServiceImpl equipmentCategoryService; private EquipmentCategoryServiceImpl equipmentCategoryService;
...@@ -313,9 +295,7 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -313,9 +295,7 @@ public class TzBaseEnterpriseInfoServiceImpl
@Override @Override
public String syncEnterpriseInfo() { public String syncEnterpriseInfo() {
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(product);
RequestContext.setToken(String.valueOf(redisUtil.get("platform_token")));
List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>(); List<TzBaseEnterpriseInfo> baseEnterpriseInfoList = new ArrayList<>();
...@@ -538,16 +518,11 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -538,16 +518,11 @@ public class TzBaseEnterpriseInfoServiceImpl
return String.join(",", res); return String.join(",", res);
} }
@Override
public Map<String, Object> adminInfoUpdate(Map<String, Object> map) { public Map<String, Object> adminInfoUpdate(Map<String, Object> map) {
//每一个企业只有一个管理员,所以当前登录用户即管理员用户 //每一个企业只有一个管理员,所以当前登录用户即管理员用户
AgencyUserModel me = Privilege.agencyUserClient.getme().getResult(); AgencyUserModel me = Privilege.agencyUserClient.getme().getResult();
RequestContext.setAppKey(appkey); platformTokenService.getToken();
RequestContext.setProduct(webProduct);
//获取机器人的token,获取不到则去登录
if (ObjectUtils.isEmpty(redisUtil.get(TZS_USER_TOKEN))) {
loginCtiUser();
}
RequestContext.setToken(String.valueOf(redisUtil.get(TZS_USER_TOKEN)));
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
if (!ObjectUtils.isEmpty(me)) { if (!ObjectUtils.isEmpty(me)) {
RegUnitInfo regUnitInfo = new RegUnitInfo(); RegUnitInfo regUnitInfo = new RegUnitInfo();
...@@ -572,18 +547,6 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -572,18 +547,6 @@ public class TzBaseEnterpriseInfoServiceImpl
return resultMap; return resultMap;
} }
//机器人用户登录
private void loginCtiUser() {
String passwd = DesUtil.encode(tzsAdminPwd, "qaz");
IdPasswordAuthModel loninData = new IdPasswordAuthModel();
loninData.setLoginId(tzsAdminName);
loninData.setPassword(passwd);
FeignClientResult loginResult = Privilege.authClient.idpassword(loninData);
if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult();
redisUtil.set(TZS_USER_TOKEN, resultMap.get("token").toString(), redisRegionTimeSecond);
}
}
public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){ public void setSpeUseUnitState(int state,SpeUseUnit speUseUnit){
......
...@@ -19,6 +19,7 @@ spring.elasticsearch.rest.uris=http://172.16.10.230:9200 ...@@ -19,6 +19,7 @@ spring.elasticsearch.rest.uris=http://172.16.10.230:9200
## unit(h) ## unit(h)
alertcall.es.synchrony.time=48 alertcall.es.synchrony.time=48
#redis properties: #redis properties:
spring.redis.mode=singleton
spring.redis.database=1 spring.redis.database=1
spring.redis.host=172.16.10.230 spring.redis.host=172.16.10.230
spring.redis.port=16379 spring.redis.port=16379
......
...@@ -122,11 +122,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE ...@@ -122,11 +122,7 @@ tzs.wechat.tempId.supervise=P5XGbszS2Pc6kynvGjzPpZ--ikAwDZo6O7WdJ2EUxtE
## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD ## \uFFFD\uFFFD\uFFFD\u06BA\u0172\uFFFD\uFFFD\uFFFD\uFFFD\u00FB\uFFFDid\uFFFD\uFFFD\u01BD\u0328userId\uFFFD\uFFFD
tzs.wechat.test.userId=3393279 tzs.wechat.test.userId=3393279
admin.product=AMOS-SERVICE-ADMIN
admin.appkey=AMOS_ADMIN
admin.user=admin_tzs
admin.password=a1234560
admin.product.web=AMOS-WEB-ADMIN
amos.secret.key=qazknife4j.production=false amos.secret.key=qazknife4j.production=false
knife4j.production=false knife4j.production=false
......
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