1. 改了n多
This commit is contained in:
parent
83db6b9046
commit
553a0d9b4f
|
|
@ -1,6 +1,7 @@
|
|||
package com.chushang.inspection.project.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.chushang.common.mybatis.base.BaseEntity;
|
||||
import java.math.BigDecimal;
|
||||
|
|
@ -27,7 +28,7 @@ public class WrkProjectPayment extends BaseEntity {
|
|||
/**
|
||||
* 回款id
|
||||
*/
|
||||
@TableField(value = "payment_id")
|
||||
@TableId(value = "payment_id")
|
||||
private Long paymentId;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public class InspectionConsumerService implements RocketMQListener<TaskInfo> {
|
|||
String methodName = message.getMethodName();
|
||||
String params = message.getParams();
|
||||
Integer taskType = message.getTaskType();
|
||||
SecurityContextHolder.setDeptId(message.getDeptId());
|
||||
SecurityContextHolder.setDeptId(message.getDeptId()+"");
|
||||
UpdateTaskDTO updateTask = new UpdateTaskDTO();
|
||||
try {
|
||||
// 包名+类名
|
||||
|
|
|
|||
|
|
@ -1,11 +1,24 @@
|
|||
package com.chushang.inspection.ins;
|
||||
|
||||
import com.chushang.inspection.work.vo.InspectionConfigVO;
|
||||
import com.chushang.inspection.work.vo.WrkInfoDetailsVO;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.collection.ListUtil;
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.core.web.Result;
|
||||
import com.chushang.inspection.work.vo.*;
|
||||
import com.chushang.oss.feign.RemoteOssService;
|
||||
import com.deepoove.poi.data.Pictures;
|
||||
import com.google.common.collect.Maps;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 生成 word, 需要 先试下默认的
|
||||
|
|
@ -13,19 +26,63 @@ import java.util.Map;
|
|||
* @date: 2024/6/29 14:44
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
@Component("default")
|
||||
public class DefaultGeneratedIns implements GeneratedIns{
|
||||
|
||||
@Override
|
||||
public void generated(Map<Long, WrkInfoDetailsVO> wrkMaps, InspectionConfigVO insConfig, String basePath) {
|
||||
|
||||
public List<CompletableFuture<Void>> generated(Map<Long, WrkInfoDetailsVO> wrkMaps,
|
||||
InspectionConfigVO insConfig,
|
||||
String basePath,
|
||||
RemoteOssService remoteOssService,
|
||||
TemplateService templateService,
|
||||
Executor executor) {
|
||||
List<CompletableFuture<Void>> futures = new CopyOnWriteArrayList<>();
|
||||
wrkMaps.forEach((wrkId, wrk)->{
|
||||
WrkInfoVO wrkInfo = wrk.getWrkInfo();
|
||||
WrkInfoStoreVO infoStore = wrk.getInfoStore();
|
||||
WrkInfoTerminalVO terminal = wrk.getInfoTerminal();
|
||||
List<WrkImgVO> images = wrk.getInfoImg();
|
||||
CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
|
||||
Map<String, Object> wrkInfoMap = BeanUtil.beanToMap(wrkInfo, Maps.newHashMap(), false, true);
|
||||
Map<String, Object> wrkStoreMap = BeanUtil.beanToMap(infoStore, Maps.newHashMap(), false, true);
|
||||
Map<String, Object> wrkTerminalMap = BeanUtil.beanToMap(terminal, Maps.newHashMap(), false, true);
|
||||
HashMap<String, Object> data = new HashMap<>();
|
||||
data.putAll(wrkInfoMap);
|
||||
data.putAll(wrkStoreMap);
|
||||
data.putAll(wrkTerminalMap);
|
||||
// default 只生成签名文件? 应该生成全部
|
||||
if (CollectionUtil.isNotEmpty(images)){
|
||||
images.stream().filter(imgVO -> imgVO.getImgType() != null)
|
||||
.forEach(imgVO -> {
|
||||
Result<byte[]> result = remoteOssService.getFile(imgVO.getFid(), SecurityConstants.INNER);
|
||||
if (result.isSuccess() && result.getData() != null){
|
||||
data.put("img" + imgVO.getImgType(), Pictures.ofBytes(result.getData()).size(300, 280).create());
|
||||
}
|
||||
});
|
||||
}
|
||||
// 此时取远程模板
|
||||
String fileName = generateAFileName(basePath, infoStore.getStoreNo(), wrkInfo.getLowerTaskName(), infoStore.getStoreName(), wrkInfo.getWorkNo() + "");
|
||||
if (null != insConfig){
|
||||
String templateFid = insConfig.getTemplateFid();
|
||||
// 巡检单相关 数据
|
||||
List<ConfigDataVO> details = insConfig.getDetails();
|
||||
if (CollectionUtil.isNotEmpty(details)){
|
||||
// 巡检单集合 --> 此处 直接根据key 获取对应的value, value 为对应的 拼接好的值,
|
||||
// label 存储对应的数据, 比如 {}非常满意 {}比较满意 {}可以接受 {}不满意 {}非常不满意 等,
|
||||
// 然后 根据传递过来的值, 去拼接 最终的value, 值, 并存储在对应的结果集中, 所以, 此处需要一个 result
|
||||
Map<String, String> insMap =
|
||||
details.stream().collect(Collectors.toMap(ConfigDataVO::getConfigKey, ConfigDataVO::getFinalResult));
|
||||
// 巡检单信息
|
||||
data.putAll(insMap);
|
||||
}
|
||||
// 生成模板
|
||||
templateService.computeWord(fileName, templateFid, data);
|
||||
}else {
|
||||
templateService.computeWord(fileName, null, data);
|
||||
}
|
||||
}, executor);
|
||||
futures.add(future);
|
||||
});
|
||||
return futures;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于 注册
|
||||
*/
|
||||
@Override
|
||||
public String register() {
|
||||
return "default";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,9 +3,13 @@ package com.chushang.inspection.ins;
|
|||
import cn.hutool.core.util.StrUtil;
|
||||
import com.chushang.inspection.work.vo.InspectionConfigVO;
|
||||
import com.chushang.inspection.work.vo.WrkInfoDetailsVO;
|
||||
import com.chushang.oss.feign.RemoteOssService;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
/**
|
||||
* 生成 模板
|
||||
|
|
@ -20,7 +24,10 @@ public interface GeneratedIns {
|
|||
/**
|
||||
* 应当为 Map<Long, WrkInfoDetailsVO> map 结构
|
||||
*/
|
||||
void generated(Map<Long, WrkInfoDetailsVO> wrkMaps, InspectionConfigVO insConfig, String basePath);
|
||||
List<CompletableFuture<Void>> generated(Map<Long, WrkInfoDetailsVO> wrkMaps, InspectionConfigVO insConfig, String basePath,
|
||||
RemoteOssService remoteOssService,
|
||||
TemplateService templateService,
|
||||
Executor executor);
|
||||
|
||||
default String generateAFileName(String path, String... value) {
|
||||
StringBuilder fileName = new StringBuilder(path);
|
||||
|
|
@ -34,7 +41,4 @@ public interface GeneratedIns {
|
|||
}
|
||||
return fileName.append(SUFFIX_NAME).toString();
|
||||
}
|
||||
|
||||
String register();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,64 +1,100 @@
|
|||
//package com.chushang.inspection.ins;
|
||||
//
|
||||
//import cn.hutool.core.collection.CollectionUtil;
|
||||
//import com.chushang.inspection.work.vo.InspectionConfigVO;
|
||||
//import com.chushang.inspection.work.vo.WrkInfoDetailsVO;
|
||||
//import com.chushang.oss.config.UploadConfig;
|
||||
//import com.google.common.collect.Lists;
|
||||
//import io.minio.MinioProperties;
|
||||
//import lombok.extern.slf4j.Slf4j;
|
||||
//import org.springframework.stereotype.Service;
|
||||
//
|
||||
//import javax.annotation.Resource;
|
||||
//import java.io.File;
|
||||
//import java.util.HashMap;
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//import java.util.concurrent.CompletableFuture;
|
||||
//import java.util.concurrent.CyclicBarrier;
|
||||
//
|
||||
///**
|
||||
// * 模板生成工厂
|
||||
// * @auther: zhao
|
||||
// * @date: 2024/7/1 9:33
|
||||
// */
|
||||
//@Slf4j
|
||||
//@Service
|
||||
//public class GeneratedInsFactory {
|
||||
//
|
||||
// private final DefaultGeneratedIns defaultGeneratedIns;
|
||||
//
|
||||
// public String getPath() {
|
||||
// return UploadConfig.getTmpPath() + File.separator + "download" + File.separator + "word" + File.separator;
|
||||
// }
|
||||
//
|
||||
// private final Map<String, GeneratedIns> generatedInsMap;
|
||||
//
|
||||
// GeneratedInsFactory(List<GeneratedIns> insList, DefaultGeneratedIns defaultGeneratedIns){
|
||||
// generatedInsMap = new HashMap<>();
|
||||
// insList.forEach(ins-> generatedInsMap.put(ins.register(), ins));
|
||||
// this.defaultGeneratedIns = defaultGeneratedIns;
|
||||
// }
|
||||
//
|
||||
// public void generated(Map<Long, WrkInfoDetailsVO> wrkMaps){
|
||||
// // 生成文件名
|
||||
// List<CompletableFuture<Void>> supplyAsync = Lists.newCopyOnWriteArrayList();
|
||||
// CyclicBarrier cyclicBarrier = new CyclicBarrier(wrkMaps.keySet().size());
|
||||
// // 此处应当指定 需要生成的 路径
|
||||
// wrkMaps.forEach((wrkId, wrk)->{
|
||||
// // 生成普通巡检单
|
||||
// GeneratedIns defaultGeneratedIns = generatedInsMap.get("default");
|
||||
// supplyAsync.addAll(defaultGeneratedIns.generated(wrkMaps, null, getPath(), EXECUTOR));
|
||||
//
|
||||
// List<InspectionConfigVO> inspections = wrk.getInspections();
|
||||
// inspections.forEach(ins->{
|
||||
// // 别名
|
||||
// String alias = ins.getAlias();
|
||||
// // 模板
|
||||
// String templateUrl = ins.getTemplateUrl();
|
||||
//
|
||||
// });
|
||||
// });
|
||||
// }
|
||||
//
|
||||
//}
|
||||
package com.chushang.inspection.ins;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.io.FileUtil;
|
||||
import cn.hutool.core.thread.ThreadUtil;
|
||||
import cn.hutool.core.util.ZipUtil;
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.core.web.Result;
|
||||
import com.chushang.inspection.work.vo.InspectionConfigVO;
|
||||
import com.chushang.inspection.work.vo.WrkInfoDetailsVO;
|
||||
import com.chushang.oss.config.UploadConfig;
|
||||
import com.chushang.oss.entity.dto.UploadBytesDTO;
|
||||
import com.chushang.oss.entity.vo.FileSourceVo;
|
||||
import com.chushang.oss.feign.RemoteOssService;
|
||||
import com.google.common.collect.Lists;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.io.File;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.CyclicBarrier;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
/**
|
||||
* 模板生成工厂
|
||||
* @auther: zhao
|
||||
* @date: 2024/7/1 9:33
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class GeneratedInsFactory {
|
||||
private final TemplateService templateService;
|
||||
private final RemoteOssService remoteOssService;
|
||||
private static final ExecutorService EXECUTOR = ThreadUtil.newExecutor(
|
||||
Runtime.getRuntime().availableProcessors() * 2,
|
||||
Runtime.getRuntime().availableProcessors() * 4,
|
||||
Integer.MAX_VALUE);
|
||||
private final Map<String, GeneratedIns> generatedInsMap;
|
||||
public String getPath() {
|
||||
return UploadConfig.getTmpPath() + File.separator + "download" + File.separator + "word" + File.separator;
|
||||
}
|
||||
public String generated(Map<Long, WrkInfoDetailsVO> wrkMaps){
|
||||
// 生成文件路径
|
||||
String basePath = getPath();
|
||||
AtomicReference<String> url = new AtomicReference<>(null);
|
||||
// 只能使用这种方式 -- 因为不确定需要生成的具体模板数量
|
||||
List<CompletableFuture<Void>> supplyAsync = Lists.newCopyOnWriteArrayList();
|
||||
// 此处 进行 压缩文件夹
|
||||
// 此处应当指定 需要生成的 路径
|
||||
wrkMaps.forEach((wrkId, wrk)->{
|
||||
// 生成普通巡检单
|
||||
GeneratedIns defaultGeneratedIns = generatedInsMap.get("default");
|
||||
// 生成默认的 word
|
||||
// 为null 时, 取默认 default 模板
|
||||
supplyAsync.addAll(defaultGeneratedIns.generated(wrkMaps, null, getPath(), remoteOssService,templateService,EXECUTOR));
|
||||
List<InspectionConfigVO> inspections = wrk.getInspections();
|
||||
inspections.forEach(ins->{
|
||||
// 别名
|
||||
String alias = ins.getAlias();
|
||||
// 模板
|
||||
GeneratedIns generatedIns = generatedInsMap.get(alias);
|
||||
supplyAsync.addAll(generatedIns.generated(wrkMaps, ins, basePath,remoteOssService,templateService,EXECUTOR));
|
||||
});
|
||||
});
|
||||
// 等待所有线程执行完成
|
||||
CompletableFuture.allOf(supplyAsync.toArray(new CompletableFuture[0])).join();
|
||||
log.info("所有线程 执行完毕");
|
||||
if (FileUtil.exist(basePath)) {
|
||||
File zip = ZipUtil.zip(basePath);
|
||||
try {
|
||||
// 上传文件到oss 中
|
||||
Result<List<FileSourceVo>> listResult = remoteOssService.uploadBytes(UploadBytesDTO.builder()
|
||||
.bytes(FileUtil.readBytes(zip))
|
||||
.build(),
|
||||
null,
|
||||
false,
|
||||
"",
|
||||
"downFile", SecurityConstants.INNER);
|
||||
// 不为空时, 说明 上传成功
|
||||
if (listResult.isSuccess() && CollectionUtil.isNotEmpty(listResult.getData())){
|
||||
log.info("上传成功");
|
||||
url.set(listResult.getData().get(0).getFilePath());
|
||||
}
|
||||
}finally {
|
||||
FileUtil.del(zip);
|
||||
FileUtil.del(new File(basePath).getParent());
|
||||
}
|
||||
}
|
||||
log.info("准备返回 {}" , url.get());
|
||||
return url.get();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@ import com.chushang.inspection.project.vo.DetailsVO;
|
|||
import com.chushang.inspection.project.vo.InsConfigVO;
|
||||
import com.chushang.inspection.project.service.InspectionConfigService;
|
||||
import com.chushang.inspection.project.service.InspectionDetailService;
|
||||
import com.chushang.oss.entity.dto.UploadBytesDTO;
|
||||
import com.chushang.oss.entity.dto.UploadFileDTO;
|
||||
import com.chushang.oss.entity.vo.FileSourceVo;
|
||||
import com.chushang.oss.feign.RemoteOssService;
|
||||
|
|
@ -41,8 +40,6 @@ public class InspectionConfigServiceImpl extends ServiceImpl<InspectionConfigMap
|
|||
|
||||
@Resource
|
||||
InspectionDetailService detailService;
|
||||
@Resource
|
||||
RemoteOssService remoteOssService;
|
||||
|
||||
@Override
|
||||
@CachePut(key = "#alias")
|
||||
|
|
@ -82,20 +79,4 @@ public class InspectionConfigServiceImpl extends ServiceImpl<InspectionConfigMap
|
|||
public void saveEntity(InspectionConfig config) {
|
||||
save(config);
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传巡检单 信息
|
||||
*/
|
||||
@Override
|
||||
public String uploadTemplate(MultipartFile file) {
|
||||
// 上传模板信息
|
||||
Result<List<FileSourceVo>> listResult =
|
||||
remoteOssService.uploadFile(UploadFileDTO.builder()
|
||||
.files(new MultipartFile[]{file})
|
||||
.build(), null, null, null, "template", SecurityConstants.INNER);
|
||||
if (listResult.isSuccess() && CollectionUtil.isNotEmpty(listResult.getData())){
|
||||
return listResult.getData().get(0).getFilePath();
|
||||
}
|
||||
throw new ResultException("上传失败");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import com.alibaba.nacos.shaded.com.google.common.collect.Maps;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.core.util.StringUtils;
|
||||
import com.chushang.common.core.util.TreeUtils;
|
||||
import com.chushang.common.core.web.Result;
|
||||
import com.chushang.common.excel.utils.ExcelUtils;
|
||||
|
|
@ -74,9 +75,13 @@ public class PollingTaskServiceImpl extends ServiceImpl<PollingTaskMapper, Polli
|
|||
searchNum = topTask.getSearchNum();
|
||||
}
|
||||
}
|
||||
taskSql.likeLeft(PollingTask::getSearchNum, searchNum);
|
||||
List<TaskVO> taskVOS = listObjs(taskSql, p -> convert(((PollingTask) p)));
|
||||
return TreeUtils.build(taskVOS);
|
||||
taskSql.likeRight(StringUtils.isNotBlank(searchNum), PollingTask::getSearchNum, searchNum);
|
||||
List<PollingTask> list = list(taskSql);
|
||||
if (CollectionUtil.isNotEmpty(list)){
|
||||
List<TaskVO> collect = list.stream().map(this::convert).collect(Collectors.toList());
|
||||
return TreeUtils.build(collect);
|
||||
}
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -88,15 +93,21 @@ public class PollingTaskServiceImpl extends ServiceImpl<PollingTaskMapper, Polli
|
|||
.and(w -> w.isNull(PollingTask::getEndTime)
|
||||
.or().ge(PollingTask::getEndTime, LocalDateTime.now()));
|
||||
|
||||
List<String> searchNums = listObjs(searchNumSql, p -> ((PollingTask) p).getSearchNum());
|
||||
if (CollectionUtil.isNotEmpty(searchNums)){
|
||||
List<PollingTask> list = list(searchNumSql);
|
||||
List<String> searchNums;
|
||||
if (CollectionUtil.isNotEmpty(list)){
|
||||
searchNums = list.stream().map(PollingTask::getSearchNum).toList();
|
||||
}else {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
searchNums = searchNums.stream().map(s -> s.split("-")[0] + '-').distinct().collect(Collectors.toList());
|
||||
Set<String> searchNumSet = searchNums.stream().map(s -> s.split("-")[0] + '-').distinct().collect(Collectors.toSet());
|
||||
LambdaQueryWrapper<PollingTask> topSql = WrapperUtils.builder(commonParam, commonParam);
|
||||
topSql.in(CollectionUtil.isNotEmpty(searchNums), PollingTask::getSearchNum, searchNums);
|
||||
return listObjs(topSql, p->convert(((PollingTask)p)));
|
||||
topSql.in(CollectionUtil.isNotEmpty(searchNumSet), PollingTask::getSearchNum, searchNumSet);
|
||||
List<PollingTask> topList = list(topSql);
|
||||
if (CollectionUtil.isNotEmpty(topList)){
|
||||
return topList.stream().map(this::convert).collect(Collectors.toList());
|
||||
}
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -128,6 +139,8 @@ public class PollingTaskServiceImpl extends ServiceImpl<PollingTaskMapper, Polli
|
|||
public Long saveTask(TaskDTO task) {
|
||||
PollingTask pollingTask = BeanUtil.copyProperties(task, PollingTask.class);
|
||||
processIndexes(pollingTask);
|
||||
// 填充 部门id
|
||||
// pollingTask.setDeptId(SecurityUtils.getDeptId());
|
||||
save(pollingTask);
|
||||
return pollingTask.getId();
|
||||
}
|
||||
|
|
@ -317,7 +330,7 @@ public class PollingTaskServiceImpl extends ServiceImpl<PollingTaskMapper, Polli
|
|||
max = max == null ? 1 : max + 1;
|
||||
task.setSearchNum(max + "-");
|
||||
task.setSearchIndex(max);
|
||||
task.setLevel(1);
|
||||
task.setLevel(max);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -98,8 +98,8 @@ public class FiveStoreServiceImpl extends ServiceImpl<FiveStoreMapper, FiveStore
|
|||
try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()){
|
||||
ExcelUtils.exportList(outputStream, FiveStoreVO.class, listFiveStores, "五统一商户明细");
|
||||
// 上传到oss fileStore 是五统一的商户文件
|
||||
Result<List<FileSourceVo>> listResult = ossService.uploadFile(UploadBytesDTO.builder()
|
||||
.bytes(outputStream.toByteArray()).build(), "五统一商户明细导出.xlsx", false, "", "fileStore", SecurityConstants.INNER);
|
||||
Result<List<FileSourceVo>> listResult = ossService.uploadBytes(UploadBytesDTO.builder()
|
||||
.bytes(outputStream.toByteArray()).build(), "五统一商户明细导出.xlsx", false, "", "fiveStore", SecurityConstants.INNER);
|
||||
|
||||
if (listResult.isSuccess() && CollectionUtil.isNotEmpty(listResult.getData())){
|
||||
List<FileSourceVo> data = listResult.getData();
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package com.chushang.inspection.work.service.impl;
|
|||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.core.exception.ResultException;
|
||||
import com.chushang.common.core.exception.utils.AssertUtil;
|
||||
|
|
@ -11,11 +10,7 @@ import com.chushang.common.core.util.StringUtils;
|
|||
import com.chushang.common.core.web.Result;
|
||||
import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||
import com.chushang.inspection.work.dto.ImageDTO;
|
||||
import com.chushang.inspection.work.po.WrkInfo;
|
||||
import com.chushang.inspection.work.po.WrkInfoStoreRecord;
|
||||
import com.chushang.inspection.work.service.WrkImgService;
|
||||
import com.chushang.inspection.work.service.WrkInfoService;
|
||||
import com.chushang.inspection.work.service.WrkInfoStoreRecordService;
|
||||
import com.chushang.inspection.work.vo.WrkImgVO;
|
||||
import com.chushang.oss.entity.dto.UploadBytesDTO;
|
||||
import com.chushang.oss.entity.vo.FileSourceVo;
|
||||
|
|
@ -49,7 +44,7 @@ public class WrkImgServiceImpl extends ServiceImpl<WrkImgMapper, WrkImg> impleme
|
|||
{
|
||||
try {
|
||||
// locationAddress 用于添加水印
|
||||
Result<List<FileSourceVo>> listResult = remoteOssService.uploadFile(UploadBytesDTO.builder()
|
||||
Result<List<FileSourceVo>> listResult = remoteOssService.uploadBytes(UploadBytesDTO.builder()
|
||||
.bytes(file.getBytes()).build(),
|
||||
file.getOriginalFilename(),
|
||||
StringUtils.isNotEmpty(locationAddress),
|
||||
|
|
|
|||
|
|
@ -327,9 +327,9 @@ public class WrkInfoPhoneServiceImpl extends ServiceImpl<WrkInfoPhoneMapper, Wrk
|
|||
if (CollectionUtil.isNotEmpty(errList)) {
|
||||
try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()){
|
||||
ExcelUtils.exportList(outputStream, WrkInfoPhoneImportDTO.class, errList,"电话工单导入异常");
|
||||
Result<List<FileSourceVo>> ossResult = remoteOssService.uploadFile(
|
||||
Result<List<FileSourceVo>> ossResult = remoteOssService.uploadBytes(
|
||||
UploadBytesDTO.builder().bytes(outputStream.toByteArray()).build()
|
||||
, "", null, null, "", SecurityConstants.INNER);
|
||||
, "", null, null, "importFile", SecurityConstants.INNER);
|
||||
if (ossResult.isSuccess() && CollectionUtil.isNotEmpty(ossResult.getData())){
|
||||
List<FileSourceVo> data = ossResult.getData();
|
||||
FileSourceVo fileSourceVo = data.get(0);
|
||||
|
|
@ -348,8 +348,8 @@ public class WrkInfoPhoneServiceImpl extends ServiceImpl<WrkInfoPhoneMapper, Wrk
|
|||
{
|
||||
WrkInfoPhone wrkInfoPhone = new WrkInfoPhone();
|
||||
wrkInfoPhone.setDelState(false);
|
||||
// 理论上这个应该是框架 进行赋值的
|
||||
String userName = wrkInfoPhoneImportDTO.getUserName();
|
||||
// 理论上这个应该是框架 进行赋值的
|
||||
wrkInfoPhone.setDeptId(SecurityContextHolder.getDeptId());
|
||||
wrkInfoPhone.setUserId(idByUsernames.get(userName));
|
||||
wrkInfoPhone.setUserName(userName);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package com.chushang.oss.consumer;
|
|||
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.core.constant.ServiceConstant;
|
||||
import com.chushang.common.core.context.SecurityContextHolder;
|
||||
import com.chushang.common.core.util.SpringUtils;
|
||||
import com.chushang.common.core.web.AjaxResult;
|
||||
import com.chushang.common.core.web.Result;
|
||||
|
|
@ -43,6 +44,7 @@ public class OssConsumerService implements RocketMQListener<TaskInfo> {
|
|||
String methodName = message.getMethodName();
|
||||
String params = message.getParams();
|
||||
Integer taskType = message.getTaskType();
|
||||
SecurityContextHolder.setDeptId(message.getDeptId()+"");
|
||||
UpdateTaskDTO updateTask = new UpdateTaskDTO();
|
||||
try {
|
||||
// 包名+类名
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class TaskConsumerService implements RocketMQListener<TaskInfo> {
|
|||
String methodName = message.getMethodName();
|
||||
String params = message.getParams();
|
||||
Integer taskType = message.getTaskType();
|
||||
SecurityContextHolder.setDeptId(message.getDeptId());
|
||||
SecurityContextHolder.setDeptId(message.getDeptId()+"");
|
||||
UpdateTaskDTO updateTask = new UpdateTaskDTO();
|
||||
try {
|
||||
// 包名+类名
|
||||
|
|
|
|||
Loading…
Reference in New Issue