From 3ef44331e3bd3e8b61513c88b7439631f49f05c7 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期二, 14 五月 2024 17:00:07 +0800 Subject: [PATCH] zjh 2024/05/14-1 --- ltkj-system/src/main/java/com/ltkj/tduck/service/impl/UserFormDataServiceImpl.java | 312 ++++++++++++++++++++++++++-------------------------- 1 files changed, 156 insertions(+), 156 deletions(-) diff --git a/ltkj-system/src/main/java/com/ltkj/tduck/service/impl/UserFormDataServiceImpl.java b/ltkj-system/src/main/java/com/ltkj/tduck/service/impl/UserFormDataServiceImpl.java index 6cb5bdd..3aedf94 100644 --- a/ltkj-system/src/main/java/com/ltkj/tduck/service/impl/UserFormDataServiceImpl.java +++ b/ltkj-system/src/main/java/com/ltkj/tduck/service/impl/UserFormDataServiceImpl.java @@ -1,159 +1,159 @@ -package com.ltkj.tduck.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.map.MapUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ltkj.common.utils.ip.AddressUtils; -import com.ltkj.tduck.constant.CommonConstants; -import com.ltkj.tduck.domain.UserFormDataEntity; -import com.ltkj.tduck.mapper.UserFormDataMapper; -import com.ltkj.tduck.request.QueryFormResultRequest; -import com.ltkj.tduck.service.UserFormDataService; -import com.ltkj.tduck.service.UserFormItemService; -import com.ltkj.tduck.utils.CacheUtils; -import com.ltkj.tduck.utils.FormDataUtils; -import com.ltkj.tduck.utils.Result; -import com.ltkj.tduck.vo.FormDataTableVO; -import com.ltkj.tduck.vo.FormFieldVO; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import static com.ltkj.tduck.constant.FormRedisKeyConstants.FORM_RESULT_NUMBER; - - -/** - * 琛ㄥ崟琛ㄥ崟椤�(FormResult)琛ㄦ湇鍔″疄鐜扮被 - * - * @author smalljop - * @since 2020-11-23 14:09:22 - */ -@Service -@Slf4j -@RequiredArgsConstructor -public class UserFormDataServiceImpl extends ServiceImpl<UserFormDataMapper, UserFormDataEntity> implements UserFormDataService { - - private final UserFormItemService userFormItemService; - private final CacheUtils redisUtils; - private final FormDataUtils formDataUtils; - - - @Override - @Transactional(rollbackFor = Exception.class) - public Map<String, Object> saveFormResult(UserFormDataEntity entity) { - HashMap<String, Object> result = MapUtil.newHashMap(); - String formKey = entity.getFormKey(); - entity.setSubmitAddress(AddressUtils.getRealAddressByIP(entity.getSubmitRequestIp())); - entity.setSerialNumber(redisUtils.incr(StrUtil.format(FORM_RESULT_NUMBER, formKey), CommonConstants.ConstantNumber.ONE)); - this.save(entity); -// formDataUtils.syncSaveFormData(entity); - result.put("id", entity.getId()); - return result; - } - - - /** - * 涓嬭浇琛ㄥ崟缁撴灉涓殑闄勪欢 - * - * @param request - * @return - */ +//package com.ltkj.tduck.service.impl; +// +//import cn.hutool.core.bean.BeanUtil; +//import cn.hutool.core.map.MapUtil; +//import cn.hutool.core.util.ObjectUtil; +//import cn.hutool.core.util.StrUtil; +//import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +//import com.ltkj.common.utils.ip.AddressUtils; +//import com.ltkj.tduck.constant.CommonConstants; +//import com.ltkj.tduck.domain.UserFormDataEntity; +//import com.ltkj.tduck.mapper.UserFormDataMapper; +//import com.ltkj.tduck.request.QueryFormResultRequest; +//import com.ltkj.tduck.service.UserFormDataService; +//import com.ltkj.tduck.service.UserFormItemService; +//import com.ltkj.tduck.utils.CacheUtils; +//import com.ltkj.tduck.utils.FormDataUtils; +//import com.ltkj.tduck.utils.Result; +//import com.ltkj.tduck.vo.FormDataTableVO; +//import com.ltkj.tduck.vo.FormFieldVO; +//import lombok.RequiredArgsConstructor; +//import lombok.extern.slf4j.Slf4j; +//import org.springframework.stereotype.Service; +//import org.springframework.transaction.annotation.Transactional; +// +//import java.util.HashMap; +//import java.util.List; +//import java.util.Map; +// +//import static com.ltkj.tduck.constant.FormRedisKeyConstants.FORM_RESULT_NUMBER; +// +// +///** +// * 琛ㄥ崟琛ㄥ崟椤�(FormResult)琛ㄦ湇鍔″疄鐜扮被 +// * +// * @author smalljop +// * @since 2020-11-23 14:09:22 +// */ +//@Service +//@Slf4j +//@RequiredArgsConstructor +//public class UserFormDataServiceImpl extends ServiceImpl<UserFormDataMapper, UserFormDataEntity> implements UserFormDataService { +// +// private final UserFormItemService userFormItemService; +// private final CacheUtils redisUtils; +// private final FormDataUtils formDataUtils; +// +// // @Override -// public Result downloadFormResultFile(QueryFormResultRequest request) { -// String uuid = IdUtil.simpleUUID(); -// List<UserFormItemEntity> userFormItemEntityList = userFormItemService.list(Wrappers.<UserFormItemEntity>lambdaQuery().eq(UserFormItemEntity::getFormKey, request.getFormKey()).in(UserFormItemEntity::getType, CollUtil.newArrayList(FormItemTypeEnum.UPLOAD.toString(), FormItemTypeEnum.IMAGE_UPLOAD.toString()))); -// //缁撴灉 -// List<Map> rows = null; -// if (ObjectUtil.isNull(request.getCurrent()) && ObjectUtil.isNull(request.getSize())) { -// rows = formDataUtils.searchAll(request); -// } else { -// FormDataTableVO formDataTableVO = this.listFormDataTable(request); -// rows = formDataTableVO.getRows(); +// @Transactional(rollbackFor = Exception.class) +// public Map<String, Object> saveFormResult(UserFormDataEntity entity) { +// HashMap<String, Object> result = MapUtil.newHashMap(); +// String formKey = entity.getFormKey(); +// entity.setSubmitAddress(AddressUtils.getRealAddressByIP(entity.getSubmitRequestIp())); +// entity.setSerialNumber(redisUtils.incr(StrUtil.format(FORM_RESULT_NUMBER, formKey), CommonConstants.ConstantNumber.ONE)); +// this.save(entity); +//// formDataUtils.syncSaveFormData(entity); +// result.put("id", entity.getId()); +// return result; +// } +// +// +// /** +// * 涓嬭浇琛ㄥ崟缁撴灉涓殑闄勪欢 +// * +// * @param request +// * @return +// */ +//// @Override +//// public Result downloadFormResultFile(QueryFormResultRequest request) { +//// String uuid = IdUtil.simpleUUID(); +//// List<UserFormItemEntity> userFormItemEntityList = userFormItemService.list(Wrappers.<UserFormItemEntity>lambdaQuery().eq(UserFormItemEntity::getFormKey, request.getFormKey()).in(UserFormItemEntity::getType, CollUtil.newArrayList(FormItemTypeEnum.UPLOAD.toString(), FormItemTypeEnum.IMAGE_UPLOAD.toString()))); +//// //缁撴灉 +//// List<Map> rows = null; +//// if (ObjectUtil.isNull(request.getCurrent()) && ObjectUtil.isNull(request.getSize())) { +//// rows = formDataUtils.searchAll(request); +//// } else { +//// FormDataTableVO formDataTableVO = this.listFormDataTable(request); +//// rows = formDataTableVO.getRows(); +//// } +//// if (CollectionUtil.isEmpty(rows) || CollectionUtil.isEmpty(userFormItemEntityList)) { +//// return Result.failed("鏆傛棤鏀堕泦闄勪欢锛屾棤娉曚笅杞�"); +//// } +//// List<Map> finalRows = rows; +//// ThreadUtil.execAsync(() -> { +//// TimeInterval timer = DateUtil.timer(); +//// List<String> paths = new ArrayList<>(); +//// List<InputStream> ins = new ArrayList<>(); +//// try { +//// finalRows.forEach(result -> { +//// int index = 0; +//// userFormItemEntityList.forEach(item -> { +//// List<UploadResultStruct> uploadResults = JsonUtils.jsonToList(JsonUtils.objToJson(MapUtil.get(result, item.getFormItemId(), List.class)), UploadResultStruct.class); +//// if (CollectionUtil.isNotEmpty(uploadResults)) { +//// uploadResults.forEach(uFile -> { +//// if (StrUtil.isNotBlank(uFile.getUrl())) { +//// paths.add(FileNameUtil.getName(uFile.getUrl())); +//// byte[] bytes = HttpUtil.downloadBytes(uFile.getUrl()); +//// ins.add(IoUtil.toStream(bytes)); +//// } +//// }); +//// } +//// }); +//// AsyncProcessUtils.setProcess(uuid, ++index / finalRows.size()); +//// }); +//// // 鍘嬬缉涓婁紶oss +//// ByteArrayOutputStream zipOutputStream = new ByteArrayOutputStream(); +//// ZipUtil.zip(zipOutputStream, paths.toArray(new String[]{}), ins.toArray(new InputStream[]{})); +//// String downloadUrl = OssStorageFactory.getStorageService().upload(zipOutputStream.toByteArray(), StorageUtils.generateFileName("download", ".zip")); +//// AsyncProcessUtils.setProcess(uuid, downloadUrl); +//// log.info("export file cost time: {}", timer.interval()); +//// } catch (Exception e) { +//// log.error("download file", e); +//// } +//// }); +//// return Result.success(uuid); +//// } +//// +//// +// @Override +// public FormDataTableVO listFormDataTable(QueryFormResultRequest request) { +// return formDataUtils.search(request); +// } +//// +//// +//// @Override +//// public Boolean deleteByIds(List<String> dataIdList, String formKey) { +//// baseMapper.deleteBatchIds(dataIdList); +//// formDataUtils.asyncDeleteEsDocument(dataIdList, formKey); +//// return true; +//// } +//// +//// @Override +//// public Boolean updateFormResult(UserFormDataEntity entity) { +//// UserFormDataEntity dataEntity = this.getById(entity.getId()); +//// dataEntity.setOriginalData(entity.getOriginalData()); +//// dataEntity.setUpdateBy(entity.getUpdateBy()); +//// boolean update = this.updateById(dataEntity); +//// // 鏌ヨ鏁版嵁 鍚屾鍒癳s 閬垮厤鏁版嵁鍙樼┖琚鐩� +//// formDataUtils.asyncUpdateEsDocument(dataEntity); +//// return update; +//// } +// +// @Override +// public Result getFormDataDetails(String dataId) { +// Map<String, Object> result =new HashMap<>(); +// UserFormDataEntity dataEntity = this.getById(dataId); +// List<FormFieldVO> formFields = userFormItemService.listFormFields(dataEntity.getFormKey()); +// // 琛ㄥ崟瀛楁 +// result.put("formFields", formFields); +// // 琛ㄥ崟濉啓鏁版嵁 +// if (ObjectUtil.isNotNull(dataEntity)) { +// Map<String, Object> originalData = dataEntity.getOriginalData(); +// dataEntity.setOriginalData(null); +// originalData.putAll(BeanUtil.beanToMap(dataEntity, false, true)); +// result.put("formData", originalData); // } -// if (CollectionUtil.isEmpty(rows) || CollectionUtil.isEmpty(userFormItemEntityList)) { -// return Result.failed("鏆傛棤鏀堕泦闄勪欢锛屾棤娉曚笅杞�"); -// } -// List<Map> finalRows = rows; -// ThreadUtil.execAsync(() -> { -// TimeInterval timer = DateUtil.timer(); -// List<String> paths = new ArrayList<>(); -// List<InputStream> ins = new ArrayList<>(); -// try { -// finalRows.forEach(result -> { -// int index = 0; -// userFormItemEntityList.forEach(item -> { -// List<UploadResultStruct> uploadResults = JsonUtils.jsonToList(JsonUtils.objToJson(MapUtil.get(result, item.getFormItemId(), List.class)), UploadResultStruct.class); -// if (CollectionUtil.isNotEmpty(uploadResults)) { -// uploadResults.forEach(uFile -> { -// if (StrUtil.isNotBlank(uFile.getUrl())) { -// paths.add(FileNameUtil.getName(uFile.getUrl())); -// byte[] bytes = HttpUtil.downloadBytes(uFile.getUrl()); -// ins.add(IoUtil.toStream(bytes)); -// } -// }); -// } -// }); -// AsyncProcessUtils.setProcess(uuid, ++index / finalRows.size()); -// }); -// // 鍘嬬缉涓婁紶oss -// ByteArrayOutputStream zipOutputStream = new ByteArrayOutputStream(); -// ZipUtil.zip(zipOutputStream, paths.toArray(new String[]{}), ins.toArray(new InputStream[]{})); -// String downloadUrl = OssStorageFactory.getStorageService().upload(zipOutputStream.toByteArray(), StorageUtils.generateFileName("download", ".zip")); -// AsyncProcessUtils.setProcess(uuid, downloadUrl); -// log.info("export file cost time: {}", timer.interval()); -// } catch (Exception e) { -// log.error("download file", e); -// } -// }); -// return Result.success(uuid); +// return Result.success(result); // } -// -// - @Override - public FormDataTableVO listFormDataTable(QueryFormResultRequest request) { - return formDataUtils.search(request); - } -// -// -// @Override -// public Boolean deleteByIds(List<String> dataIdList, String formKey) { -// baseMapper.deleteBatchIds(dataIdList); -// formDataUtils.asyncDeleteEsDocument(dataIdList, formKey); -// return true; -// } -// -// @Override -// public Boolean updateFormResult(UserFormDataEntity entity) { -// UserFormDataEntity dataEntity = this.getById(entity.getId()); -// dataEntity.setOriginalData(entity.getOriginalData()); -// dataEntity.setUpdateBy(entity.getUpdateBy()); -// boolean update = this.updateById(dataEntity); -// // 鏌ヨ鏁版嵁 鍚屾鍒癳s 閬垮厤鏁版嵁鍙樼┖琚鐩� -// formDataUtils.asyncUpdateEsDocument(dataEntity); -// return update; -// } - - @Override - public Result getFormDataDetails(String dataId) { - Map<String, Object> result =new HashMap<>(); - UserFormDataEntity dataEntity = this.getById(dataId); - List<FormFieldVO> formFields = userFormItemService.listFormFields(dataEntity.getFormKey()); - // 琛ㄥ崟瀛楁 - result.put("formFields", formFields); - // 琛ㄥ崟濉啓鏁版嵁 - if (ObjectUtil.isNotNull(dataEntity)) { - Map<String, Object> originalData = dataEntity.getOriginalData(); - dataEntity.setOriginalData(null); - originalData.putAll(BeanUtil.beanToMap(dataEntity, false, true)); - result.put("formData", originalData); - } - return Result.success(result); - } -} +//} -- Gitblit v1.8.0