From d5e3e8e67e817f0146df30d92ff8a16db674bea8 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期一, 25 九月 2023 11:03:20 +0800
Subject: [PATCH] 9-25
---
base-server/src/main/java/com/yuanchu/mom/service/impl/TechnicalModelServiceImpl.java | 12
base-server/src/main/java/com/yuanchu/mom/service/TechnicalModelService.java | 8
inventory-server/src/main/java/com/yuanchu/mom/Task/BatchInfo.java | 22 +
framework/src/main/java/com/yuanchu/mom/utils/StringUtils.java | 403 +++++++++++++++++++++++++++++++++
framework/src/main/java/com/yuanchu/mom/utils/ServletUtils.java | 137 +++++++++++
inventory-server/src/main/java/com/yuanchu/mom/Task/InAttr.java | 29 ++
inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java | 47 +++
pom.xml | 6
base-server/src/main/java/com/yuanchu/mom/controller/TechnicalModelController.java | 14 +
9 files changed, 665 insertions(+), 13 deletions(-)
diff --git a/base-server/src/main/java/com/yuanchu/mom/controller/TechnicalModelController.java b/base-server/src/main/java/com/yuanchu/mom/controller/TechnicalModelController.java
index d10ec7e..7d623ae 100644
--- a/base-server/src/main/java/com/yuanchu/mom/controller/TechnicalModelController.java
+++ b/base-server/src/main/java/com/yuanchu/mom/controller/TechnicalModelController.java
@@ -2,7 +2,8 @@
import com.yuanchu.mom.pojo.dto.TechnicalModelDto;
-import com.yuanchu.mom.pojo.dto.TechnologyTemplateDto;
+import com.yuanchu.mom.service.TechnicalModelService;
+import com.yuanchu.mom.utils.ServletUtils;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -11,7 +12,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
-import com.yuanchu.mom.service.TechnicalModelService;
+
+import javax.servlet.http.HttpServletResponse;
/**
@@ -112,5 +114,13 @@
return Result.success("鎵归噺鍒犻櫎鎴愬姛!");
}
+ @ApiOperation(value = "瀵煎嚭")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "type", value = "绫诲瀷", dataTypeClass = String.class, required = true)
+ })
+ public void downloadDataValueExcel(String type){
+ HttpServletResponse response = ServletUtils.getResponse();
+ technicalModelService.downloadDataValueExcel(response,type);
+ }
}
diff --git a/base-server/src/main/java/com/yuanchu/mom/service/TechnicalModelService.java b/base-server/src/main/java/com/yuanchu/mom/service/TechnicalModelService.java
index 21ac728..62a530f 100644
--- a/base-server/src/main/java/com/yuanchu/mom/service/TechnicalModelService.java
+++ b/base-server/src/main/java/com/yuanchu/mom/service/TechnicalModelService.java
@@ -4,6 +4,7 @@
import com.yuanchu.mom.pojo.TechnicalModel;
import com.yuanchu.mom.pojo.dto.TechnicalModelDto;
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
@@ -81,5 +82,12 @@
* @param ids
*/
void delAllTech(String ids);
+
+ /**
+ * 瀵煎嚭
+ * @param response
+ * @param type
+ */
+ void downloadDataValueExcel(HttpServletResponse response, String type);
}
diff --git a/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnicalModelServiceImpl.java b/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnicalModelServiceImpl.java
index d1e3e0b..c7ab012 100644
--- a/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnicalModelServiceImpl.java
+++ b/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnicalModelServiceImpl.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.mapper.TechnicalModelMapper;
-import com.yuanchu.mom.mapper.TechniqueModelMapper;
import com.yuanchu.mom.pojo.TechnicalModel;
import com.yuanchu.mom.pojo.dto.TechnicalModelDto;
import com.yuanchu.mom.service.TechnicalModelService;
@@ -11,6 +10,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
@@ -96,5 +96,15 @@
public void delAllTech(String ids) {
technicalModelMapper.delAllTech(ids);
}
+
+ /**
+ * 瀵煎嚭
+ * @param response
+ * @param type
+ */
+ @Override
+ public void downloadDataValueExcel(HttpServletResponse response, String type) {
+
+ }
}
diff --git a/framework/src/main/java/com/yuanchu/mom/utils/ServletUtils.java b/framework/src/main/java/com/yuanchu/mom/utils/ServletUtils.java
new file mode 100644
index 0000000..d5c7ba9
--- /dev/null
+++ b/framework/src/main/java/com/yuanchu/mom/utils/ServletUtils.java
@@ -0,0 +1,137 @@
+package com.yuanchu.mom.utils;
+
+
+import cn.hutool.core.convert.Convert;
+import org.springframework.web.context.request.RequestAttributes;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import java.io.IOException;
+
+/**
+ * 瀹㈡埛绔伐鍏风被
+ *
+ * @author 寮犲
+ */
+public class ServletUtils
+{
+ /**
+ * 鑾峰彇String鍙傛暟
+ */
+ public static String getParameter(String name)
+ {
+ return getRequest().getParameter(name);
+ }
+
+ /**
+ * 鑾峰彇String鍙傛暟
+ */
+ public static String getParameter(String name, String defaultValue)
+ {
+ return Convert.toStr(getRequest().getParameter(name), defaultValue);
+ }
+
+ /**
+ * 鑾峰彇Integer鍙傛暟
+ */
+ public static Integer getParameterToInt(String name)
+ {
+ return Convert.toInt(getRequest().getParameter(name));
+ }
+
+ /**
+ * 鑾峰彇Integer鍙傛暟
+ */
+ public static Integer getParameterToInt(String name, Integer defaultValue)
+ {
+ return Convert.toInt(getRequest().getParameter(name), defaultValue);
+ }
+
+ /**
+ * 鑾峰彇request
+ */
+ public static HttpServletRequest getRequest()
+ {
+ return getRequestAttributes().getRequest();
+ }
+
+ /**
+ * 鑾峰彇response
+ */
+ public static HttpServletResponse getResponse()
+ {
+ return getRequestAttributes().getResponse();
+ }
+
+ /**
+ * 鑾峰彇session
+ */
+ public static HttpSession getSession()
+ {
+ return getRequest().getSession();
+ }
+
+ public static ServletRequestAttributes getRequestAttributes()
+ {
+ RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
+ return (ServletRequestAttributes) attributes;
+ }
+
+ /**
+ * 灏嗗瓧绗︿覆娓叉煋鍒板鎴风
+ *
+ * @param response 娓叉煋瀵硅薄
+ * @param string 寰呮覆鏌撶殑瀛楃涓�
+ * @return null
+ */
+ public static String renderString(HttpServletResponse response, String string)
+ {
+ try
+ {
+ response.setContentType("application/json");
+ response.setCharacterEncoding("utf-8");
+ response.getWriter().print(string);
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * 鏄惁鏄疉jax寮傛璇锋眰
+ *
+ * @param request
+ */
+ public static boolean isAjaxRequest(HttpServletRequest request)
+ {
+ String accept = request.getHeader("accept");
+ if (accept != null && accept.indexOf("application/json") != -1)
+ {
+ return true;
+ }
+
+ String xRequestedWith = request.getHeader("X-Requested-With");
+ if (xRequestedWith != null && xRequestedWith.indexOf("XMLHttpRequest") != -1)
+ {
+ return true;
+ }
+
+ String uri = request.getRequestURI();
+ if (StringUtils.inStringIgnoreCase(uri, ".json", ".xml"))
+ {
+ return true;
+ }
+
+ String ajax = request.getParameter("__ajax");
+ if (StringUtils.inStringIgnoreCase(ajax, "json", "xml"))
+ {
+ return true;
+ }
+ return false;
+ }
+}
diff --git a/framework/src/main/java/com/yuanchu/mom/utils/StringUtils.java b/framework/src/main/java/com/yuanchu/mom/utils/StringUtils.java
new file mode 100644
index 0000000..3e4ce41
--- /dev/null
+++ b/framework/src/main/java/com/yuanchu/mom/utils/StringUtils.java
@@ -0,0 +1,403 @@
+package com.yuanchu.mom.utils;
+
+import cn.hutool.core.text.StrFormatter;
+
+import java.util.Collection;
+import java.util.Map;
+
+/**
+ * 瀛楃涓插伐鍏风被
+ *
+ * @author 寮犲
+ */
+public class StringUtils extends org.apache.commons.lang3.StringUtils
+{
+ /** 绌哄瓧绗︿覆 */
+ private static final String NULLSTR = "";
+
+ /** 涓嬪垝绾� */
+ private static final char SEPARATOR = '_';
+
+ /**
+ * 鑾峰彇鍙傛暟涓嶄负绌哄��
+ * @param value defaultValue 瑕佸垽鏂殑value
+ * @return value 杩斿洖鍊�
+ */
+ public static <T> T nvl(T value, T defaultValue)
+ {
+ return value != null ? value : defaultValue;
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓狢ollection鏄惁涓虹┖锛� 鍖呭惈List锛孲et锛孮ueue
+ *
+ * @param coll 瑕佸垽鏂殑Collection
+ * @return true锛氫负绌� false锛氶潪绌�
+ */
+ public static boolean isEmpty(Collection<?> coll)
+ {
+ return isNull(coll) || coll.isEmpty();
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓狢ollection鏄惁闈炵┖锛屽寘鍚獿ist锛孲et锛孮ueue
+ *
+ * @param coll 瑕佸垽鏂殑Collection
+ * @return true锛氶潪绌� false锛氱┖
+ */
+ public static boolean isNotEmpty(Collection<?> coll)
+ {
+ return !isEmpty(coll);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓璞℃暟缁勬槸鍚︿负绌�
+ *
+ * @param objects 瑕佸垽鏂殑瀵硅薄鏁扮粍
+ ** @return true锛氫负绌� false锛氶潪绌�
+ */
+ public static boolean isEmpty(Object[] objects)
+ {
+ return isNull(objects) || (objects.length == 0);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓璞℃暟缁勬槸鍚﹂潪绌�
+ *
+ * @param objects 瑕佸垽鏂殑瀵硅薄鏁扮粍
+ * @return true锛氶潪绌� false锛氱┖
+ */
+ public static boolean isNotEmpty(Object[] objects)
+ {
+ return !isEmpty(objects);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓狹ap鏄惁涓虹┖
+ *
+ * @param map 瑕佸垽鏂殑Map
+ * @return true锛氫负绌� false锛氶潪绌�
+ */
+ public static boolean isEmpty(Map<?, ?> map)
+ {
+ return isNull(map) || map.isEmpty();
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓狹ap鏄惁涓虹┖
+ *
+ * @param map 瑕佸垽鏂殑Map
+ * @return true锛氶潪绌� false锛氱┖
+ */
+ public static boolean isNotEmpty(Map<?, ?> map)
+ {
+ return !isEmpty(map);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓瓧绗︿覆鏄惁涓虹┖涓�
+ *
+ * @param str String
+ * @return true锛氫负绌� false锛氶潪绌�
+ */
+ public static boolean isEmpty(String str)
+ {
+ return isNull(str) || NULLSTR.equals(str.trim());
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓瓧绗︿覆鏄惁涓洪潪绌轰覆
+ *
+ * @param str String
+ * @return true锛氶潪绌轰覆 false锛氱┖涓�
+ */
+ public static boolean isNotEmpty(String str)
+ {
+ return !isEmpty(str);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓璞℃槸鍚︿负绌�
+ *
+ * @param object Object
+ * @return true锛氫负绌� false锛氶潪绌�
+ */
+ public static boolean isNull(Object object)
+ {
+ return object == null;
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓璞℃槸鍚﹂潪绌�
+ *
+ * @param object Object
+ * @return true锛氶潪绌� false锛氱┖
+ */
+ public static boolean isNotNull(Object object)
+ {
+ return !isNull(object);
+ }
+
+ /**
+ * * 鍒ゆ柇涓�涓璞℃槸鍚︽槸鏁扮粍绫诲瀷锛圝ava鍩烘湰鍨嬪埆鐨勬暟缁勶級
+ *
+ * @param object 瀵硅薄
+ * @return true锛氭槸鏁扮粍 false锛氫笉鏄暟缁�
+ */
+ public static boolean isArray(Object object)
+ {
+ return isNotNull(object) && object.getClass().isArray();
+ }
+
+ /**
+ * 鍘荤┖鏍�
+ */
+ public static String trim(String str)
+ {
+ return (str == null ? "" : str.trim());
+ }
+
+ /**
+ * 鎴彇瀛楃涓�
+ *
+ * @param str 瀛楃涓�
+ * @param start 寮�濮�
+ * @return 缁撴灉
+ */
+ public static String substring(final String str, int start)
+ {
+ if (str == null)
+ {
+ return NULLSTR;
+ }
+
+ if (start < 0)
+ {
+ start = str.length() + start;
+ }
+
+ if (start < 0)
+ {
+ start = 0;
+ }
+ if (start > str.length())
+ {
+ return NULLSTR;
+ }
+
+ return str.substring(start);
+ }
+
+ /**
+ * 鎴彇瀛楃涓�
+ *
+ * @param str 瀛楃涓�
+ * @param start 寮�濮�
+ * @param end 缁撴潫
+ * @return 缁撴灉
+ */
+ public static String substring(final String str, int start, int end)
+ {
+ if (str == null)
+ {
+ return NULLSTR;
+ }
+
+ if (end < 0)
+ {
+ end = str.length() + end;
+ }
+ if (start < 0)
+ {
+ start = str.length() + start;
+ }
+
+ if (end > str.length())
+ {
+ end = str.length();
+ }
+
+ if (start > end)
+ {
+ return NULLSTR;
+ }
+
+ if (start < 0)
+ {
+ start = 0;
+ }
+ if (end < 0)
+ {
+ end = 0;
+ }
+
+ return str.substring(start, end);
+ }
+
+ /**
+ * 鏍煎紡鍖栨枃鏈�, {} 琛ㄧず鍗犱綅绗�<br>
+ * 姝ゆ柟娉曞彧鏄畝鍗曞皢鍗犱綅绗� {} 鎸夌収椤哄簭鏇挎崲涓哄弬鏁�<br>
+ * 濡傛灉鎯宠緭鍑� {} 浣跨敤 \\杞箟 { 鍗冲彲锛屽鏋滄兂杈撳嚭 {} 涔嬪墠鐨� \ 浣跨敤鍙岃浆涔夌 \\\\ 鍗冲彲<br>
+ * 渚嬶細<br>
+ * 閫氬父浣跨敤锛歠ormat("this is {} for {}", "a", "b") -> this is a for b<br>
+ * 杞箟{}锛� format("this is \\{} for {}", "a", "b") -> this is \{} for a<br>
+ * 杞箟\锛� format("this is \\\\{} for {}", "a", "b") -> this is \a for b<br>
+ *
+ * @param template 鏂囨湰妯℃澘锛岃鏇挎崲鐨勯儴鍒嗙敤 {} 琛ㄧず
+ * @param params 鍙傛暟鍊�
+ * @return 鏍煎紡鍖栧悗鐨勬枃鏈�
+ */
+ public static String format(String template, Object... params){
+ if (isEmpty(params) || isEmpty(template))
+ {
+ return template;
+ }
+ return StrFormatter.format(template, params);
+ }
+
+ /**
+ * 涓嬪垝绾胯浆椹煎嘲鍛藉悕
+ */
+ public static String toUnderScoreCase(String str)
+ {
+ if (str == null)
+ {
+ return null;
+ }
+ StringBuilder sb = new StringBuilder();
+ // 鍓嶇疆瀛楃鏄惁澶у啓
+ boolean preCharIsUpperCase = true;
+ // 褰撳墠瀛楃鏄惁澶у啓
+ boolean curreCharIsUpperCase = true;
+ // 涓嬩竴瀛楃鏄惁澶у啓
+ boolean nexteCharIsUpperCase = true;
+ for (int i = 0; i < str.length(); i++)
+ {
+ char c = str.charAt(i);
+ if (i > 0)
+ {
+ preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1));
+ }
+ else
+ {
+ preCharIsUpperCase = false;
+ }
+
+ curreCharIsUpperCase = Character.isUpperCase(c);
+
+ if (i < (str.length() - 1))
+ {
+ nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1));
+ }
+
+ if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase)
+ {
+ sb.append(SEPARATOR);
+ }
+ else if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase)
+ {
+ sb.append(SEPARATOR);
+ }
+ sb.append(Character.toLowerCase(c));
+ }
+
+ return sb.toString();
+ }
+
+ /**
+ * 鏄惁鍖呭惈瀛楃涓�
+ *
+ * @param str 楠岃瘉瀛楃涓�
+ * @param strs 瀛楃涓茬粍
+ * @return 鍖呭惈杩斿洖true
+ */
+ public static boolean inStringIgnoreCase(String str, String... strs)
+ {
+ if (str != null && strs != null)
+ {
+ for (String s : strs)
+ {
+ if (str.equalsIgnoreCase(trim(s)))
+ {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ /**
+ * 灏嗕笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆杞崲涓洪┘宄板紡銆傚鏋滆浆鎹㈠墠鐨勪笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆涓虹┖锛屽垯杩斿洖绌哄瓧绗︿覆銆� 渚嬪锛欻ELLO_WORLD->HelloWorld
+ *
+ * @param name 杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓�
+ * @return 杞崲鍚庣殑椹煎嘲寮忓懡鍚嶇殑瀛楃涓�
+ */
+ public static String convertToCamelCase(String name)
+ {
+ StringBuilder result = new StringBuilder();
+ // 蹇�熸鏌�
+ if (name == null || name.isEmpty())
+ {
+ // 娌″繀瑕佽浆鎹�
+ return "";
+ }
+ else if (!name.contains("_"))
+ {
+ // 涓嶅惈涓嬪垝绾匡紝浠呭皢棣栧瓧姣嶅ぇ鍐�
+ return name.substring(0, 1).toUpperCase() + name.substring(1);
+ }
+ // 鐢ㄤ笅鍒掔嚎灏嗗師濮嬪瓧绗︿覆鍒嗗壊
+ String[] camels = name.split("_");
+ for (String camel : camels)
+ {
+ // 璺宠繃鍘熷瀛楃涓蹭腑寮�澶淬�佺粨灏剧殑涓嬫崲绾挎垨鍙岄噸涓嬪垝绾�
+ if (camel.isEmpty())
+ {
+ continue;
+ }
+ // 棣栧瓧姣嶅ぇ鍐�
+ result.append(camel.substring(0, 1).toUpperCase());
+ result.append(camel.substring(1).toLowerCase());
+ }
+ return result.toString();
+ }
+
+ /**
+ * 椹煎嘲寮忓懡鍚嶆硶 渚嬪锛歶ser_name->userName
+ */
+ public static String toCamelCase(String s)
+ {
+ if (s == null)
+ {
+ return null;
+ }
+ s = s.toLowerCase();
+ StringBuilder sb = new StringBuilder(s.length());
+ boolean upperCase = false;
+ for (int i = 0; i < s.length(); i++)
+ {
+ char c = s.charAt(i);
+
+ if (c == SEPARATOR)
+ {
+ upperCase = true;
+ }
+ else if (upperCase)
+ {
+ sb.append(Character.toUpperCase(c));
+ upperCase = false;
+ }
+ else
+ {
+ sb.append(c);
+ }
+ }
+ return sb.toString();
+ }
+
+ @SuppressWarnings("unchecked")
+ public static <T> T cast(Object obj)
+ {
+ return (T) obj;
+ }
+}
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/Task/BatchInfo.java b/inventory-server/src/main/java/com/yuanchu/mom/Task/BatchInfo.java
new file mode 100644
index 0000000..e8d5d2a
--- /dev/null
+++ b/inventory-server/src/main/java/com/yuanchu/mom/Task/BatchInfo.java
@@ -0,0 +1,22 @@
+package com.yuanchu.mom.Task;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/9/25
+ */
+@Data
+public class BatchInfo implements Serializable {
+ private String orderNo;
+ private String releaseNo;
+ private String lineNo;
+ private String partNo;
+ private String lotBatchNo;
+ private String locationNo;
+ private Integer qtyToReceive;
+ private Integer qtyToInspect;
+ private String receiveCase;
+}
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/Task/InAttr.java b/inventory-server/src/main/java/com/yuanchu/mom/Task/InAttr.java
new file mode 100644
index 0000000..e17523d
--- /dev/null
+++ b/inventory-server/src/main/java/com/yuanchu/mom/Task/InAttr.java
@@ -0,0 +1,29 @@
+package com.yuanchu.mom.Task;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/9/25
+ */
+@Data
+public class InAttr implements Serializable {
+
+ private String recordId;
+
+ private String syscode;
+
+ private String sysmodel;
+
+ private List<BatchInfo>batchInfo;
+
+ public InAttr(List<BatchInfo> batchInfo) {
+ this.recordId = "13dd9f788718401b90ca3424f2a71412";
+ this.syscode = "PurchReceive";
+ this.sysmodel = "閲囪喘鎺ユ敹aaa";
+ this.batchInfo = batchInfo;
+ }
+}
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java b/inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java
index 00cfc7d..2874e40 100644
--- a/inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java
+++ b/inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java
@@ -5,10 +5,7 @@
import com.yuanchu.mom.utils.JsonUtil;
import com.yuanchu.mom.vo.Result;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -27,21 +24,27 @@
private static final String DOWN_LOAD = "http://192.168.18.16:9999/order/otcService/download/";
- private static final String IFS_URL="http://192.168.20.47:8008/PurchService.ashx?contract=ZTKJ&contractKey=4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=&procedureName=QUERY_POL_RECEIPT_STD&userId=mes_user&inAttr={\"ORDER_NO\":\"-2050314\"}";
+ private static final String IFS_URL = "http://192.168.20.47:8008/PurchService.ashx?contract=ZTKJ&contractKey=4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=&procedureName=QUERY_POL_RECEIPT_STD&userId=mes_user&inAttr={\"ORDER_NO\":\"-2050314\"}";
+
+ private static final String IMPORT_POL_RECEIVE = "http://192.168.20.47:8081/ErpServices/PurchaseReceiptService/importPolReceive";
private static final Map<String, String> GET_TOKEN_HEADER = new HashMap<>(2);
private static final Map<String, Object> USER_INFO = new HashMap<>(4);
+ private static final Map<String, Object> importPolReceiveMap = new HashMap<>();
+
static {
GET_TOKEN_HEADER.put("Authorization", "Basic cGlnOnBpZw==");
GET_TOKEN_HEADER.put("Content-Type", "application/x-www-form-urlencoded");
-
-
USER_INFO.put("username", "external_interface_hyxt_mes");
USER_INFO.put("password", "uCc+u3iP83WhO2dAU+5HUkCgfINnKfrHXMT/lwI/1f0=");
USER_INFO.put("scope", "server");
USER_INFO.put("grant_type", "password");
+
+ importPolReceiveMap.put("contract", "ZTKJ");
+ importPolReceiveMap.put("contractKey", "4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=");
+ importPolReceiveMap.put("userId", "mes_user");
}
private static String getToken() {
@@ -93,13 +96,37 @@
/**
* ifs
+ *
* @return
*/
- public static List<Map<String, Object>>ifsInterfaces(){
+ public static List<Map<String, Object>> ifsInterfaces() {
String result = HttpRequest.get(IFS_URL)
.header("Authorization", "Bearer " + getToken())
.execute().body();
- Map<String, Object>map=JsonUtil.jsonToPojo(result,Map.class);
- return JsonUtil.jsonToPojo(JsonUtil.jsonToString(map.get("LIST_INFO")),List.class);
+ Map<String, Object> map = JsonUtil.jsonToPojo(result, Map.class);
+ return JsonUtil.jsonToPojo(JsonUtil.jsonToString(map.get("LIST_INFO")), List.class);
+ }
+
+ public static String importPolReceive(List<BatchInfo> batchInfoList) {
+ importPolReceiveMap.put("inAttr", new InAttr(batchInfoList));
+ return HttpRequest.post(IMPORT_POL_RECEIVE)
+ .body(JsonUtil.jsonToString(importPolReceiveMap))
+ .header("content-type", "application/json")
+ .execute().body();
+ }
+
+ public static void main(String[] args) {
+ BatchInfo batchInfo = new BatchInfo();
+ batchInfo.setOrderNo("260984");
+ batchInfo.setReleaseNo("1");
+ batchInfo.setLineNo("1");
+ batchInfo.setPartNo("A0190008000400");
+ batchInfo.setLotBatchNo("*");
+ batchInfo.setLocationNo("QC01");
+ batchInfo.setQtyToReceive(1);
+ batchInfo.setQtyToInspect(0);
+ batchInfo.setReceiveCase("鎺ユ敹鍒版潵鏂欏尯");
+ List<BatchInfo> batchInfos = Arrays.asList(batchInfo);
+ System.out.println(importPolReceive(batchInfos));
}
}
diff --git a/pom.xml b/pom.xml
index 797173f..1929bb9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -91,6 +91,12 @@
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
+ <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ </dependency>
+
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
--
Gitblit v1.9.3