Commit effdde1b authored by 韩桐桐's avatar 韩桐桐

导出topic改用token + 人员bugfix 29605

parent de895c8a
...@@ -57,11 +57,11 @@ public class JgTableDataExportController extends BaseController { ...@@ -57,11 +57,11 @@ public class JgTableDataExportController extends BaseController {
@RequestParam(value = "ids", required = false) String ids, @RequestParam(value = "ids", required = false) String ids,
@RequestParam(value = "sort", required = false) String sort) { @RequestParam(value = "sort", required = false) String sort) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.certificate(uuid, getSelectedOrgInfo(), dto, ids == null ? new ArrayList<>() : Arrays.asList(ids.split(",")), sort); iJgTableDataExportService.certificate(uuid, dto, ids == null ? new ArrayList<>() : Arrays.asList(ids.split(",")), sort);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
...@@ -197,10 +197,10 @@ public class JgTableDataExportController extends BaseController { ...@@ -197,10 +197,10 @@ public class JgTableDataExportController extends BaseController {
public ResponseModel<String> unregulatedEquipExport(@RequestParam Map<String, Object> map) { public ResponseModel<String> unregulatedEquipExport(@RequestParam Map<String, Object> map) {
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("未纳管设备列表数据",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("未纳管设备列表数据", uuid);
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.unregulatedEquip(uuid, getSelectedOrgInfo(), map); iJgTableDataExportService.unregulatedEquip(uuid, map);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
...@@ -210,11 +210,11 @@ public class JgTableDataExportController extends BaseController { ...@@ -210,11 +210,11 @@ public class JgTableDataExportController extends BaseController {
@ApiOperation(httpMethod = "GET", value = "已纳管设备列表数据导出", notes = "已纳管设备列表数据导出") @ApiOperation(httpMethod = "GET", value = "已纳管设备列表数据导出", notes = "已纳管设备列表数据导出")
public ResponseModel<String> manageEquipmentExport(@RequestParam Map<String, Object> map) { public ResponseModel<String> manageEquipmentExport(@RequestParam Map<String, Object> map) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("已纳管设备列表数据",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("已纳管设备列表数据", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.manageEquipment(uuid, getSelectedOrgInfo(), map); iJgTableDataExportService.manageEquipment(uuid, map);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
...@@ -233,7 +233,7 @@ public class JgTableDataExportController extends BaseController { ...@@ -233,7 +233,7 @@ public class JgTableDataExportController extends BaseController {
public ResponseModel<String> unregulatedPipe(@RequestParam Map<String, String> params, public ResponseModel<String> unregulatedPipe(@RequestParam Map<String, String> params,
@RequestParam(value = "sort", required = false) String sort) { @RequestParam(value = "sort", required = false) String sort) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("未纳管压力管道列表",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("未纳管压力管道列表", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
...@@ -248,7 +248,7 @@ public class JgTableDataExportController extends BaseController { ...@@ -248,7 +248,7 @@ public class JgTableDataExportController extends BaseController {
public ResponseModel<String> managePipe(@RequestParam Map<String, String> params, public ResponseModel<String> managePipe(@RequestParam Map<String, String> params,
@RequestParam(value = "sort", required = false) String sort) { @RequestParam(value = "sort", required = false) String sort) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("已纳管压力管道列表",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("已纳管压力管道列表", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
...@@ -262,11 +262,11 @@ public class JgTableDataExportController extends BaseController { ...@@ -262,11 +262,11 @@ public class JgTableDataExportController extends BaseController {
@ApiOperation(httpMethod = "GET", value = "基础设置-企业信息列表数据导出", notes = "基础设置-企业信息列表数据导出") @ApiOperation(httpMethod = "GET", value = "基础设置-企业信息列表数据导出", notes = "基础设置-企业信息列表数据导出")
public ResponseModel<String> managePipe(String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) { public ResponseModel<String> managePipe(String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("企业信息列表",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("企业信息列表", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.enterpriseInformationExport(uuid, ids, tzBaseEnterpriseInfoDto, getSelectedOrgInfo()); iJgTableDataExportService.enterpriseInformationExport(uuid, ids, tzBaseEnterpriseInfoDto);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
...@@ -278,11 +278,11 @@ public class JgTableDataExportController extends BaseController { ...@@ -278,11 +278,11 @@ public class JgTableDataExportController extends BaseController {
@RequestParam(value = "sort", required = false) String sort, @RequestParam(value = "sort", required = false) String sort,
@RequestParam Map<String, String> map) { @RequestParam Map<String, String> map) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("人员信息列表",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("人员信息列表", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.userInfoExport(uuid, ids, map, getSelectedOrgInfo()); iJgTableDataExportService.userInfoExport(uuid, ids, map);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
...@@ -291,13 +291,13 @@ public class JgTableDataExportController extends BaseController { ...@@ -291,13 +291,13 @@ public class JgTableDataExportController extends BaseController {
@PostMapping(value = "/userInfoExportWithAdmin") @PostMapping(value = "/userInfoExportWithAdmin")
@ApiOperation(httpMethod = "POST", value = "基础设置-监管单位-人员信息列表数据导出", notes = "基础设置-监管单位-人员信息列表数据导出") @ApiOperation(httpMethod = "POST", value = "基础设置-监管单位-人员信息列表数据导出", notes = "基础设置-监管单位-人员信息列表数据导出")
public ResponseModel<String> userInfoExportWithAdmin(@RequestParam(value = "ids", required = false) String ids, public ResponseModel<String> userInfoExportWithAdmin(@RequestParam(value = "ids", required = false) String ids,
@RequestBody Map<String,String> map) { @RequestBody Map<String, String> map) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
iJgTableDataExportService.startDownLoadMsg("人员信息列表",getSelectedOrgInfo(), uuid); iJgTableDataExportService.startDownLoadMsg("人员信息列表", uuid);
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
new Thread(() -> { new Thread(() -> {
contextWrapper.apply(); contextWrapper.apply();
iJgTableDataExportService.userInfoExportWithAdmin(uuid, ids, map, getSelectedOrgInfo()); iJgTableDataExportService.userInfoExportWithAdmin(uuid, ids, map);
}).start(); }).start();
return ResponseHelper.buildResponse("后台处理中,请注意下载!"); return ResponseHelper.buildResponse("后台处理中,请注意下载!");
} }
......
...@@ -15,11 +15,11 @@ import java.util.Map; ...@@ -15,11 +15,11 @@ import java.util.Map;
*/ */
public interface IJgTableDataExportService { public interface IJgTableDataExportService {
void startDownLoadMsg(String fileName, ReginParams reginParams, String uuid); void startDownLoadMsg(String fileName, String uuid);
void gen(String jsonName, String voName, String tableName); void gen(String jsonName, String voName, String tableName);
void certificate(String uuid, ReginParams reginParams, JgUseRegistrationManageDto dto, List<String> ids, String sort); void certificate(String uuid, JgUseRegistrationManageDto dto, List<String> ids, String sort);
void maintenance(HttpServletResponse response, List<String> ids); void maintenance(HttpServletResponse response, List<String> ids);
...@@ -49,9 +49,9 @@ public interface IJgTableDataExportService { ...@@ -49,9 +49,9 @@ public interface IJgTableDataExportService {
void changeVehicleRegistrationUnit(HttpServletResponse response, List<String> ids); void changeVehicleRegistrationUnit(HttpServletResponse response, List<String> ids);
void unregulatedEquip(String uuid, ReginParams reginParams, Map<String, Object> map); void unregulatedEquip(String uuid, Map<String, Object> map);
void manageEquipment(String uuid, ReginParams reginParams, Map<String, Object> map); void manageEquipment(String uuid, Map<String, Object> map);
void equipTransfer(HttpServletResponse response, List<String> ids); void equipTransfer(HttpServletResponse response, List<String> ids);
...@@ -59,9 +59,9 @@ public interface IJgTableDataExportService { ...@@ -59,9 +59,9 @@ public interface IJgTableDataExportService {
void unregulatedPipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams); void unregulatedPipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams);
void enterpriseInformationExport(String uuid, String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto, ReginParams reginParams); void enterpriseInformationExport(String uuid, String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto);
void userInfoExport(String uuid, String ids, Map<String, String> map, ReginParams reginParams); void userInfoExport(String uuid, String ids, Map<String, String> map);
void userInfoExportWithAdmin(String uuid, String ids, Map<String, String> map, ReginParams reginParams); void userInfoExportWithAdmin(String uuid, String ids, Map<String, String> map);
} }
...@@ -35,6 +35,7 @@ import org.springframework.stereotype.Service; ...@@ -35,6 +35,7 @@ import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -207,13 +208,10 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -207,13 +208,10 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
/** /**
* 开始下载 发送消息 * 开始下载 发送消息
*
* @param reginParams
* @param uuid
*/ */
public void startDownLoadMsg(String fileName, ReginParams reginParams, String uuid) { public void startDownLoadMsg(String fileName, String uuid) {
try { try {
emqKeeper.getMqttClient().publish(String.format(DOWNLOAD_TOPIC, reginParams.getUserModel().getUserId()), String.format(DOWN_LOAD_START_TEMP, uuid, fileName, new Date().getTime()).getBytes(StandardCharsets.UTF_8), 2, false); emqKeeper.getMqttClient().publish(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), String.format(DOWN_LOAD_START_TEMP, uuid, fileName, new Date().getTime()).getBytes(StandardCharsets.UTF_8), 2, false);
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage()); log.error(e.getMessage());
} }
...@@ -222,7 +220,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -222,7 +220,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
/** /**
* 发送主题消息,给企业推送excel 结束下载提醒 * 发送主题消息,给企业推送excel 结束下载提醒
* *
* @param topic 主体格式为: /download/excel/${userId} * @param topic 主体格式为: /download/excel/${token}
* @param jsonObject 文件名称 + excel文件路径(minio) * @param jsonObject 文件名称 + excel文件路径(minio)
*/ */
public void sendDownLoadExcelMsg(String topic, JSONObject jsonObject) { public void sendDownLoadExcelMsg(String topic, JSONObject jsonObject) {
...@@ -255,8 +253,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -255,8 +253,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
* 登记证列表数据导出 * 登记证列表数据导出
*/ */
@Override @Override
public void certificate(String uuid, ReginParams reginParams, JgUseRegistrationManageDto dto, List<String> ids, String sort) { public void certificate(String uuid, JgUseRegistrationManageDto dto, List<String> ids, String sort) {
AgencyUserModel userModel = reginParams.getUserModel();
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
List<CertificateVo> exportData; List<CertificateVo> exportData;
...@@ -313,7 +310,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -313,7 +310,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "使用登记证列表数据") .fluentPut("fileName", "使用登记证列表数据")
...@@ -553,10 +550,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -553,10 +550,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
* 未纳管设备列表数据导出 * 未纳管设备列表数据导出
*/ */
@Override @Override
public void unregulatedEquip(String uuid, ReginParams reginParams, Map<String, Object> map) { public void unregulatedEquip(String uuid, Map<String, Object> map) {
AgencyUserModel userModel = reginParams.getUserModel();
List<String> ids = getEquRecords(map); List<String> ids = getEquRecords(map);
// 查询数据 // 查询数据
List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryEquipInIds(ids); List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryEquipInIds(ids);
...@@ -565,7 +559,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -565,7 +559,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("未纳管设备列表数据", "未纳管设备列表", exportData, UnregulatedEquipVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("未纳管设备列表数据", "未纳管设备列表", exportData, UnregulatedEquipVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "未纳管设备列表数据") .fluentPut("fileName", "未纳管设备列表数据")
...@@ -632,8 +626,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -632,8 +626,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
* 已纳管设备列表数据导出 * 已纳管设备列表数据导出
*/ */
@Override @Override
public void manageEquipment(String uuid, ReginParams reginParams, Map<String, Object> map) { public void manageEquipment(String uuid, Map<String, Object> map) {
AgencyUserModel userModel = reginParams.getUserModel();
List<String> ids = getEquRecords(map); List<String> ids = getEquRecords(map);
// 查询数据 // 查询数据
List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryEquipInIds(ids); List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryEquipInIds(ids);
...@@ -642,7 +635,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -642,7 +635,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("已纳管设备列表数据", "已纳管设备列表", exportData, ManageEquipmentVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("已纳管设备列表数据", "已纳管设备列表", exportData, ManageEquipmentVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "已纳管设备列表数据") .fluentPut("fileName", "已纳管设备列表数据")
...@@ -725,7 +718,6 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -725,7 +718,6 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
*/ */
@Override @Override
public void managePipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams) { public void managePipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams) {
AgencyUserModel userModel = reginParams.getUserModel();
List<String> proConSeqs = getProConSeqs(params, sort, reginParams); List<String> proConSeqs = getProConSeqs(params, sort, reginParams);
List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryPipeEquipInIds(proConSeqs); List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryPipeEquipInIds(proConSeqs);
List<PipeEquipmentVo> exportData = JSON.parseArray(JSON.toJSONString(jsonObjects), PipeEquipmentVo.class); List<PipeEquipmentVo> exportData = JSON.parseArray(JSON.toJSONString(jsonObjects), PipeEquipmentVo.class);
...@@ -733,7 +725,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -733,7 +725,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("已纳管压力管道列表数据", "已纳管压力管道列表", exportData, PipeEquipmentVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("已纳管压力管道列表数据", "已纳管压力管道列表", exportData, PipeEquipmentVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "已纳管压力管道列表") .fluentPut("fileName", "已纳管压力管道列表")
...@@ -750,15 +742,13 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -750,15 +742,13 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
*/ */
@Override @Override
public void unregulatedPipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams) { public void unregulatedPipe(String uuid, Map<String, String> params, String sort, ReginParams reginParams) {
AgencyUserModel userModel = reginParams.getUserModel();
List<String> proConSeqs = getProConSeqs(params, sort, reginParams); List<String> proConSeqs = getProConSeqs(params, sort, reginParams);
List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryPipeEquipInIds(proConSeqs); List<JSONObject> jsonObjects = idxBizJgRegisterInfoService.queryPipeEquipInIds(proConSeqs);
List<PipeEquipmentVo> exportData = JSON.parseArray(JSON.toJSONString(jsonObjects), PipeEquipmentVo.class); List<PipeEquipmentVo> exportData = JSON.parseArray(JSON.toJSONString(jsonObjects), PipeEquipmentVo.class);
DictUtil.dictCode2DictName(exportData); DictUtil.dictCode2DictName(exportData);
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("未纳管压力管道列表数据", "未纳管压力管道列表", exportData, PipeEquipmentVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("未纳管压力管道列表数据", "未纳管压力管道列表", exportData, PipeEquipmentVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "未纳管压力管道列表") .fluentPut("fileName", "未纳管压力管道列表")
...@@ -766,7 +756,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -766,7 +756,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
.fluentPut("time", new Date().getTime())); .fluentPut("time", new Date().getTime()));
} }
private List<String> getEnterSeqs(String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto, ReginParams reginParams) { private List<String> getEnterSeqs(String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
List<String> idsList = new ArrayList<>(); List<String> idsList = new ArrayList<>();
if (StringUtils.isEmpty(ids)) { if (StringUtils.isEmpty(ids)) {
...@@ -811,13 +801,11 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -811,13 +801,11 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
* *
* @param ids * @param ids
* @param tzBaseEnterpriseInfoDto * @param tzBaseEnterpriseInfoDto
* @param reginParams
*/ */
@Override @Override
public void enterpriseInformationExport(String uuid, String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto, ReginParams reginParams) { public void enterpriseInformationExport(String uuid, String ids, TzBaseEnterpriseInfoDto tzBaseEnterpriseInfoDto) {
AgencyUserModel userModel = reginParams.getUserModel();
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
List<String> enterSeqs = getEnterSeqs(ids, tzBaseEnterpriseInfoDto, reginParams); List<String> enterSeqs = getEnterSeqs(ids, tzBaseEnterpriseInfoDto);
List<Map<String, String>> enterInfoWithExport = tzBaseEnterpriseInfoMapper.getEnterInfoWithExport(enterSeqs); List<Map<String, String>> enterInfoWithExport = tzBaseEnterpriseInfoMapper.getEnterInfoWithExport(enterSeqs);
List<BaseEnterpriseVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), BaseEnterpriseVo.class); List<BaseEnterpriseVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), BaseEnterpriseVo.class);
exportData.forEach(item -> { exportData.forEach(item -> {
...@@ -838,7 +826,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -838,7 +826,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
}); });
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("企业信息列表数据", "企业信息列表列表", exportData, BaseEnterpriseVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("企业信息列表数据", "企业信息列表列表", exportData, BaseEnterpriseVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "企业信息列表") .fluentPut("fileName", "企业信息列表")
...@@ -846,7 +834,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -846,7 +834,7 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
.fluentPut("time", new Date().getTime())); .fluentPut("time", new Date().getTime()));
} }
private List<String> getUserInfoSeqs(boolean isAdmin, String ids, Map<String, String> map, ReginParams reginParams) { private List<String> getUserInfoSeqs(boolean isAdmin, String ids, Map<String, String> map) {
RequestContextWrapper contextWrapper = RequestContextWrapper.capture(); RequestContextWrapper contextWrapper = RequestContextWrapper.capture();
List<String> idsList = new ArrayList<>(); List<String> idsList = new ArrayList<>();
if (StringUtils.isEmpty(ids)) { if (StringUtils.isEmpty(ids)) {
...@@ -892,15 +880,14 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -892,15 +880,14 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
@Override @Override
public void userInfoExport(String uuid, String ids, Map<String, String> map, ReginParams reginParams) { public void userInfoExport(String uuid, String ids, Map<String, String> map) {
AgencyUserModel userModel = reginParams.getUserModel(); List<String> userInfoSeqs = getUserInfoSeqs(false, ids, map);
List<String> userInfoSeqs = getUserInfoSeqs(false, ids, map, reginParams);
List<Map<String, String>> enterInfoWithExport = tzsUserInfoMapper.getUserInfoWithExport(userInfoSeqs); List<Map<String, String>> enterInfoWithExport = tzsUserInfoMapper.getUserInfoWithExport(userInfoSeqs);
List<UserInfoVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), UserInfoVo.class); List<UserInfoVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), UserInfoVo.class);
DictUtil.dictCode2DictName(exportData); DictUtil.dictCode2DictName(exportData);
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("人员信息列表数据", "人员信息列表列表", exportData, UserInfoVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("人员信息列表数据", "人员信息列表列表", exportData, UserInfoVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "人员信息列表") .fluentPut("fileName", "人员信息列表")
...@@ -909,15 +896,14 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService { ...@@ -909,15 +896,14 @@ public class JgTableDataExportServiceImpl implements IJgTableDataExportService {
} }
@Override @Override
public void userInfoExportWithAdmin(String uuid, String ids, Map<String, String> map, ReginParams reginParams) { public void userInfoExportWithAdmin(String uuid, String ids, Map<String, String> map) {
AgencyUserModel userModel = reginParams.getUserModel(); List<String> userInfoSeqs = getUserInfoSeqs(true, ids, map);
List<String> userInfoSeqs = getUserInfoSeqs(true, ids, map, reginParams);
List<Map<String, String>> enterInfoWithExport = tzsUserInfoMapper.getUserInfoWithExport(userInfoSeqs); List<Map<String, String>> enterInfoWithExport = tzsUserInfoMapper.getUserInfoWithExport(userInfoSeqs);
List<UserInfoVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), UserInfoVo.class); List<UserInfoVo> exportData = JSON.parseArray(JSON.toJSONString(enterInfoWithExport), UserInfoVo.class);
DictUtil.dictCode2DictName(exportData); DictUtil.dictCode2DictName(exportData);
MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("人员信息列表数据", "人员信息列表列表", exportData, UserInfoVo.class, null, false); MultipartFile templateExcelFile = ExcelUtil.createTemplateExcelFile("人员信息列表数据", "人员信息列表列表", exportData, UserInfoVo.class, null, false);
String urlString = this.uploadExcelFile(templateExcelFile); String urlString = this.uploadExcelFile(templateExcelFile);
this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, userModel.getUserId()), new JSONObject() this.sendDownLoadExcelMsg(String.format(DOWNLOAD_TOPIC, RequestContext.getToken()), new JSONObject()
.fluentPut("id", uuid) .fluentPut("id", uuid)
.fluentPut("status", "done") .fluentPut("status", "done")
.fluentPut("fileName", "人员信息列表") .fluentPut("fileName", "人员信息列表")
......
...@@ -25,13 +25,14 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> { ...@@ -25,13 +25,14 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> {
void addQualificationsMessage(String userId, List<TzsUserQualifications> list); void addQualificationsMessage(String userId, List<TzsUserQualifications> list);
void updateQualificationsMessage(String userId, List<TzsUserQualifications> list); void updateQualificationsMessage(String userId, List<TzsUserQualifications> list);
void deleteBatch(Object[] ids); void deleteBatch(Object[] ids);
Map<String, Object> getDetail(Long id); Map<String, Object> getDetail(Long id, ReginParams reginParams);
boolean BindAccount(Map<String, Object> map); boolean BindAccount(Map<String, Object> map);
String startOrStopAccount(Map<String, Object> map); String startOrStopAccount(Map<String, Object> map);
List<Map<String, Object>> getEquipmentType(String creditCode); List<Map<String, Object>> getEquipmentType(String creditCode);
...@@ -46,21 +47,21 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> { ...@@ -46,21 +47,21 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> {
JSONObject statisticsOfPersonnelTypesByPatentCode(String parentId); JSONObject statisticsOfPersonnelTypesByPatentCode(String parentId);
Map<String,Integer> getArrangementStatistic(String companyCode); Map<String, Integer> getArrangementStatistic(String companyCode);
Map<String,Object> getCompanyType(); Map<String, Object> getCompanyType();
Map<String,Object> getCompanyTypeForRedis(ReginParams selectedOrgInfo); Map<String, Object> getCompanyTypeForRedis(ReginParams selectedOrgInfo);
Page<TzsEquipListDto> getEquipList(String type,String userSeq,TzsEquipListDto dto, Page<TzsEquipListDto> page); Page<TzsEquipListDto> getEquipList(String type, String userSeq, TzsEquipListDto dto, Page<TzsEquipListDto> page);
Boolean equipBind(String type, String userSeq, String creditCode, Map<String,Object> map); Boolean equipBind(String type, String userSeq, String creditCode, Map<String, Object> map);
List<TzsUserInfo> getSafetyList(String companyCode); List<TzsUserInfo> getSafetyList(String companyCode);
List<Map<String,Object>> getGroupList(); List<Map<String, Object>> getGroupList();
Map<String,Object> getPersonType(); Map<String, Object> getPersonType();
List<GroupAndPersonInfoDto> getGroupAndPersonInfo(Long groupId); List<GroupAndPersonInfoDto> getGroupAndPersonInfo(Long groupId);
...@@ -78,6 +79,7 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> { ...@@ -78,6 +79,7 @@ public interface ITzsUserInfoService extends IService<TzsUserInfo> {
/** /**
* 批量导入人员 * 批量导入人员
*
* @param file 导入的文件 * @param file 导入的文件
* @return 失败时返回失败信息,提供时返回success * @return 失败时返回失败信息,提供时返回success
*/ */
......
...@@ -113,7 +113,7 @@ public class TzsUserInfoController extends BaseController { ...@@ -113,7 +113,7 @@ public class TzsUserInfoController extends BaseController {
@GetMapping(value = "/getDetail") @GetMapping(value = "/getDetail")
@ApiOperation(httpMethod = "GET", value = "详情", notes = "详情") @ApiOperation(httpMethod = "GET", value = "详情", notes = "详情")
public ResponseModel<Map<String, Object>> queryForPage(@RequestParam(value = "id") Long id) { public ResponseModel<Map<String, Object>> queryForPage(@RequestParam(value = "id") Long id) {
return ResponseHelper.buildResponse(tzsUserInfoService.getDetail(id)); return ResponseHelper.buildResponse(tzsUserInfoService.getDetail(id, getSelectedOrgInfo()));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
...@@ -312,11 +312,11 @@ public class TzsUserInfoController extends BaseController { ...@@ -312,11 +312,11 @@ public class TzsUserInfoController extends BaseController {
@RequestParam(value = "size") long size, @RequestParam(value = "size") long size,
@RequestParam(value = "sort", required = false) String sort, @RequestParam(value = "sort", required = false) String sort,
@RequestParam(required = false, defaultValue = "all") String type, @RequestParam(required = false, defaultValue = "all") String type,
@RequestBody Map<String,String> map) { @RequestBody Map<String, String> map) {
UserPermissionDto filter = JSON.parseObject(JSON.toJSONString(map), UserPermissionDto.class); UserPermissionDto filter = JSON.parseObject(JSON.toJSONString(map), UserPermissionDto.class);
filter.setOrgCode(getSelectedOrgInfo().getCompany().getOrgCode()); filter.setOrgCode(getSelectedOrgInfo().getCompany().getOrgCode());
filter.setCityCode(getSelectedOrgInfo().getCompany().getCompanyCode()); filter.setCityCode(getSelectedOrgInfo().getCompany().getCompanyCode());
Page<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserByPermission(current, size, type, filter,sort); Page<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserByPermission(current, size, type, filter, sort);
return ResponseHelper.buildResponse(userPermissionDtos); return ResponseHelper.buildResponse(userPermissionDtos);
} }
...@@ -350,7 +350,7 @@ public class TzsUserInfoController extends BaseController { ...@@ -350,7 +350,7 @@ public class TzsUserInfoController extends BaseController {
@GetMapping(value = "/export") @GetMapping(value = "/export")
@ApiOperation(httpMethod = "GET", value = "人员管理列表数据导出", notes = "人员管理列表数据导出") @ApiOperation(httpMethod = "GET", value = "人员管理列表数据导出", notes = "人员管理列表数据导出")
public void userInfoExport(HttpServletResponse response, String ids) { public void userInfoExport(HttpServletResponse response, String ids) {
Assert.hasText(ids,"未选择导出数据"); Assert.hasText(ids, "未选择导出数据");
tzsUserInfoService.userInfoExport(response, Arrays.asList(ids.split(","))); tzsUserInfoService.userInfoExport(response, Arrays.asList(ids.split(",")));
} }
...@@ -369,7 +369,7 @@ public class TzsUserInfoController extends BaseController { ...@@ -369,7 +369,7 @@ public class TzsUserInfoController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/import") @PostMapping(value = "/import")
@ApiOperation(value = "人员导入",httpMethod = "POST",notes = "导入已经存在公司的人员") @ApiOperation(value = "人员导入", httpMethod = "POST", notes = "导入已经存在公司的人员")
public ResponseModel<?> importUser(@RequestBody MultipartFile file) { public ResponseModel<?> importUser(@RequestBody MultipartFile file) {
return tzsUserInfoService.importUserBatch(file); return tzsUserInfoService.importUserBatch(file);
} }
...@@ -398,8 +398,8 @@ public class TzsUserInfoController extends BaseController { ...@@ -398,8 +398,8 @@ public class TzsUserInfoController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getJobItemBySubPost") @GetMapping(value = "/getJobItemBySubPost")
@ApiOperation(httpMethod = "GET", value = "根据人员子类型查询作业项目", notes = "根据人员子类型查询作业项目") @ApiOperation(httpMethod = "GET", value = "根据人员子类型查询作业项目", notes = "根据人员子类型查询作业项目")
public ResponseModel<List<DictionarieValueModel> > getJobItemBySubPost(@RequestParam(value = "dicKey") String dicKey, public ResponseModel<List<DictionarieValueModel>> getJobItemBySubPost(@RequestParam(value = "dicKey") String dicKey,
@RequestParam(value = "") String subPost) { @RequestParam(value = "") String subPost) {
List<DictionarieValueModel> result = Systemctl.dictionarieClient.dictValues(dicKey).getResult(); List<DictionarieValueModel> result = Systemctl.dictionarieClient.dictValues(dicKey).getResult();
// 包含 持证人员(P)6764 或 持证人员(R2)6765 并且不包含持证人员 6713 的情况下 只显示【移动式压力容器充装】和【气瓶充装】 // 包含 持证人员(P)6764 或 持证人员(R2)6765 并且不包含持证人员 6713 的情况下 只显示【移动式压力容器充装】和【气瓶充装】
if ((subPost.contains("6764") || subPost.contains("6765")) && !subPost.contains("6713")) { if ((subPost.contains("6764") || subPost.contains("6765")) && !subPost.contains("6713")) {
......
...@@ -317,7 +317,11 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -317,7 +317,11 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
} }
@Override @Override
public Map<String, Object> getDetail(Long id) { public Map<String, Object> getDetail(Long id, ReginParams reginParams) {
// 为了处理以下场景
// 1:没有单位限制的时候添加了所有类型的人员,现在有了单位类型限制的情况下更新不了原先人员
// 2:多种单位类型的企业编辑另一种单位类型下的人员
List<String> unitTypeAllPostCode = this.postByUnitType(reginParams.getCompany()).stream().map(DataDictionary::getCode).collect(Collectors.toList());
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();
...@@ -326,8 +330,13 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -326,8 +330,13 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
tzsUserInfoVo.setPost(JSON.parseArray(tzsUserInfo.getPost())); tzsUserInfoVo.setPost(JSON.parseArray(tzsUserInfo.getPost()));
} }
Optional.ofNullable(tzsUserInfo.getNewPost()) Optional.ofNullable(tzsUserInfo.getNewPost())
.filter(post -> !ObjectUtils.isEmpty(post))
.map(JSON::parseArray) .map(JSON::parseArray)
.map(array -> array.stream()
.map(String::valueOf)
.filter(unitTypeAllPostCode::contains)
.collect(Collectors.toList()))
.filter(list -> !list.isEmpty())
.map(item -> JSONArray.parseArray(JSON.toJSONString(item)))
.ifPresent(tzsUserInfoVo::setNewPost); .ifPresent(tzsUserInfoVo::setNewPost);
Optional.ofNullable(tzsUserInfo.getSubPost()) Optional.ofNullable(tzsUserInfo.getSubPost())
.filter(post -> !ObjectUtils.isEmpty(post)) .filter(post -> !ObjectUtils.isEmpty(post))
...@@ -1686,15 +1695,21 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -1686,15 +1695,21 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
@Override @Override
public List<DataDictionary> postByUnitType(CompanyBo company) { public List<DataDictionary> postByUnitType(CompanyBo company) {
ArrayList<String> postDictCodeList = new ArrayList<>(); ArrayList<String> postDictCodeList = new ArrayList<>();
JsonNode companyTypeNode = postData.get(company.getCompanyType()); TzBaseEnterpriseInfo enterpriseInfo = baseEnterpriseInfoService.lambdaQuery()
if (companyTypeNode != null && companyTypeNode.isObject()) { .eq(TzBaseEnterpriseInfo::getUseCode, company.getCompanyCode())
Iterator<Map.Entry<String, JsonNode>> fields = companyTypeNode.fields(); .one();
while (fields.hasNext()) { List<String> unitTypes = Arrays.asList(enterpriseInfo.getUnitType().split("#"));
Map.Entry<String, JsonNode> entry = fields.next(); unitTypes.forEach(unitType -> {
String postCode = entry.getKey(); JsonNode companyTypeNode = postData.get(unitType);
postDictCodeList.add(postCode); // 主岗位 if (companyTypeNode != null && companyTypeNode.isObject()) {
Iterator<Map.Entry<String, JsonNode>> fields = companyTypeNode.fields();
while (fields.hasNext()) {
Map.Entry<String, JsonNode> entry = fields.next();
String postCode = entry.getKey();
postDictCodeList.add(postCode); // 主岗位
}
} }
} });
return this.getAllUserType().stream() return this.getAllUserType().stream()
.filter(item -> postDictCodeList.contains(item.getCode())) .filter(item -> postDictCodeList.contains(item.getCode()))
.collect(Collectors.toList()); .collect(Collectors.toList());
......
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