Commit 2394f3cf authored by 韩桐桐's avatar 韩桐桐

fix(jg):批量导入,安改为单位去掉批量导入

parent 54455033
......@@ -11,17 +11,16 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
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;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -140,7 +139,7 @@ public class IdxBizJqEquipmentRegisterController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/equipCanUsedByVessel/page")
@ApiOperation(httpMethod = "GET", value = "查询车用气瓶可进行选择的设备列表", notes = "查询车用气瓶可进行选择的设备列表")
public ResponseModel<Page<JSONObject>>queryEquipCanUsedByVesselPage(@RequestParam Map<String, Object> queryMap) {
public ResponseModel<Page<JSONObject>> queryEquipCanUsedByVesselPage(@RequestParam Map<String, Object> queryMap) {
JSONObject jsonObject = new JSONObject(queryMap);
return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.queryEquipCanUsedByVesselPage(jsonObject));
}
......@@ -151,8 +150,8 @@ public class IdxBizJqEquipmentRegisterController extends BaseController {
@PostMapping("/importPressureVesselData")
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "压力容器设备批量导入")
public ResponseModel<String> importPressureVesselData(@RequestBody MultipartFile file, @RequestBody Map<String, Object> paramMap) {
return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.importPressureVesselData(file, paramMap));
public ResponseModel<String> importPressureVesselData(@RequestBody Map<String, Object> paramMap) {
return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.importPressureVesselData(paramMap));
}
......
......@@ -36,5 +36,5 @@ public interface IIdxBizJgRegisterInfoService {
Page<JSONObject> queryEquipCanUsedByVesselPage(JSONObject jsonObject);
String importPressureVesselData(MultipartFile file, Map<String, Object> paramMap);
String importPressureVesselData(Map<String, Object> paramMap);
}
......@@ -133,6 +133,12 @@ public class CommonServiceImpl implements ICommonService {
private static final String REGULATOR_UNIT_TREE_ALL = "REGULATOR_UNIT_TREE_ALL";
// 行政审批局redis缓存key
private static final String ADMINISTRATION_UNIT_TREE = "ADMINISTRATION_UNIT_TREE";
private static final String XZSB = "XZSB";
private static final String CODE = "code";
private static final String PL_DR = "PL_DR";
private static final String SAFETYANDMAINTENANCEUNIT = "安装改造维修单位";
// 管辖机构
private static final String REGULATOR_UNIT = "监管机构";
// 行政审批局
......@@ -592,7 +598,18 @@ public class CommonServiceImpl implements ICommonService {
@Override
public List<Map<String, Object>> superviseBusinessCategory(String type) {
ReginParams reginParams = getSelectedOrgInfo();
Map<String, List<Map<String, Object>>> resourceJson = JsonUtils.getResourceJson(superviseBusinessCategory);
if (XZSB.equals(type) && SAFETYANDMAINTENANCEUNIT.equals(reginParams.getCompany().getCompanyType())){
Iterator<Map<String, Object>> iterator = resourceJson.get(type).iterator();
while (iterator.hasNext()) {
Map<String, Object> item = iterator.next();
if (item.get(CODE).equals(PL_DR)) {
iterator.remove();
}
}
return resourceJson.get(type);
}
return resourceJson.get(type);
}
......
......@@ -36,6 +36,8 @@ import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import io.minio.GetObjectArgs;
import io.minio.MinioClient;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.lucene.queryparser.classic.QueryParser;
......@@ -52,19 +54,22 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.sql.Timestamp;
import java.util.*;
import java.util.stream.Collectors;
import static com.alibaba.fastjson.JSON.toJSONString;
......@@ -168,6 +173,15 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
@Value("${add.equip.dict.code.suffix:CATEGORY_LIST_ADD}")
private String equipAddDictCodeSuffix;
@Value("${minio.endpoint}")
private String minioEndpoint;
@Value("${minio.accesskey}")
private String accessKey;
@Value("${minio.secretKey}")
private String secretKey;
@Autowired
private IdxBizJgDesignInfoServiceImpl idxBizJgDesignInfoService;
@Autowired
......@@ -1386,7 +1400,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
request.source(builder);
List<JSONObject> list = new LinkedList<>();
long totle = 0;
if(log.isDebugEnabled()){
if (log.isDebugEnabled()) {
log.debug("查询es 的查询条件: {}", request);
}
try {
......@@ -1880,7 +1894,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
}
@Override
public Page<JSONObject> queryEquipCanUsedByVesselPage(JSONObject jsonObject) {
public Page<JSONObject> queryEquipCanUsedByVesselPage(JSONObject jsonObject) {
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String useUnitCreditCode = reginParams.getCompany().getCompanyCode();
// 使用单位为个人时候 特殊处理
......@@ -1899,18 +1913,41 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
}
@Override
public String importPressureVesselData(MultipartFile file ,Map<String, Object> paramMap) {
public String importPressureVesselData(Map<String, Object> paramMap) {
try {
PressureVesselListener pressureVesselListener = new PressureVesselListener();
LinkedHashMap equipmentInfoForm = (LinkedHashMap) checkAndCast(paramMap.get(EQUIP_INFO_FORM_ID));
injectDependencies(pressureVesselListener, equipmentInfoForm);
EasyExcel.read(file.getInputStream(), EquipInfoCylinderExcelDto.class, pressureVesselListener)
// 初始化MinioClient对象
MinioClient minioClient = MinioClient.builder()
.endpoint(minioEndpoint)
.credentials(accessKey, secretKey)
.build();
ArrayList<?> file = (ArrayList<?>) equipmentInfoForm.get("file");
HashMap<?, ?> fileMap = (HashMap<?, ?>) file.get(0);
String url = String.valueOf(fileMap.get("url")).replaceFirst("/", "");
// /upload/tzs/amos_studio/9137475/xxx.xlsx
// 中的upload为bucket,tzs/amos_studio/9137475/xxx.xlsx为objectName
int index = url.indexOf("/");
String bucket = url.substring(0, index);
String objectName = url.substring(index + 1);
// 入参
GetObjectArgs args = GetObjectArgs.builder().bucket(bucket).object(objectName).build();
// 获取文件对象的InputStream
InputStream inputStream = minioClient.getObject(args);
EasyExcel.read(inputStream, EquipInfoCylinderExcelDto.class, pressureVesselListener)
.headRowNumber(4)
.sheet()
.doRead();
inputStream.close();
return pressureVesselListener.getResult();
} catch (Exception e) {
return (e.getCause() instanceof BadRequest) ? "模版数据填写有误:" + e.getCause().getMessage() : "导入时出现异常:" + e.getMessage();
String err = (e.getCause() instanceof BadRequest) ? "模版数据填写有误:" + e.getCause().getMessage() : "导入时出现异常:" + e.getMessage();
throw new BadRequest(err);
}
}
......
......@@ -6,11 +6,11 @@ eureka.client.service-url.defaultZone=http://172.16.10.243:10001/eureka/
eureka.instance.prefer-ip-address=true
management.endpoint.health.show-details=always
management.endpoints.web.exposure.include=*
eureka.instance.health-check-url=http://172.16.3.17:${server.port}${server.servlet.context-path}/actuator/health
eureka.instance.health-check-url=http://172.16.3.68:${server.port}${server.servlet.context-path}/actuator/health
eureka.instance.metadata-map.management.context-path=${server.servlet.context-path}/actuator
eureka.instance.status-page-url=http://172.16.3.17:${server.port}${server.servlet.context-path}/actuator/info
eureka.instance.metadata-map.management.api-docs=http://172.16.3.17:${server.port}${server.servlet.context-path}/doc.html
eureka.instance.ip-address=172.16.3.17
eureka.instance.status-page-url=http://172.16.3.68:${server.port}${server.servlet.context-path}/actuator/info
eureka.instance.metadata-map.management.api-docs=http://172.16.3.68:${server.port}${server.servlet.context-path}/doc.html
eureka.instance.ip-address=172.16.3.68
## ES properties:
elasticsearch.username=elastic
elasticsearch.password=a123456
......@@ -77,8 +77,10 @@ rule.definition.load=false
##rule.definition.model-package=com.yeejoin.amos.boot.module.jcs.api.dto
rule.definition.default-agency=tzs
rule.definition.local-ip=172.16.10.243
# ??????????
minio.url.path=http://172.16.10.243:9000/
# minio ??
minio.endpoint=http://172.16.10.243:9000
minio.accesskey=root
minio.secretKey=Yeejoin@2020
## \u7279\u79CD\u8BBE\u5907\u57DF\u540D
tzs.domain=http://sxtzsb.sxsei.com
......
......@@ -59,6 +59,12 @@
<version>1.0.0.2</version>
</dependency>
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.0.2</version>
</dependency>
<!-- Logstash -->
<dependency>
<groupId>net.logstash.logback</groupId>
......
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