From 97eac0bb220f686c0d39e536a158d2fbde6ea0ab Mon Sep 17 00:00:00 2001
From: bluejay <253316343@qq.com>
Date: 星期三, 09 四月 2025 13:35:34 +0800
Subject: [PATCH] 完成钣金计划上传与确认接口
---
aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlatePlanController.java | 68 ++++++++++++----------
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java | 63 +++++++++++++++++++++
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlatePlanTemp.java | 10 +++
aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlatePlanService.java | 13 ++++
4 files changed, 123 insertions(+), 31 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..7bb607d 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
@@ -5,6 +5,11 @@
import com.aps.common.core.domain.R;
import com.aps.common.core.utils.file.FileUtils;
+import com.aps.common.core.utils.uuid.IdUtils;
+import com.aps.common.security.utils.DictUtils;
+import com.aps.core.domain.ApsPartPlanTemp;
+import com.aps.core.domain.ApsPlatePlanTemp;
+import com.aps.system.api.domain.SysDictData;
import com.aps.system.api.domain.SysFile;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
@@ -35,8 +40,7 @@
*/
@RestController
@RequestMapping("/ApsPlatePlan")
-public class ApsPlatePlanController extends BaseController
-{
+public class ApsPlatePlanController extends BaseController {
@Autowired
private IApsPlatePlanService apsPlatePlanService;
@@ -45,8 +49,7 @@
*/
@RequiresPermissions("ApsPlatePlan:ApsPlatePlan:list")
@GetMapping("/list")
- public TableDataInfo list(ApsPlatePlan apsPlatePlan)
- {
+ public TableDataInfo list(ApsPlatePlan apsPlatePlan) {
startPage();
List<ApsPlatePlan> list = apsPlatePlanService.selectApsPlatePlanList(apsPlatePlan);
return getDataTable(list);
@@ -58,8 +61,7 @@
@RequiresPermissions("ApsPlatePlan:ApsPlatePlan:export")
@Log(title = "閽i噾璁″垝绠$悊", businessType = BusinessType.EXPORT)
@PostMapping("/export")
- public void export(HttpServletResponse response, ApsPlatePlan apsPlatePlan)
- {
+ public void export(HttpServletResponse response, ApsPlatePlan apsPlatePlan) {
List<ApsPlatePlan> list = apsPlatePlanService.selectApsPlatePlanList(apsPlatePlan);
ExcelUtil<ApsPlatePlan> util = new ExcelUtil<ApsPlatePlan>(ApsPlatePlan.class);
util.exportExcel(response, list, "閽i噾璁″垝绠$悊鏁版嵁");
@@ -70,8 +72,7 @@
*/
@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));
}
@@ -81,8 +82,7 @@
@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));
}
@@ -92,8 +92,7 @@
@RequiresPermissions("ApsPlatePlan: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));
}
@@ -102,27 +101,36 @@
*/
@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)
- {
- try
- {
- // 涓婁紶骞惰繑鍥炶闂湴鍧�
- ExcelUtil<ApsPlatePlan> util = new ExcelUtil<ApsPlatePlan>(ApsPlatePlan.class);
- List<ApsPlatePlan> userList = util.importExcel(file.getInputStream());
- System.out.println(userList.size());
-
+ /**
+ * 瀵煎叆Excel鏁版嵁
+ * @param file
+ * @return
+ * @throws Exception
+ */
+ @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("妯℃澘鍐呭涓虹┖");
}
- catch (Exception e)
- {
-
- }
- return toAjax(true);
+ }
+ /**
+ * 纭閮ㄥ垎璁″垝鎺у埗鍣�
+ * @param planTemp 鍖呭惈閮ㄥ垎璁″垝淇℃伅鐨勪复鏃跺璞★紝鐢ㄤ簬纭璁″垝
+ * @return 杩斿洖鎿嶄綔缁撴灉鐨凙jaxResult瀵硅薄
+ */
+ @GetMapping("/confirmPart")
+ public AjaxResult confirmPart(ApsPlatePlanTemp planTemp) {
+ return toAjax(apsPlatePlanService.confirmPlan(planTemp));
}
}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlatePlanTemp.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlatePlanTemp.java
index c8b2695..ecce3eb 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlatePlanTemp.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlatePlanTemp.java
@@ -120,9 +120,11 @@
private String nextProcessDeparment;
/** 鏄惁鎸傝捣 */
- @Excel(name = "鏄惁鎸傝捣")
private Integer isSuspended;
+ /** 鏄惁鎸傝捣 */
+ @Excel(name = "鏄惁鎸傝捣")
+ private String isSuspendedTxt;
/** 澶栧崗鏍囪瘑 */
@Excel(name = "澶栧崗鏍囪瘑")
private String isOutsourcing;
@@ -527,7 +529,13 @@
{
return batchNumber;
}
+ public String getIsSuspendedTxt() {
+ return isSuspendedTxt;
+ }
+ public void setIsSuspendedTxt(String isSuspendedTxt) {
+ this.isSuspendedTxt = isSuspendedTxt;
+ }
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlatePlanService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlatePlanService.java
index 70f6532..9553c71 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlatePlanService.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlatePlanService.java
@@ -2,6 +2,7 @@
import java.util.List;
import com.aps.core.domain.ApsPlatePlan;
+import com.aps.core.domain.ApsPlatePlanTemp;
/**
* 閽i噾璁″垝绠$悊Service鎺ュ彛
@@ -58,4 +59,16 @@
* @return 缁撴灉
*/
public int deleteApsPlatePlanById(String id);
+ /***
+ * 纭璁″垝涓婁紶
+ * */
+ public int confirmPlan(ApsPlatePlanTemp tempPlan);
+
+ /**
+ * 瀵煎叆璁″垝鏁版嵁鍒颁复鏃惰〃
+ * @param tempList
+ * @return
+ * @throws Exception
+ */
+ String importData(List<ApsPlatePlanTemp> tempList) throws Exception;
}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
index 8ef46ca..74f7ae4 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
@@ -1,6 +1,15 @@
package com.aps.core.service.impl;
import java.util.List;
+
+import com.aps.common.core.utils.uuid.IdUtils;
+import com.aps.common.security.utils.DictUtils;
+import com.aps.core.domain.ApsPlatePlanTemp;
+import com.aps.core.mapper.ApsPartPlanTempMapper;
+import com.aps.core.mapper.ApsPlatePlanTempMapper;
+import com.aps.system.api.domain.SysDictData;
+import org.apache.logging.log4j.util.Strings;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.aps.core.mapper.ApsPlatePlanMapper;
@@ -18,6 +27,11 @@
{
@Autowired
private ApsPlatePlanMapper apsPlatePlanMapper;
+
+ @Autowired
+ private ApsPartPlanTempMapper apsPartPlanTempMapper;
+ @Autowired
+ private ApsPlatePlanTempMapper apsPlatePlanTempMapper;
/**
* 鏌ヨ閽i噾璁″垝绠$悊
@@ -52,6 +66,7 @@
@Override
public int insertApsPlatePlan(ApsPlatePlan apsPlatePlan)
{
+ apsPlatePlan.setId(IdUtils.fastUUID());
return apsPlatePlanMapper.insertApsPlatePlan(apsPlatePlan);
}
@@ -90,4 +105,52 @@
{
return apsPlatePlanMapper.deleteApsPlatePlanById(id);
}
+
+ @Override
+ public int confirmPlan(ApsPlatePlanTemp tempPlan) {
+ //鏌ヨ涓存椂琛ㄦ暟鎹�
+ List<ApsPlatePlanTemp> apsPartPlanTemps=apsPlatePlanTempMapper.selectApsPlatePlanTempList(tempPlan);
+ int count=0;
+ String[] ids=new String[apsPartPlanTemps.size()];
+ for (int i = 0; i <apsPartPlanTemps.size() ; i++) {
+ //璁板綍涓存椂琛╥d
+ ids[i]=apsPartPlanTemps.get(i).getId();
+ ApsPlatePlan platePlan=new ApsPlatePlan();
+ BeanUtils.copyProperties(apsPartPlanTemps.get(i), platePlan);
+ platePlan.setId(IdUtils.fastUUID());
+ //鎻掑叆姝e紡琛紝骞惰褰�
+ apsPlatePlanMapper.insertApsPlatePlan(platePlan);
+ count++;
+ }
+ //鎻掑叆鏁伴噺涓庝复鏃惰〃鏌ヨ涓�鐩村垯鍒犻櫎涓存椂琛ㄦ暟鎹�
+ if (count==apsPartPlanTemps.size()) {
+ apsPlatePlanTempMapper.deleteApsPlatePlanTempByIds(ids);
+ }
+ return 1;
+ }
+ @Override
+ public String importData(List<ApsPlatePlanTemp> tempList) throws Exception {
+
+ String batchNum= IdUtils.fastUUID();
+ //鍒ゆ柇瀵煎叆鏁版嵁鏄惁涓虹┖
+ if (tempList.size() > 0) {
+ List<SysDictData> dictDataList = DictUtils.getDictCache("aps_is_suspended");
+ for (int i = 0; i < tempList.size(); i++) {
+ ApsPlatePlanTemp planTemp = tempList.get(i);
+ for (int j = 0; j < dictDataList.size(); j++) {
+ if (planTemp.getIsSuspendedTxt().equals(dictDataList.get(j).getDictLabel())) {
+ planTemp.setIsSuspended(Integer.parseInt(dictDataList.get(j).getDictValue()));
+ break;
+ }
+ }
+ //鎻掑叆鐗堟湰鍙�
+ planTemp.setBatchNumber(batchNum);
+ //鎻掑叆涓存椂琛�
+ apsPlatePlanTempMapper.insertApsPlatePlanTemp(planTemp);
+ }
+ return batchNum ;
+ } else {
+ return Strings.EMPTY;
+ }
+ }
}
--
Gitblit v1.9.3