From 46ec981f78ee7879a6fe5a48466de1c5d5b7d74a Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 01 十一月 2023 17:50:36 +0800
Subject: [PATCH] 触发零件

---
 mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java |   66 +++++++++++++++++++++++++++++++++
 1 files changed, 66 insertions(+), 0 deletions(-)

diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java
index 603c3c3..d1679eb 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java
@@ -17,6 +17,7 @@
 
 package com.chinaztt.mes.basic.controller;
 
+import cn.hutool.core.text.csv.CsvReadConfig;
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -24,7 +25,11 @@
 import com.chinaztt.mes.basic.entity.Part;
 import com.chinaztt.mes.basic.excel.PartData;
 import com.chinaztt.mes.basic.excel.PartUploadListener;
+import com.chinaztt.mes.basic.mapper.PartMapper;
 import com.chinaztt.mes.basic.service.PartService;
+import com.chinaztt.mes.basic.util.DictUtils;
+import com.chinaztt.mes.basic.util.PartUtils;
+import com.chinaztt.mes.basic.vo.PartVo;
 import com.chinaztt.mes.common.util.JsonUtil;
 import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
 import com.chinaztt.ztt.admin.api.entity.SysDictItem;
@@ -37,7 +42,11 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -61,6 +70,27 @@
 	private final PartService partService;
 	private final RemoteDictService remoteDictService;
 	private final RedisTemplate redisTemplate;;
+
+	private DictUtils dictUtils;
+	private PartUtils partUtils;
+
+	private PartMapper partMapper;
+
+	private final static Logger logger = LoggerFactory.getLogger(PartController.class);
+
+
+	@Autowired
+	private ThreadPoolTaskExecutor threadPoolTaskExecutor;
+
+
+	@ApiOperation(value = "瑙﹀彂闆朵欢", notes = "瑙﹀彂闆朵欢")
+	@SysLog("瑙﹀彂闆朵欢")
+	@PostMapping("/triggerAdd")
+	public R triggerAdd(@RequestBody PartVo partVo) {
+		return R.ok(partService.triggerAdd(partVo));
+	}
+
+
 
 	/**
 	 * 鍒嗛〉鏌ヨ
@@ -305,4 +335,40 @@
 	public R getRoutingPartPage(Page page, Part part, Long bomId) {
 		return R.ok(partService.getRoutingPartPage(page, QueryWrapperUtil.gen(part), bomId));
 	}
+
+	@PostMapping("/uploadExcel")
+	public R uploadExcel(MultipartFile file) {
+		String key = "syncPart_lock" + SecurityUtils.getUser().getId();
+		if (redisTemplate.hasKey(key)) {
+			throw new RuntimeException("鏈夊鍏ヤ换鍔℃鍦ㄥ鐞�");
+		}
+		partService.asyncUploadExcel(file);
+		return R.ok();
+	}
+
+	/**
+	 * 璁剧疆Csv璇绘枃浠堕厤缃�
+	 * @return CsvWriteConfig
+	 */
+	public static CsvReadConfig setCsvReadConfig(){
+		CsvReadConfig csvReadConfig = new CsvReadConfig();
+		// 璁剧疆 鏂囨湰鍒嗛殧绗︼紝鏂囨湰鍖呰绗︼紝榛樿鍙屽紩鍙�'"'
+		//csvReadConfig.setTextDelimiter('\t');
+		// 瀛楁鍒嗗壊绗﹀彿锛岄粯璁や负閫楀彿
+		csvReadConfig.setFieldSeparator('|');
+		// 璁剧疆娉ㄩ噴绗﹀彿
+		// csvReadConfig.setCommentCharacter('#');
+		// CSV鏂囦欢鏄惁鍖呭惈琛ㄥご(鍥犱负琛ㄥご涓嶆槸鏁版嵁鍐呭)
+		csvReadConfig.setContainsHeader(true);
+		// 鎴栬�呬娇鐢ㄥ涓嬮厤缃缃〃澶村紑濮嬭鍙凤紝-1L浠h〃鏃犺〃澶�
+		// csvReadConfig.setHeaderLineNo(1L);
+		//璁剧疆寮�濮嬬殑琛岋紙鍖呮嫭锛夛紝榛樿0锛屾澶勪负鍘熷鏂囦欢琛屽彿
+		// csvReadConfig.setBeginLineNo(0);
+		// 鏄惁璺宠繃绌虹櫧琛岋紝榛樿涓簍rue
+		// csvReadConfig.setSkipEmptyRows(true);
+		// 璁剧疆姣忚瀛楁涓暟涓嶅悓鏃舵槸鍚︽姏鍑哄紓甯革紝榛樿false
+		// csvReadConfig.setErrorOnDifferentFieldCount(false);
+		return csvReadConfig;
+	}
+
 }

--
Gitblit v1.9.3