From bf945f3086a3d0334dbff0ef1d64d6a1d87dffc9 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期二, 16 十二月 2025 08:24:52 +0800
Subject: [PATCH] no message
---
src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 107 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java b/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
index 2fe7ea8..6e881a9 100644
--- a/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
+++ b/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
@@ -6,6 +6,12 @@
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.api.entity.OrderParams;
+import com.zy.api.entity.ReportOrderParam;
+import com.zy.api.entity.PubOrderParams;
+import com.zy.api.entity.ReportOrderParam;
+import com.zy.api.entity.SyncMatParmas;
+import com.zy.api.enums.MatLocType;
+import com.zy.api.enums.MatType;
import com.zy.api.enums.OrderType;
import com.zy.api.enums.OrderWkType;
import com.zy.api.service.KopenApiService;
@@ -14,16 +20,21 @@
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.enums.CommonEnum;
import com.zy.asrs.enums.OrderSettle;
+import com.zy.asrs.service.MatService;
import com.zy.asrs.service.OrderDetlService;
import com.zy.asrs.service.OrderService;
+import com.zy.asrs.utils.Utils;
+import com.zy.common.utils.HttpHandler;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Date;
-import java.util.List;
import java.util.Objects;
@Service("kopenApiServiceImpl")
@@ -33,6 +44,8 @@
private OrderService orderService;
@Autowired
private OrderDetlService orderDetlService;
+ @Autowired
+ private MatService matService;
/**
* 鎺ユ敹涓嬪彂璁㈠崟淇℃伅
@@ -43,7 +56,7 @@
* @return com.core.common.R
*/
@Override
- public R receiveOrders(OrderParams params) {
+ public R receiveOrders(PubOrderParams params) {
if (params.getType().equals(OrderWkType.getTypeVal(params.getType()))) {
return R.error("褰撳墠绫诲瀷涓嶆槸涓婃灦娲惧伐鍗曪紒锛�");
}
@@ -52,16 +65,91 @@
}
/**
+ * 涓婃灦娲惧伐鍗曞弽棣�
+ * @author Ryan
+ * @date 2025/11/24 15:33
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R getInDispatchResult(ReportOrderParam params) {
+ if (Objects.isNull(params)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ String response = null;
+ try {
+ response = new HttpHandler.Builder()
+ .setUri("127.0.0.1:8081")
+ .setPath("/wms/order/getInDispatchResult")
+ .setJson(JSONObject.toJSONString(params))
+ .build()
+ .doPost();
+ if (Objects.isNull(response) || response.trim().isEmpty()) {
+ return R.error("澶栫綉鎺ュ彛鏃犲搷搴旓紒锛�");
+ }
+ JSONObject jsonObject = JSONObject.parseObject(response);
+ Integer code = jsonObject.getInteger("code");
+ if (!Objects.isNull(code) && code.equals(1)) {
+ return R.ok("鍏ュ簱鍗曚笂鎶ュ畬鎴愶紒锛�");
+ } else {
+ String msg = jsonObject.getString("message");
+ return R.error(Objects.isNull(msg) ? "涓婃姤澶辫触锛侊紒" : msg);
+ }
+ } catch (Exception e) {
+ return R.error(e.getMessage());
+ }
+ }
+
+ /**
* 鍩虹闆朵欢鍙樻洿
*
* @author Ryan
* @date 2025/11/24 15:05
- * @param matnrs
+ * @param params
* @return com.core.common.R
*/
@Override
- public R basMatupdate(List<Mat> matnrs) {
- return null;
+ @Transactional(rollbackFor = Exception.class)
+ public synchronized R basMatupdate(SyncMatParmas params) {
+ if (Objects.isNull(params.getPro_komcode())) {
+ return R.error("闆朵欢缂栫爜涓嶈兘涓虹┖锛侊紒");
+ }
+ Mat matnr = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", params.getPro_komcode()));
+ if (!Objects.isNull(matnr)) {
+ // 璁㈠崟鏃堕棿
+ if (Utils.isValidFormat(params.getUpdate_time(), "yyyy-MM-dd HH:mm:ss")) {
+ Date date1 = Utils.getFormateDate(params.getUpdate_time());
+ matnr.setUpdateTime(date1);
+ }
+ matnr.setMaktx(params.getPro_name());
+ matnr.setSpecs(params.getPro_size());
+ matnr.setWeight(Double.parseDouble(params.getPro_wet()));
+ matnr.setSuppCode(params.getPro_id());
+ matnr.setTagId(MatLocType.getTag(params.getPro_type()));
+ matnr.setManu(params.getCompany_id());
+ if (!matService.updateById(matnr)) {
+ throw new CoolException("鐗╂枡鏇存柊澶辫触鎴栨棤闇�鏇存柊锛侊紒");
+ }
+ } else {
+ if (Objects.isNull(matnr)) {
+ matnr = new Mat();
+ }
+ // 璁㈠崟鏃堕棿
+ if (Utils.isValidFormat(params.getUpdate_time(), "yyyy-MM-dd HH:mm:ss")) {
+ Date date1 = Utils.getFormateDate(params.getUpdate_time());
+ matnr.setUpdateTime(date1);
+ }
+ matnr.setMaktx(params.getPro_name());
+ matnr.setMatnr(params.getPro_komcode());
+ matnr.setSpecs(params.getPro_size());
+ matnr.setWeight(Double.parseDouble(params.getPro_wet()));
+ matnr.setSuppCode(params.getPro_id());
+ matnr.setTagId(MatLocType.getTag(params.getPro_type()));
+ matnr.setManu(params.getCompany_id());
+ if (!matService.insert(matnr)) {
+ throw new CoolException("鐗╂枡鏇存柊澶辫触锛侊紒");
+ }
+ }
+ return R.ok("淇濆瓨鎴愬姛锛侊紒");
}
/**
@@ -72,7 +160,7 @@
*/
@Override
@Transactional(rollbackFor = Exception.class)
- public void addOrUpdateOrders(OrderParams params, String type) {
+ public void addOrUpdateOrders(PubOrderParams params, String type) {
if (Objects.isNull(params)) {
throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
@@ -112,7 +200,7 @@
* @param params
*/
@Transactional(rollbackFor = Exception.class)
- public void generateOrders(OrderParams params) {
+ public void generateOrders(PubOrderParams params) {
// 灏嗘暟鎹綋鏂拌鍗曟彃鍏�
Order newOrder = new Order();
if (OrderType.ORDER_IN.type.equals(OrderWkType.getTypeVal(params.getType()))) {
@@ -131,10 +219,12 @@
newOrder.setNumber(params.getDispatch_no());
// 绠卞彿
newOrder.setItemName(params.getPm_tktid());
- newOrder.setSettle(OrderSettle.ORDER_SETTLE_INIT.type);
+ newOrder.setSettle(OrderSettle.ORDER_SETTLE_HOLDING.type);
newOrder.setStatus(CommonEnum.COMMON_ENUM_Y.type);
// 璁㈠崟鏃堕棿
- newOrder.setOrderTime(DateUtils.convert(new Date(), "yyyy-MM-dd HH:mm:ss"));
+ if (Utils.isValidFormat(params.getUpdate_time(), "yyyy-MM-dd HH:mm:ss")) {
+ newOrder.setOrderTime(params.getUpdate_time());
+ }
// 鍏徃ID
newOrder.setCstmrName(params.getCompany_id());
newOrder.setCreateTime(new Date());
@@ -144,12 +234,18 @@
}
if (!Objects.isNull(params.getDetails()) && !params.getDetails().isEmpty()) {
params.getDetails().forEach(item -> {
+ Mat matnr = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", item.getPro_komcode()));
+ if (Objects.isNull(matnr)) {
+ throw new CoolException("鐗╂枡缂栫爜涓嶅瓨鍦紒锛�");
+ }
OrderDetl orderItem = new OrderDetl();
- BeanUtils.copyProperties(item, orderItem);
+ BeanUtils.copyProperties(matnr, orderItem);
orderItem.setOrderId(newOrder.getId());
orderItem.setOrderNo(newOrder.getOrderNo());
orderItem.setAnfme(Math.round(item.getInv_qty() * 10000) / 10000.0);
- orderItem.setMatnr(item.getPro_komcode());
+ orderItem.setMatnr(matnr.getMatnr());
+ orderItem.setMaktx(matnr.getMaktx());
+ orderItem.setBrand(matnr.getBrand());
orderItem.setBatch(1 + "");
orderItem.setStandby1(item.getPro_id());
//鍏宠仈涓婂姞娲惧伐鍗曞彿+闆朵欢浠g爜+渚涘簲鍟嗕唬鐮�
--
Gitblit v1.9.1