20240115-ljl-multiPay
ljl 1 year ago
commit e2693dbfdc

35
.gitignore vendored

@ -0,0 +1,35 @@
/target/
/classes
!.mvn/wrapper/maven-wrapper.jar
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/build/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
.DS_Store
*.log
logs
*.rdb
target/

@ -0,0 +1,13 @@
# SPI测试
curl --location --request POST 'localhost:8080/base/cloud/spi' \
--header 'x-tt-logid: 123456789' \
--header 'Content-Type: application/json' \
--data-raw '{
"appId":"7264840234423027259",
"authId":"4463798",
"method":"getProductInfo",
"data":"{\"sourceItemUrls\":[\"http://detail.1688.com/offer/1000090775.html?amug_web_biz=fwmkt&amug_web_fl_src=cy&entranceCode=entrance_pft\"]}"
}'
注意data中得json要反斜杠

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.jinritemai.cloud</groupId>
<artifactId>ms-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ms-api</artifactId>
<name>ms-api</name>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch-core</artifactId>
<version>7.10.2</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

@ -0,0 +1,16 @@
package com.ms.api.dto;
import lombok.Data;
/**
* author hahafeng
* created_at 2022/7/10 1:01
*/
@Data
public class ItemDTO {
private String title;
private Integer price;
private Integer start;
private Integer end;
private Integer length;
}

@ -0,0 +1,27 @@
package com.ms.api.dto.auth;
import lombok.Data;
import java.util.List;
/*
* 1688
*/
@Data
public class CheckDsAppAuthExpireRequestDTO {
/*
* id
*/
private List<String> userIds;
/**
* 1688id
*/
private String memberId;
/**
*
*/
private String authCode;
}

@ -0,0 +1,8 @@
package com.ms.api.dto.auth;
public class GetAuthInfosRequestDTO {
/*
* id
*/
private String shopId;
}

@ -0,0 +1,18 @@
package com.ms.api.dto.auth;
import lombok.Data;
import java.util.Date;
import java.util.List;
/*
* 1688
*/
@Data
public class GetAuthShopMemberInfosRequestDTO {
/*
* id
*/
private String shopId;
}

@ -0,0 +1,18 @@
package com.ms.api.dto.auth;
import lombok.Data;
import java.util.List;
/*
* 1688
*/
@Data
public class GetPlatformAuthUrlRequestDTO {
/**
* id
*/
private String userId;
}

@ -0,0 +1,30 @@
package com.ms.api.dto.auth;
import lombok.Data;
/*
* 1688
*/
@Data
public class MemberAuthCallBackRequestDTO {
/**
* ID
*/
private String userId;
/**
* 1688ID
*/
private String cnaliMemberId;
private String authCode;
/**
*
*/
private String gmtMemberExpireTime;
private String url;
private String body;
}

