From ab0b4b2397c46701e372a49cf8ff4d268bb577b3 Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期三, 23 四月 2025 10:40:25 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java | 179 ++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 116 insertions(+), 63 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java index 557fd43..1af932f 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java @@ -1,31 +1,26 @@ package com.aps.core.controller; -import java.util.List; -import java.io.IOException; - -import com.aps.common.core.domain.R; -import com.aps.common.core.utils.file.FileUtils; -import com.aps.system.api.domain.SysFile; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.aps.common.core.utils.poi.ExcelUtil; +import com.aps.common.core.web.controller.BaseController; +import com.aps.common.core.web.domain.AjaxResult; +import com.aps.common.core.web.page.TableDataInfo; import com.aps.common.log.annotation.Log; import com.aps.common.log.enums.BusinessType; import com.aps.common.security.annotation.RequiresPermissions; -import com.aps.core.domain.ApsPlatePlan; -import com.aps.core.service.IApsPlatePlanService; -import com.aps.common.core.web.controller.BaseController; -import com.aps.common.core.web.domain.AjaxResult; -import com.aps.common.core.utils.poi.ExcelUtil; -import com.aps.common.core.web.page.TableDataInfo; +import com.aps.common.security.utils.DictUtils; +import com.aps.core.domain.ApsGasPipingPlan; +import com.aps.core.domain.ApsPlatePlan; +import com.aps.core.domain.ApsPlatePlanTemp; +import com.aps.core.service.IApsPlatePlanService; +import com.aps.core.service.IApsPlatePlanTempService; +import com.aps.system.api.domain.SysDictData; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; + +import java.util.List; +import java.util.Optional; /** * 閽i噾璁″垝绠$悊Controller @@ -34,95 +29,153 @@ * @date 2025-04-08 */ @RestController -@RequestMapping("/ApsPlatePlan") -public class ApsPlatePlanController extends BaseController -{ +@RequestMapping("/apsPlatePlan") +public class ApsPlatePlanController extends BaseController { @Autowired private IApsPlatePlanService apsPlatePlanService; - + @Autowired + private IApsPlatePlanTempService apsPlatePlanTempService; /** * 鏌ヨ閽i噾璁″垝绠$悊鍒楄〃 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:list") + @RequiresPermissions("apsPlatePlan:list") @GetMapping("/list") - public TableDataInfo list(ApsPlatePlan apsPlatePlan) - { - startPage(); + public TableDataInfo list(ApsPlatePlan apsPlatePlan) { + //startPage(); List<ApsPlatePlan> list = apsPlatePlanService.selectApsPlatePlanList(apsPlatePlan); + 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"); + list.parallelStream().forEach(plan->{ + documentStatusDic.stream().filter(x -> x.getDictValue().equals( plan.getDocumentStatus().trim())) + .findFirst().ifPresent(sysDictData -> plan.setDocumentStatus(sysDictData.getDictLabel())); + accountDic.stream().filter(x -> x.getDictValue().equals( plan.getAccount().trim())) + .findFirst().ifPresent(sysDictData -> plan.setAccount(sysDictData.getDictLabel())); + businessTypeDic.stream().filter(x -> x.getDictValue().equals(plan.getBusinessType().trim())) + .findFirst().ifPresent(sysDictData -> plan.setBusinessType(sysDictData.getDictLabel())); + suspendedDic.stream().filter(x -> x.getDictValue().equals( plan.getIsSuspended())) + .findFirst().ifPresent(sysDictData -> plan.setIsSuspended(sysDictData.getDictLabel())); + }); return getDataTable(list); } /** * 瀵煎嚭閽i噾璁″垝绠$悊鍒楄〃 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:export") + @RequiresPermissions("apsPlatePlan:export") @Log(title = "閽i噾璁″垝绠$悊", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, ApsPlatePlan apsPlatePlan) - { - List<ApsPlatePlan> list = apsPlatePlanService.selectApsPlatePlanList(apsPlatePlan); + public void export(HttpServletResponse response, ApsPlatePlan apsPlatePlan) { + List<ApsPlatePlan> planList = apsPlatePlanService.selectApsPlatePlanList(apsPlatePlan); + + 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++) { + ApsPlatePlan 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<ApsPlatePlan> util = new ExcelUtil<ApsPlatePlan>(ApsPlatePlan.class); - util.exportExcel(response, list, "閽i噾璁″垝绠$悊鏁版嵁"); + util.exportExcel(response, planList, "閽i噾璁″垝绠$悊鏁版嵁"); } /** * 鑾峰彇閽i噾璁″垝绠$悊璇︾粏淇℃伅 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:query") +// @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:query") @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") String id) - { + public AjaxResult getInfo(@PathVariable("id") String id) { return success(apsPlatePlanService.selectApsPlatePlanById(id)); } /** * 鏂板閽i噾璁″垝绠$悊 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:add") +// @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:add") @Log(title = "閽i噾璁″垝绠$悊", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody ApsPlatePlan apsPlatePlan) - { + public AjaxResult add(@RequestBody ApsPlatePlan apsPlatePlan) { return toAjax(apsPlatePlanService.insertApsPlatePlan(apsPlatePlan)); } /** * 淇敼閽i噾璁″垝绠$悊 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:edit") + @RequiresPermissions("apsPlatePlan:edit") @Log(title = "閽i噾璁″垝绠$悊", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@RequestBody ApsPlatePlan apsPlatePlan) - { + public AjaxResult edit(@RequestBody ApsPlatePlan apsPlatePlan) { return toAjax(apsPlatePlanService.updateApsPlatePlan(apsPlatePlan)); } /** * 鍒犻櫎閽i噾璁″垝绠$悊 */ - @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:remove") +// @RequiresPermissions("ApsPlatePlan:ApsPlatePlan:remove") @Log(title = "閽i噾璁″垝绠$悊", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable String[] ids) - { + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) { return toAjax(apsPlatePlanService.deleteApsPlatePlanByIds(ids)); } - @PostMapping("/upload") - public AjaxResult upload(MultipartFile file) + /** + * 瀵煎叆Excel鏁版嵁 + * @param file + * @return + * @throws Exception + */ + @RequiresPermissions("apsPlatePlan:import") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file) throws Exception { + ExcelUtil<ApsPlatePlanTemp> util = new ExcelUtil<ApsPlatePlanTemp>(ApsPlatePlanTemp.class); + List<ApsPlatePlanTemp> platePlanTemps = util.importExcel(file.getInputStream()); + //鍒ゆ柇瀵煎叆鏁版嵁鏄惁涓虹┖ + if (platePlanTemps.size() > 0) { + String batchNum = apsPlatePlanService.importData(platePlanTemps); + return AjaxResult.success("瀵煎叆鎴愬姛锛�",batchNum); + } else { + return AjaxResult.error("妯℃澘鍐呭涓虹┖"); + } + } + /** + * 纭閮ㄥ垎璁″垝鎺у埗鍣� + * @param planTemp 鍖呭惈閮ㄥ垎璁″垝淇℃伅鐨勪复鏃跺璞★紝鐢ㄤ簬纭璁″垝 + * @return 杩斿洖鎿嶄綔缁撴灉鐨凙jaxResult瀵硅薄 + */ + @RequiresPermissions("apsPlatePlan:confirm") + @PostMapping("/confirmPart") + public AjaxResult confirmPart(@RequestBody ApsPlatePlanTemp planTemp) { + return toAjax(apsPlatePlanService.confirmPlan(planTemp)); + } + /** + * 鏌ヨ閽i噾璁″垝涓存椂琛ㄥ垪琛� + */ + @GetMapping("/queryTempPlan") + public TableDataInfo list(ApsPlatePlanTemp apsPlatePlanTemp) { - try - { - // 涓婁紶骞惰繑鍥炶闂湴鍧� - ExcelUtil<ApsPlatePlan> util = new ExcelUtil<ApsPlatePlan>(ApsPlatePlan.class); - List<ApsPlatePlan> userList = util.importExcel(file.getInputStream()); - System.out.println(userList.size()); - - } - catch (Exception e) - { - - } - return toAjax(true); + List<ApsPlatePlanTemp> list = apsPlatePlanTempService.selectApsPlatePlanTempList(apsPlatePlanTemp); + return getDataTable(list); } } -- Gitblit v1.9.3