فهرست منبع

东森米其林接口增加字段

纪新园 5 ماه پیش
والد
کامیت
d29b70fa5a

+ 6 - 0
blade-service-api/blade-data-api/src/main/java/org/springblade/data/extemalOrder/entity/ExternalOrder.java

@@ -252,6 +252,12 @@ public class ExternalOrder implements Serializable {
 	@ApiModelProperty(value = "同步时间")
 	@TableField(value = "createtime")
 	private String createtime;
+	/**
+	 * 优惠合计
+	 */
+	@ApiModelProperty(value = "优惠合计")
+	@TableField(value = "totalCouponAmount")
+	private String totalCouponAmount;
 	@TableField(exist = false)
 	private List<ExternalOrderItem> externalOrderItemList;
 

+ 1 - 0
blade-service/blade-data/src/main/java/org/springblade/data/extemalOrder/mapper/ExternalOrderMapper.xml

@@ -38,6 +38,7 @@
         <result column="uom" property="uom"/>
         <result column="quantity" property="quantity"/>
         <result column="unitPrice" property="unitPrice"/>
+        <result column="totalCouponAmount" property="totalCouponAmount"/>
     </resultMap>
 
     <select id="selectExternalOrderPage" resultMap="externalOrderResultMap">

+ 4 - 0
blade-service/blade-data/src/main/java/org/springblade/data/michelinApi/dto/SalesOrderDto.java

@@ -109,6 +109,10 @@ public class SalesOrderDto {
 	 */
 	private String orderGrandTotal;
 	/**
+	 *优惠合计
+	 */
+	private String totalCouponAmount;
+	/**
 	 *发货日期(yyyy/M/d)
 	 */
 	private String shipDate;

+ 85 - 80
blade-service/blade-data/src/main/java/org/springblade/data/michelinApi/service/impl/MichelinServiceImpl.java

@@ -3,7 +3,6 @@ package org.springblade.data.michelinApi.service.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import lombok.AllArgsConstructor;
-import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.data.extemalOrder.entity.ExternalOrder;
 import org.springblade.data.extemalOrder.service.IExternalOrderService;
@@ -14,7 +13,6 @@ import org.springblade.data.michelinApi.dto.LinesDto;
 import org.springblade.data.michelinApi.dto.SalesOrderDto;
 import org.springblade.data.michelinApi.dto.SalesOrderR;
 import org.springblade.data.michelinApi.service.IMichelinService;
-import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
 import java.text.SimpleDateFormat;
@@ -35,98 +33,105 @@ public class MichelinServiceImpl implements IMichelinService {
 
 	@Override
 	public String getSalesOrder(String agentId) throws Exception {
-			String geturl = MichelinValues.BASE_URL_DEV + "/GetSalesOrder";
-			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-			//设置请求体
-			Map<String, String> map = new HashMap<>();
-			//key-value的形式设置请求参数
-			map.put("agentId", agentId);
-			String result = HttpsUtils.sending(geturl, map);
-			System.out.println("==============result===============" + result);
-			System.out.println("==============请求成功时间:===============" + sdf.format(new Date()));
-			//如果返回值是标准的JSON字符串进行转换
-			JSONObject jsonObject = JSONObject.parseObject(result);
-			SalesOrderR salesOrderR = JSONObject.parseObject(jsonObject.get("response").toString(), SalesOrderR.class);
-			if (salesOrderR != null) {
-				if ("001".equals(salesOrderR.getCode())) {
-					SalesOrderDto salesOrderDto = salesOrderR.getSalesOrder();
-					if (salesOrderDto != null) {
-						String dateString = "2024-05-12 00:00:00";
-						boolean res = false;
-						if (ObjectUtils.isNotNull(salesOrderDto.getCreationTime())) {
-							Date date = sdf.parse(dateString);
-							Date date1 = sdf.parse(salesOrderDto.getCreationTime());
-							if (date1.compareTo(date) > 0) {
-								if (!salesOrderDto.getLines().isEmpty()) {
-									for (LinesDto item : salesOrderDto.getLines()) {
-										ExternalOrder order = new ExternalOrder();
-										BeanUtil.copyProperties(salesOrderDto, order);
-										order.setCreatetime(sdf.format(new Date()));
-										order.setItemLineNo(item.getLineNo());
-										order.setSku(item.getSku());
-										order.setName(item.getName());
-										order.setBrand(item.getBrand());
-										order.setItemSize(item.getSize());
-										order.setPattern(item.getPattern());
-										order.setStructure(item.getStructure());
-										order.setUom(item.getUom());
-										order.setQuantity(item.getQuantity());
-										order.setUnitPrice(item.getUnitPrice());
-										if (ObjectUtils.isNotNull(order.getSalesOrderStatus()) && "confirm".equals(order.getSalesOrderStatus())) {
-											System.out.println("==============状态confirm数据::===============" + order);
-											res = externalOrderService.save(order);
-											System.out.println("==============保存数据是否成功:===============" + res);
-										} else {
-											res = false;
-											System.out.println("==============状态废弃数据:===============" + order);
-										}
+		String geturl = MichelinValues.BASE_URL_DEV + "/GetSalesOrder";
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		//设置请求体
+		Map<String, String> map = new HashMap<>();
+		//key-value的形式设置请求参数
+		map.put("agentId", agentId);
+		String result = HttpsUtils.sending(geturl, map);
+		System.out.println("==============result===============" + result);
+		System.out.println("==============请求成功时间:===============" + sdf.format(new Date()));
+		//如果返回值是标准的JSON字符串进行转换
+		JSONObject jsonObject = JSONObject.parseObject(result);
+		SalesOrderR salesOrderR = JSONObject.parseObject(jsonObject.get("response").toString(), SalesOrderR.class);
+		if (salesOrderR != null) {
+			if ("001".equals(salesOrderR.getCode())) {
+				SalesOrderDto salesOrderDto = salesOrderR.getSalesOrder();
+				if (salesOrderDto != null) {
+					String dateString = "2024-05-12 00:00:00";
+					boolean res = false;
+					if (ObjectUtils.isNotNull(salesOrderDto.getCreationTime())) {
+						Date date = sdf.parse(dateString);
+						Date date1 = sdf.parse(salesOrderDto.getCreationTime());
+						if (date1.compareTo(date) > 0) {
+							if (!salesOrderDto.getLines().isEmpty()) {
+								int count = 0;
+								for (LinesDto item : salesOrderDto.getLines()) {
+									ExternalOrder order = new ExternalOrder();
+									BeanUtil.copyProperties(salesOrderDto, order);
+									if (count == 0) {
+										order.setTotalCouponAmount(salesOrderDto.getTotalCouponAmount());
+									} else {
+										order.setTotalCouponAmount("");
 									}
+									order.setCreatetime(sdf.format(new Date()));
+									order.setItemLineNo(item.getLineNo());
+									order.setSku(item.getSku());
+									order.setName(item.getName());
+									order.setBrand(item.getBrand());
+									order.setItemSize(item.getSize());
+									order.setPattern(item.getPattern());
+									order.setStructure(item.getStructure());
+									order.setUom(item.getUom());
+									order.setQuantity(item.getQuantity());
+									order.setUnitPrice(item.getUnitPrice());
+									if (ObjectUtils.isNotNull(order.getSalesOrderStatus()) && "confirm".equals(order.getSalesOrderStatus())) {
+										System.out.println("==============状态confirm数据::===============" + order);
+										res = externalOrderService.save(order);
+										System.out.println("==============保存数据是否成功:===============" + res);
+									} else {
+										res = false;
+										System.out.println("==============状态废弃数据:===============" + order);
+									}
+									count++;
 								}
-							} else {
-								System.out.println("==============超时废弃数据:===============" + salesOrderDto);
 							}
-						}
-						//设置请求体
-						Map<String, String> map1 = new HashMap<>();
-						//key-value的形式设置请求参数
-						map1.put("agentId", agentId);
-						map1.put("msgId", salesOrderR.getMsgId());
-						String geturl1 = MichelinValues.BASE_URL_DEV + "/AckSalesOrder";
-						if (res) {
-							map1.put("code", "001");
-							map1.put("result", "success");
-							map1.put("errMsg", "");
 						} else {
-							map1.put("code", "002");
-							map1.put("result", "error");
-							map1.put("errMsg", "数据处理失败");
+							System.out.println("==============超时废弃数据:===============" + salesOrderDto);
 						}
-						//获取了返回值
-						String result1 = HttpsUtils.sending(geturl1, map1);
-						System.out.println("==============回调接口返回数据===============" + result1);
-						//如果返回值是标准的JSON字符串进行转换
-						JSONObject jsonObject1 = JSONObject.parseObject(result1);
-						AckSalesOrderR ackSalesOrderR = JSONObject.parseObject(jsonObject1.get("response").toString(), AckSalesOrderR.class);
-						if (ackSalesOrderR != null) {
-							if ("001".equals(ackSalesOrderR.getCode())) {
-								if ("true".equals(ackSalesOrderR.getHasNext())) {
-									this.getSalesOrder(agentId);
-								}
-								return "同步成功";
-							} else {
-								return ackSalesOrderR.getErrMsg();
+					}
+					//设置请求体
+					Map<String, String> map1 = new HashMap<>();
+					//key-value的形式设置请求参数
+					map1.put("agentId", agentId);
+					map1.put("msgId", salesOrderR.getMsgId());
+					String geturl1 = MichelinValues.BASE_URL_DEV + "/AckSalesOrder";
+					if (res) {
+						map1.put("code", "001");
+						map1.put("result", "success");
+						map1.put("errMsg", "");
+					} else {
+						map1.put("code", "002");
+						map1.put("result", "error");
+						map1.put("errMsg", "数据处理失败");
+					}
+					//获取了返回值
+					String result1 = HttpsUtils.sending(geturl1, map1);
+					System.out.println("==============回调接口返回数据===============" + result1);
+					//如果返回值是标准的JSON字符串进行转换
+					JSONObject jsonObject1 = JSONObject.parseObject(result1);
+					AckSalesOrderR ackSalesOrderR = JSONObject.parseObject(jsonObject1.get("response").toString(), AckSalesOrderR.class);
+					if (ackSalesOrderR != null) {
+						if ("001".equals(ackSalesOrderR.getCode())) {
+							if ("true".equals(ackSalesOrderR.getHasNext())) {
+								this.getSalesOrder(agentId);
 							}
+							return "同步成功";
 						} else {
-							return "订单回执接口错误";
+							return ackSalesOrderR.getErrMsg();
 						}
 					} else {
-						return "单据信息为空";
+						return "订单回执接口错误";
 					}
 				} else {
-					return "获取数据错误";
+					return "单据信息为空";
 				}
 			} else {
 				return "获取数据错误";
 			}
+		} else {
+			return "获取数据错误";
+		}
 	}
 }