@ -0,0 +1,24 @@
package com.ms.api.dto.auth;
import lombok.Data;
/*
* 1688
*/
@Data
public class PlatformAuthCallBackRequestDTO {
/**
* ID
*/
private String userId;
/**
* 1688ID
*/
private String cnaliMemberId;
/**
*
*/
private String gmtMemberExpireTime;
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.List;
@Data
public class BatchAddPurchaseConfirmLogRequestDTO {
private String userId;
private String purchaseSource;
private String platform;
private OperateInfoDTO operateInfo;
private List<PlatformOrderDTO> platformOrders;
}

@ -0,0 +1,35 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@Data
public class BatchCreateDistributionOrdersRequestDTO {
private List<PlatformOrderDTO> platformOrders;
private boolean isRepurchase;
private String actionSource;
private String purchaseSource;
private HashMap<String, String> platformOrderIdAndPurchaseConfirmLogIdMap;
private Integer isAutoPay;
private String platform;
private OperateInfoDTO operateInfo;
public List<String> getOrderIds() {
List<String> orderIds = new ArrayList<>();
for (PlatformOrderDTO platformOrder: getPlatformOrders()) {
orderIds.add(platformOrder.getPlatformOrderId());
}
return orderIds;
}
public List<PlatformOrderItemDTO> getAllItems() {
List<PlatformOrderItemDTO> items = new ArrayList<>();
for (PlatformOrderDTO platformOrder: getPlatformOrders()) {
items.addAll(platformOrder.getItems());
}
return items;
}
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.List;
@Data
public class CanclePurchaseOrderRequestDTO {
private String orderId;
private String purchaseOrderSn;
private String purchasePlatform;
private List<Long> skuIds;
private String actionSource;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
@Data
public class ClosePurchaseOrderRequestDTO {
private String orderId;
private String purchaseOrderSn;
}

@ -0,0 +1,26 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class ConsigneeInfoDTO {
private String fullname;
private String telephone;
private String mobile;
private Integer provinceAreaId;
private String province;
private Integer cityAreaId;
private String city;
private Integer countyAreaId;
private String county;
private Integer townAreaId;
private String town;
private String address;
private String fullAddress;
private Boolean hasHide = true;
private List<String> hasDecryptFields = new ArrayList<>();
private Boolean isManualInput = false;
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
@Data
public class EncryptOutOrderInfoDTO {
private Boolean encryptOrder;
private String outPlatformCode;
private String outPlatformOrderNo;
private String outPlatformAppkey;
private String encryptReceiverName;
private String encryptReceiverMobile;
private String encryptReceiverAddress;
}

@ -0,0 +1,13 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.List;
@Data
public class GetPurchaseOrderItemsAndSourceItemsRequestDTO {
private List<String> shopIds;
private String platform;
private List<String> platformItemIds;
private List<String> platformOrderIds;
}

@ -0,0 +1,13 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
@Data
public class OperateInfoDTO {
private String userId;
private String ip;
public OperateInfoDTO(String userId) {
this.userId = userId;
}
}

@ -0,0 +1,18 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
import java.util.List;
@Data
public class PlatformOrderDTO {
private String userId;
private String platformOrderId;
private String shopId;
private ConsigneeInfoDTO consigneeInfo;
private String buyerRemark;
private EncryptOutOrderInfoDTO encryptOutOrderInfo;
private List<PlatformOrderItemDTO> items;
private String sourceOrderBuyerRemark;
private String sourceOrderSellerMemo;
}

@ -0,0 +1,23 @@
package com.ms.api.dto.dsapi.request;
import com.alibaba.fastjson.annotation.JSONField;
import com.ms.api.util.DoubleValueSerializer;
import lombok.Data;
@Data
public class PlatformOrderItemDTO {
private String sourceItemId;
private String specId;
private Long sourceSkuId;
private String platformItemId;
private String platformOrderId;
private Integer itemTotal;
@JSONField(serializeUsing = DoubleValueSerializer.class)
private Double jxhyPrice;
private Boolean isJxhyOffer;
private String instanceCode;
private String platformSkuSubName;
private Long platformSkuId;
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsapi.request;
import lombok.Data;
@Data
public class SavePlatformManualSelectedSkuRequestDTO {
private String userId;
private String platform;
private String platformItemId;
private String platformSkuId;
private String sourceSkuId;
private String sourceItemId;
private OperateInfoDTO operateInfo;
}

@ -0,0 +1,10 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
import java.util.HashMap;
@Data
public class BatchAddDsPurchaseConfirmLogResponseDTO extends CommonResponseDTO {
HashMap<String, Long> platformOrderIdAndPurchaseConfirmLogIdMap;
}

@ -0,0 +1,13 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
import java.util.List;
@Data
public class BatchCreateDistributionOrdersResponseDTO extends CommonResponseDTO {
private Integer successCount;
private Integer failCount;
private List<DsSuccessRetDTO> successList;
private List<DsErrorRetDTO> errorList;
}

@ -0,0 +1,23 @@
package com.ms.api.dto.dsapi.response;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
@Data
public class CommonResponseDTO {
@JSONField(name = "code")
protected String code;
@JSONField(name = "message")
protected String message;
@JSONField(name = "result")
protected String result;
@JSONField(name = "reason")
protected String reason;
public boolean isSuccess() {
return "success".equals(result);
}
}

@ -0,0 +1,15 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
@Data
public class DsErrorRetDTO {
private Integer isEncryptOrder;
private Integer isSupportEncryptOrder;
private String platformOrderId;
private String[] platformSkuIds;
private String result;
private String code;
private String reason;
private String message;
}

@ -0,0 +1,11 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
@Data
public class DsPayRetDTO {
private String result;
private String code;
private String reason;
private String message;
}

@ -0,0 +1,25 @@
package com.ms.api.dto.dsapi.response;
import com.ms.api.dto.dsorder.PurchaseOrderDTO;
import lombok.Data;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Data
public class DsSuccessRetDTO {
private String platformOrderId;
private String result;
private String reason;
private String code;
private String message;
private Integer createAlibabaOrderLogId;
private Integer isEncryptOrder;
private Integer isUseManualConsignee;
private String flow;
private Boolean includeSplitJxhy;
private Map<String, CommonResponseDTO> memoRet;
private HashMap<String, DsPayRetDTO> payRet;
private List<PurchaseOrderDTO> relatePurchaseOrderInfos;
}

@ -0,0 +1,10 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class GetPlatformAuthUrlResponseDTO extends CommonResponseDTO{
private String redirectUrl;
}

@ -0,0 +1,8 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
@Data
public class GetPlatformShopPurchaseSettingResponseDTO extends CommonResponseDTO {
private PlatformShopPurchaseSettingDTO purchaseSetting;
}

@ -0,0 +1,176 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@Data
public class GetPurchaseOrderItemsAndSourceItemsResponseDTO extends CommonResponseDTO {
private Map<String, ProductInfo> sourceItemIdAndProductInfoMap;
private Map<String, CommonResponseDTO> sourceItemIdAndProductApiRetMap;
private Map<String, Map<String, List<SourceItemSkuRelation>>> platformItemIdAndSourceItemSkuRelationMap;
private Map<String, List<PurchaseOrderItem>> platformOrderIdAndPurchaseOrderItemsMap;
private Map<String, List<PurchaseOrder>> platformOrderIdAndPurchaseOrdersMap;
private Map<String, SourceItemInfo> platformItemIdAndSourceItemInfoMap;
@Data
public static class ProductInfo implements Serializable {
private Long sourceItemId;
private String productType;
private String categoryName;
private String status;
private String title;
private String productUrl;
private List<String> images;
private String instanceCode;
private Integer isJxhyOffer;
private String sellerLoginId;
private Long sellerId;
private String resourceOwner;
private List<Sku> skus;
private EncryptLogisticsOrderSupportChannel encryptLogisticsOrderSupportChannel;
private Map<String, SourceItemSkuRelation> platformSkuIdAndSourceSkuInfoMap;
private Map<String, String> platformSkuIdAndSourceSkuIdMap;
}
@Data
public static class Sku implements Serializable {
private Long sourceSkuId;
private String specId;
private Double retailPrice;
private Double price;
private Double consignPrice;
private String img;
private String skuSubName;
private Long sourceItemId;
private Integer stock;
private String instanceCode;
private Integer isJxhyOffer;
private Double jxhyPrice;
}
@Data
public static class SourceItemSkuRelation implements Serializable {
private Integer moveProductManualSourceSkuRelationId;
private Integer moveProductManualSourceId;
private Long platformSkuId;
private Long sourceSkuId;
private Integer sourceNum;
private String confirmNumRatio;
private String gmtCreate;
private String gmtModified;
private Long platformItemId;
private Long sourceItemId;
}
@Data
public static class PurchaseOrderItem implements Serializable {
private Long purchaseOrderItemId;
private Long purchaseOrderId;
private Long sourceOrderId;
private Long productId;
private Long skuId;
private String memberId;
private String productImgUrl;
private String statusStr;
private String refundStatus;
private String productSnapshotUrl;
private Double itemAmount;
private Double price;
private Long subItemId;
private String specId;
private String weight;
private String quantity;
private String subItemIdString;
private String unit;
private Integer quantityFactor;
private String name;
private Integer logisticsStatus;
private Double refund;
private String status;
private String weightUnit;
private String skuSubName;
private String gmtCreate;
private String gmtModified;
private String platformOrderId;
private Long platformItemId;
private Long platformSkuId;
private String flow;
private String refundStatusText;
private String statusText;
}
@Data
public static class PurchaseOrder implements Serializable {
private Long purchaseOrderId;
private String sourceOrderId;
private String memberId;
private String payTime;
private Double discount;
private String buyerLevel;
private Double sumProductPayment;
private String buyerFeedback;
private Integer sellerOrder;
private String buyerLoginId;
private String modifyTime;
private String subBuyerLoginId;
private String completeTime;
private String sellerLoginId;
private String buyerId;
private String closeOperateType;
private Double totalAmount;
private Double shippingFee;
private String sellerId;
private String buyerUserId;
private Double refund;
private String status;
private Double refundPayment;
private Double couponFee;
private String refundStatus;
private String remark;
private String confirmedTime;
private String tradeType;
private String receivingTime;
private String idOfStr;
private String refundStatusForAs;
private String sellerUserId;
private String createTime;
private String refundId;
private String tradeTypeDesc;
private String tradeTypeCode;
private String waybill;
private Long logisticsId;
private String logisticsName;
private String alibabaLogisticsIds;
private String toFullNameMd5;
private String toMobileMd5;
private String toFullNameS;
private String toMobileS;
private String filterIsTown;
private String filterItemCount;
private String filterItemTotal;
private String sellerNote;
private String platformPushStatus;
private String purchaseSource;
private String exceptionType;
private String oldExceptionType;
private String gmtCreate;
private String gmtModified;
private String duplicateSmd5;
}
@Data
public static class SourceItemInfo implements Serializable {
private ProductInfo productInfo;
private Long sourceItemId;
private CommonResponseDTO productApiRet;
}
@Data
public static class EncryptLogisticsOrderSupportChannel implements Serializable {
private List<String> supportChannels;
}
}

@ -0,0 +1,8 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
@Data
public class GetPurchaseOrderPayUrlResponseDTO extends CommonResponseDTO{
private String payUrl;
}

@ -0,0 +1,21 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
import java.util.HashMap;
@Data
public class PlatformShopPurchaseSettingDTO {
private Integer platformShopId;
private Integer isEncryptDsOrder;
private String encryptDsOrderType;
private Integer isEncryptDsOrderIfSellerSupport;
private HashMap<String, SellerInfoDTO> allowDsEncryptOrderSourceSellers;
private String operateMemberId;
private String operateIp;
private String operateSource;
private String operateRequestId;
private String operateUserId;
private String gmtCreate;
private String gmtModified;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.dsapi.response;
import lombok.Data;
@Data
public class SellerInfoDTO {
private String sellerIdMd5;
private String sellerName;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class AllowDsEncryptOrderSourceSellerDTO {
private String sellerName;
private String sellerIdMd5;
}

@ -0,0 +1,16 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class AppendVenderRemarkTplItemDTO {
private String type;
private String name;
private String content;
public AppendVenderRemarkTplItemDTO(String type, String name, String content) {
this.type = type;
this.name = name;
this.content = content;
}
}

@ -0,0 +1,11 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class DeliverInfoDTO {
private String logisticsName;
private Integer logisticsId;
private String companyCode;
private String waybillCode;
}

@ -0,0 +1,12 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class DsMessageCallbackDTO {
private Long shopId;
private String bizType;
private String bizId;
private String data;
private Long platformPushMsgId;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class DsMessageCallbackRequestDTO {
private String url;
private String body;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class DsMessageDTO {
private String bizType;
private String gmtMessageCreate;
}

@ -0,0 +1,11 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
import java.util.List;
@Data
public class GetDsPurchaseOrderPayUrlRequestDTO {
private List<String> orderIds;
private List<String> sourceOrderIds;
}

@ -0,0 +1,10 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
import java.util.List;
@Data
public class GetSourceSkuInfosRequestDTO {
private List<OrderItemDTO> orderItems;
}

@ -0,0 +1,11 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class OrderItemDTO {
private String orderId;
private String wareId;
private String skuId;
private String isPurchase;
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsorder;
import com.ms.api.dto.order.OrderMultiPackageOutstorageDTO;
import lombok.Data;
import java.util.List;
@Data
public class OrderPackageInfoDTO {
private DeliverInfoDTO deliveryInfo;
private List<OrderMultiPackageOutstorageDTO.PackageInfoDTO> packageList;
private boolean hasMultiPackageOutstorage;
private boolean hasAfterSaleChildOrder;
}

@ -0,0 +1,32 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class PurchaseOrderCancelMessageDTO extends DsMessageDTO {
private String skuId;
private List<Item> items;
@Data
public static class Item implements Serializable {
private Long purchaseOrderItemToPlatformOrderItemId;
private String memberId;
private Long platformShopId;
private String platformOrderId;
private Long platformItemId;
private Long platformSkuId;
private String sourceOrderId;
private Long sourceSkuId;
private Long sourceItemId;
private String actionSource;
private Integer isJxhyOffer;
private Long createPurchaseOrderLogId;
private String purchaseSource;
private String flow;
private String gmtCreate;
private String gmtModified;
}
}

@ -0,0 +1,8 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class PurchaseOrderChangeMessageDTO extends DsMessageDTO {
private PurchaseOrderDTO purchaseOrderInfo;
}

@ -0,0 +1,57 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Data
public class PurchaseOrderDTO {
private Long purchaseOrderId;
private String platformOrderId;
private String purchasePlatform;
private String purchaseOrderSn;
private String purchaseOrderBuyer;
private String purchaseOrderSeller;
private String purchaseOrderPayment;
private String purchaseOrderFullname;
private String purchaseOrderMobile;
private String purchaseOrderFullAddress;
private String purchaseOrderStartTime;
private String platformPushStatus;
private String purchaseOrderLogisticsName;
private String purchaseOrderWaybillCode;
private String purchaseOrderStatus;
private String purchaseOrderFlow;
private String alibabaOrderStatus;
private Boolean isUseManualConsignee;
private List<PurchaseOrderItemDTO> items;
private String checkReason;
private String checkStatus;
private Integer logisticsIsAccept;
private String purchaseOrderSendTime;
private Boolean isFirstPurchase = false;
private String purchaseAlipayMerchantNo;
private Integer isDsEncryptOrder;
private Integer isSupportEncryptOrder;
private List<Long> mergePurchasePlatformOrderIds;
private String notFirst1688OrderType;
public List<Long> getSkuIds() {
List<Long> skuIds = new ArrayList<>();
for (PurchaseOrderItemDTO item: this.items) {
skuIds.add(item.getSkuId());
}
return skuIds;
}
public Map<Long, PurchaseOrderItemDTO> getSkuIdAndItemMap() {
Map<Long, PurchaseOrderItemDTO> skuIdAndItemMap = new HashMap<>();
for (PurchaseOrderItemDTO item: this.items) {
skuIdAndItemMap.put(item.getSkuId(), item);
}
return skuIdAndItemMap;
}
}

@ -0,0 +1,14 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class PurchaseOrderItemDTO {
private Long skuId;
private Long wareId;
private Integer purchaseNum;
private Double purchasePrice;
private String purchaseUrl;
private String realPurchaseUrl;
private Long sourceItemId;
}

@ -0,0 +1,8 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class PurchaseOrderRelateMessageDTO extends DsMessageDTO {
private PurchaseOrderDTO purchaseOrderInfo;
}

@ -0,0 +1,10 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
@Data
public class RemarkTplTagDTO {
private String name;
private String content;
private String type;
}

@ -0,0 +1,69 @@
package com.ms.api.dto.dsorder;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
@Data
public class ResultDTO {
public final static String SUCCESS = "success";
public final static String FAIL = "fail";
private String result;
private String reason;
private String code;
private String message;
private Map<String, Object> data = new HashMap<>();
public boolean isSuccess() {
return "success".equals(result);
}
public static ResultDTO success() {
ResultDTO result = new ResultDTO();
result.setResult(SUCCESS);
result.setReason("成功");
result.setCode(SUCCESS);
result.setMessage("成功");
return result;
}
public static ResultDTO success(Map<String, Object> data) {
ResultDTO result = new ResultDTO();
result.setResult(SUCCESS);
result.setReason("成功");
result.setCode(SUCCESS);
result.setMessage("成功");
result.setData(data);
return result;
}
public static ResultDTO fail() {
ResultDTO result = new ResultDTO();
result.setResult(FAIL);
result.setReason("失败");
result.setCode(FAIL);
result.setMessage("失败");
return result;
}
public static ResultDTO fail(String message) {
ResultDTO result = new ResultDTO();
result.setResult(FAIL);
result.setReason(message);
result.setCode(FAIL);
result.setMessage(message);
return result;
}
public static ResultDTO fail(String code, String message) {
ResultDTO result = new ResultDTO();
result.setResult(FAIL);
result.setReason(message);
result.setCode(code);
result.setMessage(message);
return result;
}
}

@ -0,0 +1,31 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class AllowAutoPurchaseProductDTO {
/**
* id
*/
@JSONField(serializeUsing = ToStringSerializer.class)
private Long productId;
/**
*
*/
private String name;
/**
*
*/
private BigDecimal price;
/**
*
*/
private String img;
}

@ -0,0 +1,19 @@
package com.ms.api.dto.order;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Author: laixw
* @Date: 2023/9/3
*/
@Data
public class BatchSetIsolationDTO implements Serializable {
/**
*
*/
private List<String> orderIds;
}

@ -0,0 +1,102 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;
@Data
public class DsPurchaseSettingDTO {
/**
*
*/
private int isPurchaseLogisticsUpdateToPlatform;
/**
* right_now|logistics_accept|disabled
*/
private String deliveryTimeType;
/**
*
*/
private int isAutoPay;
/**
*
*/
private int isAutoPurchase;
/**
*
*/
private Integer delayPurchaseMinute;
/**
*
*/
private int isUseForbiddenPurchaseProfit;
/**
*
*/
private BigDecimal forbiddenPurchaseProfit;
/**
* 使
*/
private int isUseForbiddenKeywords;
/**
*
*/
private String forbiddenKeywords;
/**
*
*/
private int isUseAllProduct;
/**
*
*/
private int isUsePartProduct;
/**
*
*/
private int isForbidIsolationPurchase;
/**
*
*/
private Date gmtCreate;
/**
*
*/
private Date gmtModified;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Date gmtIsAutoPurchase;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Map<Long, FilterAutoPurchaseProductDTO> filterAutoPurchaseProducts;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Map<Long, AllowAutoPurchaseProductDTO> allowAutoPurchaseProducts;
}

@ -0,0 +1,23 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.Data;
@Data
public class DsSettingDTO {
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isApplyRefundOnPlatformRefundingAndSourceWaitSend;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isCancelOrderOnPlatformRefundingAndSourceWaitPay;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isApplyRefundOnPlatformRefundEndAndSourceWaitSend;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isCancelOrderOnPlatformRefundEndAndSourceWaitPay;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private String refundReason;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isSaveManualSelectedSku;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private String operateSource;
}

@ -0,0 +1,31 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class FilterAutoPurchaseProductDTO {
/**
* id
*/
@JSONField(serializeUsing = ToStringSerializer.class)
private Long productId;
/**
*
*/
private String name;
/**
*
*/
private BigDecimal price;
/**
*
*/
private String img;
}

@ -0,0 +1,17 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class GetPurchaseSettingResponseDTO {
/**
* ,
*/
private PurchaseSettingDTO purchaseSetting;
/**
*
*/
private DsPurchaseSettingDTO dsPurchaseSetting;
}

@ -0,0 +1,11 @@
package com.ms.api.dto.order;
import java.util.List;
import lombok.Data;
@Data
public class ManualRsyncDdOrdersDTO {
private List<String> orderIds;
}

@ -0,0 +1,82 @@
package com.ms.api.dto.order;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Author: laixw
* @Date: 2023/9/1
*/
@Data
public class OrderMultiPackageOutstorageDTO implements Serializable {
/**
*
*/
private String orderId;
/**
*
*/
private List<PackageInfoDTO> packageList;
/**
*
*/
private String deliverySource;
@Data
public static class PackageInfoDTO implements Serializable {
/**
* id
*/
private String logisticsId;
/**
*
*/
private String waybillCode;
/**
* id
*/
private String productId;
/**
* SkuId
*/
private Long skuId;
/**
*
*/
private Integer shippedNum;
/**
*
*/
private List<ShippedOrderInfo> shippedOrderInfo;
// =========== 内部使用
private String companyCode;
private String company;
private String logisticsName;
private String logisticsCode;
}
@Data
public static class ShippedOrderInfo implements Serializable {
/**
* id
*/
private String shippedOrderId;
/**
*
*/
private Integer shippedNum;
}
}

@ -0,0 +1,41 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class OrderSearchListRequestDTO {
private String product;
private Long bType;
private String afterSaleStatusDesc;
private String trackingNo;
private Long presellType;
private Long orderType;
private Long createTimeStart;
private Long createTimeEnd;
private Long abnormalOrder;
private Long tradeType;
private Long updateTimeStart;
private Long updateTimeEnd;
private Long size;
private Long page;
private String orderBy;
private Boolean orderAsc;
private String fulfilStatus;
private Boolean isSearchable;
}

@ -0,0 +1,20 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class OriginalAndCustomConsigneeInfoRequestDTO {
/*
*
*/
private String orderId;
/*
* [post_receiver,post_tel,detail:]
*/
private String[] decryptFields;
/*
* [dsBatchPurchase,pluginPurchase,dsOrderList:]
*/
private String decryptSource;
}

@ -0,0 +1,65 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class OriginalAndCustomConsigneeInfoResponseDTO {
/*
*
*/
private String fullname;
/*
*
*/
private String telephone;
/*
*
*/
private String mobile;
/*
* Id
*/
private String provinceAreaId;
/*
*
*/
private String province;
/*
* Id
*/
private String cityAreaId;
/*
*
*/
private String city;
/*
* ID
*/
private String countyAreaId;
/*
*
*/
private String county;
/*
* ID
*/
private String townAreaId;
/*
*
*/
private String town;
/*
*
*/
private String address;
/*
*
*/
private String fullAddress;
/*
*
*/
private boolean hasHide;
}

@ -0,0 +1,20 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.ms.api.dto.dsorder.AllowDsEncryptOrderSourceSellerDTO;
import lombok.Data;
import java.util.Map;
@Data
public class PlatformShopSettingDTO {
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isEncryptDsOrder;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Integer isEncryptDsOrderIfSellerSupport;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private String encryptDsOrderType;
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private Map<String, AllowDsEncryptOrderSourceSellerDTO> allowDsEncryptOrderSourceSellers;
}

@ -0,0 +1,82 @@
package com.ms.api.dto.order;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.ms.api.dto.dsorder.AppendVenderRemarkTplItemDTO;
import lombok.Data;
import java.util.List;
@Data
public class PurchaseSettingDTO {
/**
*
*/
private int isAppendShopRemark;
// /**
// * 商家备注模板
// */
// private String appendShopRemarkTpl;
/**
*
*/
private int isAppendShopNote;
// /**
// * 本地备注模板
// */
// private String appendShopNoteTpl;
/**
*
*/
private int shopRemarkFlag;
/**
*
*/
private int isAutoFillRemark;
// /**
// * 自动添加下单买家留言模板
// */
// private String autoFillRemarkTpl;
/**
*
*/
private int isAutoFillOrderMemo;
// /**
// * 下单自动填写备忘模板
// */
// private String autoFillOrderMemoTpl;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private List<AppendVenderRemarkTplItemDTO> appendShopRemarkTpl;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private List<AppendVenderRemarkTplItemDTO> appendShopNoteTpl;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private List<AppendVenderRemarkTplItemDTO> autoFillRemarkTpl;
/**
*
*/
@JSONField(serialzeFeatures = SerializerFeature.WriteMapNullValue)
private List<AppendVenderRemarkTplItemDTO> autoFillOrderMemoTpl;
}

@ -0,0 +1,14 @@
package com.ms.api.dto.order;
import lombok.Data;
/*
*
*/
@Data
public class RsyncAfterSaleRequestDTO {
private String aftersaleIds;
}

@ -0,0 +1,9 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class RsyncDdOrdersAndPurchaseOrdersRequestDTO {
private String orderIds;
private String sourceOrderIds;
}

@ -0,0 +1,16 @@
package com.ms.api.dto.order;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.springframework.util.StringUtils;
/*
*
*/
@Data
public class RsyncFullOrderRequestDTO {
private String rsyncOrderDate;
}

@ -0,0 +1,12 @@
package com.ms.api.dto.order;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
@Data
public class RsyncOpOrderByOrderIdsResultDTO {
private Map<String, String> orderIdAndFailReasonMap;
private Map <String, String> orderIdAndErrorMap;
}

@ -0,0 +1,30 @@
package com.ms.api.dto.order;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
*
* @Author: laixw
* @Date: 2023/8/31
*/
@Data
public class SaveBatchSellerRemarkDTO implements Serializable {
/**
*
*/
private List<String> orderIds;
/**
* flag
*/
private int flag;
/**
*
*/
private String remark;
}

@ -0,0 +1,8 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class SaveDsAutoPurchaseAgreementRequestDTO {
private Integer isCheckedAgreement;
}

@ -0,0 +1,29 @@
package com.ms.api.dto.order;
import lombok.Data;
import java.io.Serializable;
/**
*
* @Author: laixw
* @Date: 2023/8/30
*/
@Data
public class SaveOrderSellerRemarkDTO implements Serializable {
/**
*
*/
private String orderId;
/**
* flag
*/
private int flag;
/**
*
*/
private String remark;
}

@ -0,0 +1,16 @@
package com.ms.api.dto.order;
import lombok.Data;
@Data
public class SavePurchaseSettingRequestDTO {
private PurchaseSettingDTO purchaseSetting;
private DsPurchaseSettingDTO dsPurchaseSetting;
private PlatformShopSettingDTO platformShopSetting;
private DsSettingDTO dsSetting;
}

@ -0,0 +1,96 @@
package com.ms.api.dto.order;
import java.util.Date;
import java.util.List;
import lombok.Data;
/*
*
*/
@Data
public class SearchDsOrderFilterDTO {
private String authShopIds;
/*
*
*/
private Date orderStartTime;
private Date orderEndTime;
private String hasAfterSale;
/*
*
*/
private List<String> orderIds;
/*
*
*/
private List<String> purchaseOrderSn;
private Integer isIsolation;
private List<Integer> orderStatus;
private List<Integer> dsPurchaseStatus;
private List<Integer> dsWaitPayStatus;
private List<Integer> afterSaleStatus;
private String orderTags;
private String purchaseOrderSeller;
private Integer isPriorirtyDelivery;
private Integer skipSearchWithEs;
private Integer delaySendStatus;
private String skuName;
private String productId;
private String buyerRemark;
private String sellerRemark;
private String sellerNote;
/**
*
**/
private String sellerRemarkStars;
private String logisticsCode;
private String fullname;
private String mobile;
private String skuSubName;
private String purchaseOrderStatus;
private String dsSourcePlatform;
private String dsOrderRelateState;
private Date purchaseStartTime;
private Date purchaseEndTime;
private String hasBuyerRemark;
private String hasSellerRemark;
private String hasSellerNote;
private String hasNoRemarks;
private Boolean isShowSameReceiverOrder;
}

@ -0,0 +1,43 @@
package com.ms.api.util;
import com.alibaba.fastjson.serializer.JSONSerializer;
import com.alibaba.fastjson.serializer.ObjectSerializer;
import com.alibaba.fastjson.serializer.SerializeWriter;
import java.io.IOException;
import java.lang.reflect.Type;
import java.math.BigDecimal;
import java.text.DecimalFormat;
public class DoubleValueSerializer implements ObjectSerializer {
@Override
public void write(JSONSerializer jsonSerializer, Object o, Object fieldName, Type type, int i) throws IOException {
SerializeWriter out = jsonSerializer.out;
Double value = (Double) o;
String text = doubleTrans(noZeros(value));
if (text.contains(".")) {
out.writeDouble(Double.parseDouble(text), true);
} else {
out.writeInt(Integer.parseInt(text));
}
}
private Double noZeros(Double num) {
BigDecimal value = new BigDecimal(num);
//去除多余0
BigDecimal noZeros = value.stripTrailingZeros();
//BigDecimal => double
return noZeros.doubleValue();
}
private String doubleTrans(double d){
double eps = 1e-10;
//判断是否为整数
if(d-Math.floor(d) < eps){
return String.valueOf((long)d);
}
DecimalFormat df = new DecimalFormat("#.#####");
return df.format(d);
}
}

@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.jinritemai.cloud</groupId>
<artifactId>ms-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<artifactId>ms-biz</artifactId>
<name>ms-biz</name>
<properties>
<fastjson.version>1.2.83</fastjson.version>
<rocketmq.version>4.8.0</rocketmq.version>
<tos.version>2.2.0</tos.version>
<okhttp.version>3.14.9</okhttp.version>
<mybatis-plus-boot-starter.version>3.4.2</mybatis-plus-boot-starter.version>
<hutool.version>4.6.8</hutool.version>
</properties>
<dependencies>
<!--redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--es-->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
</dependency>
<!--tos-->
<dependency>
<groupId>com.volcengine</groupId>
<artifactId>ve-tos-java-sdk</artifactId>
<version>${tos.version}</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>${okhttp.version}</version>
</dependency>
<!--rmq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-client</artifactId>
<version>${rocketmq.version}</version>
</dependency>
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-acl</artifactId>
<version>${rocketmq.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.jinritemai.cloud</groupId>
<artifactId>ms-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.jinritemai.cloud</groupId>
<artifactId>ms-dal</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>${hutool.version}</version>
</dependency>
<!--反序列化 php-->
<dependency>
<groupId>org.sction</groupId>
<artifactId>phprpc</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>com.jinritemai</groupId>
<artifactId>sdk-java</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/doudian-sdk-java-1.1.0-20231027170318.jar</systemPath>
</dependency>
</dependencies>
</project>

@ -0,0 +1,36 @@
package com.ms.biz;
import com.jinritemai.cloud.base.api.BaseRequest;
import com.jinritemai.cloud.base.api.BaseResponse;
import com.jinritemai.cloud.base.api.ExtensionService;
import com.jinritemai.cloud.base.api.ExtensionServiceHandler;
import com.ms.api.dto.ItemDTO;
import com.ms.biz.tool.CloudRequestTemplate;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ExtensionService("httpDemo")
@Slf4j
public class HttpDemoService implements ExtensionServiceHandler<ItemDTO, Integer> {
@Autowired
private CloudRequestTemplate cloudRequestTemplate;
@Override
public BaseResponse<Integer> handle(BaseRequest<ItemDTO> req) {
log.info("HttpDemoService");
try {
String resp = cloudRequestTemplate.executePost("http://cp.nbmsm.top/apps/app/getList", null);
log.info(resp);
} catch (Exception e) {
log.error(e.getMessage());
}
return BaseResponse.<Integer>builder()
.success(true)
.message("success")
.data(123)
.code("10000")
.build();
}
}

@ -0,0 +1,74 @@
package com.ms.biz;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.jinritemai.cloud.base.api.BaseRequest;
import com.jinritemai.cloud.base.api.BaseResponse;
import com.jinritemai.cloud.base.api.ExtensionService;
import com.jinritemai.cloud.base.api.ExtensionServiceHandler;
import com.ms.biz.common.R;
import com.ms.api.dto.ItemDTO;
import com.ms.biz.tool.DsJsonRequestTemplate;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.*;
@ExtensionService("testSign")
@Slf4j
public class TestSignService implements ExtensionServiceHandler<ItemDTO, JSONObject> {
@Autowired
private DsJsonRequestTemplate dsJsonRequestTemplate;
@Override
public BaseResponse<JSONObject> handle(BaseRequest<ItemDTO> req) {
HashMap<String, Object> params = new HashMap<>();
List<String> arrayString = new ArrayList<>();
arrayString.add("arrayString1");
arrayString.add("arrayString2");
params.put("arrayString", arrayString);
HashMap<String, String> mapStringString = new HashMap<>();
mapStringString.put("A","mapStringString1");
mapStringString.put("B","mapStringString2");
params.put("mapStringString", mapStringString);
List<Integer> arrayInt64 = new ArrayList<>();
arrayInt64.add(10000);
arrayInt64.add(10000);
params.put("arrayInt64", arrayInt64);
params.put("int16", 10000);
params.put("int32", 10000);
params.put("int64", 10000);
params.put("double", 10.1);
params.put("string", "test");
// params.put("struct1", new GetCurrentShopMoveSettingRequestDTO());
// params.put("struct2", new GetMoveHistoryProductListRequestDTO());
// params.put("struct3", new SaveBatchMoveTaskRequestDTO());
// List<Object> arrayStruct = new LinkedList<>();
// arrayStruct.add(new GetCurrentShopMoveSettingRequestDTO());
// arrayStruct.add(new GetMoveHistoryProductListRequestDTO());
// arrayStruct.add(new SaveBatchMoveTaskRequestDTO());
// params.put("arrayStruct", arrayStruct);
//
// Map<String,Object> mapStringStruct = new HashMap<>();
// mapStringStruct.put("mapstruct1", new GetCurrentShopMoveSettingRequestDTO());
// mapStringStruct.put("mapstruct2", new GetMoveHistoryProductListRequestDTO());
// mapStringStruct.put("mapstruct3", new SaveBatchMoveTaskRequestDTO());
// params.put("mapStringStruct", mapStringStruct);
String res = null;
try {
res = dsJsonRequestTemplate.execute("/order/testJava", params);
log.info(res);
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage());
}
return R.ok(JSON.parseObject(res));
}
}

@ -0,0 +1,32 @@
package com.ms.biz;
import com.jinritemai.cloud.base.api.BaseRequest;
import com.jinritemai.cloud.base.api.BaseResponse;
import com.jinritemai.cloud.base.api.ExtensionService;
import com.jinritemai.cloud.base.api.ExtensionServiceHandler;
import com.ms.biz.common.R;
import com.ms.biz.common.SPIBaseService;
import com.ms.api.dto.ItemDTO;
import com.ms.biz.tool.TimeTool;
import lombok.extern.slf4j.Slf4j;
@ExtensionService("testTime")
@Slf4j
public class TestTimeService extends SPIBaseService implements ExtensionServiceHandler<ItemDTO, String> {
@Override
public BaseResponse<String> handle(BaseRequest<ItemDTO> req) {
// String currentTime = DateUtil.now();
//
// // 将当前时间转换为Date类型
// java.util.Date date = DateUtil.parseDateTime(currentTime);
//
// // 将当前时间减去5秒
// java.util.Date newDate = DateUtil.offsetSecond(date, -3600);
//
// String newTime = DateUtil.formatDateTime(newDate);
// System.out.println("当前时间:" + currentTime);
System.out.println("减去5秒后的时间" + TimeTool.getDateTimeBySeconds(-3600));
return R.ok("");
}
}

@ -0,0 +1,40 @@
package com.ms.biz;
import com.jinritemai.cloud.base.api.BaseRequest;
import com.jinritemai.cloud.base.api.BaseResponse;
import com.jinritemai.cloud.base.api.ExtensionService;
import com.jinritemai.cloud.base.api.ExtensionServiceHandler;
import com.ms.biz.common.R;
import com.ms.biz.common.Ret;
import com.ms.biz.common.SPIBaseService;
import com.ms.api.dto.ItemDTO;
import com.ms.biz.paas.StorageService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ExtensionService("testTos")
@Slf4j
public class TestTosService extends SPIBaseService implements ExtensionServiceHandler<ItemDTO, String> {
@Autowired
StorageService storageService;
@Override
public BaseResponse<String> handle(BaseRequest<ItemDTO> req) {
try{
initHandle(req);
Ret ret = storageService.uploadContent("test","这是测试数据");
String url = (String)ret.getData().get("url");
ret = storageService.getContent("test");
String content = (String)ret.getData().get("data");
String publicUrl = storageService.getPubOssUrlByOssPath("test");
return R.ok("地址:" + url + "内容:" + content + "公网地址: " + publicUrl);
}catch (Throwable e){
e.printStackTrace();
return R.ok(e.getMessage());
}
}
}

@ -0,0 +1,19 @@
package com.ms.biz.bo;
import lombok.Data;
import java.util.List;
@Data
public class AttributeBO {
private String propertyName;
private int propertyId;
private int required;
private List<Option> options;
@Data
public static class Option {
private int value;
private String name;
}
}

@ -0,0 +1,18 @@
package com.ms.biz.bo;
import lombok.Data;
import java.util.Map;
@Data
public class CateAttributeResultBO {
private Map<Integer, String> cateBrandMap;
private boolean isBrandReq;
private int brandAid;
public CateAttributeResultBO(Map<Integer, String> cateBrandMap, boolean isBrandReq, int brandAid) {
this.cateBrandMap = cateBrandMap;
this.isBrandReq = isBrandReq;
this.brandAid = brandAid;
}
}

@ -0,0 +1,12 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class CategoryBO {
private Long cid;
private String name;
private String path;
private int hasChildren;
}

@ -0,0 +1,9 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class CheckNeedDsAutoPurchaseOrderResultBO {
private Boolean isNeedAutoPurchase;
private String forbiddenAutoPurchaseReason;
}

@ -0,0 +1,11 @@
package com.ms.biz.bo;
import lombok.Data;
import java.util.List;
@Data
public class CompareAndGetNeedProcessCidsBO {
private List<Long> needInsertCategoryCids;
private List<Long> needUpdateCategoryCids;
}

@ -0,0 +1,8 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class ConditionBO {
}

@ -0,0 +1,11 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MatchFailSkuInfoBO {
private String reason;
private String platformItemId;
private Long platformSkuId;
private Long sourceItemId;
}

@ -0,0 +1,12 @@
package com.ms.biz.bo;
import com.ms.api.dto.dsapi.response.GetPurchaseOrderItemsAndSourceItemsResponseDTO;
import lombok.Data;
import java.util.Map;
@Data
public class MatchSourceSkuInfoResultBO {
private Map<Long, GetPurchaseOrderItemsAndSourceItemsResponseDTO.Sku> platformSkuIdAndMatchSourceSkuInfoMap;
private Map<Long, MatchFailSkuInfoBO> platformSkuIdAndMatchFailSkuInfoMap;
}

@ -0,0 +1,12 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MaterialBO {
private String requestId;
private String folderId;
private String materialType;
private String name;
private String url;
}

@ -0,0 +1,25 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MoveConditionBO {
private Long shopId;
private Long moveShopSettingId;
private Integer deliveryDelayDay;
private MovePriceBO movePriceBO;
private int noConsignPriceType;
private int MoveOnsaleTyp;
private int freightTemplateId;
private int reduceType;
private int supply7dayReturn;
}

@ -0,0 +1,11 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MovePriceBO {
private String aliPriceType;
private int priceTail;
}

@ -0,0 +1,116 @@
package com.ms.biz.bo;
import com.alibaba.fastjson.JSONObject;
import com.ms.biz.common.StrObjMap;
import lombok.Data;
import java.util.Date;
@Data
public class MoveProductPublishQueueBO {
/**
* move_product_publish_queue_id
*/
private Integer moveProductPublishQueueId;
/**
* shop_id
*/
private Long shopId;
/**
* move_collect_task_id
*/
private Integer moveCollectTaskId;
/**
* move_collect_task_detail_id
*/
private Long moveCollectTaskDetailId;
/**
* try_times
*/
private int tryTimes;
/**
* locked
*/
private Integer locked;
/**
* gmt_locked
*/
private Date gmtLocked;
/**
* priority
*/
private Integer priority;
/**
* gmt_last_heartbeat
*/
private Date gmtLastHeartbeat;
/**
* gmt_create
*/
private Date gmtCreate;
/**
* gmt_modified
*/
private Date gmtModified;
private String sourceItemId;
private MoveShopSettingBO condition;
private String conditionTxt;
private String cnaliDsDetailId;
private String site;
private String source;
private String sourceTitle;
private String sourceShopName;
private String sourceImgUrl;
private String cid;
private String copyType;
private int isFastMode;
private String itemNum;
private Integer price;
private Boolean hasSaveNotes;
private String notes;
private JSONObject skus;
private Integer presellType;
private StrObjMap presellTimeSkuSpecNameAndStockPercentMap;
private StrObjMap sizeAndPresellMap;
private StrObjMap skuPresellChildSkuDetail;
private Double hasImportPrice;
private Integer supply7dayReturn;
private Integer limitSource;
private Long moveGroupTaskDetailId;
}

@ -0,0 +1,92 @@
package com.ms.biz.bo;
import lombok.Data;
import java.util.Date;
@Data
public class MoveProductPublishToPicQueueBO {
/**
* move_product_publish_to_pic_queue_id
*/
private Integer moveProductPublishToPicQueueId;
/**
* shop_id
*/
private Long shopId;
/**
* move_collect_task_id
*/
private Integer moveCollectTaskId;
/**
* move_collect_task_detail_id
*/
private Long moveCollectTaskDetailId;
/**
* try_times
*/
private int tryTimes;
/**
* hostname
*/
private String hostname;
/**
* locked
*/
private Integer locked;
/**
* priority
*/
private Integer priority;
/**
* gmt_locked
*/
private Date gmtLocked;
/**
* gmt_last_heartbeat
*/
private Date gmtLastHeartbeat;
/**
* gmt_create
*/
private Date gmtCreate;
/**
* gmt_modified
*/
private Date gmtModified;
private String sourceItemId;
private MoveShopSettingBO condition;
private String cnaliDsDetailId;
private String site;
private String source;
private String sourceTitle;
private String sourceShopName;
private String sourceImgUrl;
private String cid;
private String copyType;
private int isFastMode;
}

@ -0,0 +1,9 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MovePublishBufferRandShopIdAndPriorityBO {
private Long shopId;
private Integer prioirty;
}

@ -0,0 +1,66 @@
package com.ms.biz.bo;
import lombok.Data;
import java.util.Date;
@Data
public class MoveShopConfigBO {
/**
* move_shop_config_id
*/
private Integer moveShopConfigId;
/**
* shop_id
*/
private Long shopId;
/**
* total
*/
private Integer total;
/**
* used_total
*/
private Integer usedTotal;
/**
* fail_total
*/
private Integer failTotal;
/**
* attach_total
*/
private Integer attachTotal;
/**
* is_balanced
*/
private int isBalanced;
/**
* gmt_expire
*/
private Date gmtExpire;
/**
* gmt_create
*/
private Date gmtCreate;
/**
* gmt_modified
*/
private Date gmtModified;
private Integer originalTotal;
private Integer availableFbTotal;
private Integer availableTotal;
}

@ -0,0 +1,181 @@
package com.ms.biz.bo;
import com.alibaba.fastjson.JSONObject;
import com.ms.biz.common.StrObjMap;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class MoveShopSettingBO {
private Integer moveShopSettingId;
/**
* shop_id
*/
private Long shopId;
/**
* config_name
*/
private String configName;
/**
* is_config_default
*/
private int isConfigDefault;
/**
* delivery_delay_day
*/
private Integer deliveryDelayDay;
/**
* freight_template_id
*/
private Integer freightTemplateId;
/**
* supply_7day_return
*/
private int supply7dayReturn;
/**
* reduce_type
*/
private int reduceType;
/**
* move_onsale_type
*/
private int moveOnsaleType;
/**
* price_percent
*/
private BigDecimal pricePercent;
/**
* price_add
*/
private BigDecimal priceAdd;
/**
* price_sub
*/
private BigDecimal priceSub;
/**
* price_tail
*/
private Integer priceTail;
/**
* price_decimal
*/
private String priceDecimal;
/**
* price_decimal_diy_value
*/
private String priceDecimalDiyValue;
/**
* is_price_add_post_fee
*/
private int isPriceAddPostFee;
/**
* base_price_type
*/
private int basePriceType;
/**
* price_mode
*/
private String priceMode;
/**
* ali_price_type
*/
private String aliPriceType;
/**
* no_consign_price_type
*/
private int noConsignPriceType;
/**
* height
*/
private String height;
/**
* width
*/
private String width;
/**
* length
*/
private String length;
/**
* brand_id
*/
private String brandId;
/**
* brand_name
*/
private String brandName;
/**
* stock_type
*/
private String stockType;
/**
* gmt_create
*/
private Date gmtCreate;
/**
* gmt_modified
*/
private Date gmtModified;
private int isFastMode;
/**
* mobile
*/
private String mobile;
private String filterEmptyColorImg;
private int baseMarketPriceType;
private int marketPrice;
private JSONObject price;
private JSONObject desc;
private StrObjMap presellTimeSkuSpecNameAndStockPercentMap;
private Boolean useSourcePresell;
private Integer resetSkuStockNum;
private Integer resetSkuZeroStockNum;
private Integer quantity;
private String skuCodeRule;
private Integer autoFilterBanWord;
private String tailorImgType;
}

@ -0,0 +1,54 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class MoveTaskProductBO {
/**
*
*/
private String sourceImgUrl;
/**
*
*/
private String sourceTitle;
/**
* id
*/
private long sourceItemId;
private String itemNum;
/**
* id
*/
private String cid;
/**
* id
*/
private int moveShopConfigId;
/**
*
*/
private int isFastMode;
/**
* skumap
* {'skuId' : 100}
*/
private String skus;
private boolean isFromDs;
private String sourceShopName;
private String site;
private String source;
private String cnaliDsDetailId;
}

@ -0,0 +1,9 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class OrderItemSkuInfoBO {
private String skuId;
private String skuSubName;
}

@ -0,0 +1,47 @@
package com.ms.biz.bo;
import lombok.Data;
@Data
public class ProductBO {
private int isFastMode;
/**
* source
*/
private String source;
/**
* site
*/
private String site;
/**
* third_cid
*/
private String cid;
/**
* source_item_id
*/
private String sourceItemId;
/**
* source_title
*/
private String sourceTitle;
/**
* source_img_url
*/
private String sourceImgUrl;
/**
* source_shop_name
*/
private String sourceShopName;
private boolean isFromDs;
}

@ -0,0 +1,80 @@
package com.ms.biz.bo;
import com.doudian.open.core.AccessToken;
import lombok.Data;
import java.util.Date;
@Data
public class ShopBO {
/**
* shop_id
*/
private Long shopId;
/**
* shop_name
*/
private String shopName;
/**
* access_token
*/
private String accessToken;
/**
* refresh_token
*/
private String refreshToken;
/**
* expires_in
*/
private String expiresIn;
/**
* last_login_ip
*/
private String lastLoginIp;
/**
* total_product
*/
private Integer totalProduct;
/**
* total_move_detail
*/
private Integer totalMoveDetail;
/**
* app_version
*/
private String appVersion;
/**
* gmt_last_login
*/
private Date gmtLastLogin;
/**
* gmt_expire
*/
private Date gmtExpire;
/**
* gmt_create
*/
private Date gmtCreate;
/**
* gmt_modified
*/
private Date gmtModified;
/**
* AccessToken
*/
private AccessToken shopAccessToken;
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save