From 54cce185f383849322d5cc309d2ee5d155d15915 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 15 十一月 2023 18:57:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java |   85 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 82 insertions(+), 3 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 37b623f..924402d 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,12 @@
 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;
 import com.chinaztt.ztt.admin.api.feign.RemoteDictService;
@@ -36,13 +42,16 @@
 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;
 
 import java.io.IOException;
-import java.util.Date;
 import java.util.List;
 
 
@@ -62,6 +71,29 @@
 	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")
+	@Inner(value = false)
+	public R triggerAdd(@RequestParam String params) {
+		PartVo partVo = JSONObject.parseObject(params, PartVo.class);
+		return R.ok(partService.triggerAdd(partVo));
+	}
+
+
+
 	/**
 	 * 鍒嗛〉鏌ヨ
 	 *
@@ -74,6 +106,9 @@
 	@GetMapping("/page")
 	@PreAuthorize("@pms.hasPermission('basic_part_view')")
 	public R getPartPage(Page page, Part part, Long bomId) {
+		//System.out.println(bomId);
+		//System.out.println(part);
+		System.out.println(JsonUtil.jsonToString(page));
 		return R.ok(partService.getPartPage(page, QueryWrapperUtil.gen(part), bomId));
 	}
 	/**
@@ -91,11 +126,19 @@
 		partService.syncPart();
 		return R.ok();
 	}
+
+	//@InitBinder
+	//protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
+	//	//System.out.println(request.getParameter("date"));
+	//	DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+	//	CustomDateEditor editor = new CustomDateEditor(df, true);//true琛ㄧず鍏佽涓虹┖锛宖alse鍙嶄箣
+	//	binder.registerCustomEditor(Date.class, editor);
+	//}
+
 	@ApiOperation(value = "鍚屾Ifs", notes = "鍚屾Ifs")
 	@PostMapping("/syncNewIfs")
 	//@XxlJob("syncPart")
-	public R syncNewIfs(Date date) {
-		System.out.println(date);
+	public R syncNewIfs(String date) {
 		String key = "syncPart_lock"+ SecurityUtils.getUser().getId();
 		if (redisTemplate.hasKey(key)) {
 			throw new RuntimeException("鏈夊悓姝ヤ换鍔℃鍦ㄥ鐞�");
@@ -294,4 +337,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