From 0cfb74382e44ef538c0bab5f3014363769ecdb2f Mon Sep 17 00:00:00 2001 From: bluejay <253316343@qq.com> Date: 星期三, 09 四月 2025 16:48:02 +0800 Subject: [PATCH] 调整导入和导出接口,进行数据字典的转义 --- aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsGasPipingPlanController.java | 76 ++++++++++++++++++++++++++++--------- 1 files changed, 57 insertions(+), 19 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsGasPipingPlanController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsGasPipingPlanController.java index 66c5862..a41d774 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsGasPipingPlanController.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsGasPipingPlanController.java @@ -2,6 +2,7 @@ import java.util.List; import java.io.IOException; +import java.util.Optional; import com.aps.common.core.utils.uuid.IdUtils; import com.aps.common.security.utils.DictUtils; @@ -64,18 +65,36 @@ @PostMapping("/export") public void export(HttpServletResponse response, ApsGasPipingPlan apsGasPipingPlan) { - List<ApsGasPipingPlan> apsGasPipingPlans = apsGasPipingPlanService.selectApsGasPipingPlanList(apsGasPipingPlan); - List<SysDictData> list = DictUtils.getDictCache("aps_is_suspended"); - for (int i = 0; i < apsGasPipingPlans.size(); i++) { - for (int j = 0; j < list.size(); j++) { - if (apsGasPipingPlans.get(i).getIsSuspended().equals(Integer.parseInt(list.get(j).getDictValue()))) { - apsGasPipingPlans.get(i).setIsSuspendedTxt(list.get(j).getDictLabel()); - break; - } - } + List<ApsGasPipingPlan> planList = apsGasPipingPlanService.selectApsGasPipingPlanList(apsGasPipingPlan); + List<SysDictData> suspendedDic = DictUtils.getDictCache("aps_is_suspended"); + List<SysDictData> businessTypeDic = DictUtils.getDictCache("aps_business_type"); + List<SysDictData> documentStatusDic = DictUtils.getDictCache("aps_document_status"); + List<SysDictData> accountDic = DictUtils.getDictCache("aps_account"); + + for (int i = 0; i < planList.size(); i++) { + ApsGasPipingPlan plan=planList.get(i); + String isSuspendedTxt = plan.getIsSuspended().trim(); + String businessType = plan.getBusinessType().trim(); + String documentStatusText = plan.getDocumentStatus().trim(); + String account = plan.getAccount().trim(); + + Optional<SysDictData> documentStatusFirst = documentStatusDic.stream().filter(x -> x.getDictValue().equals(documentStatusText)).findFirst(); + documentStatusFirst.ifPresent(sysDictData -> plan.setDocumentStatus(sysDictData.getDictLabel())); + + Optional<SysDictData> accountFirst = accountDic.stream().filter(x -> x.getDictValue().equals(account)).findFirst(); + accountFirst.ifPresent(sysDictData -> plan.setAccount(sysDictData.getDictLabel())); + + Optional<SysDictData> businessTypeFirst = businessTypeDic.stream().filter(x -> x.getDictValue().equals(businessType)).findFirst(); + businessTypeFirst.ifPresent(sysDictData -> plan.setBusinessType(sysDictData.getDictLabel())); + + Optional<SysDictData> isSuspendedFirst = suspendedDic.stream().filter(x -> x.getDictValue().equals(isSuspendedTxt)).findFirst(); + isSuspendedFirst.ifPresent(sysDictData -> plan.setIsSuspended(sysDictData.getDictLabel())); + + } + ExcelUtil<ApsGasPipingPlan> util = new ExcelUtil<ApsGasPipingPlan>(ApsGasPipingPlan.class); - util.exportExcel(response, apsGasPipingPlans, "姘斾綋绠¤矾璁″垝绠$悊鏁版嵁"); + util.exportExcel(response, planList, "姘斾綋绠¤矾璁″垝绠$悊鏁版嵁"); } /** @@ -130,18 +149,37 @@ //鍒ゆ柇瀵煎叆鏁版嵁鏄惁涓虹┖ if (apsGasPipingPlanTemps.size() > 0) { String batchNum= IdUtils.fastUUID(); - List<SysDictData> list = DictUtils.getDictCache("aps_is_suspended"); + List<SysDictData> suspendedDic = DictUtils.getDictCache("aps_is_suspended"); + List<SysDictData> businessTypeDic = DictUtils.getDictCache("aps_business_type"); + List<SysDictData> documentStatusDic = DictUtils.getDictCache("aps_document_status"); + List<SysDictData> accountDic = DictUtils.getDictCache("aps_account"); + for (int i = 0; i < apsGasPipingPlanTemps.size(); i++) { - for (int j = 0; j < list.size(); j++) { - if (apsGasPipingPlanTemps.get(i).getIsSuspendedTxt().equals(list.get(j).getDictLabel())) { - apsGasPipingPlanTemps.get(i).setIsSuspended(Integer.parseInt(list.get(j).getDictValue())); - break; - } - } + + ApsGasPipingPlanTemp planTemp = apsGasPipingPlanTemps.get(i); + String isSuspendedTxt = planTemp.getIsSuspended().trim(); + String businessType = planTemp.getBusinessType().trim(); + String documentStatusText = planTemp.getDocumentStatus().trim(); + String account = planTemp.getAccount().trim(); + + Optional<SysDictData> documentStatusFirst = documentStatusDic.stream().filter(x -> x.getDictLabel().equals(documentStatusText)).findFirst(); + documentStatusFirst.ifPresent(sysDictData -> planTemp.setDocumentStatus(sysDictData.getDictValue())); + + Optional<SysDictData> accountFirst = accountDic.stream().filter(x -> x.getDictLabel().equals(account)).findFirst(); + accountFirst.ifPresent(sysDictData -> planTemp.setAccount(sysDictData.getDictValue())); + + Optional<SysDictData> businessTypeFirst = businessTypeDic.stream().filter(x -> x.getDictLabel().equals(businessType)).findFirst(); + businessTypeFirst.ifPresent(sysDictData -> planTemp.setBusinessType(sysDictData.getDictValue())); + + + Optional<SysDictData> isSuspendedFirst = suspendedDic.stream().filter(x -> x.getDictLabel().equals(isSuspendedTxt)).findFirst(); + isSuspendedFirst.ifPresent(sysDictData -> planTemp.setIsSuspended(sysDictData.getDictValue())); + + planTemp.setId(IdUtils.fastUUID()); //鎻掑叆鐗堟湰鍙� - apsGasPipingPlanTemps.get(i).setBatchNumber(batchNum); + planTemp.setBatchNumber(batchNum); //鎻掑叆涓存椂琛� - apsGasPipingPlanTempService.insertApsGasPipingPlanTemp(apsGasPipingPlanTemps.get(i)); + apsGasPipingPlanTempService.insertApsGasPipingPlanTemp(planTemp); } return AjaxResult.success("瀵煎叆鎴愬姛",batchNum); } else { -- Gitblit v1.9.3