From d8d129a2e41f7099968cb4f4dc1b028ab985135f Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期四, 16 十一月 2023 20:20:47 +0800 Subject: [PATCH] Changes14 --- mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 101 insertions(+), 1 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 82fe12b..eec8bd8 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,18 +25,28 @@ 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; import com.chinaztt.ztt.common.core.util.R; import com.chinaztt.ztt.common.log.annotation.SysLog; import com.chinaztt.ztt.common.security.annotation.Inner; +import com.chinaztt.ztt.common.security.util.SecurityUtils; import com.xxl.job.core.handler.annotation.XxlJob; 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; @@ -60,6 +71,37 @@ 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); + R<Object> objectR = new R<>(); + if(partService.triggerAdd(partVo).equals("1")){ + objectR.setCode(1); + objectR.setMsg("鎿嶄綔鎴愬姛"); + }else { + objectR.setCode(0); + objectR.setMsg("鎿嶄綔澶辫触锛佽仈绯讳汉鍛樻煡鐪嬫棩蹇楋紒"); + } + return objectR; + } + + + /** * 鍒嗛〉鏌ヨ * @@ -72,6 +114,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)); } /** @@ -88,6 +133,25 @@ } 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(String date) { + String key = "syncPart_lock"+ SecurityUtils.getUser().getId(); + if (redisTemplate.hasKey(key)) { + throw new RuntimeException("鏈夊悓姝ヤ换鍔℃鍦ㄥ鐞�"); + } + return R.ok(partService.syncNewIfs(date)); } /** * 鍒嗛〉鏌ヨ宸插叧鑱旀娴嬫ā鏉跨殑闆朵欢 @@ -106,7 +170,7 @@ /** * 鏍规嵁闆朵欢鍙峰拰闆朵欢鎻忚堪鏌ヨ搴撳瓨淇℃伅鎺ュ彛 * - * @param part 闆朵欢 + * @param 闆朵欢 * @return */ @ApiOperation(value = "鏍规嵁闆朵欢鍙峰拰闆朵欢鎻忚堪鏌ヨ搴撳瓨淇℃伅鎺ュ彛", notes = "鏍规嵁闆朵欢鍙峰拰闆朵欢鎻忚堪鏌ヨ搴撳瓨淇℃伅鎺ュ彛") @@ -281,4 +345,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